Connexion PC 485. Interfaces physiques RS485 et RS422. Ce qu'il faut considérer

Description détaillée de la norme EIA485 (RS485)

1. Récepteur asynchrone universel (UART)

La communication via un port série asynchrone appartient peut-être au passé, mais il est difficile de trouver un contrôleur qui n'inclut pas d'UART dans ses périphériques. Je pense donc qu’il est trop tôt pour l’enterrer. Si tel est le cas, il serait utile de dire quelques mots sur son fonctionnement. Une description de l'implémentation spécifique du port série se trouve dans la fiche technique de chaque contrôleur, je vais donc la décrire commune à tous.

UART peut être divisé en un récepteur (Receiver) et un émetteur (Transmitter). L'UART comprend : un générateur d'horloge de communication (générateur de débit en bauds), des registres de contrôle, des registres d'état, des tampons et des registres à décalage du récepteur et de l'émetteur. Le générateur de taux de suralimentation définit la fréquence d'horloge de l'émetteur-récepteur pour une vitesse de communication donnée. Les registres de contrôle définissent le mode de fonctionnement du port série et ses interruptions. Le registre d'état définit des indicateurs pour divers événements. Le caractère reçu va dans le tampon du récepteur et le caractère transmis est placé dans le tampon de l'émetteur. Le registre à décalage de l'émetteur est un clip à partir duquel les bits du symbole transmis (trame) sont envoyés vers le port série. Le registre à décalage de bits du récepteur accumule les bits reçus du port. Pour divers événements, des indicateurs sont définis et des interruptions sont générées (fin de la réception/envoi de trame, libération du tampon, erreurs diverses).

UART est une interface full-duplex, c'est-à-dire que le récepteur et l'émetteur peuvent fonctionner simultanément, indépendamment l'un de l'autre. Chacun d’eux dispose d’un port qui lui est attribué – une jambe de contrôleur. Le port du récepteur est désigné RX, le port émetteur est désigné TX. En réglant séquentiellement les niveaux sur ces ports par rapport au fil commun (« masse »), les informations sont transmises. Par défaut, l'émetteur règle le niveau de ligne sur l'unité. La transmission commence par l'envoi d'un bit de niveau zéro (bit de démarrage), puis les bits de données avancent avec le bit de poids faible (niveau bas - "0", niveau haut - "1"), l'envoi se termine par la transmission de un ou deux bits avec un seul niveau (bits d'arrêt).

Le signal électrique d’un repère parcellaire ressemble à ceci :

Avant que la communication entre deux appareils puisse commencer, leurs émetteurs-récepteurs doivent être configurés pour avoir la même vitesse de communication et le même format de trame.

La vitesse de communication ou débit en bauds est mesurée en bauds - le nombre de bits transmis par seconde (y compris les bits de démarrage et d'arrêt). Cette vitesse est définie dans le générateur de taux de suralimentation en divisant la fréquence du système par le coefficient spécifié. Plage de vitesse typique : 2 400 ... 115 200 bauds.

Le format de trame détermine le nombre de bits d'arrêt (1 ou 2), le nombre de bits de données (8 ou 9) et l'objectif du neuvième bit de données. Tout dépend du type de contrôleur.

Le récepteur et l'émetteur sont généralement cadencés avec une fréquence 16 fois supérieure à la fréquence. Ceci est nécessaire pour échantillonner le signal. Le récepteur, après avoir capté le front descendant du bit de départ, compte plusieurs cycles d'horloge et les trois cycles d'horloge suivants lisent (échantillonnent) le port RX. C'est exactement le milieu du temps de départ. Si la majorité des valeurs d'échantillon sont "0", le bit de départ est considéré comme valide, sinon le récepteur le prend pour du bruit et attend le prochain front descendant. Après avoir déterminé avec succès le bit de départ, le récepteur échantillonne également le milieu des bits de données et compte le bit « 0 » ou « 1 » pour la plupart des échantillons, en les écrivant dans le registre à décalage. Les bits d'arrêt sont également échantillonnés, et si le niveau du bit d'arrêt n'est pas « 1 », l'UART détecte une erreur de trame et définit l'indicateur correspondant dans le registre de contrôle.


Étant donné que le taux de boost est défini en divisant la fréquence du système, lors du transfert du programme vers un appareil doté d'un résonateur à quartz différent, il est nécessaire de modifier les paramètres UART correspondants.

2.Interface RS-485

L'interface RS-485 (un autre nom est EIA/TIA-485) est l'une des normes de couche de communication physique les plus courantes. La couche physique est un canal de communication et une méthode de transmission du signal (couche 1 du modèle d'interconnexion des systèmes ouverts OSI).

Un réseau construit sur l'interface RS-485 se compose d'émetteurs-récepteurs connectés à l'aide d'une paire torsadée - deux fils torsadés. L'interface RS-485 est basée sur le principe de transmission de données différentielle (équilibrée). Son essence est de transmettre un signal sur deux fils. De plus, un fil (conditionnellement A) transporte le signal original et l'autre (conditionnellement B) transporte sa copie inverse. Autrement dit, s’il y a un « 1 » sur un fil, alors un « 0 » sur l’autre et vice versa. Ainsi, il y a toujours une différence de potentiel entre les deux fils d'une paire torsadée : à « 1 » elle est positive, à « 0 » elle est négative.


C'est cette différence de potentiel qui transmet le signal. Cette méthode de transmission offre une immunité élevée aux interférences en mode commun. L'interférence de mode commun est une interférence qui affecte également les deux fils de la ligne. Par exemple, une onde électromagnétique traversant une section d’une ligne de communication induit un potentiel dans les deux fils. Si le signal est transmis par le potentiel d'un fil par rapport au commun, comme dans RS-232, alors les interférences sur ce fil peuvent déformer le signal par rapport au commun (terre) qui absorbe bien les interférences. De plus, la différence de potentiel de terre chutera à travers la résistance d'un long fil commun - une source supplémentaire de distorsion. Et avec la transmission différentielle, aucune distorsion ne se produit. En fait, si deux fils sont proches l’un de l’autre et sont même entrelacés, alors la prise sur les deux fils est la même. Le potentiel dans les deux fils également chargés change de la même manière, tandis que la différence de potentiel informative reste inchangée.

Implémentation matérielle de l'interface - puces émetteur-récepteur avec entrées/sorties différentielles (vers la ligne) et ports numériques (vers les ports UART du contrôleur). Il existe deux options pour cette interface : RS-422 et RS-485.

RS-422 est une interface full duplex. La réception et la transmission s'effectuent sur deux paires de fils distinctes. Il ne peut y avoir qu'un seul émetteur sur chaque paire de fils.

RS-485 est une interface semi-duplex. La réception et la transmission s'effectuent sur une paire de fils avec une séparation temporelle. Il peut y avoir de nombreux émetteurs dans un réseau, car ils peuvent être désactivés en mode réception.


D (pilote) - émetteur ;
R (récepteur) - récepteur ;
DI (driver input) - entrée numérique de l'émetteur ;
RO (sortie du récepteur) - sortie numérique du récepteur ;
DE (activation du conducteur) - autorisation d'utiliser l'émetteur ;
RE (activation du récepteur) - autorisation d'utiliser le récepteur ;
A - entrée/sortie différentielle directe ;
B - entrée/sortie différentielle inverse ;
Y - sortie différentielle directe (RS-422) ;
Z - sortie différentielle inverse (RS-422).

Je m'attarderai plus en détail sur l'émetteur-récepteur RS-485. La sortie numérique du récepteur (RO) est connectée au port UART du récepteur (RX). Entrée numérique de l'émetteur (DI) vers le port de l'émetteur UART (TX). Étant donné que le récepteur et l'émetteur sont connectés du côté différentiel, l'émetteur doit être éteint pendant la réception et le récepteur doit être éteint pendant la transmission. À cette fin, des entrées de contrôle sont utilisées - autorisation du récepteur (RE) et autorisation de l'émetteur (DE). Puisque l'entrée RE est inversée, elle peut être connectée à DE et commuter le récepteur et l'émetteur avec un signal provenant de n'importe quel port du contrôleur. Au niveau "0" - travail pour la réception, au "1" - pour la transmission.


Le récepteur, recevant la différence de potentiel (UAB) aux entrées différentielles (AB), les convertit en un signal numérique à la sortie RO. La sensibilité du récepteur peut être différente, mais les fabricants de puces d'émetteur-récepteur écrivent dans la documentation la plage seuil garantie pour la reconnaissance du signal. Généralement, ces seuils sont de ±200 mV. Autrement dit, lorsque UAB > +200 mV, le récepteur détecte "1" lorsque UAB< -200 мВ - приемник определяет "0". Если разность потенциалов в линии настолько мала, что не выходит за пороговые значения - правильное распознавание сигнала не гарантируется. Кроме того, в линии могут быть и не синфазные помехи, которые исказят столь слабый сигнал.

Tous les appareils sont connectés à un câble à paire torsadée de la même manière : sorties directes (A) à un fil, sorties inverses (B) à l'autre.

L'impédance d'entrée du récepteur côté ligne (RAB) est généralement de 12 KΩ. La puissance de l'émetteur n'étant pas illimitée, cela crée une limite sur le nombre de récepteurs connectés à la ligne. Selon la spécification RS-485, en tenant compte des résistances de terminaison, l'émetteur peut piloter jusqu'à 32 récepteurs. Cependant, il existe un certain nombre de microcircuits avec une impédance d'entrée accrue, ce qui vous permet de connecter beaucoup plus de 32 appareils à la ligne.

La vitesse de communication maximale selon la spécification RS-485 peut atteindre 10 Mbauds/sec. La distance maximale est de 1 200 M. S'il est nécessaire d'organiser la communication à une distance supérieure à 1 200 M ou de connecter plus d'appareils que la capacité de charge de l'émetteur ne le permet, des répéteurs spéciaux sont utilisés.

Paramètres d'interface standard RS-422 RS-485
Nombre autorisé d'émetteurs/récepteurs 1 / 10 32 / 32
Longueur maximale du câble 1200 m 1200 m
Vitesse de communication maximale 10 Mbit/s 10 Mbit/s
Plage de tension du transmetteur "1" +2...+10V +1,5...+6 V
Plage de tension "0" du transmetteur -2...-10V -1,5...-6V
Plage de tension en mode commun de l'émetteur -3...+3V -1...+3V
Plage de tension acceptable du récepteur -7...+7V -7...+12V
Plage de seuil de sensibilité du récepteur ±200 mV ±200 mV
Courant de court-circuit maximum du pilote 150 mA 250 mA
Résistance de charge admissible du transmetteur 100 ohms 54 ohms
Impédance d'entrée du récepteur 4 kOhms 12 kOhms
Temps de montée maximum du signal de l'émetteur 10% peu 30 % peu
3. Coordination et configuration de la ligne de communication

À de grandes distances entre des appareils connectés via une paire torsadée et à des vitesses de transmission élevées, les effets dits de longue ligne commencent à apparaître. La raison en est la vitesse limitée de propagation des ondes électromagnétiques dans les conducteurs. Cette vitesse est nettement inférieure à la vitesse de la lumière dans le vide et est légèrement supérieure à 200 mm/ns. Le signal électrique a également tendance à être réfléchi depuis les extrémités ouvertes de la ligne de transmission et ses branches. Une analogie approximative est une tranchée remplie d’eau. L'onde créée à une extrémité se déplace le long du creux et, après avoir été réfléchie par le mur à l'extrémité, revient, est réfléchie à nouveau, et ainsi de suite jusqu'à disparaître. Pour les lignes courtes et les faibles vitesses de transmission, ce processus se produit si rapidement qu’il passe inaperçu. Cependant, le temps de réponse des récepteurs est de plusieurs dizaines/centaines de ns. Sur une telle échelle de temps de plusieurs dizaines de mètres, le signal électrique ne circule pas instantanément. Et si la distance est suffisamment grande, le front du signal réfléchi à l’extrémité de la ligne et renvoyé peut déformer le signal actuel ou suivant. Dans de tels cas, vous devez d'une manière ou d'une autre supprimer l'effet de réflexion.

La science du génie électrique offre une solution à ce problème. Toute ligne de communication possède un paramètre tel que l'impédance caractéristique Zv. Cela dépend des caractéristiques du câble utilisé, mais pas de sa longueur. Pour les paires torsadées habituellement utilisées dans les lignes de communication Zв = 120 Ohm. Il s'avère que si à l'extrémité éloignée de la ligne, entre les conducteurs de la paire torsadée, vous allumez une résistance d'une valeur égale à l'impédance caractéristique de la ligne, alors l'onde électromagnétique qui atteint la « voie sans issue » est absorbé par une telle résistance. D'où son nom - résistance correspondante ou "terminateur".

L'effet de réflexion et la nécessité d'une correspondance appropriée imposent des limites à la configuration du lien.

La ligne de communication doit être un câble à paire torsadée. Tous les récepteurs et émetteurs sont connectés à ce câble. La distance entre la ligne et les puces d'interface RS-485 doit être aussi courte que possible, car les longues branches introduisent des discordances et provoquent des réflexions.

Des résistances correspondantes Rt de 120 Ohms (0,25 W) sont incluses aux deux extrémités les plus éloignées du câble (Zв = 120 Ohm). S'il n'y a qu'un seul émetteur dans le système et qu'il est situé à l'extrémité de la ligne, une résistance de terminaison à l'extrémité opposée de la ligne suffit. Vous pouvez en savoir plus sur les configurations réseau correctes et incorrectes dans l'article « Câblage correct des réseaux RS-485 ».


4. Compensation de protection

Comme déjà mentionné, les récepteurs de la plupart des microcircuits RS-485 ont une plage de reconnaissance du signal seuil aux entrées A-B de ±200 mV. Si |Uab| est inférieur au seuil (environ 0), alors la sortie du récepteur RO peut avoir des niveaux logiques arbitraires en raison d'interférences déphasées. Cela peut se produire soit lorsque le récepteur est déconnecté de la ligne, soit lorsqu'il n'y a aucun émetteur actif sur la ligne, lorsque personne ne règle le niveau. Pour éviter d'émettre des signaux erronés au récepteur UART dans ces situations, il est nécessaire de garantir une différence de potentiel Uab > +200 mV aux entrées A-B. Cette polarisation, en l'absence de signaux d'entrée, fournit un "1" logique à la sortie du récepteur, maintenant ainsi le niveau du bit d'arrêt.

C'est facile à réaliser : l'entrée directe (A) doit être connectée à l'alimentation et l'entrée inverse (B) à la terre. Le diviseur résultant est :


Rin - résistance d'entrée du récepteur (généralement 12 kOhm) ;
Rc - résistances correspondantes (120 Ohm) ;
Rзс - résistances de polarisation de protection.

Les valeurs de résistance des résistances de polarisation de protection (Rzc) peuvent être facilement calculées à l'aide du diviseur. Il faut s'assurer que Uab > 200mV. Tension d'alimentation - 5V. La résistance du bras central est de 120Ohm//120Ohm//12KOhm pour chaque récepteur - environ 57 Ohms (pour 10 récepteurs). Ainsi, cela revient à environ 650 Ohms pour chacun des deux Rзс. Pour polariser avec une marge, la résistance Rзс doit être inférieure à 650 Ohms. Traditionnellement, ils fixent 560 Ohms.

Attention : lors du calcul de la cote Rзс, la charge est prise en compte. S'il y a de nombreux récepteurs connectés à la ligne, la valeur de Rзс devrait être inférieure. Dans les lignes de transmission longues, il faut également prendre en compte la résistance de la paire torsadée, qui peut « consommer » une partie de la différence de potentiel de polarisation pour les appareils éloignés du point de serrage. Pour une longue ligne, il est préférable de placer deux jeux de résistances de rappel aux deux extrémités distantes, à côté des terminateurs.

De nombreux fabricants d'émetteurs-récepteurs revendiquent une fonction de sécurité sur leurs produits grâce à un biais intégré. Deux types de protection doivent être distingués :

Fiabilité en circuits ouverts.(Sécurité en circuit ouvert.) Ces émetteurs-récepteurs utilisent des résistances de rappel intégrées. Ces résistances sont généralement à haute résistance pour réduire la consommation de courant. Pour cette raison, la polarisation requise n'est fournie que pour les entrées différentielles ouvertes (non chargées). En fait, si le récepteur est déconnecté de la ligne ou s'il n'est pas chargé, il ne reste dans le bras central du diviseur qu'une grande résistance d'entrée, à laquelle la différence de potentiel requise chute. Cependant, si l'émetteur-récepteur est chargé sur une ligne avec deux résistances correspondantes de 120 Ohms, alors le bras diviseur moyen s'avère être inférieur à 60 Ohms, sur lequel, par rapport aux pull-ups à haute impédance, rien de significatif ne chute. Par conséquent, s'il n'y a pas d'émetteurs actifs sur la ligne chargée, les résistances intégrées ne fourniront pas une polarisation suffisante. Dans ce cas, il reste nécessaire d'installer des résistances de polarisation de protection externes, comme décrit ci-dessus.

Une vraie fiabilité.(Véritable sécurité intégrée.) Dans ces appareils, les seuils de reconnaissance du signal eux-mêmes sont décalés. Par exemple : -50 / -200 mV au lieu des seuils standards ±200 mV. Autrement dit, lorsque Uab>-50 mV, la sortie du récepteur RO sera un « 1 » logique et lorsque Uab<-200 - на RO будет "0". Таким образом, и в разомкнутой и в пассивной линии при разности потенциалов Uab близкой к нулю, приемник выдаст "1". Для таких приемопередатчиков внешнее защитное смещение не требуется. Тем не менее, для лучшей помехозащищенности все-таки стоит дополнительно немного подтягивать линию.

L'inconvénient de la polarisation de protection externe est immédiatement visible : le courant circulera constamment à travers le diviseur, ce qui peut être inacceptable dans les systèmes à faible consommation. Dans ce cas, vous pouvez procéder comme suit :

UN). Réduisez la consommation de courant en augmentant la résistance Rзс. Bien que les fabricants d'émetteurs-récepteurs parlent d'un seuil de reconnaissance de 200 mV, en pratique, 100 mV, voire moins, suffisent. Ainsi, vous pouvez immédiatement augmenter la résistance Rзс de deux à trois fois. Dans ce cas, l'immunité au bruit est quelque peu réduite, mais dans de nombreux cas, cela n'est pas critique.

b). Utilisez de véritables émetteurs-récepteurs à sécurité intégrée avec des seuils de reconnaissance décalés. Par exemple, les microcircuits MAX3080 et MAX3471 ont des seuils : -50mV / -200mV, qui garantissent un niveau unité en sortie du récepteur en l'absence d'offset (Uab = 0). Ensuite, les résistances de polarisation de protection externes peuvent être supprimées ou leur résistance peut être considérablement augmentée.

