Arduino Nano ESP32 - RS485

Dieses Tutorial erklärt dir, wie man RS-485-Kommunikation mit dem ESP32 verwendet. Im Detail werden wir die folgenden Aspekte behandeln:

Erforderliche Hardware

1×Arduino Nano ESP32
1×USB-Kabel Typ-A zu Typ-C (für USB-A PC)
1×USB-Kabel Typ-C zu Typ-C (für USB-C PC)
1×TTL-zu-RS485-Modul
1×Verbindungskabel
1×(Optional) USB-zu-RS485-Konverter
1×(Optional) USB to RS485 Cable
1×(Empfohlen) Schraubklemmen-Erweiterungsboard für Arduino Nano
1×(Empfohlen) Breakout-Erweiterungsboard für Arduino Nano
1×(Empfohlen) Stromverteiler für Arduino Nano ESP32

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über TTL-zu-RS485-Modul

Bei der seriellen Kommunikation am Arduino Nano ESP32, unter Verwendung von Funktionen wie Serial.print(), Serial.read() und Serial.write(), erfolgt die Übertragung der Daten über den TX-Pin, während der Empfang über den RX-Pin erfolgt. Diese Pins arbeiten auf TTL-Ebene und verarbeiten Signale mit begrenzter Reichweite. Daher wird es für die serielle Kommunikation über längere Entfernungen notwendig, das TTL-Signal in Standards wie RS232, RS485 oder RS422 umzuwandeln.

In diesem Tutorial befassen wir uns mit der Nutzung von RS485 (auch RS-485 genannt) mit dem Arduino Nano ESP32, indem wir ein TTL-zu-RS485-Modul verwenden. Dieses Modul ermöglicht die Umwandlung von TTL-Signalen in RS485-Signale und umgekehrt und sorgt so für eine zuverlässige Kommunikation über längere Entfernungen.

Pinbelegung

Das RS-485-zu-TTL-Modul verfügt über zwei Schnittstellen:

  • TTL-Schnittstelle (verbunden mit Arduino Nano ESP32):
    • VCC Pin: Dieser Versorgungspin sollte mit VCC (5V oder 3,3V) verbunden werden.
    • GND Pin: Dieser Versorgungspin sollte mit GND (0V) verbunden werden.
    • RXD Pin: Dieser Datenpin sollte mit einem TX-Pin des Arduino Nano ESP32 verbunden werden.
    • TXD Pin: Dieser Datenpin sollte mit einem RX-Pin des Arduino Nano ESP32 verbunden werden.
  • RS485-Schnittstelle:
    • D+ (A oder TR+) Pin: Dieser Pin ermöglicht die Datenkommunikation.
    • D- (B oder TR-) Pin: Dieser Pin wird für die Datenübertragung verwendet.
    • GND Pin: Obwohl optional, wird dringend empfohlen, diesen Pin einzubinden, um Störgeräusche zu mindern und eine optimale Leistung sicherzustellen.
    RS-485-Modul Pinbelegung
    image source: diyables.io

Verdrahtungsdiagramm

Arduino Nano ESP32 TTL zu RS485 Schaltplan

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

So programmieren Sie den Arduino Nano ESP32, um das RS485-Modul zu verwenden

  • Definiere die seriellen Pins:
#define RX1PIN D2 #define TX1PIN D3
  • Initialisiert die serielle Schnittstelle:
Serial1.begin(9600, SERIAL_8N1, RX1PIN, TX1PIN); // RS-232-Schnittstelle

Arduino Nano ESP32 Programmcode

/* * Dieser Arduino Nano ESP32 Code wurde von newbiely.de entwickelt * Dieser Arduino Nano ESP32 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-nano-esp32/arduino-nano-esp32-rs485 */ #define RX1PIN D2 #define TX1PIN D3 void setup() { // start communication with baud rate 9600 Serial.begin(9600); // Serial Monitor Serial1.begin(9600, SERIAL_8N1, RX1PIN, TX1PIN); // RS485 // wait a moment to allow serial ports to initialize delay(100); } void loop() { // Check if there's data available on Serial if (Serial1.available()) { char data = Serial1.read(); // read the received character Serial1.print(data); // echo back to data to the sender Serial.print(data); // print the recived data to Serial Monitor } }

Tests

Sie können einen Test durchführen, indem Sie Daten von Ihrem PC zum Arduino Nano ESP32 über RS-485 senden und umgekehrt. Um dies zu tun, folgen Sie bitte den folgenden Schritten:

  • Verbinden Sie den Arduino Nano ESP32 mit Ihrem PC über ein RS-485-zu-USB-Kabel wie unten beschrieben:
Arduino Nano ESP32 RS485 zur PC-Kommunikation
  • Installieren Sie ein serielles Terminalprogramm wie Tera Term oder PuTTY
  • Öffnen Sie das serielle Terminalprogramm und konfigurieren Sie die seriellen Parameter (COM-Port, Baudrate...)
  • Geben Sie einige Daten am seriellen Terminal ein, um sie an den ESP32 zu senden.
  • Wenn es erfolgreich ist, sehen Sie die Echo-Daten am 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!