ESP32 S3 RS422

Le RS422 est un standard de communication série robuste capable de transmettre des données sur de longues distances et dans des environnements électriquement bruyants, ce qui le rend idéal pour les applications industrielles. Ce tutoriel vous montre comment connecter un module TTL vers RS422 à l'ESP32 S3 et échanger des données de manière bidirectionnelle entre la carte et votre PC.

ESP32 S3 RS422

Ce que vous allez construire :

  1. Connecter l'ESP32 S3 à un module TTL vers RS422
  2. Programmer l'ESP32 S3 pour recevoir des données depuis l'interface RS422
  3. Programmer l'ESP32 S3 pour envoyer des données via l'interface RS422
  4. Établir une communication série bidirectionnelle entre votre PC et l'ESP32 S3 via RS422

À propos du module TTL vers RS422

Le RS422 (aussi appelé RS-422) est un standard de communication série différentiel qui prend en charge la transmission de données en full-duplex à des vitesses allant jusqu'à 10 Mbps sur des distances allant jusqu'à 1200 mètres. Contrairement aux signaux de niveau TTL utilisés nativement sur l'ESP32 S3, le RS422 utilise des paires différentielles équilibrées, qui offrent une excellente immunité au bruit et la capacité de piloter de longs câbles.

Lors de l'utilisation de la communication série sur l'ESP32 S3 via des fonctions telles que Serial.print(), Serial.read(), et Serial.write(), les données sont transmises aux niveaux de signal TTL via les broches TX et RX. Un module convertisseur TTL vers RS422 fait le pont entre ces signaux TTL et le standard différentiel RS422, permettant une communication série longue distance et résistante au bruit.

Spécifications clés

  • Standard de communication : RS-422 (full-duplex, signalisation différentielle)
  • Tension d'alimentation : 3,3V ou 5V (vérifiez la fiche technique de votre module)
  • Débit de données maximal : jusqu'à 10 Mbps
  • Longueur de câble maximale : jusqu'à 1200 m à des débits en bauds plus faibles
  • Puces driver courantes : MAX13487, MAX3422 ou équivalents

Brochage

Le module TTL vers RS422 dispose de deux interfaces. Connectez le côté TTL à l'ESP32 S3 et le côté RS422 à l'appareil distant ou au câble.

