Auteur Sujet: DCC++ et ETHERNET ! Oui mais comment...  (Lu 8876 fois)

fcot2002

  • Full Member
  • ***
  • Messages: 114
    • Voir le profil
DCC++ et ETHERNET ! Oui mais comment...
« le: novembre 16, 2018, 05:57:44 pm »
Hello @ tous !  8) 8) 8)

En complément des articles de BobyAndCo, je me lance dans une page d’écriture pour relater mon parcours afin d’arriver à une centrale DCC++ + Ethernet.

Le ton est volontairement léger et absolument pas technique, pour ne perdre personne en route.

Mon réseau : ho débuté il y a… analogique non câblé (une chance), forme simple os de chien.
L’idée est de terminer ce réseau en digital directement. Constat le digital commercial c’est cher. Moi j’aime bien comprendre et faire, concours de circonstances mon fils absolument pas informaticien ni électronicien c’est lancé dans l’aventure Arduino, donc petite recherche sur le net et Locoduino est arrivé. Et me voilà. Bon avouons le je suis de formation informatique, mais très peu touché le code je suis dans les fonctions transverses / méthodologiques. Je sais lire et comprendre le code, de là à arriver au niveau des « as de Locoduino » y a de la marge.

Alors c’est parti pour DCC++ /Ethernet :

1/ la lecture, re lecture, re re lecture, re re re… du forum et des articles sur le site Locoduino. Lesquels me direz-vous, et bien cela dépend de ce que vous voulez faire, essence même du DIY faire le point sur ce que l’on veut atteindre.

Pour ma part je voulais de suite m’affranchir d’une manette de commande type « maus » ou autre, donc je me suis orienté vers les articles :

•   http://www.locoduino.org/spip.php?article182  Réalisation de centrales DCC avec le logiciel libre DCC++ (1 / 2 / 3)

•   http://www.locoduino.org/spip.php?article216 Piloter son Arduino avec son navigateur web et Node.js (1 / 2 / 3 / 4)

•   https://www.youtube.com/channel/UCJmvQx-fe0OMAIH-_g-_rZw  Chaine Youtube qui vous explique tout.

Je dirais que j’ai passé une bonne quinzaine de jours à lire et relire les articles, visionner les vidéos.

   Premier constat : Locoduino est super bien écrit et détaillé mais part un peu dans tous les sens. Ce sentiment est partagé avec d’autres modélistes proches et rencontrés à Orléans cette année. Les modélistes proches m’ont envoyé en éclaireur… Quand on lit un article, il renvoi souvent à un autre et ainsi de suite. Normal ! Souvent le cas des procédures écrites par les développeurs eux-mêmes, ils sont dedans et connaissent le sujet sur le bout des doigts. Difficile de prendre du recul. (Là c’est ma touche déformation pro qui revient)

   C’est en visualisant les vidéos qui décrivent étape par étape que j’ai appréhendé l’ensemble de « faire une centrale DCC++ », les étapes sont décrites step by step en vidéo, et pour savoir ce qui se passe sous le capot on va dans Locoduino. Cela dit un step by step dans Locoduino pourquoi pas après tout.

   Astuce pour les vidéastes ne maîtrisant pas ou peu la langue de Shakespeare, il y a dans Youtube la possibilité d’avoir un sous-titrage in french in the text : Le petit engrenage paramètres, sous-titres « anglais générés automatiquement », revenir sur sous-titre choisir « traduire » et choisir sa langue préférée. Bon attention quand même c’est de la traduction auto……………………………

2/ Le passage à l’acte

Il faut bien se lancer à un moment ou un autre. L’Arduino Mega, le Shield Ethernet, le shield Motor sont arrivés, alors il n’y a plus qu’à. Alors avec dans l’ordre d’apparition en scène nous commençons par :

2.1 Node

•   http://www.locoduino.org/spip.php?article216 Piloter son Arduino avec son navigateur web et Node.js (1 / 2 / 3 / 4)

Pour commander via le ouaibe, il faut bien savoir avec qui on discute. Il faut donc un serveur web. Node est là ! Il suffit de l’installer. Là encore les lectures préparatoires ont leur importance. Les liens d’installations sont clairs.

Personnellement pas de problème d’installation, mais les commandes dans un terminal ne me sont pas inconnues.

   Alerte dans la dernière version il y a un bug avec « serialport », pas un souci pour moi je suis en Ethernet.

   On suit bien les exercices de Locoduino même moi oui oui waouh j’écris « salut Locoduino »

   Gérer votre arborescence de dossiers simplement, et respecter celle de « Controller ». La mienne donne ceci (à titre d’exemple)

o   Disque C
      o   Utilisateurs (users)
              o   Franc (Mon dossier utilisateur)
                   o   DCCPP : dossier créé par moi pour y ranger tout ce qui est DCC++
                      •   .config : Node dossier
                      •   .node-gyp : Node dossier
                      •   Controller_dccpp_node : dossier controller. Si vous les renommez attention avec les accès depuis la page html ne fonctionneront plus, il fadra aussi modifier le html et CSS.
                      •   Node_modules : Node dossier
                      •   .DS_Store : fichier
                      •   Dccpp_node.js : fichier pour lancer le serveur node DCC++

