Liaison filaire

Bonjour à tous
Je veux établir une liaison filaire entre une platine maître et trois esclaves.
La platine maître sera une mega2560 qui comporte trois ports de liaison et les esclaves seront des UNO.
La longueur prévue pour chacune des liaisons est de onze à douze mètres.
Ma crainte est que les liaisons soient trop longues. Que les signaux soient trop affaiblis.
Avez vous pratiqué avec de telles longueurs ?
Avez vous un retour d'expérience ?
Un conseil?

RS485, son mode différentiel permet de grandes longueurs.

Précision :
Contrairement à la RS232 la norme RS485 ne gére que la couche physique, que le coté électrique des signaux.
Il faut lui adjoindre un protocole de communicatio qui peut très bien être celui de la RS232 (dit liaison série) ou Modbus ou autre .......

Il est possible d'envisager une liaison de 15m avec de la RS232, à 9600 baud, pas plus.
Je parle de vrai RS232 (d'ordinaire +-12V), pas d'UART à UART en 5V.
Si les esclaves sont répartis en étoile autour du maître, la RS232 peut être une solution plus simple.

Ensuite la RS485 peut s'avérer plus sympa si les esclaves sont sur la même ligne (géométriquement parlant), car le câblage se fait avec un seul câble.
Le câble va de maître -> esclave1 -> esclave2 -> esclave3.

La RS485 sera un peu plus complexe d'un point de vue logiciel, car il faut gérer les adresses sur le bus.

On peut aussi utiliser le RS422 qui a les mêmes caractéristiques électriques que le RS485 (en fait c'est plutôt l'inverse, c'est le RS485 qui a les mêmes caractéristiques que le RS422), mais qui permet une liaison full duplex donc complètement transparent comme le RS232.

Salut,

hbachetti:
Il est possible d'envisager une liaison de 15m avec de la RS232, à 9600 baud, pas plus.
Je parle de vrai RS232 (d'ordinaire +-12V), pas d'UART à UART en 5V.

Dans mon premier taf, un hopital, nous avions des terminaux passif RS-232 +/-12v qui avaient des liaison très longues, sans doute pas loin 50m pour les plus éloignées et ca fonctionnait très bien.
Mais c'était avec du cable blindé très cher :slight_smile:

Merci à vous deux
Imaginez une surface carree d'environ 6m de côté, avec un poteau à chaque angle.
La platine maître sur un poteau et les UNO sur les 3 autres poteaux.
Donc 2 liaisons de 6 m et une de 12m.

J'ai déjà pratiqué du rs232 avec deux micro-contrôleurs et deux max232 et leurs condensateurs.
( J'ai aussi utilisé des max232. Avantage: pas de condensateurs).

Je n'ai jamais pratiqué le 485.
Je vais chercher comment il faut faire.
Est ce un "boîtier de conversion" de 232 à 485, et inversement?

Au début, je pensais rs232 ou bluetooth...

Les deux derniers ont répondu pendant que j'écrivais.(sur mon tél, c'est avec un seul doigt et c'est long).

Il faut des modules MAX485, je suppose.

Hello

Ca peut aussi l'être l'occasion de s'amuser avec un bus CAN.
On trouve de petites platines toutes faites à pas cher, et là au moins le protocole est pris en charge.
Y a juste deux fils à faire courir d'un arduino à l'autre.
Côté Arduino ça fonctionne en SPI, les libs sont pas trop compliquées à utiliser.

Moins de 2€ pièce chez les chinois
Y a même un cavalier qui permet de refermer la boucle à chaque extrémité du bus, avec la résistance de 100 Ohms.

Avantages (outre tout ce qui a trait au protocole) : débit, robustesse aux parasites.
Limite : 8 octets maximum par message

Merci aux intervenants, il ne me reste plus qu'à commander cette platine et à faire des tests

je vous ferai un REX.

Une liaison RS232 ou RS422 voire RS485 me parait beaucoup plus simple à mettre en oeuvre.

Je ne sais pas encore ce que je vais faire.
Merci de ta réponse

Je pense que 12m, meme 5v devrait passé en RS-232.
A la limite, y rajouter des buffers pour protéger les ports du uP et fiabiliser le signale.
A tenter :slight_smile:

Une liaison en mode différentiel permettra de se donner de la marge de fonctionnement donc de la tranquillité et permettra de dégager du temps pour régler d'autres problèmes.
Elle permettra soit de gagner de la longueur soit d'obtenir des débits inatteignables en RS232.

D'après vous pourquoi quand on compare les normes on trouve pour l'EIA 422 (ex RS422) ou le EIA 485 (ex RS485) une sensibilité de réception de ± 0,2V alors que le vieux RS232 exige ± 3V ?
Les liaisons par EIA422/485 sont adaptées ce qui donne encore plus de souplesse pour la transmission.

destroyedlolo:
Je pense que 12m, meme 5v devrait passé en RS-232.
A la limite, y rajouter des buffers pour protéger les ports du uP et fiabiliser le signale.
A tenter :slight_smile:

Pourquoi faire une usine à gaz alors que des circuits modernes bien plus performants existent ?

68tjs:
Une liaison en mode différentiel permettra de se donner de la marge de fonctionnement donc de la tranquillité et permettra de dégager du temps pour régler d'autres problèmes.
Elle permettra soit de gagner de la longueur soit d'obtenir des débits inatteignables en RS232.

D'après vous pourquoi quand on compare les normes on trouve pour l'EIA 422 (ex RS422) ou le EIA 485 (ex RS485) une sensibilité de réception de ± 0,2V alors que le vieux RS232 exige ± 3V ?
Les liaisons par EIA422/485 sont adaptées ce qui donne encore plus de souplesse pour la transmission.
Pourquoi faire une usine à gaz alors que des circuits modernes bien plus performants existent ?

Bonsoir
+1 avec l'argumentaire éclairé 8)

bonjour à tous, je m'oriente vers les boitiers de conversion que me signale HBacheti

mais je ne voie pas comment les connecter coté arduino.

coté connecteur vert, je me doute bien que les pinoches du milieu correspondent aux connecteurs verts et qu'on y branche le + et - de la partie filaire 485.
que les pinoches à droite et à gauche ( les extérieures ) sont pour le GND et le +5V à +12V.

mais coté arduino, que représentent DI, DE, RE, RO.

sur la même page chez ali, il y a cet article (sans parler de sa qualité), il est plus explicite au niveau du branchement
ICI

pouvez vous me guider pour le branchement du 1er ou me dire ce que vous pensez du lien que je vous propose.

mais coté arduino, que représentent DI, DE, RE, RO.

Sur quel schéma ?

Inspire-toi de ceci :

Les deux broches DE RE sont deux broches "enable".

Le TX RX peuvent être branchés sur un SoftwareSerial.

ok, merci Henri

avec le shéma interne du circuit c'est plus compréhensible.

sur quel schéma: sur sérigraphie de la platine que tu me proposais sur ton 1er lien

merci