V). N'utilisez pas d'adaptation de résistance sauf si nécessaire. Si la ligne n'est pas chargée à 2 x 120 ohms, des pull-ups de plusieurs kilo-ohms suffiront à fournir une polarisation de protection, en fonction du nombre de récepteurs sur la ligne.

Pour une ligne opto-isolée, elle doit être tirée jusqu'à l'alimentation et à la terre de la ligne isolée. Si l'isolation optique n'est pas utilisée, vous pouvez la brancher sur n'importe quelle alimentation, car le diviseur ne créera qu'une petite différence de potentiel entre les lignes A et B. Il vous suffit de vous rappeler de l'éventuelle différence de potentiel entre les « masses » des appareils. situés loin les uns des autres.

5. Exclusion de réception lors de la transmission en mode semi-duplex

Lorsque vous travaillez avec une interface RS-485 semi-duplex (réception et transmission sur une paire de fils avec un intervalle de temps), vous pouvez oublier que l'UART du contrôleur est en duplex intégral, c'est-à-dire qu'il reçoit et transmet indépendamment et simultanément .

Généralement, pendant que l'émetteur-récepteur RS-485 transmet, la sortie du récepteur RO est commutée sur le troisième état et la branche RX du contrôleur (récepteur UART) « reste en l'air ». En conséquence, pendant la transmission au récepteur UART, au lieu du niveau de bit d'arrêt (« 1 »), il y aura quelque chose d'inconnu et toute interférence sera considérée comme un signal d'entrée. Par conséquent, vous devez soit éteindre le récepteur UART (via le registre de contrôle) pendant la transmission, soit augmenter RX à un. Pour certains microcontrôleurs, cela peut être fait par programme - activez les pull-ups de port intégrés.


Remarque : le microcontrôleur AT90S8535 (AVR Atmel) a un problème : lorsque l'UART est désactivé, il reçoit toujours, et après avoir activé la réception, le premier octet reçu peut être corrompu. Il doit donc absolument activer le pull-up RX.

6. Connexion "à chaud" à la ligne de communication

Pour autant que je sache, la spécification RS-485 ne prévoit pas de branchement « à chaud » – c'est-à-dire l'ajout de nouveaux émetteurs-récepteurs à la ligne de communication pendant que le système est en cours d'exécution. Cependant, le système tolère une telle opération presque sans douleur, si l'on prend en compte une nuance. Ceci est important lorsque l'alimentation est fournie à l'appareil au moment de la connexion, par exemple lorsqu'une carte de type cassette est insérée dans un connecteur. Le fait est que lors de toute réinitialisation : à la mise sous tension, au signal sur l'entrée « Reset », au déclenchement de la minuterie de surveillance, le contrôleur a besoin d'un temps d'initialisation, qui peut aller jusqu'à plusieurs dizaines de millisecondes. Lorsque le contrôleur est dans l'état de réinitialisation, il force tous les ports à être entrés. Il en résulte une situation dans laquelle l'alimentation est déjà fournie à la puce de l'émetteur-récepteur RS-485, mais les entrées d'activation du récepteur /RE et de l'émetteur DE sont « suspendues en l'air ». En conséquence, l'émetteur-récepteur peut s'ouvrir pour la transmission en raison d'interférences et, pendant que le microcontrôleur est éteint, libérer des déchets dans la ligne de fonctionnement. Il est facile d'éviter cela : utilisez simplement une résistance de plusieurs kilo-ohms pour ramener l'entrée de résolution /RE du récepteur à zéro. Cela garantit que l'émetteur-récepteur est immédiatement configuré pour recevoir lorsque l'appareil est allumé et n'interfère pas avec la ligne.


7. Recommandations pour l'organisation du protocole de communication

Au niveau physique, la ligne de communication est prête à fonctionner, mais un protocole est également nécessaire - un accord entre les appareils du système sur le format des colis.

En raison de la nature de l'interface RS-485, les appareils ne peuvent pas transmettre simultanément - il y aura un conflit entre les émetteurs. Il est donc nécessaire de répartir le droit de transmettre entre les appareils. D'où la division principale : échange centralisé (mono-maître) et décentralisé (multi-maître).

Dans un réseau centralisé, un appareil est toujours le maître (maître). Il génère des requêtes et des commandes vers d'autres appareils (esclaves). Les appareils esclaves ne peuvent transmettre que sur commande du maître. En règle générale, les échanges entre esclaves se font uniquement via le maître, même si pour accélérer l'échange, il est possible d'organiser le transfert de données d'un esclave à un autre sur commande du maître.

Dans un réseau décentralisé, le rôle du leader peut être transféré d'un appareil à l'autre soit par une sorte d'algorithme de mise en file d'attente, soit par commande du leader actuel au suivant (en passant le jeton de leader). Dans ce cas, l'appareil esclave peut, dans sa réponse au maître, envoyer une requête pour passer en mode maître et attendre une autorisation ou une interdiction.

