Nouvelles:

Le Forum est maintenant chiffré (préambule https). Bien sûr, des liens externes insérés dans les sujets vont demeurer inchangés. Mais la composition des pages du Forum est désormais sécurisée. Si des problèmes d'affichage surviennent, veillez à vider votre cache pour ce site.

Menu principal

Questions sur la longueur maximale (fils) d'un circuit

Démarré par Tarharnak, Mars 23, 2020, 06:26:31 PM

« précédent - suivant »

Tarharnak

Bonjour à  vous,

Je suis en train de faire un peut de domotique pour ma maison, c'est un ancienne bâtisse (1830). Cette maison était une ancienne poste, aussi beaucoup de pièces sont traversées par le réseau téléphonique (obsolète) interne.
Je réalise un projet qui va me donner le niveau de fioul de ma cuve. Un flotteur relié à  un système d'engrenages dont le dernier est sur un potentiomètre me permettra de savoir où j'en suis. Mais la cuve est à  15-20 mètres (par voie de fils) de l'endroit où je veux pouvoir faire ma lecture.

J'en viens à  mes questions :

Puis-je utiliser les fils téléphoniques existants ou dois-je mettre de nouveaux fils ?
Y aurais t il un problème avec la longueurs (environ 20 m) par rapport à  la tension, les pertes, la résistance interne ?
Pourrais-je utiliser sur de telles longueurs des protocoles série ?

Merci à  vous

papyblue

Bonjour Taharnak,

La longueur des fils ne pose pas de problème pour la lecture d'un potentiomètre. Les fils téléphoniques conviennent dès lors où on les utilise avec des tensions de moins de 50V. Les pertes ohmiques dans les fils seront négligeables par rapport à  la valeur du potentiomètre. Pour une liaison numérique sur 20 m passant  par une paire torsadée c'est tout à  fait possible, il faudra juste choisir la bonne interface et ajuster la fréquence ( par exemple RS485 et 19200 bauds). 20 m ce n'est pas très contraignant pour de la domotique, en consultant les forums de domotique, vous verrez que certains font des liaisons de plus de 100 m avec du OneWire.

Bonne bidouille.

Tarharnak


Tarharnak

#3
Bonjour,

Je réouvre un peu le post pour ajouter un nouvelle question :

Toujours par des paires torsadées je doit faire communiquer un LCD 1602 I²c et un Arduino sur 10 mètre.

J'ai en ma possession des P82B96 (datasheet) pour alonger le bus I²c.

Cela peut il fonctionner ?

Merci

Yffig

Bonjour,

Sans l'avoir expérimenté moi même, au vu de la datasheet, la réponse est oui: ces boîtiers sont faits pour ça

"400-kHz Fast I2C Bus Operation Over at Least 20 Meters of Wire" sur la page d'accueil de la DS

Bon dimanche

Yffig

Tarharnak

Merci Yffig, mon niveau d'anglais n'étant pas adéquat et les traducteurs ne me donnant satisfaction, j'ai préféré avoir un retour tel que le tiens.

"Longer Cables by allowing bus capacitance 400 pF on Main Side (Sx/Sy) and 4000 pF Transmission Side (Tx/Ty)" Si je comprend bien : Coté uContrôleurs et périphériques on conserve la limite en capacitance normal du I²c et coté "paire torsadée" il y a 10 fois plus de capacité ?
Bon dimanche

Yffig

#6
Re,
Oui, ton interprétation est correcte:
Sx et Sy sont bien du côté bus I²C classique ("signaux non différentiels) avec un C max de 400 pF
Tx/Ty sont sur le côté ligne de transmission en émission sur paire différentielle.

Un câble à  paires torsadées type LAN Cat5 a typiquement une capacité linéique de ~52 pF/m (et une inductance linéique de 525 nH/m, ce qui donne par ailleurs une impédance caractéristique Zc de ~ 100 Ω (= racine de L/C))(*).
Donc si ces boîtiers supportent 4000 pF côté émission au max... tu pourrais aller jusqu'à  4000/52 = plus de 70 m de Cat5 :) mais en restant à   10, 20 m, tu es sûr que ça doit marcher (en soignant quand même ta réalisation).

(*): Au début de ton fil, tu parles de paires téléphoniques... Je n'ai pas sous la main les données mais l'impédance caractéristique étant de 600 Ω, il est possible que la capacité linéique soit bien différente de 52 pF/m...

Yffig

Tarharnak

Merci pour toutes ces précisions.

En effet je reste toujours sur des paires téléphoniques.

Yffig

Re,

Voici un exemple de valeurs pour des paires téléphoniques:
https://www.materielelectrique.com/cable-paires-p-277722.html
Là , ils donnent une capacité linéique < 58 pF / m. Ça devrait aussi très bien marcher  ;)

Bon am
Yffig

loulou31

Bonjour,

En pratique il est quasiement  impossible d'avoir une paire torsadée d'impédance aussi élevée que 600 Ohms. Pour avoir une ligne d'une telle impedance il faut des lignes bifilaires par exemple type echelle à  grenouille.
Voir calcul de l'impédance d'une ligne : https://f5zv.pagesperso-orange.fr/RADIO/RM/RM07/RM07d/RM07d06.htm


Jean-Louis

Tarharnak

Bien alors merci à  vous :)


Si je veux ajouter d'autres périphériques sur le bus, puis-je faire de cette façon (représentée en couleur):


Yffig

Bonsoir

@ Tarharnak,

Tout d'abord si cette topologie était possible dans tous les cas, TI l'aurait vraisemblablement détaillée dans sa datasheet.
Bien évidemment un premier pb de cette topologie est la mise en // des capacités des câbles donc l'addition des capacités sur un seul boîtier.
Ensuite, pourquoi pas dans certains cas ? Et même en plus simple si tes 2 périphériques sont proches: les mettre en parallèle directement plutôt que sur 2x2 paires.
Quels certains cas ?
Je pense au cas où tes périphériques n'ont pas l'initiative de demander à  occuper le bus pour envoyer des données: dans ce cas il n'y a pas de risque de conflit et c'est l'I²C master qui a l'initiative d'adresser les périphériques pour leur envoyer des données  ou des commandes (cas du LCD).
Si un périphérique est émetteur de données, alors il "suffit" que ce soit exclusivement à  la demande du Master (genre de "polling").
Ce sont des cas où cette topologie pourrait éventuellement marcher mais c'est à  tester

Bon ce ne sont que des pistes à  explorer si vraiment tu étais contraint par le nombre de boîtiers que tu as sous la main...mais perso, je ne me prendrais pas le chou pour si peu: je ramènerai chaque périphérique par sa propre liaison et voilà  !

@ Jean Louis,
Tu as raison... 600 Ω, c'est l'impédance de référence en téléphonie analogique (tout comme en audio) et pas l'impédance caractéristique des lignes. Autant pour moi !

Bonne soirée

loulou31

Bonjour,

Moi je dirai oui, le bus I2C est un bus et il est justement conçu et prévu pour mettre plusieurs slaves sur le meme bus. Evidement il faut tenir compte de la charge capacitive vs le debit.
Après analyse il y a un truc qui m'embete dans ce circuit : c'est la mise // du main et remote des 12V sur le SCL... En fait il en doit y voir seulement une alim12V.


Jean-Louis

Yffig

#13
Bonsoir,

Pour l'I²C, finalement..., il vaut mieux s'adresser au géniteur Philips (devenu NXP) qu'à  ses saints...

La datasheet du P82B96 chez NXP est plus riche que celle de TI:
https://www.nxp.com/docs/en/data-sheet/P82B96.pdf
ainsi que cette note d'application NXP:
https://www.nxp.com/docs/en/application-note/AN255.pdf

Dans les 2 docs fais une recherche sur les mot-clés "multipoint" et "multi-point, il y a des schémas qui correspondent à  ta topologie. Vérifie que ces topologies sont compatibles multi-masters (si c'est ton cas) et longues distances (je n'ai pas tout lu et je ne les lirai pas).
Par contre je pense que si tes liaisons filaires sont en extérieur, des TVS adaptés aux tensions en jeu seraient une saine précaution (attention à  leur capacité cependant, 1000pF sont possibles sous faibles tensions genre 10V).

Bonne lecture

Yffig

Tarharnak

#14
Encore merci :)




De ce fait, je suis en train de faire un PCB pour certaines pièces de la maison afin de pouvoir potentiellement connecter plusieurs lignes téléphoniques et/ou plusieurs périphériques :