題:
如何連接兩個沒有屏蔽的Arduino?
totymedli
2014-02-14 04:32:44 UTC
view on stackexchange narkive permalink

我正在計劃一個由幾個Arduino板組成的Arduino系統。板之間的最大距離約為50米。我想在這些之間發送基本數據,例如短字符串或整數。我知道我可以通過以太網電纜發送數據,但這需要以太網屏蔽或Arduino以太網板,這會使成本加倍。我是否可以通過低預算的方式僅使用最基本的板(例如Uno)和其他一些組件但不使用完整的屏蔽板來連接板?

如果預算不是問題,則可以使用藍牙或xbee芯片。它們還不錯,但是總共需要花費約60美元,因為您需要2。
@Steven10172藍牙設備很方便,但是OP似乎希望提供一種無需屏蔽的廉價解決方案(也許低調嗎?)
如果您的傳輸媒介是電,請務必確保接地!!!!
相關:[在彼此遠離的兩個Arduino之間發送最小數據](https://arduino.stackexchange.com/questions/76947/sending-minimal-data-between-two-arduinos-far-away-from-each-其他)
五 答案:
sachleen
2014-02-14 04:59:03 UTC
view on stackexchange narkive permalink

對於長距離有線通信,請查看 RS-485

由於它在雙絞線上使用了差分平衡線(例如RS-422),因此可以跨越相對較大的距離(最大4,000英尺(1,200 m))。一條經驗法則是,以位/秒為單位的速度乘以以米為單位的長度不應超過108。因此,一條50米的電纜的信號傳輸速度不應超過2 Mbit / s

使用MAX485芯片。使用起來非常容易,但是也有一個不錯的庫:

https://github.com/Protoneer/RS485-Arduino-Library

他難道不只是剝去RS-485或類似電纜的電線,而只是用來串行化以節省金錢嗎? 9600波特的運行速度幾乎沒有* 2 MBPS。協議/電壓/等方面有什麼特別之處。使其適合長距離?可能會節省一些錢...
這是通過雙絞線發送的差分信號。減少噪音。 http://en.wikipedia.org/wiki/Differential_signaling
此頁面是使用Arduino在RS485上的絕佳資源http://www.gammon.com.au/forum/?id=11428
TheDoctor
2014-02-14 04:42:53 UTC
view on stackexchange narkive permalink

我可以想到兩類對Arduino板的通訊功能進行分類:

兩個設備之間:

  • 序列:易於使用,只需2條數據線。
  • OneWire:較難使用且速度較慢,但僅使用一條數據線

在兩個以上的設備之間

  • I2C:網絡上最多可以有128個設備,可單獨尋址,但需要一個主設備,使用2條數據線。
  • SPI:難以使用,但設備選擇非常快速簡便。使用大量數據線(3 +數量的設備)
  • OneWire:使用尋址的oneWire甚至比常規的oneWire慢,但仍然只有一條數據線
  • SoftwareSerial:您可以使用多個設備通過不同的串行線連接,但速度較慢。
  • CAN:僅在Due中可用,並且可尋址

還有其他方法可用,但僅列出了這些方法需要最少的外部硬件。

有關距離等級,請參見 http://forum.arduino.cc/index.php?topic=82937.0 http:/ /www.tldp.org/HOWTO/Remote-Serial-Console-HOWTO/serial-distance.html

這些數據速率在“串行”中直接控制,並且可以在許多其他類型中進行調整。 / p>

HK1
2014-02-14 05:01:48 UTC
view on stackexchange narkive permalink

Freakduino製作了一些具有內置無線功能的Arduino板。他們的遠程無線為900 MHz,而較短的無線為2.4GHz。我認為它們實際上是XBee無線電,對於編程,您將使用一個名為chibiArduino的庫,該庫可在Freakduino網站上獲得(並記錄在案)。與其他無線電進行無線通訊時,可以使用廣播或通過其ID指定無線電,該ID是您需要在Freakduino的EEPROM中設置的值。

直接從Freakduino站點獲取:

添加基於IEEE 802.15.4協議(與XBee相同的無線電協議)的集成無線電可以實現對設備的無線控製或無線傳感器數據收集。添加了可選的電池電路,因此它可以充當真正的無線節點,而無需任何外部電源線。該板還設計為適合堅固的外殼,因此可以安全地運輸設計或在實際使用情況下部署設計,而不必擔心損壞電路。

這款900 MHz無線電是我個人的最愛。我一直使用它,因為900 MHz提供的範圍比2.4 GHz好得多。無線電可以輸出高達10 mW的發射功率,這可以得到令人驚訝的範圍。有了直接的視線,幾百米就不足為奇了。如果需要其他範圍,也可以將調製模式從OQPSK更改為BPSK。這樣會以犧牲數據速率為代價,提供更大的範圍,在標準模式下,最大值從250 kbps到40 kbps。

Butters
2015-03-02 08:04:45 UTC
view on stackexchange narkive permalink

就像您說的那樣,以太網屏蔽很昂貴,但是您不必使用屏蔽。查看 enc28j60進行有線網絡連接,或者查看 ESP8266(如果您希望使用無線網絡)。兩者均約為$ 4USD。我現在正在使用ESP8266,大約有8台設備互相通信,並且有一個Raspberry Pi。這是一個很棒的小籌碼!我無法親自對ENC28j60講話,因為它們仍坐在我桌子上的包裹中。

Nathan
2015-03-02 22:26:50 UTC
view on stackexchange narkive permalink

您可以使用以太網分線板(Sparkfun售價2美元)。這使您可以使用以太網電纜,而不必使用完整的TCP / IP協議,而只需將數據引腳連接到分支板上,使用以太網連接它們,然後使它們通過串行通訊即可。我用了很多時間將一個線傳感器放在距離Arduino較遠的地方,以實現牢固而廉價的連接。



該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...