Le canal série, selon les normes du contrôleur, est une chose lente. À 9 600 bauds, il faut plus d'une milliseconde pour transmettre un caractère. Par conséquent, lorsque le contrôleur est fortement chargé de calculs et ne doit pas les arrêter pendant l'échange via UART, vous devez utiliser des interruptions à la fin de la réception et de la transmission d'un caractère. Vous pouvez allouer de l'espace en mémoire pour générer un message de transmission et stocker un message reçu (tampon d'envoi), ainsi que des pointeurs vers la position du caractère actuel. Les interruptions à la fin de la réception ou de la transmission d'un caractère appellent les sous-programmes correspondants, qui transmettent ou stockent le caractère suivant avec un déplacement du pointeur et vérifient le signe de fin du message, après quoi ils redonnent le contrôle au programme principal jusqu'à la prochaine interruption. Une fois l'envoi ou la réception de l'ensemble du package terminé, soit un indicateur utilisateur est généré, traité dans la boucle du programme principal, soit le sous-programme de traitement des messages est immédiatement appelé.

Dans le cas général, un message envoyé sur un canal série se compose d'octets de contrôle (synchronisation du message, adresses de l'expéditeur et du destinataire, somme de contrôle, etc.) et des octets de données proprement dits.

Il existe de nombreux protocoles et vous pouvez en proposer encore plus, mais il est préférable d'utiliser les plus couramment utilisés. L'un des protocoles de communication série standard est MODBUS et est pris en charge par de nombreux fabricants de contrôleurs industriels. Mais si vous avez littéralement besoin « d'envoyer deux octets » ou simplement de maîtriser les méthodes de communication et que vous ne voulez pas étudier le système de commande modbas et écrire un pilote pour celui-ci, je propose des options pour des protocoles relativement simples. (Néanmoins, à l'avenir, cela vaut la peine de se concentrer sur MODBUS.)

La tâche principale dans l'organisation du protocole est de forcer tous les appareils à faire la distinction entre les octets de contrôle et les octets de données. Par exemple, un périphérique esclave, recevant un flux d'octets sur la ligne, doit comprendre où commence le message, où se trouve la fin et à qui il est adressé.

1). On trouve souvent des protocoles basés sur le code ASCII. Les caractères de contrôle et les données sont transmis sous forme de caractères ASCII ordinaires. Le package pourrait ressembler à ceci :

Sous forme HEX : 3Ah 31h 32h 52h 53h 34h 38h 35h 0Dh Sous forme ASCII : ":" "1" "2" "R" "S" "4" "8" "5" /PS/

Au début, le caractère de contrôle pour le début de l'envoi est ":", les deux chiffres suivants sont l'adresse du destinataire (12), puis les caractères de données (RS485) et à la fin - le caractère de contrôle pour la fin de l'envoi. envoi de 0Dh (saut de ligne). Tous les appareils sur la ligne, ayant reçu le symbole « : », commencent à écrire le message en mémoire jusqu'au caractère de fin de ligne 0Dh. Ensuite, ils comparent l'adresse du colis avec leur adresse. L'appareil avec l'adresse correspondante traite les données du colis, le reste ignore le colis. Les données peuvent contenir n'importe quel caractère à l'exception des caractères de contrôle (":", 0Dh).

L'avantage de ce protocole est la commodité du débogage du système et la facilité de synchronisation des messages. Vous pouvez connecter la ligne au port COM de votre ordinateur via un convertisseur RS485-RS232 et voir toutes les informations qui passent « en langage humain » dans n'importe quel terminal. Inconvénients - la taille relativement grande du colis lors de la transmission d'une grande quantité d'informations binaires, car deux caractères ASCII sont nécessaires pour transmettre chaque octet (7Fh - "7", "F"). De plus, il est nécessaire de convertir les données binaires en ASCII et vice versa.

2). Il est possible d'organiser un protocole avec transmission directe de données binaires. Dans ce cas, les caractères de contrôle et les octets de données sont distingués en définissant un neuvième bit supplémentaire dans l'UART. Pour les caractères de contrôle, ce bit est mis à "1". Le premier caractère de contrôle avec un seul neuvième bit est transmis dans le colis - ses bits « normaux » restants peuvent contenir l'adresse de l'appareil destinataire, un signe du début/de la fin du colis et autre chose. Les octets de données sont ensuite transmis avec le neuvième bit zéro. Tous les appareils récepteurs reconnaissent le caractère de contrôle par le neuvième bit et déterminent à qui les données suivantes sont adressées par le contenu de ses bits restants. Le périphérique adressé accepte les données et tous les autres les ignorent jusqu'au prochain caractère de contrôle.

L'UART de certains contrôleurs, par exemple C167 (Infineon), peut, dans un mode spécial (réveil), reconnaître automatiquement le neuvième bit de l'octet reçu et générer une interruption lorsque seul un caractère de contrôle est reçu. Dans ce cas, l'appareil adressé doit être basculé en mode de réception normal jusqu'au prochain caractère de contrôle. Cela permet à d'autres appareils de gagner du temps sur le traitement des interruptions lors de la réception d'octets de données qui ne leur étaient pas adressés.

Si vous devez coupler le système et l'ordinateur avec Windows, il est préférable de ne pas utiliser ce protocole, car Windows peut avoir des difficultés à reconnaître le neuvième bit de l'UART.

3) Le protocole peut être « purement » binaire, c'est-à-dire sans caractères de contrôle spéciaux. Dans ce cas, la synchronisation des colis peut être effectuée en suivant la pause entre les octets reçus. L'appareil de réception compte le temps écoulé entre la dernière fois qu'un octet a été reçu jusqu'au suivant, et si cette pause est supérieure à une certaine valeur (par exemple, 1,5 à 3,5 octets), il est conclu que le message précédent a été perdu. et une nouvelle a commencé. Même si l'envoi précédent n'était pas terminé, le tampon de réception est réinitialisé. Vous pouvez également synchroniser les envois à l'aide d'une séquence de démarrage unique d'octets (similaire au caractère de démarrage du protocole ASCII). Dans de tels protocoles, des mesures spéciales doivent être prises pour se protéger contre la réception d'un faux message initié en raison d'une interférence.

8. Méthodes logicielles pour gérer les pannes

Pour augmenter la fiabilité des communications, il est impératif de fournir des méthodes logicielles permettant de gérer les pannes. Ils peuvent être divisés en deux groupes : la protection contre la désynchronisation et le contrôle de fiabilité.

1). Protection contre la désynchronisation. Malgré le biais de protection, de fortes interférences peuvent pénétrer dans la ligne sans émetteurs actifs et perturber la séquence correcte de réception des messages. Il est ensuite nécessaire de faire comprendre aux appareils récepteurs le premier message normal et de les empêcher de confondre l'interférence avec un message. Cela se fait en utilisant la synchronisation de trame (pause active) et la synchronisation d'envoi (préambule).

Protection contre la désynchronisation des trames. Mesure obligatoire ! Toutes les mesures ultérieures de synchronisation des colis n'ont de sens qu'en conjonction avec celle-ci. Une interférence avec un bit de faux départ peut perturber la réception correcte des trames suivantes. Pour revenir à la séquence correcte, vous devez faire une pause entre la mise sous tension de l'émetteur-récepteur pour transmettre et l'envoi des données. Pendant tout ce temps, l'émetteur maintient un niveau élevé dans la ligne, à travers lequel il est difficile aux interférences de passer (pause active). Une pause d'1 image à une vitesse de communication donnée (10-11 bits) suffira pour que tout appareil recevant des interférences reçoive un bit d'arrêt. Ensuite, la trame suivante sera reçue à partir du bit de départ normal.


Le même effet peut être obtenu en transmettant le symbole FFh avant le premier octet du colis, car à l'exception du bit de départ, tous ses bits sont à « 1 ». (Si le bit de départ du symbole FFh tombe sur le bit d'arrêt d'une fausse trame, une erreur de trame sera simplement comptée).

Protection contre la désynchronisation des colis. Utilisé en conjonction avec la protection précédente ! Une interférence particulièrement sournoise peut se faire passer pour un personnage de contrôle et perturber un message reçu ultérieurement. De plus, l'envoi précédent peut être interrompu. Pour cette raison, il est hautement souhaitable de prévoir des mesures dans le sous-programme de réception et de sauvegarde des données pour reconnaître le début réel de l'envoi et réinitialiser le tampon d'envoi de réception (la zone mémoire dans laquelle les octets reçus sont enregistrés). A cet effet, un préambule est utilisé - un signe préliminaire du début de la parcelle.

Symbole de départ. Dans le protocole ASCII, le rôle de préambule est joué par un caractère de contrôle spécial au début de l'envoi. Pour chaque réception d'un tel caractère, il faut réinitialiser le buffer : réinitialiser le nombre d'octets reçus, déplacer le pointeur au début du buffer, etc. Il faut faire de même en cas de débordement du tampon. Cela permettra au symbole de contrôle réel de réinitialiser le précédent "envoi" déclenché par le faux symbole.

Exemple. Le dernier caractère de contrôle ":" réinitialisera le faux message précédent :

____ :) ____ : 1 2 R S 4 8 5 /PS/ ____

Démarrer Pause. Dans un protocole binaire, où un caractère de contrôle unique n'est pas fourni et où la synchronisation des colis s'effectue selon une pause donnée entre octets, il suffit d'augmenter la pause active décrite dans la synchronisation de trame jusqu'à la durée de la pause entre octets, à laquelle la réception d'un nouveau colis commence. Autrement dit, entre la mise sous tension de l'émetteur-récepteur pour la transmission et l'envoi des premiers octets du package, vous devez faire une pause de 1,5 à 3,5 trames UART. Si l'émetteur est actif pendant un tel préambule, il sera difficile aux interférences de se propager aux récepteurs ; ils enregistreront la pause requise, réinitialiseront le tampon d'envoi et se syntoniseront pour recevoir un nouvel envoi. Cette méthode est notamment utilisée pour le protocole MODBUS RTU.

Séquence de départ. Si dans un protocole binaire la synchronisation s'effectue uniquement par le début correct d'un message, alors un faux message ne peut être filtré que par la logique de sa structure. Le préambule dans ce cas est une certaine séquence de départ de symboles qui ne peut pas être trouvée dans les données envoyées et qui est peu susceptible d'être générée par une interférence. Le préambule est envoyé avant le message principal. L'appareil récepteur suit cette séquence de démarrage dans les données entrantes. Partout où cela a lieu, l'appareil récepteur réinitialise le tampon d'envoi et commence à en recevoir un nouveau.

Option 1. Le colis recommence à être reçu après avoir reçu « go ! » (au lieu de caractères, il peut y avoir n'importe quelle donnée 8 bits) :

____ : - b ___ go ! 1 2 R S 4 8 5 ____

Option 2. Le colis recommence à être accepté après acceptation pas moins trois "E" d'affilée et un octet de départ ":" (au lieu de caractères, il peut y avoir n'importe quelle donnée de 8 bits) :

____ > : - E ___ E E E : 1 2 R S 4 8 5 ____

Même s'il y avait deux de ces symboles d'affilée avant la séquence de départ, la parcelle ne commencera à être enregistrée qu'après une séquence d'au moins trois d'affilée (les symboles supplémentaires sont ignorés) et le symbole de départ. Si vous utilisez l'octet FFh au lieu de "E", vous pouvez combiner la synchronisation des trames et des trames. Pour ce faire, quatre FFh sont envoyés, et le dispositif de réception en attend au moins trois, en tenant compte du fait que le premier octet du FFh peut être consacré à la synchronisation des trames.

2). Contrôle de fiabilité. Des interférences particulièrement fortes peuvent s'insérer dans un package, déformer les caractères de contrôle ou les données qu'il contient, voire même le détruire complètement. De plus, l'un des appareils connectés à la ligne (abonné) peut tomber en panne et ne plus répondre aux demandes. En cas d'un tel désastre, il y a des sommes de contrôle, des délais d'attente et des échanges.

Somme de contrôle- en général, 1 à 2 octets de code obtenus par transformation à partir des données d'envoi. Le plus simple est de « exclusif ou » tous les octets de données. La somme de contrôle est calculée et incluse dans le colis avant l'expédition. Le périphérique de réception effectue la même opération sur les données reçues et compare la somme de contrôle calculée avec celle reçue. Si le colis a été endommagé, il est fort probable qu'ils ne correspondent pas. Si le protocole ASCII est utilisé, le code de somme de contrôle est également transmis en caractères ASCII.

Temps mort- temps d'attente maximum pour une réponse de l'appareil demandé. Si le colis a été endommagé ou si l'appareil demandé est tombé en panne, l'appareil maître n'attendra pas de réponse, mais après un certain temps, il reconnaîtra la présence d'une panne. Après quoi, vous pouvez répéter la demande plusieurs fois et, si l'échec se reproduit, procéder à la gestion de la situation d'urgence. Le délai d'attente est compté à partir du moment où la demande est terminée. Sa durée doit légèrement dépasser le temps maximum de transmission de la réponse plus le temps nécessaire au traitement de la demande et à la génération d'une réponse. Le périphérique esclave peut également utiliser des délais d'attente. Surtout dans les situations où le manque de mises à jour régulières des données ou de nouvelles commandes du périphérique maître est essentiel au fonctionnement des périphériques système. La mise en œuvre la plus simple pour un esclave consiste à réinitialiser le temporisateur de surveillance à la réception d'un colis. Si, pour une raison quelconque, les données cessent de circuler, l'appareil se réinitialisera lorsque la minuterie du chien de garde débordera. Après la réinitialisation, le mode sans échec est établi jusqu'à ce que la première commande soit reçue.

Poignée de main- confirmation de livraison (réception). Lorsqu'il est important que l'esclave reçoive définitivement des données ou une commande, il est nécessaire de surveiller sa réception du colis. L'appareil maître, après avoir envoyé les données à l'esclave, attend une réponse avec confirmation. L'appareil esclave, ayant reçu les données, si elles sont correctes, envoie une réponse confirmant la livraison. Si l'appareil maître ne reçoit pas d'accusé de réception après l'expiration du délai d'attente, on suppose qu'il y a une défaillance dans la communication ou dans l'appareil esclave. Puis les mesures habituelles – répéter le message. Mais il y a une nuance : le reçu lui-même peut être endommagé et ne pas être reçu. L'appareil maître, n'ayant pas reçu de reçu, répète l'envoi et l'esclave le traite à nouveau. Ce n'est pas toujours significatif, mais si une commande du type « augmenter le paramètre de 1 » était envoyée, cela pourrait entraîner une double augmentation imprévue du paramètre. Dans ce cas, il est nécessaire de prévoir quelque chose comme une numérotation cyclique des colis afin que le dispositif esclave distingue les colis répétés des nouveaux et ne les traite pas.

9. Protection des appareils contre les surtensions dans la ligne de communication

En règle générale, la différence de potentiel entre les conducteurs de ligne et entre la ligne et la terre de l'émetteur-récepteur ne doit pas dépasser -7 ... +12 V. Par conséquent, la protection contre les différences de potentiel entre les masses et contre les surtensions dues aux courts-circuits peut être nécessaire pour les circuits haute tension.

Différence potentielle entre les « motifs ». Lors de l'organisation d'un réseau basé sur l'interface RS-485, il convient de prendre en compte la présence implicite d'un troisième conducteur - la terre. Après tout, tous les émetteurs-récepteurs sont alimentés et mis à la terre. Si les appareils sont situés à proximité de la source d’alimentation initiale, la différence de potentiel entre les « masses » des appareils du réseau est faible. Mais si les appareils sont éloignés les uns des autres et reçoivent une alimentation locale, il peut alors y avoir une différence de potentiel significative entre leurs « masses ». Les conséquences possibles sont une panne de l'émetteur-récepteur, voire de l'ensemble de l'appareil. Dans de tels cas, une isolation galvanique ou un fil de drainage doit être utilisé.

L'isolation galvanique de la ligne et des appareils est réalisée soit par isolation optique des signaux numériques (RO, DI, RE, DE) avec organisation d'une alimentation isolée des puces émettrices-réceptrices, soit par l'utilisation d'émetteurs-récepteurs avec isolation galvanique intégrée des signaux et puissance (par exemple, MAX1480). Ensuite, avec les conducteurs différentiels, un fil de terre isolé (terre du signal) et, éventuellement, un fil d'alimentation de ligne isolé sont posés.

Le fil de drainage est un fil posé avec une paire torsadée et reliant les « masses » des appareils distants. Grâce à ce fil, les potentiels des « masses » sont égalisés. Lorsque l'appareil est connecté à la ligne, le fil de décharge doit être connecté en premier et lorsqu'il est déconnecté, il doit être déconnecté en dernier. Pour limiter le courant traversant le fil de drainage, celui-ci est mis à la terre dans chaque appareil via une résistance de 100 ohms (0,5 W).


Court-circuit aux circuits haute tension. S'il existe un risque d'entrée de haute tension dans la ligne ou dans l'une des mises à la terre locales, des opto-isolateurs ou des limiteurs de tension shunt doivent être utilisés. Ou mieux encore, les deux.

La tension de claquage d'une interface opto-isolée est de plusieurs centaines, voire milliers de volts. Cela protège bien l'appareil des surtensions communes à tous les conducteurs de ligne. Cependant, en cas de surtensions différentielles, lorsqu'un potentiel élevé apparaît sur l'un des conducteurs, l'émetteur-récepteur lui-même sera endommagé.

Pour se protéger contre les surtensions différentielles, tous les conducteurs de ligne, y compris le commun isolé, sont shuntés vers la terre locale à l'aide de limiteurs de tension. Il peut s'agir de varistances, de limiteurs de tension à semi-conducteurs et de tubes à décharge à gaz. Le principe physique de leur fonctionnement est différent, mais l'essence est la même : à une tension supérieure au seuil, leur résistance chute fortement et ils contournent la ligne. Les tubes à décharge peuvent shunter des courants très élevés, mais ont un seuil de claquage élevé et une faible vitesse, ils sont donc mieux utilisés dans un circuit à trois étages avec des limiteurs à semi-conducteurs. Lorsque la mise à la terre de la ligne est impossible, les conducteurs de ligne sont pontés entre eux par des limiteurs. Mais cela ne protégera que contre les surtensions différentielles - l'optocoupleur devrait prendre en charge la protection contre les surtensions générales.


La protection par limiteurs de tension est efficace pour les surtensions de courte durée. En cas de courants de court-circuit prolongés, les limiteurs peuvent être endommagés et les appareils sur la ligne resteront sans protection. Pour se protéger contre les courts-circuits, des fusibles peuvent être connectés en série dans la ligne. Pour plus d'informations sur la protection contre les surtensions, consultez le manuel de B&B Electronics « Note d'application RS-422 et RS-485 ».

10. Mesures anti-ingérence supplémentaires

Diagnostique. S’il est possible de choisir un tracé de pose de câbles avec mesure du niveau sonore, ne le négligez pas. Même si la correction d'erreurs logicielle réussit à résoudre les pannes, tout doit être fait pour réduire physiquement le niveau de bruit sur la ligne. Il est utile de prévoir un mode diagnostic dans le programme, dans lequel seraient accumulées les statistiques des échecs traités par correction logicielle (échec par somme de contrôle ou timeout). S'il y a trop d'échecs, il est conseillé de travailler à trouver et à éliminer leur cause. La réduction de la vitesse de communication (débit en bauds) augmente dans de nombreux cas l'immunité au bruit. Cela n'a aucun sens de définir un débit en bauds plus élevé que nécessaire pour le fonctionnement normal du système, à moins qu'il y ait une marge de modification.

Câblage. Si possible, vous ne devez pas faire passer de paires torsadées le long des câbles d'alimentation, en particulier dans une tresse commune, car il existe un risque d'interférence des courants d'alimentation par inductance mutuelle. Les équipements électriques qui commutent des courants élevés sont également une source d'interférences. Il est préférable de ne pas utiliser les circuits d'alimentation du signal d'une ligne opto-isolée pour alimenter autre chose, car des courants excessifs circulant à travers la masse du signal peuvent introduire du bruit supplémentaire dans la ligne. Une paire torsadée de mauvaise qualité avec des caractéristiques de conducteur asymétriques est une autre source de problèmes. Plus le pas de la paire torsadée est petit (plus les fils sont torsadés souvent), mieux c'est. Même si une ligne ou un drainage opto-isolé n'est pas utilisé, il vaut la peine d'installer immédiatement un câble avec une paire torsadée de rechange - au cas où la première se briserait ou si vous deviez quand même installer une mise à la terre du signal.

Filtres inductifs. Si des interférences haute fréquence pénètrent dans la ligne, elles peuvent être filtrées par des filtres inductifs. Il existe des filtres inductifs spéciaux conçus pour supprimer les interférences haute fréquence dans les lignes de communication. Ils sont connectés en série directement aux récepteurs. Par exemple, le B82790-S**** d'Epcos, réalisé sous la forme d'un réseau à quatre bornes à travers lequel une paire torsadée est connectée au récepteur.


Je ne prétends pas avoir des informations complètes sur les subtilités physiques et logicielles de la communication via l'interface RS-485. Cependant, je pense qu'une autre présentation du sujet, formulée un peu différemment, et également complétée par une expérience personnelle, ne sera pas superflue pour les développeurs qui commencent tout juste à comprendre ce domaine. J'espère que les informations fournies vous aideront à organiser une communication fiable et sans problème.

Le but de cet article est de fournir des directives de base pour la sélection des schémas de câblage pour les réseaux RS-485. La spécification RS-485 (officiellement connue sous le nom de TIA/EIA-485-A) n'explique pas spécifiquement comment les réseaux RS-485 doivent être câblés. Cependant, il fournit quelques indications. Ces recommandations et pratiques d’ingénierie en matière de traitement audio constituent la base de cet article. Cependant, les conseils présentés ici ne couvrent en aucun cas la variété des options de mise en réseau possibles.

RS-485 transmet des informations numériques entre de nombreux objets. Les vitesses de transfert de données peuvent atteindre 10 Mbit/s et parfois dépasser cette valeur. Le RS-485 est conçu pour transmettre ces informations sur de longues distances, et 1 000 mètres sont tout à fait dans ses capacités. La distance et le débit de données auxquels RS-485 peut être utilisé avec succès dépendent de nombreux facteurs lors de la conception de l'interconnexion du système.

Câble

Le RS-485 est conçu comme un système équilibré. En termes simples, cela signifie qu'en plus de la terre, deux fils sont utilisés pour transmettre le signal.

Riz. 1. Le système équilibré utilise, en plus du fil de terre, deux fils pour la transmission des données.

Le système est appelé équilibré car le signal sur un fil est l’opposé parfait du signal sur le deuxième fil. En d’autres termes, si un fil transmet un niveau élevé, l’autre fil transmettra un niveau faible, et vice versa. Voir Fig. 2.

Riz. 2. Les signaux sur les deux fils du système équilibré sont parfaitement opposés.

Bien que le RS-485 puisse transmettre avec succès en utilisant différents types de supports de transmission, il doit être utilisé avec un câblage communément appelé « paire torsadée ».

Qu'est-ce qu'une paire torsadée et pourquoi est-elle utilisée ?

Comme son nom l’indique, une paire torsadée est simplement une paire de fils de même longueur et torsadés ensemble. L'utilisation d'un émetteur compatible RS-485 sur un câblage à paire torsadée réduit deux sources majeures de problèmes pour les concepteurs de WAN haut débit : les EMI rayonnés et les EMI induits (couplage).

Interférence électromagnétique rayonnée

Comme le montre la figure 3, chaque fois que des impulsions à fronts raides sont utilisées pour transmettre des informations, des composantes haute fréquence sont présentes dans le signal. Ces bords abrupts sont nécessaires à des vitesses plus élevées que celles que le RS-485 peut fournir.

Riz. 3. Forme d'onde d'un train d'ondes carrées de 125 kHz et sa FFT

Les composants haute fréquence résultants de ces bords raides, ainsi que les longs fils, peuvent entraîner des émissions d'interférences électromagnétiques (EMI). Un système équilibré utilisant des liaisons à paires torsadées réduit cet effet, faisant du système un radiateur inefficace. Cela fonctionne sur un principe très simple. Puisque les signaux sur les lignes sont égaux mais inverses, les signaux émis par chaque fil auront également tendance à être égaux mais inversés. Cela crée l’effet de suppression d’un signal par un autre, ce qui signifie l’absence de rayonnement électromagnétique. Cependant, cela repose sur l’hypothèse que les fils ont exactement la même longueur et exactement la même disposition. Puisqu’il est impossible d’avoir deux fils exactement identiques en même temps, les fils doivent être aussi proches que possible l’un de l’autre. La torsion des fils permet de neutraliser tout rayonnement électromagnétique résiduel dû à la distance finie entre les deux fils.

Interférence électromagnétique induite

Les EMI induits sont fondamentalement le même problème que les EMI rayonnés, mais à l’envers. Les interconnexions utilisées dans un système basé sur RS-485 agissent également comme une antenne qui reçoit les signaux indésirables. Ces signaux indésirables peuvent déformer les signaux utiles, ce qui peut entraîner des erreurs de données. Pour la même raison que le fil à paire torsadée aide à prévenir les EMI rayonnés, il contribuera également à réduire les effets des EMI conduits. Étant donné que les deux fils sont placés ensemble et torsadés, le bruit induit sur un fil aura tendance à être le même que celui induit sur le deuxième fil. Ce type de bruit est appelé « bruit de mode commun ». Étant donné que les récepteurs RS-485 sont conçus pour détecter les signaux opposés, ils peuvent facilement supprimer le bruit commun aux deux fils.

Impédance caractéristique d'une paire torsadée

En fonction de la géométrie du câble et des matériaux utilisés dans l'isolation, la paire torsadée aura une « impédance caractéristique » correspondante, qui est généralement déterminée par son fabricant. La spécification RS-485 recommande, mais n'exige pas explicitement, que cette impédance caractéristique soit de 120 ohms. La recommandation de cette impédance est nécessaire pour calculer les plages de charge et de tension de mode commun les plus défavorables définies dans la spécification RS-485. Apparemment, la spécification n'impose pas cette impédance dans un souci de flexibilité. Si, pour une raison quelconque, un câble de 120 ohms ne peut pas être utilisé, il est recommandé de recalculer le cas de charge le plus défavorable (nombre autorisé d'émetteurs et de récepteurs) et les plages de tension en mode commun du pire cas pour garantir le fonctionnement du système conçu. La publication TSB89 contient une section spécifiquement consacrée à de tels calculs.

Nombre de paires torsadées par émetteur

Maintenant que nous comprenons quel type de câble est nécessaire, la question se pose de savoir combien de paires torsadées l'émetteur peut gérer. La réponse courte est exactement une. Bien qu'un émetteur puisse être capable de piloter plus d'un câble à paire torsadée dans certaines circonstances, cela ne fait pas partie des spécifications.

Résistances de terminaison

Étant donné qu'il s'agit de hautes fréquences et de longues distances, il convient de prêter attention aux effets qui se produisent dans les lignes de communication. Cependant, une discussion détaillée de ces effets et des méthodes d’appariement correctes dépasse largement le cadre de cet article. Dans cet esprit, la technique de conditionnement sera brièvement discutée dans sa forme la plus simple en ce qui concerne le RS-485.

Une résistance de terminaison est simplement une résistance installée à l'extrémité ou aux extrémités du câble (Figure 4). Idéalement, la résistance de la résistance d'adaptation est égale à l'impédance caractéristique du câble.

Figure 4. Les résistances d'adaptation doivent avoir une résistance égale à l'impédance caractéristique de la paire torsadée et doivent être placées aux extrémités du câble.

Si la résistance des résistances d'adaptation n'est pas égale à l'impédance caractéristique du câble, une réflexion se produira, c'est-à-dire le signal reviendra via le câble. Ceci est décrit par l'équation (Rt-Zo)/(Zo+Rt), où Zo est la résistance du câble et Rt est la valeur de la résistance d'adaptation. Bien qu'une certaine réflexion soit inévitable en raison des tolérances des câbles et des résistances, de grandes variations peuvent provoquer des réflexions suffisamment importantes pour provoquer des erreurs de données. Voir la figure 5.

Riz. 5. En utilisant le circuit illustré dans la figure du haut, le signal de gauche a été obtenu avec le MAX3485 terminé par un câble à paire torsadée de 120 ohms et une résistance de terminaison de 54 ohms. Le signal de droite a été obtenu lorsqu'il est correctement adapté à l'aide d'une résistance de 120 ohms.

Dans cette optique, il est important de s'assurer que les valeurs de résistance de la résistance d'adaptation et l'impédance caractéristique sont aussi proches que possible. L'emplacement de la résistance correspondante est également très important. Les résistances de terminaison doivent toujours être placées aux extrémités du câble.

En règle générale, les résistances de terminaison doivent être placées aux deux extrémités du câble. Bien qu'une terminaison appropriée des deux extrémités soit absolument essentielle pour la plupart des conceptions de systèmes, on peut affirmer que dans un cas particulier, une seule résistance de terminaison est nécessaire. Ce cas se produit dans un système dans lequel il y a un seul émetteur, et cet émetteur unique est situé à l’extrémité du câble. Dans ce cas, il n'est pas nécessaire de placer une résistance de terminaison à l'extrémité émetteur du câble, puisque le signal se propage toujours à partir de cet émetteur.

Nombre maximum d'émetteurs et de récepteurs dans le réseau

Le réseau RS-485 le plus simple se compose d'un émetteur et d'un récepteur. Bien qu'utile dans un certain nombre d'applications, le RS-485 introduit une plus grande flexibilité en autorisant plusieurs récepteurs et émetteurs sur un seul câble à paire torsadée. Le maximum autorisé dépend de la charge que chaque appareil charge le système.

Dans un monde idéal, tous les récepteurs et émetteurs inactifs auraient une impédance infinie et ne chargeraient jamais le système. Toutefois, dans le monde réel, cela n’arrive pas. Chaque récepteur connecté au réseau et tous les émetteurs inactifs augmentent la charge. Pour aider le concepteur du réseau RS-485 à déterminer combien de périphériques peuvent être ajoutés au réseau, une unité hypothétique appelée « unité de charge » a été créée. Tous les appareils qui se connectent au réseau RS-485 doivent être caractérisés par leur rapport multiplicateur ou fraction de charge unitaire. Deux exemples sont le MAX3485, qui est spécifié comme 1 unité de charge, et le MAX487, qui est spécifié comme 1/4 d'unité de charge. Le nombre maximum de charges unitaires sur un câble à paire torsadée (en supposant qu'il s'agit d'un câble correctement terminé ayant une impédance caractéristique de 120 ohms ou plus) est de 32. Pour les exemples ci-dessus, cela signifie que jusqu'à 32 MAX3485 ou jusqu'à 128 MAX487.

Exemples de réseaux corrects

Armés des informations ci-dessus, nous sommes prêts à concevoir des réseaux basés sur RS-485. Voici quelques exemples simples.

Un émetteur, un récepteur

Le réseau le plus simple est constitué d'un émetteur et d'un récepteur (Figure 6). Dans cet exemple, une résistance de terminaison est indiquée sur le câble côté émetteur. Bien que cela ne soit pas nécessaire ici, il est probablement judicieux de concevoir des réseaux avec les deux résistances de terminaison. Cela permet de déplacer l'émetteur vers des emplacements autres que l'extrémité du câble, et permet également d'ajouter des émetteurs supplémentaires au réseau si le besoin s'en fait sentir.

Riz. 6. Réseau RS-485 avec un émetteur et un récepteur

Un émetteur, plusieurs récepteurs

La figure 7 montre un réseau avec un émetteur et plusieurs récepteurs. Il est important ici que les distances entre la paire torsadée et les récepteurs soient aussi courtes que possible.

Riz. 7. Réseau RS-485 avec un émetteur et plusieurs récepteurs

Deux émetteurs-récepteurs

La figure 8 montre un réseau avec deux émetteurs-récepteurs.

Riz. 8. Réseau RS-485 avec deux émetteurs-récepteurs

Plusieurs émetteurs-récepteurs

La figure 8 montre un réseau avec plusieurs émetteurs-récepteurs. Comme dans l’exemple d’un émetteur unique et de plusieurs récepteurs, il est important de maintenir les distances entre le câble à paire torsadée et les récepteurs aussi courtes que possible.

Riz. 9. Réseau RS-485 avec plusieurs émetteurs-récepteurs

Exemples de réseaux incorrects

Vous trouverez ci-dessous des exemples de systèmes mal configurés. Chaque exemple compare la forme d'onde reçue d'un réseau mal conçu avec la forme d'onde reçue d'un système correctement conçu. La forme d'onde a été mesurée différentiellement aux points A et B (AB).

Réseau incohérent

Dans cet exemple, il n’y a pas de résistances de terminaison aux extrémités de la paire torsadée. Lorsque le signal quitte la source, il rencontre un circuit ouvert à l’extrémité du câble. Cela entraîne une inadéquation d'impédance, provoquant une réflexion. Dans le cas d'un circuit ouvert (comme illustré ci-dessous), toute l'énergie est réfléchie vers la source, provoquant une forme d'onde fortement déformée.

Riz. 10. Un réseau RS-485 non coordonné (en haut) et sa forme d'onde résultante (à gauche) comparée au signal reçu sur un réseau correctement négocié (à droite)

Placement incorrect du terminateur

Sur la figure 11, une résistance de terminaison est présente, mais son emplacement est différent de l'extrémité éloignée du câble. Au fur et à mesure que le signal se propage depuis la source, il rencontre deux désadaptations d'impédance. Le premier se trouve sur la résistance correspondante. Même si la résistance est adaptée à l'impédance caractéristique du câble, il y a toujours un câble derrière la résistance. Ce câble supplémentaire provoque une désadaptation et donc une réflexion du signal. Le deuxième décalage, l'extrémité du câble non adapté, entraîne des réflexions supplémentaires.

Riz. 11. Réseau RS-485 avec une résistance de terminaison mal placée (en haut) et sa forme d'onde résultante (à gauche) par rapport au signal reçu sur un réseau correctement terminé (à droite)

Câbles composites

Il existe un certain nombre de problèmes d'interconnexion dans la figure 12. Le premier problème est que les pilotes RS-485 sont conçus pour piloter un seul câble à paire torsadée correctement terminé. Ici, chaque émetteur contrôle quatre paires torsadées parallèles. Cela signifie que les niveaux logiques minimaux requis ne peuvent pas être garantis. En plus de la lourde charge, il existe une inadéquation d'impédance au point de connexion de plusieurs câbles. Une inadéquation d'impédance entraîne encore une fois des réflexions et, par conséquent, une distorsion du signal.

Riz. 12. Réseau RS-485 utilisant incorrectement plusieurs paires torsadées

Robinets longs

Sur la figure 13, le câble est correctement adapté et l'émetteur est chargé sur une seule paire torsadée ; cependant, le segment de fil au point de connexion (tronçon) du récepteur est excessivement long. De longues pressions provoquent une inadéquation d'impédance importante et donc une réflexion du signal. Tous les robinets doivent être aussi courts que possible.


Riz. 13. Réseau RS-485 utilisant une prise de 3 mètres (en haut) et son signal résultant (à gauche) comparé au signal reçu avec une prise courte

La portée maximale possible d'une ligne RS-485 est déterminée principalement par les caractéristiques du câble et l'environnement électromagnétique du site d'exploitation. Lors de l'utilisation d'un câble avec un diamètre d'âme

0,5 mm (section d'environ 0,2 mm²) longueur de ligne RS-485 – pas plus de 1 200 m,

avec une section transversale de 0,5 m². mm – pas plus de 3000 m.

Utilisation d'un câble dont la section d'âme est inférieure à 0,2 mètre carré. mm indésirable.

Si la ligne RS-485 est longue (à partir de 100 m), l'utilisation d'une paire torsadée est obligatoire.

Pour connecter des appareils à l'interface RS-485, il est nécessaire de connecter respectivement les contacts « A » et « B » des appareils aux lignes A et B de l'interface. L'interface RS-485 implique l'utilisation d'une connexion de type « bus » entre les appareils, lorsque tous les appareils sont connectés via l'interface par une paire de fils (lignes A et B), adaptés aux deux extrémités avec des résistances correspondantes (Figure 1).

Figure 1. Schéma de connexion des appareils à l'interface réseau RS-485

Pour l'adaptation, des résistances d'une résistance de 620 Ohms sont utilisées, qui sont installées sur le premier et le dernier appareil de la ligne. La plupart des appareils disposent d'une résistance d'adaptation intégrée, qui peut être incluse dans la ligne en installant un cavalier (« cavalier ») sur la carte de l'appareil. Les cavaliers étant installés à la livraison, ils doivent être retirés sur tous les appareils, à l'exception du premier et du dernier de la ligne RS-485. Dans les convertisseurs répéteurs S2000-PI, la résistance correspondante pour chaque sortie RS-485 (isolée et non isolée) est activée par des commutateurs. Les appareils "S2000-K" et "S2000-KS" n'ont pas de résistance d'adaptation intégrée ni de cavalier pour la connecter. Si ce type d'appareil est le premier ou le dernier de la ligne RS-485, il est nécessaire d'installer une résistance de 620 Ohm entre les bornes « A » et « B ». Cette résistance est incluse avec l'appareil. La télécommande « S2000M » (« S2000 ») peut être installée n'importe où sur la ligne RS-485. S'il s'agit du premier ou du dernier appareil de la ligne, une résistance de terminaison de 620 Ohm (incluse dans la livraison) est installée entre les bornes « A » et « B ». Les dérivations sur la ligne RS-485 ne sont pas souhaitables, car elles augmentent la distorsion du signal dans la ligne, mais sont pratiquement acceptables pour des dérivations courtes (pas plus de 50 mètres). Les résistances de terminaison ne sont pas installées sur des branches individuelles. Il est recommandé de réaliser de longues branches à l'aide de répéteurs S2000-PI, comme le montre la figure 2.

Figure 2. Création d'un réseau RS-485 avec une topologie en étoile à l'aide de répéteurs

Figure 3. Augmentation de la longueur de la ligne RS-485 à l'aide de répéteurs d'interface

Par exemple, le convertisseur-répéteur d'interfaces à isolation galvanique "S2000-PI" permet d'augmenter la longueur de ligne d'un maximum de 1500 m, fournit une isolation galvanique entre les segments de ligne et déconnecte automatiquement les segments court-circuités de l'interface RS-485.

Chaque segment isolé de la ligne RS-485 doit correspondre des deux côtés - au début et à la fin. Vous devez faire attention à l'inclusion de résistances correspondantes dans chaque segment de la ligne RS-485 : elles doivent être activées par des interrupteurs dans les répéteurs S2000-PI, et non par des cavaliers dans les appareils, car les commutateurs ne connectent pas seulement la résistance correspondante , mais transmet également à la ligne RS-485 la tension de polarisation nécessaire au bon fonctionnement de ces répéteurs. Attention! Les circuits « 0 V » des segments de ligne isolés ne sont pas combinés entre eux. De plus, les appareils isolés ne peuvent pas être alimentés à partir d’une source d’alimentation commune afin d’éviter un couplage galvanique via des circuits d’alimentation communs.
À l'aide des répéteurs S2000-PI, vous pouvez créer de longues branches à partir du tronc principal RS-485 pour créer une topologie en étoile. Dans ce cas, le segment à partir duquel la branche est constituée et chacune des branches doivent correspondre, comme le montre la figure 2. Une attention particulière doit être portée au fait que les résistances correspondantes sur le « S2000-PI » doivent être installées. par des interrupteurs.
Les informations suivantes ont été fournies par le support technique de Bolid lors de la correspondance.
Si la télécommande elle-même est perdue, nous vous recommandons d'utiliser le programme rs-485settings dans la télécommande pour augmenter le paramètre « pause avant de répondre via RS-232 » à 2.
Si l'appareil « S2000-2 » est perdu mais que la télécommande est visible, nous vous recommandons de vérifier si les résistances de fin de ligne R=620 Ohm sont correctement installées et si les appareils « 0 V » sont connectés. Sur tous les appareils à l'exception de la télécommande « S2000 », la résistance correspondante est connectée si le cavalier correspondant est installé sur la carte de l'appareil. Des résistances de terminaison doivent être placées sur le premier et le dernier appareil.
Si toutes les exigences d'interface sont remplies, la cause du problème peut être une rupture dans l'une des lignes RS485 ("A" ou "B") ou un court-circuit à "0 V", une boucle d'alarme d'un appareil ou une surface mise à la terre. (par exemple, en raison d'un câble pincé dans l'encadrement d'une porte métallique. Une rupture dans l'une des lignes RS-485 n'entraînera pas nécessairement une perte de communication avec tous les appareils si les circuits « 0 V » des appareils et le « S2000-PI » " sont combinés et la ligne RS-485 est courte. Mais dans ce cas, les niveaux de signal - les signaux RS-485 seront en dehors de la plage qui garantit leur reconnaissance correcte par le récepteur. Un court-circuit à "0 V" peut également se produire dans les circuits de protection de l'un des appareils à la suite d'une panne de la diode de protection (une diode Zener avec une grande dissipation de puissance d'impulsion admissible) ou en raison d'un défaut de fabrication, par exemple, suite à l'installation d'une diode de protection dans le mauvais polarité.Un tel appareil peut non seulement avoir des problèmes de communication avec la télécommande via RS-485, mais peut également interférer avec tous les appareils de la branche isolée.
Pour commencer, vous pouvez faire sonner la ligne avec un testeur pour vous assurer qu'il n'y a pas de coupure ou de court-circuit dans la ligne ou que les sorties du périphérique RS-485 sont à « 0 V ». Lors du test des sorties « A » et « B » des appareils, il faut garder à l'esprit qu'à des fins de protection, ces sorties sont contournées par des diodes de protection, la cathode étant connectée à la sortie protégée et l'anode à « 0 V ». Par conséquent, dans un appareil en état de marche, en polarité directe (la sonde positive du testeur est connectée à la sortie, la sonde négative - à « 0 V »), les sorties ne doivent pas sonner, mais en polarité inversée (la sonde négative du Le testeur est connecté à la sortie), en fonction de la valeur de la tension de mesure, le testeur peut afficher une faible résistance correspondant à la chute de tension directe aux bornes de la diode (c'est-à-dire environ 0,6 - 0,7 V). Si la sortie sonne à 0 V quelle que soit la polarité, cela indique le « soudage » de la diode de protection. Si la sortie sonne dans la polarité opposée à celle spécifiée, cela peut indiquer un défaut de fabrication (mauvaise installation de la diode de protection).
Nous attirons également votre attention sur le fait que la conception des circuits de protection RS-485 dans les nouvelles versions des appareils a été modifiée (par exemple, pour Signals-20P - à partir de la version 2.04). Les circuits de protection « neufs » réparables ne sonnent ni en polarité directe ni en polarité inversée. IMPORTANT : les circuits doivent être testés avec un testeur EN MODE TEST DE DIODE. En mode de mesure de résistance, la tension de mesure dans de nombreux testeurs est inférieure à la chute de tension continue aux bornes de la diode. Par conséquent, lors du test de nouveaux circuits de protection, un circuit de protection fonctionnel peut différer peu d'un circuit défectueux (dans les deux cas, le testeur peut montrent une résistance de l'ordre de plusieurs dizaines de kOhms). En plus de vérifier la continuité des circuits « A » et « B » par rapport à « 0 V » dans les deux polarités, il est logique d'effectuer une mesure similaire entre « A » et « B » (le cavalier qui inclut la résistance de charge de la ligne RS-485 doit être retirée).

Ces circuits ne doivent sonner quelle que soit la polarité de mesure (pour les « nouveaux » circuits de protection).

Des conclusions plus précises peut être effectué en examinant le signal dans la ligne RS-485 à l'aide d'un oscilloscope. Le signal entre les lignes « A » et « B » près de l'entrée RS-485 de l'appareil et de la télécommande est mesuré. La sonde de l'oscilloscope est installée sur la ligne « A », la commune - sur la ligne « B » (vous devez être prudent ici, car certains oscilloscopes ont une entrée « commune » mise à la terre via la broche de masse de la fiche, ce qui peut introduire une distorsion. ou interférences, surtout si le système dispose déjà d'autres points de mise à la terre). Les impulsions bipolaires doivent être visibles sur l'oscilloscope. La transmission « 1 » correspond à la polarité positive, la transmission « 0 » correspond à la polarité négative. La longueur d'un bit d'information transmise est d'environ 0,1 ms. La condition pour une réception fiable est la suivante : si la tension à l'entrée du récepteur est supérieure à 0,2 V, « 1 » est accepté, si inférieure à -0,2 V, « 0 » est accepté. Si la tension est comprise entre -0,2 et 0,2 V, le résultat n'est pas déterminé et la fonctionnalité RS-485 n'est pas garantie. Par conséquent, à l'aide d'un oscilloscope, vous devez mesurer les niveaux des signaux « 0 » et « 1 » et vous assurer qu'ils satisfont aux conditions spécifiées. A la sortie de la télécommande, la tension du signal « 1 » est généralement d'environ +4 V, la tension « 0 » est d'environ -4 V. A la sortie de « S2000-PI » lors de la transmission de « 0 », la tension sera également être d'environ -4 V, et lors de la transmission de « 1 » " - environ + 0,4 V avec une résistance terminale de 620 Ohm allumée et environ 0,22 V - avec deux résistances terminales. Lors du passage de « 0 » à « 1 », « S2000-PI » génère une impulsion courte (environ 0,03 ms) avec une valeur de tension d'environ +4 V. Si le signal varie de 0 V à -4 V ou de + 4 V (ou +0,2 V pour « S2000-PI ») à 0 V, nous pouvons conclure qu'une des lignes RS-485 est en court-circuit avec le circuit « 0 V ».

L'interface RS-485 implique l'utilisation d'une connexion de type « bus » entre les appareils, lorsque tous les appareils sont connectés via l'interface avec une paire de fils (lignes A et B). La ligne de communication doit être terminée aux deux extrémités par des résistances de fin de ligne

