Arduino Nano ESP32 - RS485
Ce tutoriel vous explique comment utiliser la communication RS485 avec l'ESP32. En détail, nous allons apprendre les aspects suivants :
- Comment connecter l'Arduino Nano ESP32 et le module TTL vers RS485.
- Comment programmer l'Arduino Nano ESP32 pour récupérer des données à partir du module TTL vers RS485.
- Comment programmer l'Arduino Nano ESP32 pour transmettre des données au module TTL vers RS485.
- Comment envoyer des données de votre PC à l'Arduino Nano ESP32 via RS485, et vice versa.
Préparation du matériel
1 | × | Arduino Nano ESP32 | |
1 | × | USB Cable Type-C | |
1 | × | TTL to RS485 Module | |
1 | × | Jumper Wires | |
1 | × | (Optional) RS485 to USB Cable | |
1 | × | (Recommended) Screw Terminal Adapter for Arduino Nano |
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos du module TTL vers RS485
Lors de l'utilisation de la communication série sur l'Arduino Nano ESP32 en utilisant des fonctions telles que Serial.print(), Serial.read() et Serial.write(), la transmission des données se fait via la broche TX, tandis que la réception des données se fait par la broche RX. Ces broches fonctionnent au niveau TTL, gérant des signaux avec une portée limitée. Par conséquent, pour une communication série sur de longues distances, il devient nécessaire de convertir le signal TTL en normes telles que RS232, RS485 ou RS422.
Dans ce tutoriel, nous allons explorer l'utilisation de RS485 (également connu sous le nom de RS-485) avec l'Arduino Nano ESP32 en utilisant un module TTL vers RS485. Ce module facilite la conversion des signaux TTL en signaux RS485 et inversement, permettant une communication fiable sur de longues distances.
Brochage
Le module RS485 vers TTL dispose de deux interfaces :
- Interface TTL (connectée à l'Arduino Nano ESP32) :
- Broche VCC : Cette broche d'alimentation doit être connectée au VCC (5V ou 3.3V).
- Broche GND : Cette broche d'alimentation doit être connectée au GND (0V).
- Broche RXD : Cette broche de données doit être connectée à une broche TX de l'Arduino Nano ESP32.
- Broche TXD : Cette broche de données doit être connectée à une broche RX de l'Arduino Nano ESP32.
- Interface RS485 :
- Broche D+ (A ou TR+) : Cette broche facilite la communication des données.
- Broche D- (B ou TR-) : Cette broche est utilisée pour la transmission des données.
- Broche GND : Bien que facultative, l'inclusion de cette broche est fortement recommandée pour atténuer les interférences de bruit, assurant des performances optimales.
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Comment programmer l'Arduino Nano ESP32 pour utiliser le module RS485
- Définir les broches du port série :
- Initialise l'interface série :
- Pour lire les données provenant de RS485, vous pouvez utiliser les fonctions suivantes :
- Pour écrire des données sur RS485, vous pouvez utiliser les fonctions suivantes :
- Et plus de fonctions à utiliser avec RS485 dans référence Serial
Code Arduino Nano ESP32
Test
Vous pouvez effectuer un test en envoyant des données depuis votre PC vers un Arduino Nano ESP32 via RS-485 et vice versa. Pour cela, suivez les étapes ci-dessous :
- Connectez Arduino Nano ESP32 à votre PC via un câble RS485-to-USB comme ci-dessous :
- Ouvrez le programme de terminal série et configurez les paramètres série (port COM, baurate...)
- Tapez des données depuis le terminal série pour les envoyer à l'ESP32.
- Si l'opération est réussie, vous verrez les données en écho sur le terminal série.