Arduino UNO R4 RS485

In diesem Leitfaden lernen wir, wie man die RS485-Kommunikation mit dem Arduino UNO R4 verwendet. Wir werden die folgenden Themen im Detail behandeln:

Der Leitfaden enthält Anweisungen sowohl für Hardware Serial als auch für SoftwareSerial.

Arduino UNO R4 RS-485

Über TTL-zu-RS485-Modul

Wenn Sie serielle Kommunikation auf dem Arduino UNO R4 mit Serial.print(), Serial.read() und Serial.write() verwenden, sendet der Arduino UNO R4 Daten über den TX-Pin und empfängt Daten über den RX-Pin. Diese Pins arbeiten auf TTL-Ebene, daher hat das Signal eine begrenzte Reichweite. Daher müssen Sie das TTL-Signal in RS232-, RS485- oder RS422-Signal umwandeln, um serielle Kommunikation über längere Distanzen zu ermöglichen.

In diesem Leitfaden werden wir erläutern, wie man RS485 mit dem Arduino UNO R4 verwendet, indem man ein TTL-zu-RS485-Modul einsetzt. Dieses Modul hilft dabei, TTL-Signale in RS-485-Signale umzuwandeln und umgekehrt.

Pinbelegung

Das RS485-zu-TTL-Modul verfügt über zwei Anschlussarten:

  • Die TTL-Schnittstelle, die mit dem Arduino UNO R4 verbunden ist, verfügt über 4 Pins:
    • VCC-Pin: Das ist der Strompin und sollte mit VCC verbunden werden (entweder 5V oder 3,3V).
    • GND-Pin: Ein weiterer Strompin, der mit GND (0V) verbunden werden muss.
    • RXD-Pin: Ein Datensignalpin, der mit dem TX-Pin am Arduino UNO R4 verbunden wird.
    • TXD-Pin: Ein Datensignalpin, der mit dem RX-Pin am Arduino UNO R4 verbunden wird.
  • Die RS-485-Schnittstelle besteht aus den folgenden Pins:
    • D+ (A oder TR+) Pin: Wird für die Datenkommunikation verwendet.
    • D- (B oder TR-) Pin: Wird ebenfalls für die Datenübertragung verwendet.
    • GND-Pin: Obwohl optional, wird empfohlen, diesen Pin zu verbinden, um Störungen zu reduzieren.
    RS-485-Modul-Pinbelegung
    image source: diyables.io

Verdrahtungsdiagramm

  • Verdrahtungsdiagramm zur Verwendung der Hardware-Serial-Schnittstelle mit RS485.
Arduino UNO R4 TTL-zu-RS485 Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

  • Verdrahtungsdiagramm zur Verwendung von softwarebasierter RS-485-Kommunikation
Arduino UNO R4 RS-485-zu-TTL Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Siehe Der beste Weg, den Arduino Uno R4 und andere Komponenten mit Strom zu versorgen.

So programmieren Sie den Arduino UNO R4, um das RS485-Modul zu verwenden

  • Startet die serielle Verbindung:
Serial.begin(9600);
  • Wenn Sie SoftwareSerial verwenden, müssen Sie die Bibliothek hinzufügen und ein SoftwareRegular-Objekt erstellen:
#include <SoftwareSerial.h> SoftwareSerial rs485(6, 7); // RX am Pin 6, TX am Pin 7

Arduino UNO R4 Code für die Hardware-Serielle-Schnittstelle

/* * Dieser Arduino UNO R4 Code wurde von newbiely.de entwickelt * Dieser Arduino UNO R4 Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-uno-r4/arduino-uno-r4-rs485 */ void setup() { // start communication with baud rate 9600 Serial.begin(9600); // wait a moment to allow serial ports to initialize delay(100); } void loop() { // Check if there's data available on Serial if (Serial.available()) { char data = Serial.read(); // read the received character Serial.print(data); // echo back to data to the sender } }

Arduino UNO R4 Code für Software-Seriell

/* * Dieser Arduino UNO R4 Code wurde von newbiely.de entwickelt * Dieser Arduino UNO R4 Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-uno-r4/arduino-uno-r4-rs485 */ #include <SoftwareSerial.h> SoftwareSerial rs485(6, 7); // RX: 6, TX: 7 void setup() { // start communication with baud rate 9600 rs485.begin(9600); // wait a moment to allow serial ports to initialize delay(100); } void loop() { // Check if there's data available on rs485 if (rs485.available()) { char data = rs485.read(); // read the received character rs485.print(data); // echo back to data to the sender } }

Testen

Folgen Sie diesen Anweisungen Schritt für Schritt:

  • Wenn Sie dies zum ersten Mal mit dem Arduino Uno R4 WiFi/Minima verwenden, verweisen Sie auf das Tutorial zur Einrichtung der Umgebung für Arduino Uno R4 WiFi/Minima in der Arduino IDE Einrichtung der Umgebung für Arduino Uno R4 WiFi/Minima in der Arduino IDE.
  • Verbinden Sie das Arduino Uno R4 mit dem TTL-zu-RS485-Modul gemäß dem bereitgestellten Diagramm.
  • Verbinden Sie das Arduino Uno R4-Board mit Ihrem Computer über ein USB-Kabel.
  • Starten Sie die Arduino IDE auf Ihrem Computer.
  • Wählen Sie das passende Arduino Uno R4-Board (z. B. Arduino Uno R4 WiFi) und den COM-Port aus.
  • Kopieren Sie den bereitgestellten Code und fügen Sie ihn in die Arduino IDE ein.
  • Klicken Sie auf die Schaltfläche Hochladen in der Arduino IDE, um den Code auf den Arduino UNO R4 zu übertragen.

Sie können einen Test durchführen, um Daten zwischen Ihrem PC und dem Arduino UNO R4 über RS-485 zu senden. So geht es:

  • Schließen Sie Ihren Arduino UNO R4 über ein RS-485-zu-USB-Kabel wie folgt an Ihren Computer an:
Arduino UNO R4 RS485 zur Kommunikation mit dem PC
  • Laden Sie herunter und installieren Sie ein serielles Terminalprogramm, z. B. Tera Term oder PuTTY.
  • Öffnen Sie das serielle Terminalprogramm und legen Sie die seriellen Parameter fest (COM-Port, Baudrate usw.).
  • Geben Sie Daten in das serielle Terminal ein, um sie an den Arduino UNO R4 zu senden.
  • Wenn es funktioniert, sehen Sie die zurückgesendeten Daten im seriellen Terminal.

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!