J’ai un vieux PC sur lequel Node est installé et qui fait office de serveur web, mais pas que ! Les dossiers Arduino etc. sont aussi sur ce PC.

2.2 La centrale DCC++

•   http://www.locoduino.org/spip.php?article182  Réalisation de centrales DCC avec le logiciel libre DCC++ (1 / 2 / 3)

Pour le montage là encore peu d’inquiétudes, les articles et vidéos parlent d’eux-mêmes. J’empile façon mille feuilles : Mega+Ethernet+Motor.

Les quelques modifications des sketch (adresse IP etc.) sont clairement et simplement expliquées.

   Petite anecdote perso : par hasard j’avais la même IP que celle du sketch d’origine, mon pc serveur est lui aussi en ethernet etc. Cette semaine me voici à digitaliser une machine, par souci de simplicité je descends dans mon local mon pc serveur pour lancer la page « controller » directement dessus. Evidement je passe en wifi… Et là bah le wifi ne prend pas la même adresse IP… Pensez à mettre votre serveur en IP Fixe, selon votre système d’exploitation plusieurs solutions, sinon le top gérer dans votre « box » les IP.

   Il est évident que l’on ne se lance pas directement dans le téléversement d’un sketch DCC++, on passe obligatoirement par les cases débutant Arduino « waouh j’allume une led ». Cela peut faire sourire mais même moi avec mes bases informatiques j’y suis passé pour bien comprendre le mécanisme IDE Arduino => Téléversement etc. Amusez-vous avec Arduino, au passage des idées d’applications viendront peut-être à votre esprit.

2.3 Controller

o   http://xxx.xxx.x.37:8080/controller_dccpp_node/controller.html

Bah rien, c’est une page html qui affichera vos machines et permet le contrôle de celles-ci. Entre autres choses… Elle permet surtout de lire / modifier les CVs de vos belles, etc. Tout cela très bien décrit par l’ami BobyAndCo.

3/ On test !

Si toutes les opérations ci-dessus ce sont bien déroulées, alors bingo vous êtes en DCC++ !

Oui mais comment ça marche ?...

Check list avant décollage :

o   Je branche ma centrale à mon rail de Programmation d’un coté et à mon réseau de l’autre

o   J’alimente mon Arduino Mega (pour ma part un chargeur basique 5v avec fiche ronde).

o   J’alimente mon shield Motor (pour ma part un ancien chargeur de pc portable en 18v 4A)

o   Je lance le serveur Node :

      o   Je lance le terminal Node (selon vos OS …)
      o   Dans l’invit du terminal normalement il pointera sur le dossier Utilisateurs (moi Franc) : C:\users\franc_
      o   Si vous avez créé comme moi un dossier pour héberger tout ce petit monde taper : CD « lenomdevotredossier » DCCPP pour moi
      o   Taper la phrase magique : Node dccpp_node.js cela lancera le serveur à l’écoute du shield Ethernet.

      o   Et là devrait s’afficher : server nodeJS at : xxx.xxx.x.37 :8080  / connected to Arduino Mga DCC++ at : xxx.xxx.x.200 :2560

o   Lancer sur votre navigateur ouaibe préféré : http://xxx.xxx.x.37:8080/controller_dccpp_node/controller.html

o   Et là devrait s’accomplir le miracle l'excellente page html "controller" de BobyAndCo s'affiche ! Elle n’est pas belle la vie ? Pour le reste c’est de l’utilisation classique du digital, je ne vous serais d’aucun secours je débute de chez débute en digital.

Voila, bon jeu, le principal c’est de jouer. Et avec la puissance Arduino et les génies Locoduino on va :

Vers l’infini et au-delààààààààààààààààààààààààààààààààààà

Pour résumer :

o Commander vos éléments, soit vous êtes patient donc AliestvotreAmi, et profiter de ces jours pour lire le site éditorial et forum ; soit RS Beauvais https://fr.rs-online.com/web/

o si vous ne connaissez pas Arduino, jouer avec les sketchs de formation. Il y en a pléthore sur le net tous très bien fait

o Lisez et visionner pour bien vous faire une idée de ce cela devra être, prenez des notes sur les points importants cités par les auteurs. Si des points coincent le forum est là !

o Lancez-vous !

o Pour moi : 15 jours de lecture (difficile de chiffrer, on lit, on revient, on relit...) / 43 euros de matériel tout compris (si si j'ai compris) / 3 heures d'installation (NodeJS compris). Je mets au défi toutes les "solutions commerciales" d'y arriver. Un jour ou l'autre elles ne répondront plus exactement à VOS besoins. Alors que Arduino... Il est libre, ouvert, modifiable, adaptable etc. etc.

Bien @ vous

Au plaisir de vous lire

Un béotien Arduinesque et digitalesque  ;D ;D ;D ;D

PS : j'en profite pour remercier chaleureusement BobyAndCo pour le coup de main, il y a des choses qui sont sous vos yeux et seule une vision externe vous fera ressortir. Merci !

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2889
  • 100% Arduino et N
    • Voir le profil
Re : DCC++ et ETHERNET ! Oui mais comment...
« Réponse #1 le: novembre 17, 2018, 10:39:35 am »
Très beau sujet que je vais déplacer dans le dossier Logiciel DCC++
Cordialement,
Dominique