Kalkanlar olmadan iki Arduino nasıl bağlanır?


14

Birkaç Arduino kartından oluşan bir Arduino sistemi planlıyorum. Levhalar arasındaki maksimum mesafe yaklaşık 50 metredir. Bunlar arasında kısa dizeler veya tamsayılar gibi temel veriler göndermek istiyorum. Ethernet kablolarıyla veri gönderebileceğimi biliyorum, ancak bu bir ethernet kalkanı veya maliyetleri iki katına çıkaran Arduino Ethernet kartı gerektiriyor. Panoları yalnızca en temel panoları (Uno gibi) ve diğer bazı bileşenleri kullanarak bağlayabilmemin düşük bir yolu var mı?


Bütçe bir sorun değilse, bluetooth veya xbee yongaları kullanabilirsiniz. Çok kötü değiller, ancak 2'ye ihtiyacınız olduğu gibi toplam ~ 60 $ çalışacaklar.
Steven10172

@ Steven10172 Bluetooth cihazları kullanışlı, ancak OP kalkanlar olmadan ucuz bir çözüm istiyor gibi görünüyor (düşük profil belki?)
Anonim Penguen

3
Make emin transferi için orta elektrik ise zemin bağlamak için !!!
Anonim Penguen

Yanıtlar:


9

Uzun mesafeli kablolu iletişim için RS-485'e bakın .

Bükülü çift (RS-422 gibi) üzerinde diferansiyel dengeli bir hat kullandığından, nispeten büyük mesafelere (1.200 feet'e (1.200 feet) kadar) yayılabilir. Temel kural, bit / sn cinsinden hızın metre cinsinden uzunluk ile çarpılmasıdır. 108'i aşmamalıdır. Bu nedenle 50 metrelik bir kablo 2 Mbit / sn'den daha hızlı sinyal vermemelidir.

MAX485 yongasını kullanabilirsiniz. Çalışması oldukça kolay ama iyi bir kütüphane de var:

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


RS-485 veya benzeri kabloları sıyırıp seri için para tasarrufu yapmak için kullanamadı mı? 9600 baud neredeyse 2 MBPS kadar hızlı çalışmaz . Protokol hakkında özel bir şey var mı / voltaj / vb. uzun mesafeler için uygun kılan? Biraz para biriktirebilir ...
Anonim Penguen

Bükümlü bir çift üzerinden gönderilen diferansiyel bir sinyaldir. Gürültüyü azaltır. en.wikipedia.org/wiki/Differential_signaling
sachleen

Bu sayfa Arduino ile RS485'te
DaveP

7

Arduino kartlarının iletişim özelliklerini sınıflandırmak için düşünebileceğim iki kategori var:

2 cihaz arasında:

  • Seri: Kullanımı kolaydır ve sadece 2 veri hattı gerektirir.
  • OneWire: Kullanımı daha zor ve yavaş, ancak yalnızca bir veri satırı kullanıyor

2'den fazla cihaz arasında

  • I2C: Bir ağda ayrı ayrı adreslenebilen, ancak bir ana cihaz gerektiren en fazla 128 cihaza sahip olabilirsiniz, 2 veri hattı kullanır. bu Tel olarak da bilinir.
  • SPI: kullanımı zor, ancak çok hızlı ve kolay cihaz seçimi. çok fazla veri satırı kullanır (3 + cihaz sayısı)
  • OneWire: adresli oneWire kullanmak normal oneWire'dan bile daha yavaş, yine de sadece bir veri hattı
  • SoftwareSerial: Farklı Seri hatlarla bağlı birden fazla cihazınız olabilir, ancak daha yavaştır.
  • CAN: yalnızca Son tarihte kullanılabilir ve adreslenebilir

Kullanılabilecek başka yöntemler de vardır, ancak bunlar yalnızca minimum harici donanım gerektirir.

Mesafe derecelendirmeleri için http://forum.arduino.cc/index.php?topic=82937.0 ve http://www.tldp.org/HOWTO/Remote-Serial-Console-HOWTO/serial-distance.html adresine bakın.

Bu veri hızları doğrudan Serial'da kontrol edilir ve diğer birçoğunda değiştirilebilir.


5

Freakduino dahili kablosuz ile bazı Arduino panoları yapar. Uzun menzilli kablosuzları 900 MHz ve daha kısa menzili 2.4GHz'dir. Ben aslında XBee radyolar olduğunu düşünüyorum ve programlama için Freakduino web sitesinde bulunan (ve belgelenmiş) chibiArduino adlı bir kütüphane kullanabilirsiniz. Başka bir radyo ile kablosuz iletişim kurarken, Yayını kullanabilir veya kimliğini kullanarak Freakduino'nun EEPROM'unda ayarlamanız gereken bir değer olan bir radyo belirleyebilirsiniz.

Doğrudan Freakduino sitesinden alınmıştır:

IEEE 802.15.4 protokolüne (XBee ile aynı radyo protokolü) dayalı entegre bir kablosuz telsizin eklenmesi, cihazların kablosuz kontrolüne veya kablosuz sensör veri toplamaya olanak tanır. Harici güç kabloları olmadan gerçek bir kablosuz düğüm olarak işlev görebilmesi için isteğe bağlı pil devresi eklendi. Kart ayrıca, devrenin zarar görmesinden endişe etmeden tasarımın güvenli bir şekilde taşınabilmesi veya gerçek bir kullanım senaryosunda dağıtılabilmesi için sağlamlaştırılmış bir kasaya uyacak şekilde tasarlanmıştır.

Bu 900 MHz radyo benim kişisel favorim. Her zaman kullanıyorum çünkü 900 MHz 2,4 GHz'e kıyasla çok daha iyi bir aralık sunuyor. Radyo, şaşırtıcı miktarda menzil alabilen 10 mW'a kadar iletim gücü verebilir. Doğrudan görüş hattı ile, birkaç yüz metre şaşırtıcı olmazdı. Ek bir aralığa ihtiyaç duyulursa, modülasyon modu OQPSK'dan BPSK'ya değiştirilebilir. Bu, standart modda maks. 250 kbps'den 40 kbps'ye çıkarak veri hızı pahasına ek bir aralık sağlar.


0

Söylediğiniz gibi, Ethernet ekranları pahalıdır, ancak ekranı kullanmak zorunda değilsiniz. Check out ENC28J60 kablolu ağ için veya ESP8266 kablosuz tercih ediyorsanız. Her ikisi de yaklaşık 4USD $. Şimdi ESP8266'yı kullanıyorum ve birbirleriyle konuşan yaklaşık 8 cihazım ve bir Raspberry Pi var. Gerçekten harika bir küçük çip! ENC28j60 ile kişisel olarak konuşamıyorum, çünkü hala masamın üstünde oturuyorlar.


0

Bir Ethernet koparma kartı kullanabilirsiniz (Sparkfun'da 2 $). Bu, Ethernet kablolarını kullanmanıza izin verir, ancak tam bir TCP / IP protokolü kullanmanıza gerek yoktur, bunun yerine veri pinlerini koparma kartına bağlayabilir, bağlamak için Ethernet'i kullanabilir ve ardından seri kullanarak konuşmasını sağlayabilirsiniz. Güçlü ama ucuz bir bağlantı için bir tel sensörünü Arduino'dan daha uzağa yerleştirmek için bunu biraz kullanıyorum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.