MAX485は、RS485通信用の低電力トランシーバーモジュールであり、長距離および堅牢なデータ送信に広く使用されています。差動シグナル伝達を使用して、産業用自動化、スマートメーター、その他のアプリケーションに最適です。このチュートリアルでは、MAX485 RS485モジュールとArduinoをインターフェイスする方法について説明します。
あなたが必要とするもの
- MAX485 RS485モジュール
- 2つのArduinoボード(コミュニケーションデモ用)
- ブレッドボード
- ジャンパーワイヤ
- Arduino IDEがインストールされたコンピューター
ステップ1:MAX485 RS485モジュールの理解
MAX485モジュールには、次のキーピンがあります。
max485ピン | 関数 |
---|---|
VCC | 電源(5V) |
GND | 地面 |
di | データ入力(Arduino Txから) |
ro | データ出力(Arduino RXへ) |
de | ドライバーEnable(送信用) |
再 | 受信機イネーブル(受信の場合は低い) |
a | RS485信号a |
b | RS485信号b |
注記: DEおよびREピンは通常、モジュールモード(送信または受信)を制御するために一緒に結び付けられます。
ステップ2:MAX485をArduinoに配線します
Transmitter Arduino
max485ピン | Arduino Pin |
---|---|
VCC | 5V |
GND | GND |
di | ピン3 |
de | ピン2 |
再 | ピン2 |
a | RS485信号a |
b | RS485信号b |
レシーバーArduino
max485ピン | Arduino Pin |
---|---|
VCC | 5V |
GND | GND |
ro | ピン3 |
de | GND |
再 | GND |
a | RS485信号a |
b | RS485信号b |
両方のMAX485モジュールのAおよびB端子を接続して、RS485通信リンクを確立します。
ステップ3:コードをアップロードします
送信機コード
#define DE_RE 2
#define DI 3
void setup() {
pinMode(DE_RE, OUTPUT);
digitalWrite(DE_RE, HIGH); // Enable transmission mode
Serial.begin(9600);
Serial.println("RS485 Transmitter Ready");
}
void loop() {
Serial.println("Sending data...");
digitalWrite(DE_RE, HIGH); // Enable transmission mode
Serial.write("Hello from Transmitter!\n");
delay(1000);
}
受信コード
#define RO 3
void setup() {
pinMode(RO, INPUT);
Serial.begin(9600);
Serial.println("RS485 Receiver Ready");
}
void loop() {
if (Serial.available()) {
String received = Serial.readString();
Serial.print("Received: ");
Serial.println(received);
}
}
ステップ4:セットアップをテストします
- 個別のUSBケーブルを使用して、送信機とレシーバーのArduinoボードをコンピューターに接続します。
- 各ボードのArduino IDEを開き、対応するコード(送信機と受信機)をアップロードします。
- 両方のボードのシリアルモニターを開き、ボーレートをに設定します
9600
. - Transmitterのシリアルモニターでは、メッセージが送信されています。受信者のシリアルモニターでは、同じメッセージが受信されていることがわかります。
トラブルシューティング
- 受信したデータはありません: MAX485モジュール間のAとBの接続を再確認します。
- 間違ったデータ: 両方のArduinoボードが同じボーレートに設定されていることを確認してください。
- パワーの問題: MAX485モジュールには、安定した5V電源を使用します。
RS485のMAX485のアプリケーション
- 産業自動化システム
- スマートエネルギーメーター
- 騒々しい環境での長距離データ送信
- ホームオートメーションネットワーク
結論
堅牢なシリアル通信のために、MAX485 RS485モジュールとArduinoを採用しました。長距離能力と騒音抵抗により、RS485は多くのIoTおよび産業用アプリケーションに最適です。より多くのデバイスでこのセットアップを拡張して、マルチノード通信ネットワークを構築してみてください!