2016年6月13日月曜日

Arduino と 5V リレー モジュール 使ってみた

 準備   

◆Arduino IDE(PCにインストール無料)

◆Arduino Uno(ンヘッダー同梱)(360円+送料170円)
Arduino IDE(PC)とArduino UnoをつなぐUSBケーブル(120円+送料170円)
 


5V リレー モジュール(100円+送料170円)

◆負荷(リレー接点容量越えないものを何か用意する)

◆電源直流5V(何か用意する)


 ◆電源直流7~12V(何か用意する)
 
工作開始
Arduino IDE(PC)とArduino Unoをつなぎましょう 

Arduino Uno にスケッチ を書き込みましょう
 ツール > マイコンボード > Arduino Uno
 

 ツール > シリアルポート > Arduino Unoが接続されているポート

 

 スケッチを書く
 void setup() {
  pinMode(7, OUTPUT); 
}

void loop() {
  digitalWrite(7, HIGH); 
  delay(5000);                
  digitalWrite(7, LOW);  
  delay(5000);
}


 ◆Arduino UnoをPCから外し、下の図のようにつなぎましょう
 



 

2016年6月10日金曜日

Arduino と 温度計・DS18B20 使ってみた

 準備   

◆Arduinoのソフト(PCにインストール無料)


◆Arduino のハード(ンヘッダー同梱)(360円+送料170)



◆Arduinoのソフト(PC)とArduinoのハードをつなぐUSBケーブル(100円+送料170円)
  


1-Wireデジタル温度計 DS18B20 (320円+送料170円) (抵抗5.1kΩ1本同梱)


 工作開始
◆全てつなぎましょう.

ライブラリをダウンロードしましょう




ダウンロードしたライブラリを移動し
home/sketchbook/libraries

解凍し、



適当な名前にしましょう(OneWireMaster、 TemperatureControlLibraryMaster)



◆Arduinoのソフトにライブラリを追加しましょう

/home/sketchbook/libraries/OneWireMaster

/home/sketchbook/libraries/TemperatureControlLibraryMaster


◆Arduinoハードにスケッチを書き込みましょう


 
 


 ◆シリアルモニタで見てみましょう





2016年6月8日水曜日

Arduino と 温湿度センサ モジュール AM2320 使ってみた

 準備   

◆Arduinoのソフト(PCにインストール無料)

◆Arduino のハード(ンヘッダー同梱)(360円+送料170円)


◆Arduinoのソフト(PC)とArduinoのハードをつなぐUSBケーブル(100円+送料170円
 

◆温湿度センサ モジュール AM2320(440円+送料170円)

 工作開始
◆全てつなぎましょう

Arduino Unoにスケッチ を書き込みましょう

ツール > マイコンボード > Arduino Uno
 

ツール > シリアルポート > Arduino Unoが接続されているポート
 

スケッチを書く
#include <Wire.h> //by dd647
void setup()

  Wire.begin();      
  Serial.begin(9600);
  delay(100);
}
void loop()
{
  Wire.beginTransmission(0x5c);     // address(0x5c)  sensor(AM2320)
  Wire.write(0x03); //Arduino read senser
  Wire.write(0x00); //address of Humidity
  Wire.write(0x04); //The number of address
                    //(Humidity1,Humidity2,Temperature1,Temperature2)
  Wire.endTransmission();//
  delay(1000); 
  int ans = Wire.requestFrom(0x5c,6);// request 6 bytes from sensor(AM2320)
  
    while(Wire.available() !=0){  
    int H1,H2,T1,T2 = 0;
    float h,t =0; 
        for(int i = 1; i <  ans+1; i++){    
        int c = Wire.read();       
            switch (i){   
            case 5:
            T1 = c;
            break;
            case 6:
            T2 = c;
            break;
            case 3:
            H1 = c;
            break;
            case 4:
            H2 = c; 
            break;
            default:
            break;
            }      
        }      
    h = (H1*256 + H2)/10.0;
    t = (T1*256 + T2)/10.0;
    Serial.print("  Humidity=");
    Serial.print(h);
    Serial.print("   ");
    Serial.print("  Temperature=");
    Serial.println(t);
    }
}


◆シリアルモニタで見てみましょう




1: これでいいのだろうか?Are these correct?
2:OneWireのやりかたが分からない。I don't know how to OneWire

2016年6月6日月曜日

Arduino と Arduino でI2C通信してみた

 準備   

Arduinoのソフト(PCにインストール無料)
 

◆Arduino のハード(ンヘッダー同梱)(360円+送料170円)


◆Arduinoのソフト(PC)とArduinoのハードをつなぐUSBケーブル(100円+送料170円
  


 工作開始
◆Arduino Uno(slave)をつなぎましょう

Arduino Uno(skave) にスケッチ を書き込みましょう

ツール > マイコンボード > Arduino Uno


ツール > シリアルポート > Arduino Unoが接続されているポート


スケッチを書きましょう
 #include <Wire.h>
int y = 0;

void setup()
{
  Wire.begin(4);                // join i2c bus with address #4
  Wire.onReceive(receiveEvent); // register event
  Wire.onRequest(requestEvent); // register event
}

void loop()
{
  delay(100);
}

void receiveEvent(int howMany)

  y = Wire.read();        
}

void requestEvent()
{
  Wire.write(11*y+5);
}

 
  

◆Arduino Uno(master)をつなぎましょう

Arduino Uno(master) にスケッチ を書き込みましょう
#include <Wire.h>
int x = 3;
int c = 0;

void setup()
{
  Wire.begin(); // join i2c bus (address optional for master)
  Serial.begin(9600);
}

void loop()
{
  Wire.beginTransmission(4); // transmit to device #4
  Wire.write(x);              // sends one byte 
  Wire.endTransmission();    // stop transmitting
  delay(500);
  Wire.requestFrom(4, 1);    // request 1 bytes from slave device #4

  while(Wire.available())    // slave may send less than requested
  {
    c = Wire.read(); // receive
    Serial.println(c);         // print I absolutely can not assume the responsibility
  } 
}


◆Arduino Uno(master) と Uno(master)をつなぎましょう
注意:master5V出力容量が足りるかどうか分からないが・・・・CautionI do not know whether or not the 5V supply is sufficient・・・・・

◆シリアルモニタで見てみましょう





  記載の情報を利用することで被った被害や損害につきましては、情報の内容に誤りがあった場合であっても、一切の責任を負いかねます。
I absolutely can not assume the responsibility