LOCODUINO

Discussions Générales => Présentez vous ! => Discussion démarrée par: bobyAndCo le juillet 05, 2016, 01:32:04 pm

Titre: Nouveau venu
Posté par: bobyAndCo le juillet 05, 2016, 01:32:04 pm
Bonjour à tous,

Mon prénom est Christophe. J’ai commencé un réseau en HO il y a 6 mois avec l’ambition de le faire résolument en DIY pour ce qui est de l’éléctronique (que je maitrise peu) et l’informatique (que je maîtrise beaucoup plus).

Aujourd’hui, j’ai un réseau en HO sur  3 x 2 m. et 7 locos (en DCC). Les événements sur le réseau sont détectés, selon les contraintes, soit par des ILS, des capteurs IR ou des lecteurs de code barre (avec codes barres sous les locos et lecteurs sous la planche). Il y a une quinzaine d’aiguillage.

Le tout avec 4 Arduinos mega 2560.

Un grand merci tout d’abord à toute l’équipe de LOCODUINO car j’ai largement “pompé” sur le site les solutions mises en œuvre sur mon réseau. Je trouve vraiment fantastiques toutes les contributions. UN GRAND MERCI A TOUS !

Pour la communication entre les Arduinos (et l’ordinateur le cas échéant), j’ai choisi de passer par des shields ethernet. Cela pour utiliser des ressources logicielles largement disponibles (HTML, javascript, PHP, SQL…) très performantes et gratuites. Pour la partie hard, les ressources sont souvent “bon marché” également.

Après avoir largement profité, j’ai eu envie d’apporter ma petite contribution si elle peut intéresser certains.

Ma première étape finalisée est ma centrale DCC développée en HTML, javascript et Angular JS. Pour ceux qui ne connaissent pas, Angular est un framework open source développé par Google. L’un de ses grands avantages est qu’il permet de réaliser des applications en One Page ce qui est particulièrement bien adapté au pilotage de locomotives et d’un réseau dans son ensemble.

Ca donne une interface de pilotage très graphique, ergonomique et en même temps très complète. Je peux donc piloter les locos, activer toutes les fonctions (éclairage, bruits…) mais aussi intervenir sur tous les réglages (changement d’adresse, volume sonore…).

Le résultat est vraiment simple à mettre en oeuvre. Il suffit d’un ordinateur, d’un navigateur (Chrome de préference) et d’un éditeur web (il y en a plein gratuits sur le web) et le tour est joué. Une Arduino bien sûr, un LMD18200 et un max471 comme décrit dans l’excellente série d’articles : Comment piloter trains et accessoires en DCC avec un Arduino

Cet interface de pilotage DCC est accessible en ligne et je peux communiquer le lien à ceux qui le souhaitent.

Voila, je vais continuer “puisser” très largement sur votre site et j’essayerai  d’apporter à ceux qui le souhaitent ma contribution.

Bien à vous

Christophe



Titre: Re : Nouveau venu
Posté par: Thierry le juillet 05, 2016, 02:31:00 pm
Bienvenue parmi nous. Content de voir que les articles sont utiles !
Ton projet est très intéressant, et intègre des points que nous n'avons pas encore développé sur le site, comme la communication Ethernet ou le pilotage Dcc externe, fourni par un navigateur...
N'hésites pas à ouvrir un sujet sur ce projet pour le présenter en détail, voire à te déclarer 'rédacteur' sur la partie éditoriale pour ajouter ta pierre à l'édifice !
Titre: Re : Nouveau venu
Posté par: bobyAndCo le juillet 05, 2016, 09:38:13 pm
Bonsoir,

J'ai bien sur envie de faire profiter les autres de ce que j'ai pu faire d'autant que comme je te le disais, j'ai moi même largement "pompé" mais aussi et surtout parce que ça correspond bien à ma philosophie.

Je pense que les technologies web sont intéressantes car très puissantes (Angular est une merveille pour ce type d'appli qui peuvent devenir vite très complexes) et souvent gratuites. Le HTML 5 à introduit des innovations notables pour ce qui est des interfaces graphiques (sliders, champs input évolués...) et aussi par exemple le localStorage dont je me sert dans cette appli (pas dans mon projet car j'ai la chance de disposer de bases en SQL);LocalStorage qui permet de stocker toutes les modifications faites sur les cv et de les récupérer au chargement suivant. Idéal pour des petits circuits jusqu'à 10 locos.

Je t'ai mis un zip en téléchargement qui contient le fichier html. J'ai mis le java script dans le fichier HTML pour que ce soit plus lisible. J'ai aussi mis le fichier .ino et le fichier .json qui contient les informations sur les locos (téléchargé dans l'appli à son ouverture). Ces fichiers ne servent que pour la consultation. Par contre, voici le lien qui permet de piloter les locos à distance, ça te donnera une idée plus précise. Ce lien est totalement opérationnel pour peu que la carte soit sous tension. Si cela t'amuse, on pourra faire un test "en live" et c'est toi même qui pourra piloter mon réseau. Il suffirait de se synchroniser avec une webcam.

zip : http://89.225.199.180/train_HO/locomotives/Arduino_ethernet.zip (http://89.225.199.180/train_HO/locomotives/Arduino_ethernet.zip)
html : http://89.225.199.180/train_HO/locomotives/controller_demo.html (http://89.225.199.180/train_HO/locomotives/controller_demo.html)

Si aux vues des éléments que je te transmet, tu penses que cela peut faire un billet, je veux bien développer pour en faire profiter les autres.

Il serait ainsi possible pour ceux qui ne sont pas très "férés" en code de réaliser une centrale DCC complète très facilement avec n'importe quel ordinateur "un peu moderne". Aucun logiciel à acheter. Juste créer le fichier data.json contenant les paramètres des locos et des cv avec un éditeur de texte. Et le hard préconisé par "Locoduino" : Alim délivrant du 15 v, une arduino et LMD 18200. Cool, non ?

Je suis bien avancé (mais pas terminé) sur les lecteurs de code barre installés sous la planche qui envoient via ethernet les positions et identification exact des locos. Précieux pour envoyer des commandes en sachant précisément quelle machine est concernée.

Dans l'attente de ton retour, bien à toi.

Christophe