2つのArduino間のシリアル通信の最大ワイヤー長はどれくらいですか?


9

2つのArduinoが3本のワイヤでリンクされるプロジェクトを構築しています。TXはシリアル通信用のRXで、共通のGNDです。通信が影響を受ける前のここでのワイヤーの最大長はどれくらいですか?

片側にArduino Mega R3を使用し、反対側にArduino Miniを使用しています。

ボーレートに特別な要件はありませんが、これが何らかの形で役立つ場合は、最低のレートを使用できます。

回答:


4

指定する必要があります

  • 関心のある範囲の順序-メートル、数十メートル、キロメートル、または州間高速道路の順ですか?:-)。ALLは適切な妥協で可能です。

  • 回路への接続方法-直接Arduinoピン、高/低バッファー、差動ドライバー、...

5V / 0Vの「ユニポーラ」を使用する場合、たとえば9600ボーで、適切なドライバを使用して多くのメーターを取得できます。Arduinoピンを直接使用する場合は、範囲が広がるにつれて、抵抗とインダクタンスを直接配線することが重要になります。

300ボーでは、ツイストペアケーブルで数百メートルを達成できます。範囲が拡大するにつれて、他の回路からのクロストークや外部ノイズなどの側面が重要性を増します。信号+グランドが互いにツイストされた4本のワイヤーがあるより長い範囲では、いずれの場合にも役立ちますが、関心のある範囲では2本のワイヤーとグラウンドが正常に機能する可能性があります。

十分な電圧を使用し、十分な速度で信号を送る準備ができている場合は、非常に初期の電信ケーブルで行われていたように、数千マイル以上信号を送ることができます。数千ボルトが必要であり、信号速度がおそらく数ビット/秒である場合、ほとんどの場合、阻害要因となります。


私がカバーしたい距離は、私たちの家の中から外の門まで約40-50メートルです。私の意図は、関連するArduinoピンを以前のインターコムの設置で見つけたケーブルで直接接続することでした。
hobie 2015年

2
長いケーブルを使用すると、Arduinoにいくつかの危険があります。誘導、漏れ、静電気。(電源障害からの雷と地面の上昇は多分...)すべてのラインの電源レールにダイオードを逆クランプするのは良い考えです。基本的なドライバーICは非常に良いアイデアです。両端のxx74xx14ヘキサシュミットインバータICも役立ちます。(xxは家族によって異なります)。適切なラインドライバーはさらに優れていますが、それは始まりです。Arduinoが貴重な場合は、バッファーを使用します。
ラッセルマクマホン

コメントや提案をありがとうございました。与えられた距離(約40m)を簡単な接続でカバーできるかどうかを確認するために、2つのArduino Unoをそれぞれ送信側と受信側に設定して試してみました。ボードは、TX / RXライン(ピン0および1)を介して1秒あたり9600ビットで直接接続されます。送信側は、受信側が着信データをリッスンしている間、毎秒テスト文字列を送信します。。私は、既存のライン(品質についての情報を使用しています/このケーブルの仕様はとにかく、送信側/受信側のペアは、この距離や構成で問題なく動作するようです。
ホビー

ありがとう、ICまたはドライバーチップへの特別な提案/リンクはありますか?
hobie 2016

@hobie 50メートルと9600ボーで、ほとんどすべての5VデジタルドライバーICだけでなく、デジタル出力ICでもOKの結果を得ることができます(試してみてください)。有用な出発点は、通常74xxx14、CDxxx14、MM ..... 14のシュミットトリガーCMOSインバーターです。シュミットトリガーインバーターを探し、最も低い駆動電力のものを避けます。
ラッセルマクマホン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.