Interface TTL (connectée à l'ESP32 S3) :

  1. Broche VCC : Entrée d'alimentation — connecter à 3,3V ou 5V.
  2. Broche GND : Masse — connecter à GND.
  3. Broche RXD : Entrée de données vers le module — connecter à une broche TX de l'ESP32 S3.
  4. Broche TXD : Sortie de données du module — connecter à une broche RX de l'ESP32 S3.

Interface RS422 :

  1. Broche A (R+) : RX+ du module — connecter à la broche TX+ (T+ ou Y) de l'appareil RS422 distant.
  2. Broche B (R-) : RX- du module — connecter à la broche TX- (T- ou Z) de l'appareil RS422 distant.
  3. Broche Y (T+) : TX+ du module — connecter à la broche RX+ (R+ ou A) de l'appareil RS422 distant.
  4. Broche Z (T-) : TX- du module — connecter à la broche RX- (R- ou B) de l'appareil RS422 distant.
Brochage du module RS-422
image source: diyables.io

Schéma de câblage

Connectez le module TTL vers RS422 à l'ESP32 S3 comme indiqué dans le schéma ci-dessous, en veillant à ce que les lignes TX/RX soient correctement croisées entre la carte et le module. Le côté interface RS422 peut ensuite être connecté à un PC via un câble RS422 vers USB ou à un autre appareil RS422.

Notes de sécurité

Utilisez un câble à paire torsadée blindée pour les lignes différentielles RS422 (paires A/B et Y/Z) chaque fois que le câble dépasse quelques mètres, car cela réduit considérablement la sensibilité au bruit. Assurez-vous toujours que tous les appareils du réseau RS422 partagent une référence de masse commune pour éviter les boucles de masse et d'éventuels dommages aux émetteurs-récepteurs.

| Broche ESP32 S3 | Broche TTL du module RS422 |

|:---|:---|

| 3.3V | VCC |

| GND | GND |

| TX (n'importe quel TX UART) | RXD |

| RX (n'importe quel RX UART) | TXD |

Schéma de câblage TTL vers RS422 ESP32 S3

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Comment programmer l'ESP32 S3 pour utiliser le module RS422

Programmer l'ESP32 S3 pour communiquer via RS422 est simple car la conversion entre TTL et RS422 est entièrement gérée par le module. Le code suivant utilise l'interface série matérielle Serial2 pour envoyer et recevoir des données via le module, et reflète les données entrantes vers le moniteur série USB pour vérification.

Pour initialiser l'interface série pour le RS422, appelez begin() sur l'UART matériel souhaité :

Serial2.begin(9600);

Pour lire les données arrivant depuis l'interface RS422, utilisez l'une de ces fonctions Serial :

Pour écrire des données vers l'interface RS422, utilisez l'une de ces fonctions Serial :

Pour une liste complète des fonctions disponibles, consultez la référence Serial.

Code ESP32 S3

/* * Ce code ESP32 S3 a été développé par newbiely.fr * Ce code ESP32 S3 est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp32-s3/esp32-s3-rs422 */ /* * This ESP32-S3 code is created by esp32io.com * * This ESP32-S3 code is released in the public domain * * For more detail (instruction and wiring diagram), visit https://esp32io.com/tutorials/esp32-s3-rs422 */ void setup() { // start communication with baud rate 9600 Serial.begin(9600); // Serial Monitor Serial2.begin(9600, SERIAL_8N1, 18, 17); // RS422 // wait a moment to allow serial ports to initialize delay(100); } void loop() { // Check if there's data available on Serial if (Serial2.available()) { char data = Serial2.read(); // read the received character Serial.print(data); // print the recived data to Serial Monitor } }

Étapes rapides

Suivez ces étapes pour faire communiquer l'ESP32 S3 via RS422 :

  1. Nouveau sur ESP32 S3 ? Suivez d'abord notre guide ESP32 S3 - Premiers pas.
  2. Câblez le module TTL vers RS422 à l'ESP32 S3 selon le schéma de câblage ci-dessus.
  3. Connectez l'ESP32 S3 à votre PC à l'aide d'un câble USB Type-C.
  4. Ouvrez l'Arduino IDE et collez le code fourni dans la section Code.
  5. Sélectionnez la bonne carte et le bon port COM sous Tools.
  6. Cliquez sur Upload pour flasher le code vers l'ESP32 S3.
  7. Connectez le côté RS422 du module à un PC à l'aide d'un câble RS422 vers USB.
  8. Ouvrez deux fenêtres de terminal série (par exemple, Tera Term ou PuTTY) : une sur le port COM de l'ESP32 S3 et une sur le port COM de l'adaptateur RS422, toutes deux réglées à 9600 bauds.
  9. Tapez du texte dans l'un ou l'autre terminal et vérifiez qu'il apparaît dans l'autre terminal.
  10. Astuce pro : Utilisez un analyseur logique ou un oscilloscope sur les lignes de la paire différentielle RS422 pour confirmer la signalisation différentielle et mesurer l'intégrité réelle du signal sur votre câble.

Sortie du moniteur série

Après le téléversement et l'établissement de la connexion RS422, le moniteur série affichera des données entrantes et renvoyées semblables aux lectures suivantes :

∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32S3 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32S3 Dev Module' on 'COM15')
New Line
9600 baud
[2026-06-16 09:01:23] RS422 Ready. Waiting for data... [2026-06-16 09:01:35] Received: Hello from PC [2026-06-16 09:01:35] Echo sent: Hello from PC [2026-06-16 09:02:10] Received: Test message 123 [2026-06-16 09:02:10] Echo sent: Test message 123
Ln 11, Col 1
ESP32S3 Dev Module on COM15
2

Applications

Le RS422 avec l'ESP32 S3 convient particulièrement aux scénarios exigeant une communication série fiable sur de longues distances ou résistante au bruit. Voici des utilisations réelles courantes :

  1. Automatisation industrielle : Connectez l'ESP32 S3 à des automates programmables, des capteurs, ou des panneaux IHM dans des environnements d'usine où les câbles peuvent dépasser 100 m.
  2. Systèmes de point de vente : Intégrez-vous avec des imprimantes de reçus, des lecteurs de codes-barres, ou des lecteurs de cartes utilisant des interfaces RS422.
  3. Automatisation du bâtiment : Interfacez-vous avec des contrôleurs CVC, des panneaux de contrôle d'accès, ou des systèmes d'éclairage utilisant des dorsales RS422.
  4. Acquisition de données : Collectez les lectures de capteurs depuis des instruments de terrain distants et relayez-les vers un contrôleur central ou un PC.
  5. Intégration d'équipements existants : Faites le pont entre des systèmes IoT modernes basés sur l'ESP32 S3 et d'anciens équipements industriels qui n'exposent que des ports série RS422.

Vidéo

Regardez le tutoriel vidéo étape par étape pour ce projet ESP32 S3 ci-dessous.

Défis

Maintenant que la communication RS422 fonctionne sur l'ESP32 S3, essayez ces défis pour approfondir votre compréhension.

  1. Débutant : Modifiez le code afin que l'ESP32 S3 envoie un message d'état (par exemple, "ESP32 S3 Online") via RS422 une fois par seconde, et vérifiez la réception sur le terminal.
  2. Intermédiaire : Implémentez un protocole de commande simple où le PC envoie des commandes texte (par exemple, "LED_ON", "LED_OFF") via RS422 et l'ESP32 S3 bascule une LED et répond avec un message de confirmation.
  3. Avancé : Construisez un réseau RS422 multipoint utilisant plusieurs modules TTL vers RS422 et cartes ESP32 S3, en implémentant un schéma de routage de messages basé sur des adresses afin que chaque nœud ne traite que les messages qui lui sont adressés.

Tutoriels connexes

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !