İçindekiler:

Bir Arduino'da 3'e Kadar RS485 Bus: 5 Adım
Bir Arduino'da 3'e Kadar RS485 Bus: 5 Adım

Video: Bir Arduino'da 3'e Kadar RS485 Bus: 5 Adım

Video: Bir Arduino'da 3'e Kadar RS485 Bus: 5 Adım
Video: YAPAY ZEKAYA Robot Kodlatmak 2024, Temmuz
Anonim
Bir Arduino'da 3 RS485 Bus'a kadar
Bir Arduino'da 3 RS485 Bus'a kadar
Bir Arduino'da 3 RS485 Bus'a kadar
Bir Arduino'da 3 RS485 Bus'a kadar

Bu talimatta, bir Arduino'ya 3 bağımsız RS485 veri yolunun nasıl bağlanacağını göstereceğim. Bu buslar arasında bir ağ geçidi oluşturmak istiyorsanız veya bu buslardaki cihazları kontrol etmek istiyorsanız (otobüslerin kendisini bağlamadan) bu yararlı olabilir. Başka bir uygulama, bir RS422 cihazının (örneğin motor kontrolü) ve bir RS485 cihazının (örneğin bir sensör) aynı Arduino'ya bağlanmasıdır.

Her durumda, topraklama sorunlarını ortadan kaldırmak ve Arduino'yu korumak için izole arayüzlü bir RS485 kalkanına ihtiyacınız olacak.

Adım 1: Araçlar ve Malzemeler

Image
Image

Donanım:

  • Arduino UNO (veya Arduino Shield soketli diğer herhangi bir tek kartlı bilgisayar)
  • İzole arayüzlü Arduino RS42 / RS485 Shield

Yazılım:

Arduino IDE'si

Adım 2: BUS 1 için DIP Anahtarı ve Jumper Ayarı

BUS 2 için DIP Anahtarı ve Jumper Ayarı
BUS 2 için DIP Anahtarı ve Jumper Ayarı

Tulum:

  • UART RX 0 konumuna
  • UART TX, konum 1'e
  • 5V konumuna voltaj

DIP Anahtarı:

  • S1 = KAPALI - AÇIK - AÇIK - KAPALI
  • S2 = KAPALI - KAPALI - AÇIK - AÇIK
  • S3 = AÇIK - KAPALI - KAPALI - KAPALI

Adım 3: BUS 2 için DIP Anahtarı ve Jumper Ayarı

Tulum:

  • UART RX 2. pozisyona
  • UART TX pozisyon 3'e
  • 5V konumuna voltaj

DIP Anahtarı:

  • S1 = KAPALI - AÇIK - AÇIK - KAPALI
  • S2 = KAPALI - KAPALI - AÇIK - AÇIK
  • S3 = AÇIK - KAPALI - KAPALI - KAPALI

Adım 4: BUS 3 için DIP Anahtarı ve Jumper Ayarı

BUS 3 için DIP Anahtarı ve Jumper Ayarı
BUS 3 için DIP Anahtarı ve Jumper Ayarı

Tulum:

  • UART RX 4. pozisyona
  • UART TX, pozisyon 5'e
  • 5V konumuna voltaj

DIP Anahtarı:

  • S1 = KAPALI - AÇIK - AÇIK - KAPALI
  • S2 = KAPALI - KAPALI - AÇIK - AÇIK
  • S3 = AÇIK - KAPALI - KAPALI - KAPALI

Adım 5: Yazılım Entegrasyonu

Veri yolu 1 için kalkan, Arduino'nun PIN 0 ve 1'inde donanım UART'ını kullanacaktır. Diğer her iki kalkan da yazılım UART'larını kullanacaktır.

#Dahil etmek

YazılımSeri RS485_BUS2(2, 3);

YazılımSeri RS485_BUS3(4, 5);

geçersiz kurulum()

{

….

// veri yolu 1 için seri bağlantı noktasını başlat

Seri.başla(9600);

// veri yolu 2 için seri bağlantı noktası başlat

RS485_BUS2.begin(9600);

// veri yolu 3 için seri bağlantı noktasını başlat

RS485_BUS3.begin(9600);

….

Bu yazılım UART'larının iletim verileri, Arduino'nun hesaplama gücü ile sınırlıdır. Tabii ki ARM tabanlı Arduino veya STM32 kartı kullanacaksanız bu gerçekten bir sorun olmayacak, ancak UNO için aynı anda sadece iki kalkan kullanılması ve ikinci kalkan için veri hızı olarak 9600 Baud'dan fazla olmaması önerilir..

Önerilen: