Arduino, Tutoriels

MAX485 : Comment utiliser le Module de Conversion TTL / RS485 avec Arduino

Module de conversion TTL / RS485 à MAX485 avec Arduino

Introduction:

Module de conversion d’interface UART TTL – RS-485 basé sur la puce MAX485 est un outil essentiel pour établir des communications série fiables entre des dispositifs Arduino et d’autres équipements industriels utilisant le protocole RS-485. Ce projet vise à expliquer en détail comment utiliser ce module avec Arduino, en fournissant des instructions étape par étape pour la mise en place d’une communication bidirectionnelle et en démontrant un exemple pratique de communication entre deux Arduino via RS-485.

Aperçu de RS-485 et MAX485 :

Le standard RS-485 est un protocole de communication série largement utilisé pour relier des appareils industriels à une distance allant jusqu’à 1,2 km. Cette norme permet de connecter jusqu’à 32 dispositifs en un seul réseau, avec un dispositif maître (master) et plusieurs dispositifs esclaves (slaves). La communication est réalisée sur une paire torsadée de câbles. Le module MAX485 convertit les signaux UART TTL d’Arduino en signaux RS-485 et vice versa, facilitant ainsi la communication avec des équipements industriels.

Module de conversion d'interface UART TTL - RS-485 basé sur la puce MAX485 est un outil essentiel pour établir des communications série fiables entre des dispositifs Arduino et d'autres équipements industriels utilisant le protocole RS-485.
Module de conversion TTL / RS485 à MAX485

Caractéristiques techniques:

Le module de conversion TTL / RS-485 présente les caractéristiques techniques suivantes:

  • Tension d’alimentation: 5 V
  • Courant de consommation: 10 mA (en fonctionnement) / 5 mA (en attente)
  • Vitesse de transmission des données: jusqu’à 2,5 Mbit/s
  • Plage de température de fonctionnement: 0-70 °C
  • Dimensions: 44x14x20 mm
Pin out of Module de conversion TTL / RS485 à MAX485.
Pinout of Module de conversion TTL / RS485 à MAX485

Schéma de connexion:

Le module TTL / RS-485 peut être facilement connecté à une carte Arduino en utilisant la bibliothèque SoftwareSerial. Le schéma de connexion est le suivant:

Module TTL / RS-485    Arduino
        Vcc         ->    5V
        GND         ->    GND
        DI          ->    RX (pin 7)
        RO          ->    TX (pin 6)
        DE          ->    Digital pin 10
        RE          ->    Digital pin 10
Schéma de câblage Module de conversion TTL / RS485 avec Arduino.
Schéma de câblage Module de conversion TTL / RS485 avec Arduino

Programmation Arduino:

Le code Arduino ci-dessous permettra à l’Arduino de fonctionner en tant qu’appareil esclave (slave) sur le réseau RS-485. Le code surveille un bouton poussoir sur le pin 12, et lorsqu’il est pressé, il envoie une commande à l’Arduino maître (master) pour changer l’état d’une LED connectée à l’Arduino maître sur le pin 12.

#include <SoftwareSerial.h>

SoftwareSerial RS485Serial(7, 6);

const int PIN_DIR = 10;
const int BTN = 12;
boolean prevBTN = 0;
boolean curBTN = 0;
boolean ledOn = false;

void setup() {
  pinMode(PIN_DIR, OUTPUT);
  digitalWrite(PIN_DIR, HIGH); // Mode transmission
  Serial.begin(9600);
  RS485Serial.begin(9600);
}

void loop() {
  curBTN = debounce(prevBTN);
  
  if (prevBTN == LOW && curBTN == HIGH) {
    ledOn = !ledOn;
    if (ledOn)
      RS485Serial.println("1=1");
    else
      RS485Serial.println("1=0");
  }
  
  prevBTN = curBTN;
}

boolean debounce(boolean prev) {
  boolean cur = digitalRead(BTN);
  
  if (prev != cur) {
    delay(5);
    cur = digitalRead(BTN);
    return cur;
  }
}

Le code permet à l’Arduino esclave de détecter l’appui sur le bouton et d’envoyer la commande appropriée (1=1 pour allumer la LED, 1=0 pour l’éteindre) à l’Arduino maître via la communication RS-485.

Connexion à l’ordinateur:

Pour communiquer avec l’Arduino via RS-485, nous avons besoin d’un adaptateur USB – RS485. Ce module doit être connecté à l’ordinateur via un port USB, et l’Arduino doit être connecté au module RS-485 comme décrit dans le schéma de connexion ci-dessus.

Communication PC-Arduino:

Une fois les connexions correctement effectuées, vous pouvez utiliser un logiciel de terminal série (par exemple, ComPortToolkit) pour envoyer des commandes à l’Arduino via RS-485. Dans notre exemple, si vous envoyez “1” depuis le terminal, l’Arduino répondra avec “OK” pour indiquer que la commande a été reçue avec succès.

Connexion de deux Arduino:

Pour démontrer la communication bidirectionnelle via RS-485, connectez deux Arduino avec des modules MAX485 chacun. L’un des Arduino sera configuré comme maître et l’autre comme esclave. En utilisant des messages spécifiques, l’Arduino maître peut contrôler des actions sur l’Arduino esclave, par exemple, allumer ou éteindre une LED.

RS485 07

Conclusion:

Le module de conversion d’interface UART TTL – RS-485 à MAX485 est un outil puissant pour établir une communication série robuste entre des dispositifs Arduino et d’autres équipements industriels via RS-485. Grâce à ce projet, vous avez appris à configurer la communication RS-485 entre Arduino et un ordinateur, ainsi qu’entre deux Arduino. Vous pouvez maintenant appliquer ces connaissances pour étendre vos projets à des applications industrielles et de communication à longue distance. Bonne création!

Vidéo descriptif

Lien outilles

  1. Téléchargement de l’Arduino IDE : https://www.arduino.cc/en/software
  2. Pour plus d’articles : https://www.moussasoft.com/tutoriels-electroniques
  3. TwitterMoussa Lhoussaine (@Moussasoft_com) / Twitter

Arduino – Home