[Numérique] RS485 choix du protocole
Répondre à la discussion
Affichage des résultats 1 à 18 sur 18

RS485 choix du protocole



  1. #1
    laguchori1

    RS485 choix du protocole


    ------

    Bonjour,
    je voudrais réaliser une communication série entre un maitre et plusieurs esclaves.
    Pour cela je dois respecter certaines conditions :
    -Pas de collision
    -Heartbeat (Battement de coeur) c'est a dire que l'esclave envoie des signaux pour dire au maître qu'il va bien sans que le maître lui demande.
    Tout d'abord je dois trouver un protocole simple d'utilisation qui remplis ces conditions, comme je suis débutant j'ai du mal a trouver les informations.
    Est-ce que le MODBUS RTU est-il compatible avec ce que je demande ?
    Après si vous avez un système de communication simple et meilleur je suis preneur.
    Merci a vous

    -----

  2. #2
    Bitrode

    Re : RS485 choix du protocole

    Bonjour,
    de nos jours le CAN est devenu la référence, on en trouve même depuis quelques années sur les vélos électriques.

  3. #3
    Jack
    Modérateur

    Re : RS485 choix du protocole

    Citation Envoyé par laguchori1 Voir le message
    -Heartbeat (Battement de coeur) c'est a dire que l'esclave envoie des signaux pour dire au maître qu'il va bien sans que le maître lui demande.

    Est-ce que le MODBUS RTU est-il compatible avec ce que je demande ?
    Non, le dialogue avec Modbus est toujours à l'initiative du maitre.

    Comme suggéré, le bus CAN est un bon candidat, mais plus question de RS-485 du coup.
    Il faudrait également en savoir plus sur le cahier des charges:
    - transfert bidirectionnel des données?
    - quantité de données échangées
    - types de processeur à chaque extrémité,
    - etc.
    Dernière modification par Jack ; 20/04/2022 à 13h25.

  4. #4
    laguchori1

    Re : RS485 choix du protocole

    Merci beaucoup,
    vu que je suis débutant je cherche un protocole plus simple comme le modbus
    est ce que je peux utiliser le modbus et ajouter la gestion des collisions et le heartbeat moi meme si oui comment svp??
    Merci d'avance.

  5. A voir en vidéo sur Futura
  6. #5
    Jack
    Modérateur

    Re : RS485 choix du protocole

    Tu as lu ma réponse précédente au moins?

  7. #6
    laguchori1

    Re : RS485 choix du protocole

    oui, j'ai lu votre réponse mais en fait je n'ai pas les réponses pour l'instant parce que c'est un projet scolaire et mon encadrant de projet m'a demandé de trouver le protocole le plus simple d'utilisation dans le cas que j'ai cité plus haut.

  8. #7
    Jack
    Modérateur

    Re : RS485 choix du protocole

    Je ne vois pas comment choisir quoique ce soit sans un minimum d'informations. Donc ton encadrant veut juste faire communiquer des systèmes, mais il ne sais pas quelles données il veut y faire transférer.
    Le bus CAN n'est pas forcément hyper difficile à utiliser avec une bonne bibliothèque. Mais comme on ne sait pas sur quel(s) processeur(s) le code doit être exécuté ...

    En tout cas, faire cohabiter modbus et un autre protocole simultanément, je ne vois pas comment c'est possible. Toute tentative de communication de l'esclave va être interprétée par le maitre comme une erreur de bus.

  9. #8
    polo974

    Re : RS485 choix du protocole

    Le heartbeat, c'est pour mettre d'accord 2 maîtres dont l'un en redondance.

    Pas de collision égale un seul maître à un instant donné.

    Pour info, l'usb de base est mono maître et il fait du polling (les endpoint de type interrupt, c'est du pipo, ça cause quand le maître l'interroge).

    Bref, pourquoi pas de polling?

    Pour un truc anti collision, il faut de toute façon synchroniser et en plus gérer les absences.

    Donc type de données (taille constante quasi ou fortement variable)?
    Type de périph: permanents ou hotplug?
    ...

    Bande passante à optimiser ou largement suffisante.

    Évolution à anticiper ou système siffisement fermé/figé.


    ...
    Jusqu'ici tout va bien...

  10. #9
    laguchori1

    Re : RS485 choix du protocole

    Merci beaucoup pour votre réponse voici le cahier des charges:
    -Le type de processeur à chaque extrémité BGM 13
    -La quantité de données échangées : quelques octets 3 fois par seconde pour chacun des nœuds.
    -30 nœuds sur la liaison série.

  11. #10
    Bitrode

    Re : RS485 choix du protocole

    C'est marrant ça me fait penser aux cahiers des charges de mes clients.
    Toujours moins que le minimum

  12. #11
    laguchori1

    Re : RS485 choix du protocole

    oui malheureusement j'ai pas plus d'informations que ça...

  13. #12
    Seb.26

    Re : RS485 choix du protocole

    Citation Envoyé par laguchori1 Voir le message
    Merci beaucoup pour votre réponse voici le cahier des charges:
    -Le type de processeur à chaque extrémité BGM 13
    -La quantité de données échangées : quelques octets 3 fois par seconde pour chacun des nœuds.
    -30 nœuds sur la liaison série.
    c'est déjà un début : 30 nœuds et 3 fois "quelques" octets par seconde ...

    Admettons que "quelques" veuille dire 5 octets, ça fait 5*3*30 = 450 Bytes/s

    Donc c'est pas énorme ... un simple polling du maitre sur une RS485@115200bps devrait être overkill ...

    -Heartbeat (Battement de coeur) c'est a dire que l'esclave envoie des signaux pour dire au maître qu'il va bien sans que le maître lui demande.
    --> Quel intérêt ? ... il suffit au maitre de demander périodiquement à chaque esclave s'il va bien ...
    ... si c'est pour la redondance comme dit plus haut, il suffit au maitre#1 de dire périodiquement au maitre#2 qu'il va bien et que le maitre#2 prenne la main si le maitre#1 ne lui dit plus qu'il va bien ...

    il faudrait aussi que le maitre#2 ait la possibilité de couper le maitre#1 du bus s'il est crashé ...
    Dernière modification par Seb.26 ; 28/04/2022 à 15h40.
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  14. #13
    umfred

    Re : RS485 choix du protocole

    le heartbeat ça pourrait aussi être pour dire "coucou je suis le 31" et que le maitre l'ajoute à sa liste de nœuds à interroger (ou à l'inverse, savoir que le nœud 12 n'est plus là parce qu'il n'a pas envoyer son coucou, donc ne pas l'interroger ensuite)
    ça doit aussi pouvoir se gérer avec des timeouts et un nombre d'essai de non réponse + retentative de contact après x secondes

  15. #14
    laguchori1

    Re : RS485 choix du protocole

    Merci beaucoup pour ces explecations mais j'ai une question un peu banale parce ce que je suis débutant dans ce domaine. Vous m'avez expliquez qu'un simple polling sur un protocole RS485 est suffisant mais je sait pas les choses qui sont déja inclus dans le protocole et les choses que je doit ajouter dans le soft moi meme y compris le polling si j'adopte le modbus RTU(RS485) est ce que le polling est déja inclu ???
    et c'est quoi vraiment un protocole est ce qu'il s'agit des bibliotèques ???

  16. #15
    Bitrode

    Re : RS485 choix du protocole

    Il n'y a pas de protocole spécifique RS485, la trame sera constituée des datas que tu souhaites transférer.

  17. #16
    polo974

    Re : RS485 choix du protocole

    modbus rtu

    http://www.polier.fr/medias/files/pa...e-polier-1.pdf

    ensuite chercher dans github...
    Jusqu'ici tout va bien...

  18. #17
    Seb.26

    Re : RS485 choix du protocole

    Citation Envoyé par laguchori1 Voir le message
    Merci beaucoup pour ces explecations mais j'ai une question un peu banale parce ce que je suis débutant dans ce domaine. Vous m'avez expliquez qu'un simple polling sur un protocole RS485 est suffisant mais je sait pas les choses qui sont déja inclus dans le protocole et les choses que je doit ajouter dans le soft moi meme y compris le polling si j'adopte le modbus RTU(RS485) est ce que le polling est déja inclu ???
    et c'est quoi vraiment un protocole est ce qu'il s'agit des bibliotèques ???
    RS485 n'est pas un protocol, c'est une couche de liaison ... en gros c'est le format "electrique" des bits (voir les couche ISO).

    Exemple d'étapes de dev :
    1) le maître sait désactiver le RX, activer le TX, emmètre des octets sur le bus
    2) un esclave sait désactiver le Tx, activer le RX, recevoir des octets du bus
    3) un esclave sait désactiver le RX, activer le TX et envoyer des octets sur le bus
    4) le maître sait désactiver le Tx, activer le RX, recevoir des octets du bus
    5) test de ping-pong : le maître envoie une trame random périodiquement que l'esclave renvois modifiée

    une fois ceci fait, faut faire un protocole avec adresse des esclave, data, checksum, accusé de réception des trames, répétitions, heartbeat ...etc...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  19. #18
    laguchori1

    Re : RS485 choix du protocole

    merci infiniment pour ces explications
    j'aimerai savoir svp est ce qu'il y a des microcontroleurs (ou chip ...) qui sont dédiés pour la communication série (muli-maitres) c'est à dire qu'ils contiennent déja un protocle (buscan ou modbus ...)par défaut sans besoin d'utiliser des drivers ....????
    Merci d'avance.

Discussions similaires

  1. [Autre] Conseils choix microcontrôleur pour com RS485
    Par JeanDeuxMac dans le forum Électronique
    Réponses: 5
    Dernier message: 19/05/2021, 13h52
  2. [Programmation] choix de bus et protocole
    Par alainav1 dans le forum Électronique
    Réponses: 6
    Dernier message: 11/02/2016, 20h00
  3. Communication RS485 avec un protocole spécifique
    Par invite4e6177a6 dans le forum Électronique
    Réponses: 15
    Dernier message: 25/04/2011, 16h39
  4. Choix protocole communication pour PICs
    Par Platipu$ dans le forum Électronique
    Réponses: 10
    Dernier message: 26/11/2010, 07h22
  5. protocole normal vs protocole prioritaire
    Par invite74119562 dans le forum Électronique
    Réponses: 0
    Dernier message: 13/01/2010, 12h31
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...