La longueur maximale possible d'une ligne RS-485 est déterminée principalement par les caractéristiques du câble et l'environnement électromagnétique du site d'exploitation. Lors de l'utilisation d'un câble avec un diamètre d'âme de 0,5 mm (section d'environ 0,2 mm²), la longueur recommandée de la ligne RS-485 ne dépasse pas 1 200 m, avec une section de 0,5 mm². mm - pas plus de 3 000 M. Utilisation de câbles avec une section transversale inférieure à 0,2 m². mm indésirable. Il est recommandé d'utiliser un câble à paire torsadée pour réduire la sensibilité de la ligne aux interférences électromagnétiques et également réduire le niveau d'interférence rayonnée. Lorsque la longueur de la ligne RS-485 est supérieure à 100 m, l'utilisation d'une paire torsadée est obligatoire.
Pour connecter des appareils à l'interface RS-485, il est nécessaire de connecter respectivement les contacts « A » et « B » des appareils aux lignes A et B de l'interface.

Pour l'adaptation, des résistances d'une résistance de 620 Ohms sont utilisées, qui sont installées sur le premier et le dernier appareil de la ligne. La plupart des appareils disposent d'une résistance d'adaptation intégrée, qui peut être incluse dans la ligne en installant un cavalier (« cavalier ») sur la carte de l'appareil. Les cavaliers étant installés à la livraison, ils doivent être retirés sur tous les appareils, à l'exception du premier et du dernier de la ligne RS-485. Dans les convertisseurs répéteurs S2000-PI, la résistance correspondante pour chaque sortie RS-485 (isolée et non isolée) est activée par des commutateurs. Les appareils S2000-K et S2000-KS n'ont pas de résistance d'adaptation intégrée ni de cavalier pour sa connexion. Si un appareil de ce type est le premier ou le dernier de la ligne RS-485, il est nécessaire d'installer une résistance de 620 Ohm entre les bornes « A » et « B ». Cette résistance est incluse avec l'appareil. La télécommande « S2000M » (« S2000 ») peut être installée n'importe où sur la ligne RS-485. S'il s'agit du premier ou du dernier appareil de la ligne, une résistance de terminaison de 620 Ohm (incluse dans la livraison) est installée entre les bornes « A » et « B ».

Pour augmenter la longueur de la ligne de communication, des répéteurs d'interface RS-485 peuvent être utilisés avec commutation automatique du sens de transmission (voir figure).

Par exemple, le convertisseur-répéteur d'interfaces avec isolation galvanique « S2000-PI » permet d'augmenter la longueur de ligne d'un maximum de 1 500 m, assure une isolation galvanique entre les segments de ligne et éteint automatiquement les segments court-circuités du RS-485. interface. Chaque segment de ligne RS-485 isolé doit correspondre des deux côtés – au début et à la fin. Vous devez faire attention à l'inclusion de résistances correspondantes dans chaque segment de la ligne RS-485 : elles doivent être activées par des commutateurs dans les répéteurs S2000-PI, et non par des cavaliers dans les appareils, car les commutateurs ne connectent pas seulement la résistance correspondante , mais aussi la tension de sortie vers le décalage de ligne RS 485, nécessaire au bon fonctionnement de ces répéteurs.

ATTENTION! Les circuits « 0 V » des segments de ligne isolés ne sont pas combinés entre eux. De plus, les appareils isolés ne peuvent pas être alimentés à partir d’une source d’alimentation commune afin d’éviter un couplage galvanique via des circuits d’alimentation communs.

À l'aide des répéteurs S2000-PI, vous pouvez créer de longues branches à partir de l'autoroute principale RS-485 pour créer une topologie en étoile. Dans ce cas, le segment à partir duquel la branche est constituée et chacune des branches doivent être cohérents, comme le montre la Fig. 83. Une attention particulière doit être portée au fait que les résistances correspondantes sur le « S2000-PI » doivent être installées par des interrupteurs.


Les dérivations sur la ligne RS-485 ne sont pas souhaitables, car elles augmentent la distorsion du signal dans la ligne, mais sont pratiquement acceptables pour des dérivations courtes (pas plus de 50 m). Les résistances de terminaison ne sont pas installées sur des branches individuelles. Il est recommandé de réaliser de longues branches à l'aide des répéteurs S2000-PI, comme indiqué sur la Fig.

Dans un système distribué, dans lequel la console et les appareils connectés à la même ligne RS-485 sont alimentés par différentes sources d'alimentation, il est nécessaire de combiner les circuits « 0 V » de tous les appareils et de la console pour égaliser leurs potentiels. Le non-respect de cette exigence peut entraîner une communication instable entre la télécommande et les appareils. Lors de l'utilisation d'un câble comportant plusieurs paires de fils torsadées, une paire libre peut être utilisée pour le circuit d'égalisation de potentiel. Il est permis d'utiliser à cet effet un blindage à paire torsadée blindée, à condition que le blindage ne soit pas mis à la terre. Le schéma de connexion des appareils et de la télécommande à la ligne RS-485 est illustré à la Fig.
Dans les installations soumises à des environnements électromagnétiques sévères, un câble à paire torsadée blindé peut être utilisé pour la ligne RS-485. La portée de communication maximale lors de l'utilisation d'un câble blindé peut être plus courte en raison de la capacité plus élevée du câble blindé. Le blindage du câble ne doit être mis à la terre qu'en un seul point


Parfois, il devient nécessaire de transmettre le protocole d'information du système Orion sur un réseau local Ethernet. Une solution à ce problème consiste à utiliser des convertisseurs d'interface S2000-Ethernet.

Lors de l'utilisation du convertisseur, deux modes de fonctionnement sont possibles :

  • Mode transparent. Transfère les données de l'interface RS-232 ou RS-485 vers Ethernet et inversement. Conçu pour être utilisé à la fois dans le cadre du système Orion (protocoles Orion et Orion Pro) et dans le cadre d'autres systèmes ;
  • Mode de sauvegarde des événements. Fournit une augmentation de la vitesse d'échange entre les appareils du système Orion et une diminution de la quantité d'informations transmises sur le réseau local. Le mode est utilisé uniquement dans un système doté du protocole d'échange Orion.

Dans le cas de l'utilisation d'une topologie point à multipoint, jusqu'à 8 S2000-Ethernet côté client peuvent être connectés à un S2000-Ethernet côté interrogateur.

Schéma fonctionnel de l'utilisation de "S2000-Ethernet" avec "S2000M"


Pour connecter des appareils distants au contrôleur réseau via une ligne fibre optique, deux convertisseurs « RS-FX-MM » (pour lignes fibre optique multimode) ou « RS-FX-SM40 » (pour lignes fibre optique monomode) sont utilisés : un du côté du contrôleur réseau, le second du côté du contrôleur réseau, du côté des instruments distants du système Orion.

La société Bolid fournit des convertisseurs d'interfaces d'information ISO Orion vers des lignes de communication à fibre optique certifiées selon les normes ISO, qui peuvent être utilisées, entre autres, dans les systèmes d'alarme et les automatismes d'incendie. La longueur maximale de transmission de données pour le convertisseur RS-FX-MM est de 2 km, pour le convertisseur RS-FX-SM40 - 40 km. Le schéma de connexion des appareils via l'interface RS-485 à l'aide de convertisseurs à fibre optique est illustré à la Fig.


Dans un certain nombre de cas, il devient nécessaire de transmettre le protocole d'information du système Orion sur un canal radio. Les principaux avantages de ce réseau sont :

  • sécurité contre les explosions d'étincelles ;
  • pas besoin de poser des câbles.

Pour résoudre ce problème, vous pouvez utiliser les modems radio « S2000-RPI » (fréquence 2,4 GHz) et « Nevod-5 » (433,92 MHz).


Le répéteur de canal radio d'interfaces « S2000-RPI » (ci-après dénommé RPI) permet de connecter divers équipements (avec une interface RS-232/RS-485) via un canal radio et de diffuser des données depuis RS-232/RS- 485 interfaces dans la gamme de fréquences de 2405 à 2483,5 MHz. Conçu pour être utilisé à la fois dans le cadre du système Orion et dans le cadre d'autres systèmes utilisant la transmission de données par paquets. Prend en charge le fonctionnement dans les réseaux radio avec des topologies point à point et point à point et le relais de paquets. Il existe deux versions : « S2000-RPI » - avec une antenne externe et « S2000-RPI isp. 01" - sans antenne externe.

Longueur du canal radio entre deux FIR en visibilité directe :

à une puissance de 10 mW :

  • « S2000-RPI » - jusqu'à 200 m (avec antenne standard) ;
  • « FAI S2000-RPI. 01" - jusqu'à 150 mètres ;

à une puissance de 100 mW :

  • « S2000-RPI » - jusqu'à 600 m (avec antenne standard) ;
  • « FAI S2000-RPI. 01" - jusqu'à 350 m.
Deux modes de fonctionnement du RPI sont possibles :
  • Mode veille. Transmet les données de l'interface RS-232 ou RS-485 au canal radio et inversement ;
  • Mode relais. Reçoit et transmet (relais des paquets) dans un canal radio avec sortie simultanée d'informations vers l'interface filaire sélectionnée.
Caractéristiques du système utilisant FIR :
  • L'état de la diffusion radio, la présence de sources technologiques d'interférence radio et la possibilité d'interférence naturelle doivent être pris en compte ;
  • Pour les FIR avec antenne interne, il est nécessaire de choisir un emplacement avec le niveau de signal le plus élevé possible.

Dans les exemples suivants, le système peut fonctionner avec ou sans PC.

Connexion point à point

Connexion point à multipoint

Dans le cas de l'utilisation d'une topologie « point à point », jusqu'à 6 « S2000-RPI » côté client peuvent être connectés à un « S2000-RPI » côté serveur.

Fonctionnement du RPI en mode relais de paquets sur un canal radio

Les données reçues par le RPI n°1 via l'interface RS-485 sont transmises sur un canal radio dans un paquet de diffusion. Lorsqu'un paquet est reçu via le canal radio RPI n° 2...4, il est émis via l'interface RS-485 vers les appareils du système Orion. La FIR n°3 est en mode « Relais » et transmet le paquet reçu via un canal radio à la FIR n°4 et via l'interface RS-485 aux appareils du système Orion.


Des spécialistes de la société Bolid ont testé le système Orion à l'aide de modems radio Nevod-5 fabriqués par Geolink Electronics (ci-après dénommés Nevod-5), fonctionnant à une fréquence de 433,92 ± 0,2 % MHz.

Connexion point à multipoint

Dans le cas de l'utilisation d'une topologie point à multipoint, le nombre de Nevod-5 côté client n'est limité que par la vitesse requise du système.

Nous répétons que dans les exemples suivants, le système peut fonctionner aussi bien avec que sans PC.
Fonctionnement en mode relais de paquets sur un canal radio

Caractéristiques du système utilisant les modems radio Nevod-5 :
  • Lors de l'utilisation d'antennes standard pour une onde d'une fréquence de 433,92 MHz, les émetteurs ne peuvent pas être situés à moins de 6 mètres les uns des autres.
  • L'état de la diffusion radio, la présence de sources technologiques d'interférences radio et la possibilité d'interférences naturelles doivent être pris en compte

Pour les systèmes de sécurité et les systèmes de contrôle d'accès, il est possible de construire des circuits sans la télécommande « S2000M », tandis que « S2000-Ethernet », en plus de transmettre l'interface, convertit l'interface RS-232 en RS-485.
Les convertisseurs RS-FX-MM et RS-FX-SM40 ne peuvent pas être utilisés dans ce mode.


Si la pose aérienne est utilisée pour les segments d'interface RS-485, des unités de protection de ligne « BZL » doivent être utilisées.

Pour l'isolation galvanique des segments d'interface, il est conseillé d'utiliser des répéteurs S2000-PI. Dans ce cas, l'alimentation des appareils connectés avant et après le S2000-PI doit être fournie par différentes sources d'alimentation. Les bus « 0V » de ces appareils ne doivent pas être combinés. Le schéma recommandé à l'aide de l'exemple d'une installation composée de 3 bâtiments est présenté sur la figure.

Voyons comment contrôler un variateur de fréquence à l'aide du protocole RS 485. Rendons le contrôle de la broche automatique. Pour cela nous avons :

  1. Tour avec broche ET65A-800W.
  2. Convertisseur de fréquence de Schneider Electric Altivar 71.
  3. Modernisateur d'interface RS232/RS485.
  4. Mach3 version 3.042.029.

Nous effectuons d'abord la configuration Mac :

    1. Nous autorisons le travail via ModBus en cochant la case appropriée.
    1. Dans les paramètres de broche du sous-menu, supprimez les coches inutiles.

  1. Ajoutez une ligne d'initialisation au menu de configuration générale.
  2. Pour fonctionner, vous avez besoin de deux registres dans le variateur de fréquence - contrôle CMD et réglage avec un registre. Pour le rendre plus pratique, nous sélectionnons le régime moteur à l'aide d'une consigne.

Effectuer la configuration du sondage :

Éléments de connexion 19200 8-N-1. Balayage à 10 hertz dans le tableau des tailles. L'interrogation est nécessaire pour que l'autodiagnostic se produise dans la connexion et que la fréquence soit convertie. Si le trafic réseau s'arrête pendant la durée de la pause spécifiée, le générateur de fréquence génère une erreur.

Correction des scripts VBA :

M3
SetModOutput(0,&H0006)
SetModOutput(1,0)
DoSpinCW()
SetModOutput(0,&H000F)

M4
SetModOutput(0,&H0006)
SetModOutput(1,0)
DoSpinCCW()
SetModOutput(0,&H000F)

SetModOutput(0,&H0006)
SetModOutput(1,&H0000)
DoSpinStop()

tr/min = GetRPM()
Définir la vitesse de rotation (rpm)
SetModOutput(1,rpm)

Réparation du post-processeur :

@start_tool
si only_xyz eq faux
si outil_direction eq CW alors
mcode = 4
autre ; CCW
mcode = 3
fin si

appelle @gen_nb
; ('S'spin:integer_def_f,'M'mcode)
('M'mcode)
appelle @gen_nb
('S'spin:entier_def_f)
appelle @gen_nb
("M8")
fin si
fin
Nous travaillons en utilisant la combinaison SolidWorks/SolidCAM.
Cette méthode de contrôle présente des avantages et diffère des convertisseurs PWM :
— si la vitesse de broche est nulle, alors le moteur est assuré de s'arrêter ;
— le programme de contrôle a la capacité d'échanger des informations avec le variateur de fréquence ;
— le régime moteur réel est interprété avec les instructions du conducteur de fréquence ;
— sur une ligne de communication longue distance, on distingue une bonne adaptabilité aux interférences (jusqu'à un kilomètre).

En savoir plus sur le contrôle du variateur de fréquence à l'aide du protocole RS-485.

RS-485 utilise un blindage à paire torsadée avec terre et signal. La masse du signal est requise, mais n'est pas utilisée pour calculer l'état de la ligne en logique. Le commutateur de commande de ligne symétrique possède un signal d'entrée « Activer » utilisé pour contrôler les moniteurs de sortie de l'appareil. Si le signal "Enable" est désactivé, cela signifie que le dispositif est déconnecté de la ligne, et dans cet état le dispositif est toujours appelé "tristate" (c'est-à-dire le troisième état, avec les binaires 1 et 0).

La valeur standard sur RS-485 n'est que de 32 paires d'émission et de réception, mais les fabricants ont augmenté les capacités du protocole RS-485, de sorte qu'il prendra désormais en charge de 128 à 255 appareils sur une seule ligne ; lorsque vous utilisez des répéteurs, vous pouvez augmenter RS-485/RS-422 beaucoup. Si vous pouvez utiliser RS-485, et avec un fil long ou un grand nombre d'appareils, vous devez utiliser des terminateurs intégrés aux appareils avec le protocole RS-485, mais avec un fil court, il y a une détérioration visible de la communication lors de l'utilisation terminateurs.

De plus, la valeur nominale du RS-485 détermine l'utilisation d'une paire torsadée à deux fils avec un écran, telle que le RS-485 à 2 fils, mais une paire torsadée de quatre fils (RS-485 à 4 fils) sera également utilisée. , alors il y aura tout un pourpoint. Dans ce cas, il faut qu'une structure soit créée en tant que leader (Maître), et les autres en tant qu'esclaves (Esclave). Alors de nombreuses structures esclaves communiquent uniquement avec la structure maître, et ne se donneront jamais rien directement. Dans ces cas, comme toujours, le pilote RS-422 est utilisé comme structure principale, car Le RS-422 peut être connecté uniquement en tant que maître/esclave, et le RS-485 est conçu comme esclave pour réduire le coût du système. La norme RS-422 stipule dès le début l'utilisation d'un câble à paire torsadée à quatre fils avec blindage, mais autorise uniquement les connexions d'une conception à l'autre (jusqu'à 5 pilotes et jusqu'à 10 récepteurs par pilote). Le RS-422 a été créé pour remplacer le RS-232 lorsque le RS-232 n'offre pas une vitesse et une plage de transmission élevées.

RS-422 utilise des fils purs (deux paires) : un pour la réception, un pour l'envoi (et un pour tous les signaux de contrôle/prise de contact). Le RS-485 possède un troisième état (« tristate ») et peut utiliser une paire de fils, ce qui réduit le coût du système et permet une communication longue distance. Actuellement, de nombreux appareils différents sont disponibles pour connecter RS-422/RS-485 à RS-232, et RS-232 est souvent utilisé en combinaison avec un ordinateur (mais il existe également des cartes d'interface RS-422/RS-485 à un ordinateur). ), qui contrôlait le système. Il existe également une variété de dispositifs (hubs, répéteurs, commutateurs, etc.) pour fournir des configurations complexes de réseaux RS-422/RS-485, donc RS-422/RS-485 cache de nombreuses possibilités.

Comment câbler correctement les réseaux RS-485 ?

RS-485 transmet les informations numériquement entre les objets. Les données peuvent être transférées à une vitesse de 10 Mbit/s. RS-485 est utilisé pour transmettre un signal sur une distance étendue. La longueur et la vitesse des données pour RS-485 dépendent de divers facteurs.

Câble.

Le RS-485 est conçu comme un système d'équilibrage. Cela signifie que deux fils sont utilisés pour transmettre les données.

Riz. 1. Le système de balance utilise deux fils pour la transmission du signal.

Ce système est équilibré car le signal sur les deux fils aux deux extrémités est exactement opposé. Voir Fig. 2.

Riz. 2. Les données sont différentes des deux côtés des fils.

RS-485 doit être utilisé avec un câblage à paire torsadée.

Pourquoi utilisent-ils un câblage à paires torsadées ?

Il s’agit d’une simple paire de fils de même longueur. Ils sont ensemble ensemble. Un émetteur à câble à paire torsadée réduit deux problèmes pour les constructeurs de réseaux à haut débit : les interférences électromagnétiques et les interférences induites.

Interférence électromagnétique rayonnée.

La figure montre que lors de l'utilisation d'impulsions avec des fronts montants importants, le signal comporte des composantes haute fréquence. De tels bords sont nécessaires pour des vitesses plus élevées que celles que le RS-485 peut fournir.

Riz. 3. Impulsions rectangulaires.

Les composantes haute fréquence de ces fronts à gros fils entraînent l'émission d'interférences électromagnétiques. Le système d'équilibre utilise des lignes de communication à paires torsadées, réduit l'effet et l'émetteur devient inutile. Les données sur les fils sont les mêmes, inverses, les signaux seront également égaux et inverses. Cela a pour effet de réduire un signal en raison d'un autre. Cela signifie qu'il n'y a pas de rayonnement électromagnétique. Mais ce n'est qu'une supposition. La combinaison des fils neutralise le rayonnement dû à la longueur entre les fils.

Interférence induite électromagnétiquement.

C'est le même problème, mais à l'envers. Les connexions dans un système basé sur RS-485 agissent comme une antenne. Ces signaux déforment les signaux souhaités, ce qui entraîne des problèmes dans les données. Cela peut également réduire la dépendance aux interférences. Le bruit sur un fil est le même que sur le deuxième fil. C'est ce qu'on appelle en phase. Ils suppriment le bruit des deux fils.

Résistance des paires torsadées sous forme d’ondes.

La paire entrelacée possède des propriétés d'onde définies par le fabricant. RS-485 nécessite que la taille de la résistance soit de 120 ohms. Cette recommandation d'impédance est nécessaire pour calculer la pire charge dans la plage de tensions de mode commun en RS-485. La spécification ne donne pas cette impédance pour la flexibilité. Si un câble de 120 ohms ne peut pas être utilisé, le cas de charge le plus défavorable et la plage de tension la plus défavorable doivent être calculés à nouveau pour garantir le bon fonctionnement du système. L'émetteur ne peut piloter qu'une seule paire torsadée ; une autre n'est pas prévue dans les spécifications.

Résistances assorties.

Une résistance adaptée est une résistance ordinaire située à une extrémité du câble. La taille de la résistance correspondante est égale à la résistance du câble d'onde.

Riz. 4. Les résistances correspondantes ont la même résistance que la paire torsadée.

Si la valeur des deux résistances est différente de celle du câble d'onde, il y aura de la réflexion, le signal sera revissé. Les divergences amènent la réflexion à commettre des erreurs dans les données.


Riz. 5. Signal reçu du MAX3485. Le signal de droite est obtenu par correspondance avec une résistance.

Il est nécessaire de se mettre d'accord sur une plus grande approximation de la taille de la résistance d'adaptation et des ondes. L'endroit où la résistance de terminaison est installée aux deux extrémités du câble n'a pas d'importance.

Par convention, les résistances de terminaison sont placées aux extrémités du câble, bien qu'il soit préférable de rendre critique l'appariement des deux extrémités pour de nombreuses conceptions de systèmes. Dans un cas, une seule résistance est nécessaire. Ce cas se produit dans un système où se trouve un émetteur. C'est à l'autre bout du câble. Il n'est pas nécessaire de placer une résistance à l'extrémité du câble avec l'émetteur, puisque le signal provient de celui-ci.

Le plus grand nombre de récepteurs et d'émetteurs du réseau.

Un réseau RS-485 typique se compose d'un récepteur et d'un émetteur. RS-485 offre de la flexibilité, permettant plus d'émetteurs et de récepteurs par paire. Le nombre maximum dépend de la charge du système.

Idéalement, les émetteurs et récepteurs auront une impédance élevée et ne chargeront pas le système. Ça ne peut vraiment pas être comme ça. Un récepteur connecté augmente la charge. Pour aider le développeur du réseau RS-485 à déterminer combien d'appareils seront ajoutés au réseau, nous avons créé une unité de charge. De telles conceptions sont caractérisées par des multiplicateurs ou des charges.

Récepteur et émetteur un à la fois.

La résistance est adaptée sur le fil vers l'émetteur. Vous pouvez déplacer l'émetteur vers les bords les plus proches du fil et ajouter des émetteurs au réseau.

Riz. 6. RS-485 possède chacun un récepteur et un émetteur.

Plusieurs récepteurs et un émetteur.

Il est très important ici que la longueur de la paire torsadée soit minime.

Riz. 7. Réseau avec plusieurs récepteurs et un émetteur.

Mauvais réseaux. Réseau incohérent.

Comparons la formulation des données du mauvais réseau du système développé. Il a été mesuré aux points A et B. Ici aux bords d'une paire de résistances pour l'adaptation. Le signal provient de la source et rencontre un circuit sur le câble. Cela conduit à la destruction des impédances, à la réflexion. Dans un circuit ouvert, l’énergie reflue vers l’arrière, provoquant une distorsion du signal.


Riz. 8. Le réseau est incohérent. La forme du signal n'est pas correcte.

La position du terminateur est incorrecte.

Il existe une résistance correspondante, mais elle est placée différemment de l’autre extrémité du câble. Le signal rencontre une impédance et sa discordance et est couplé à travers une résistance. La résistance était adaptée à la résistance du câble. Le câble supplémentaire provoque une inadéquation et reflète l'écran. L'autre décalage est l'autre extrémité du câble.

Riz. 9. Un réseau avec une résistance mal placée, son signal.

Câbles composites.

Le problème vient des pilotes, qui sont conçus pour piloter un seul câble à paire torsadée. Tous les émetteurs ne peuvent pas piloter 4 paires parallèles torsadées. Les niveaux minimums logiques ne sont pas garantis. Parallèlement à une charge importante, il existe une différence d'impédance à l'endroit où les câbles sont connectés. Les différences d'impédance entraînent une réflexion et une distorsion du signal.

Riz. 10. Réseau incorrect avec plusieurs paires.

Robinets étendus.

Le câble est adapté, l'émetteur est chargé sur une paire torsadée. Le segment de fil au point de connexion du récepteur est trop long. Les grandes prises ont une grande inadéquation d'impédance et reflètent le signal. Les tarauds sont fabriqués à la longueur la plus courte.


Riz. 11. Réseau avec un coupleur de trois mètres et signal résultant par rapport au signal avec un petit coupleur.

Quelles étapes sont nécessaires pour comprendre le contrôle via le protocole rs485 ?

  1. Recherchez de la documentation de conception. Il est joint sous forme imprimée au générateur de fréquence et est pertinent pour celui-ci. Les documents peuvent être joints électroniquement sur disque. Vous pouvez trouver de la documentation en ligne.
  2. Nous connaissons les numéros de révision et de version. Notre objectif est la version du programme.
  3. Étudier des documents en utilisant des mots spécifiques.
  4. Recherchez le schéma de connexion du câble de connexion et le brochage du connecteur.
  5. Recherchez des descriptions de registres Modbus. Ceci est une carte mémoire. Les registres sont appelés variables.
  6. Définition du type d'adressage variable. Modbus propose deux types d'adressage différents, logique et physique.
  7. Spécifier une direction de recherche. Il s’agit d’une étape responsable.
Avez-vous aimé l'article? Partager avec des amis: