LOCODUINO
Discussions Générales => Bus CAN => Discussion démarrée par: Tony04 le avril 17, 2020, 09:21:53 pm
-
Bonjour à tous,
ayant accepté le défi de numériser l'immense réseau d'un ami qui fait 9 x 3 m avec près de 60 aiguilles et bien plus de feux et dont il faut automatiser la circulation de 6 trains dans autant de gares tout en laissant une grande partie du réseau libre pour "jouer" manuellement, il m'a fallu trouver une astuce pour limiter le câblage au maximum.
C'est donc tout naturellement que je me suis orienté vers une distribution par des satellites (faits maison) pour tout ce qui est commande d'aiguilles ou autres commandes.
Pour les feux j'ai tenté une autre approche:
Suite aux conseils de "petitrain" je me suis penché sur le bus PJON dont il semblait tout à fait enchanté : https://www.pjon.org/how.php
J'ai testé ce bus avec d'un coté l'émetteur qui est un simple Arduino et de l'autre un ATtiny85 qui commande les 3 leds du feu. La liaison est faite avec 3 fils PTT, le +5V, le 0V et le signal sur un seul fil.
Résultat, un fonctionnement parfait du premier coup avec une longueur de câble de plus de 15m et même posé le long des rails avec des locos en fonctionnement. Pour l'installation finale il y aura un circuit +5V/0V tout autour du réseau et un seul fil pour tous les feux.
Ci-joint une photo du réseau actuel, un petit croquis du branchement Arduino/ATtiny et les 2 sketchs émission et réception.
Si d'autres utilisateurs du site ont déjà de l'expérience avec cette librairie ce serait sympa de la partager, je suis du genre prudent et devant une telle simplicité, où se cache le piège ?
Bonne soirée à tous
Cordialement
Antoine
-
Ce réseau est immense et son gestionnaire doit être interessant.
Bravo Antoine, tu relèves toujours des défis gigantesques et tu les reussis ;)
-
Bonjour Antoine,
toujours à l'affut des nouveautés (c'est la première fois que j'entends parler de PJON et il ne faut pas avoir peur d'adopter ce nom et ce logo ! Peut-être que ça sonne différemment pour les anglophones)
Pourquoi n'as tu pas retenu la solution du bus DCC avec les décodeurs à base d'ATTiny de Rudy Boer : aucun fil puisque alimentation et bus sont fournis par la voie ?
https://rudysmodelrailway.wordpress.com/software/
-
Antoine Bonjour
en attente d'une arriver lointaine pour mes cartes CAN :P
je cherche pour arduino Uno, le type de câblage/adaptateur pour relier du PJSON rien vue sur leur sites.
un p'ti schéma
merci
-
Bonjour,
Puisqu' Antoine me cite dans son post, je me doit de répondre:
Pour JeeLet : le bus en question s'appelle PJON, comme les pigeons qui portent les nouvelles du point à un autre....
Pour le branchement à un Arduino Uno, rien de plus simple : un seul fil relié aux 2 arduinos sur n'importe quelle broche(il vaut mieux prendre la même broche sur les deux Arduinos pour ne pas faire d'erreur dans le code, mais pas obligatoire), penser à relier les GND pour la référence de courant.
Pour ma part, je m'en sers depuis longtemps sur mon réseau (que je trimbale en expo) et jamais eu de soucis. Ce que j'aime particulièrement, c'est qu'il n'y a pas besoin de module additionnel comme les autres bus, les arduinos se débrouillent tout seuls.
Je préfère réserver le DCC pour la conduite des machines.
-
Pourquoi n'as tu pas retenu la solution du bus DCC avec les décodeurs à base d'ATTiny de Rudy Boer : aucun fil puisque alimentation et bus sont fournis par la voie ?
Bonjour Michel,
pour la même raison que petitrain, je préfère garder le DCC pour les locos, à tort ou à raison d'ailleurs.
Amicalement
Antoine
-
je cherche pour arduino Uno, le type de câblage/adaptateur pour relier du PJSON rien vue sur leur sites.
Bonjour JeeLet,
comme le précise petitrain, un simple fil PTT torsadé fait l'affaire et il suffit de relier tous tes arduino entre eux en piquant sur ces 2 fils comme le bus CAN.
Cordialement
Antoine
-
Bonjour à tous,
Je ne connais PJON (je ne suis pas parfait, loin s’en faut) mais le remarque je préfère garder le DCC pour les locos
me colle parfaitement et devrait inspirer tout le monde.
Maintenant je remercie petitrain de bien vouloir nous faire un tuto sur PJON.
Comme c’est 100% soft il doit y avoir une bibliothèque, des limitations, des vitesses de transmission maxi, peut-être pas d’interruption... je veux tout savoir !
On pourra comparer avec le CAN 8)
-
Bonjour Dominique,
non, surtout pas vouloir le comparer avec le CAN qui reste l'un des bus les plus sûrs, d'ailleurs je ne me sers du PJON que pour les feux et que dans un seul sens de communication bien qu'il soit multimaster. Mais son grand avantage c'est qu'il est portable sur le ATtiny85 et sur d'autres petits microcontrôleurs.
De toute façon je vous tiens au courant de l'avancement des travaux et de leur loupés s'il y en a. Pour l'instant mon automatisme de circulation en est à sa 520è loco (avec 2 locos en circulation) et toujours pas de loupé.
Bon après-midi à tous
Antoine
-
bonsoir
... "surtout pas vouloir le comparer avec le CAN" +1 d'accord
fouillé le web pour trouvé des retours, et il y a deux monde, certain trouve génial et d'autre crie a l'hérésie.
Des Arduino en grappe sur un bus avec des signaux TTL sans protection .... pourquoi pas !!
il y a une vidéo qui dit tout sur youtube.com/watch?v=0EUNtM_dAFU
(lien direct supprimé, pollution inutile)
https://github.com/gioblu/PJON/wiki/Mitigate-interference
merci Antoine pour la découverte d'un autre monde.
-
Des Arduino en grappe sur un bus avec des signaux TTL sans protection .... pourquoi pas !!
ça parait une hérésie, surtout quand on a expérimenté de l2C à l'air libre, mais si il s'agit de la signalisation avec de la redondance à fond, il est certain qu'il n'y a pas de soucis.
Pour un nombre réduit de signaux, sur de petits réseaux individuels, j'en reste au DCC avec aucun tirage de fils.
-
Pour un nombre réduit de signaux, sur de petits réseaux individuels, j'en reste au DCC avec aucun tirage de fils.
Là je suis d'accord avec toi Michel, mais as-tu vu le nombre de signaux qu'il va me falloir sur le réseau du copain, sans compter les 6 trains en marche automatique et toutes les autres machines qui vont tourner en manuel, cela explique un peu mieux mon choix peut-être.
Et de toute façon si cela a permis à notre charmante communauté de découvrir une nouveauté je ne serai pas resté en confinement pour rien 8)
Sur ce, bonne nuit à tout le monde
Cordialement
@ntoine
-
Bonjour Antoine,
effectivement, ton choix est manifestement justifié par le contexte et le sujet (la signalisation). Merci d'avoir partagé cette nouveauté.
Et je me risque à un hors sujet mais utile à ceux qui auraient du mal à comprendre dans quelle situation nous sommes :
https://www.youtube.com/watch?v=IwB5HPsvPRE&feature=youtu.be
-
Bonjour,
Le bus PJON avait été évoqué dans les commentaires d'un des articles de la carte satellite V1 (https://www.locoduino.org/spip.php?article242#forum3477). L'inconvénient majeur que je vois est l'utilisation de la RAM. J'avais compilé un sketch qui ne fait quasi rien (allumer une LED en fct d'un message reçu) et 55% de la RAM était occupée. PJON étant toujours installé sur ma machine, je viens de compiler ton sketch pour un ATtiny85 et on a 81% de la RAM occupé avec une alerte sur la stabilité.
(Et d'ailleurs, concernant la signalisation, pourquoi ne pas utiliser des WS2811, ça ferait ce que tu veux, sans avoir à programmer les ATtiny ;D)
Donc mon opinion est que sur les cibles qui nous intéressent, PJON reste cantonné à des applications extrêmement basiques pour des raisons très pratiques. Sur des cibles plus conséquente comme des Teensy ou des Nucleo de ST, il est inutile puisque le CAN est présent sans matériel additionnel :) (sauf le transceiver)
-
Bonjour jean luc,
As- tu la bonne bibliothèque?
Si tu arrives à compiler les sketchs d'Antoine, c'est que tu dois avoir une version obsolète de cette bibliothèque qui n'est plus valide.
Si tu travailles avec la version la plus récente, tu peux ne mettre dans ton sketch que ce que tu as besoin de la bibliothèque et ça fait une grosse différence sur la ram utilisée (comme fait Thierry dans ces bibliothèques).
A titre d'exemple, pour un sketch qui gère un menu, la position d'un servo et la PWM d'une led : l'émeteur 28% de mémoire dynamique, et le récepteur 33%.
Par contre, la remarque sur le ws2811, est prometteuse, je vais aller fureter de ce côté.
-
(Et d'ailleurs, concernant la signalisation, pourquoi ne pas utiliser des WS2811, ça ferait ce que tu veux, sans avoir à programmer les ATtiny ;D)
Bonjour jean-Luc,
je ne connaissais pas ce circuit intégré et je dois reconnaitre qu'il doit ouvrir des possibilités.
J'ai bien précisé que je ne mettais en aucun cas en balance PJON avec le bus CAN que je maitrise par ailleurs fort bien et qui m'a déjà rendu d'énormes services, c'était juste pour faire connaitre cette autre bus qui semble quand même fort puissant.
Bon dimanche après-midi à tous les connectés (et aux autres bien sûr :) )
Cordialement
Antoine
-
Bonjour petitrain
À vrai dire j'avais installé la dernière version et modifié le sketch d'Antoine en ajoutant Any dans le paramètre du template (je ne savais pas quoi mettre). En examinant les exemples, j'ai changé en SoftwareBitBang et ça ne change rien sur ATtiny : 81% de RAM.
-
Il ne s'agit pas de mettre en balance. C'est juste que je trouve que PJON consomme beaucoup de ressources
-
je ne connaissais pas ce circuit intégré et je dois reconnaitre qu'il doit ouvrir des possibilités.
De plus il est peu cher. Je l'envisage pour l'éclairage des bâtiments et les lampadaires (je n'ai pas de signalisation lumineuse sur mon réseau, que de la mécanique)
https://www.ebay.com/itm/50PCS-WS2811S-WS2811-SOP-8-IC/192402366012
Tu trouves aussi des modules déjà soudés, impec pour les signaux :
https://www.ebay.com/itm/100pc-WS2811-IC-PCB-Board-14x9mm-For-F12-LED-Pixel-Module-Digital-Light-12V-DC/233044504584
De plus, c'est un driver à courant constant, donc pas de résistance.
-
J'utilise ce WS2811 avec mon prototype de "satellite" (en attendant la version 2 de Locoduino ;)).
Il me permet de ne consommer qu'une seule sortie pour les feux.
-
J'utilise ce WS2811 avec mon prototype de "satellite" (en attendant la version 2 de Locoduino ;)).
Voila un bon rappel, où en est-il ce satellite 2 messieurs ? ;)