Arduino-wireless-communication
提供:Dev Guides
Arduino-ワイヤレス通信
ワイヤレストランスミッターとレシーバーモジュールは315 Mhzで動作します。 ブレッドボードに簡単に収まり、マイクロコントローラーとうまく機能して、非常にシンプルなワイヤレスデータリンクを作成できます。 1組の送信機と受信機では、モジュールは一方向のデータ通信のみを行いますが、送信機/受信機のペアとして機能するには2つのペア(異なる周波数)が必要です。
注-これらのモジュールは無差別であり、かなりの量のノイズを受け取ります。 送信機と受信機は両方とも共通の周波数で動作し、IDはありません。
受信機モジュールの仕様
- 製品モデル-MX-05V
- 動作電圧-DC5V
- 静止電流-4mA
- 受信周波数-315Mhz
- レシーバー感度—105DB サイズ-30 14 * 7mm
送信機モジュールの仕様
- 製品モデル-MX-FS-03V
- 発射距離-20-200メートル(異なる電圧、異なる結果)
- 動作電圧-3.5-12V 寸法− 19 19mm
- 動作モード-AM
- 転送速度-4KB/S
- 送信電力-10mW
- 送信周波数-315Mhz
- 外部アンテナ-25cmの通常のマルチコアまたはシングルコアライン
- 左から右へのピン配列-(DATA; V〜CC〜; GND)
必要なコンポーネント
次のコンポーネントが必要になります-
- 2×Arduino UNOボード
- 1×Rfリンク送信機
- 1×Rfリンクレシーバー
手順
回路図に従って、以下の画像に示すように接続します。
スケッチ
コンピューターでArduino IDEソフトウェアを開きます。 Arduino言語でコーディングすると、回路が制御されます。 [新規]をクリックして、新しいスケッチファイルを開きます。
注意-Arduinoライブラリファイルにキーパッドライブラリを含める必要があります。 以下のスクリーンショットで強調表示されているように、ライブラリフォルダーにVirtualWire.libファイルをコピーして貼り付けます。
トランスミッターのArduinoコード
//simple Tx on pin D12
#include <VirtualWire.h>
char *controller;
void setup() {
pinMode(13,OUTPUT);
vw_set_ptt_inverted(true);
vw_set_tx_pin(12);
vw_setup(4000);//speed of data transfer Kbps
}
void loop() {
controller="1" ;
vw_send((uint8_t *)controller, strlen(controller));
vw_wait_tx();//Wait until the whole message is gone
digitalWrite(13,1);
delay(2000);
controller="0" ;
vw_send((uint8_t *)controller, strlen(controller));
vw_wait_tx();//Wait until the whole message is gone
digitalWrite(13,0);
delay(2000);
}
注意すべきコード
これは簡単なコードです。 まず、文字「1」を送信し、2秒後に文字「0」などを送信します。
レシーバーのArduinoコード
//simple Rx on pin D12
#include <VirtualWire.h>
void setup() {
vw_set_ptt_inverted(true);//Required for DR3100
vw_set_rx_pin(12);
vw_setup(4000);//Bits per sec
pinMode(5, OUTPUT);
vw_rx_start();//Start the receiver PLL running
}
void loop() {
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen))//Non-blocking {
if(buf[0]=='1') {
digitalWrite(5,1);
}
if(buf[0]=='0') {
digitalWrite(5,0);
}
}
}
注意すべきコード
Arduinoボードのピン番号5に接続されているLEDは、文字「1」を受信するとオンになり、文字「0」を受信するとオフになります。