J'avais déjà parlé de la connexion d'un bus 1-wire sur 1 BananaPI dans un billet que je vous conseille de (re-)lire car il contient aussi une introduction (succincte, je l'avoue) du bus 1-wire. Le sujet de ce billet est maintenant de déployer le bus à travers la maison.
Dans ce billet, un peu de théorie, mais surtout, un exemple de réalisation pratique en mode DIY et radin : ma maison. Et pour corser un peu les choses, la dite maison à 30 ans et évidemment rien n'avait été prévu.
On peut faire quasiment ce que l’on veut à partir du moment où il n’y a pas de boucle : la doc indique que les meilleurs performances s’obtiennent avec un bus linéaire classique (toutes les sondes alignées sur un seul et unique fil), mais rien n’empêche d’y ajouter des branches voir même d’installer un réseau en étoile.
En pratique, mon bus est plus ou moins linéaire en peigne :
Évidemment, c'est ma soupe, pas très passionnant : c'est simplement pour démontrer que tirer un bus dans une maison existante n'a rien de simple et qu'il faut faire preuve d'une belle inventivité.
La majorité des revendeurs de capteurs 1-wire tout fait utilise des connecteurs RJ-11, avec des HUBs pour repartir proprement vers les différentes branches du réseau. Ça fait en effet plus « pro » et s'est probablement la solution à choisir lorsque l'on prévilégie les capteurs du commerce. Par contre, il faut
Rapidement, il faudra fait la balance entre ce qu'on veut faire, ce qu'on sait faire et surtout le budget que l'on veut y mettre.
Les sondes et câbles tout fait ont l'avantage de la simplicité et de la finition … mais attention aux prix ! A titre d'exemple, mes sondes de température à la mode DIY me coûtent environ 1€ l'unité plus une petite dizaine de minutes pour le montage. La même achetée dans le commerce tape plutôt dans les … 9 à 15€ !!!! Sans commentaire.
Et je ne parle même pas des HUB qui peuvent atteindre plusieurs dizaines d'€uros … alors qu'ils sont majoritairement totalement passifs.
De mon côté, comme je suis à fond dans le « fait à la mimine », j'ai choisi le sucre d'électricien et le bornier à vis : déjà car un fil nu passe plus facilement qu'un connecteur dans les trous que nous serons amenés à faire (ben oui, toujours le problème de le faire dans une maison existante), ensuite ça laisse le libre choix du câble. Le tout réduit évidemment le coût.
Une sonde nue : ~ 1€
Un composant 1-wire peut fonctionner en 3.3 volts ou en 5 volts.
Le 3.3v est la tension native des GPIOs des SBC fruitiers : on trouvera beaucoup de schémas attaquant directement un bus 1-wire depuis les GPIOs d'un Raspberry.
Si ça ne posera aucun problème pour des tests sur bus court (et encore, attention aux cours-circuit si vous tenez à vos GPIOs), je ne peux que le déconseiller pour automatiser une maison entière. Ça marchera … un temps : l'électronique étant directement exposée à toutes les perturbations que l'on peut imaginer venant d'un bus se baladant sans protection dans une maison remplie d'électronique, d'électroménager, sans compter les orages. Tous ces courants induits entraîneront inévitablement une usure prématurée de l'électronique du CPU.
Le 5v est le mode qui, d'après la doc de Maxim, procure la meilleure stabilité du bus surtout sur de longues distances. De plus, comme je l'avais indiqué dans mon billet sur le BananaPI, j'ai aussi décidé d'utiliser un driver I2C plutôt que de laisser la charge de la gestion du bus au CPU : Non seulement ça décharge le CPU d'une tâche ingrate (mais bon, il est loin d'être chargée malgré le nombre de choses incombant à mon Banana, il reste beaucoup de marge), mais en plus, cela crée un découplage électrique entre le bus 1-wire et le SBC.
Un capteur 1-wire fonctionne
J'ai choisi le mode alimenté pour me permettre un plus grand nombre de sondes … il me faut donc 3 fils : 1 paire masse/données + 1 fil 5v.
Note : on peut mixer à loisir des sondes alimentées et celles utilisant le mode parasites … parfois, on n'a même pas le choix vu que certaines d'entres-elles ne fonctionnent qu'en mode parasite.
Les puristes opteront pour un câble réseau catégorie 5. De mon côté, j'ai pris ce que j'avais sous la main, à savoir du fil de téléphone. À l'heure où j'écris ces lignes, mon réseau doit faire dans 70 mètres et 6 sondes de températures sans rencontrer le moindre problème.
Attention, il ne faut pas utiliser de câbles blindés ou coaxial : l’impédance n’est plus la même et ça ne fonctionnera pas.
Visitez : Nos sorties Ski et rando |
Copyright Laurent Faillie
2001-2024
N'oubliez pas d'entrer le mot de passe pour voir aussi les photos perso. |
Contactez moi si vous souhaitez réutiliser ces photos et pour les obtenir avec une plus grande résolution. |
Visites durant les 7 derniers jours au total. |
Vous pouvez
laissez un commentaire
sur cette page.