Auteur Sujet: Présentation nouveau membre  (Lu 12141 fois)

Carcouaille

  • Newbie
  • *
  • Messages: 8
    • Voir le profil
Présentation nouveau membre
« le: septembre 19, 2017, 01:35:39 pm »
Je m'appelle Marco (prénom), j'ai 66 ans et j' habite en Haute-Savoie.

Je suis tombé dans les trains électriques à mon plus jeune âge grâce à un oncle qui m'a construit un petit réseau sur une planche de table récupérée. L'échelle du circuit était du TT de la marque Wesa aujourd'hui disparue depuis un certain temps. Il avait choisi cette échelle afin de minimiser la place occupée par ce réseau (portatif).
A l'époque, le N n'existait pas encore.

Je suis donc revenu à ma première passion et je viens de commencer la construction d'un réseau à l'échelle N qui sera piloté par PC à l'aide d'un logiciel du commerce. Je compte sur Arduino (que j'ai découvert grâce à LocoRevue) pour commander les mini servomoteurs des aiguillages, pour commander les signaux et autres accessoires y compris la rétro-signalisation. Ce choix s'est fait après avoir vu ce que les fabricants proposaient et le prix exorbitant que cela engendrerait pour un particulier si l'on voulait suivre :) cette voie.

Voilà c'est tout pour le moment et je reviendrai de temps en temps vous informer de l'avancement de mon réseau.

Bonne journée à tous !

Marco

Carcouaille

  • Newbie
  • *
  • Messages: 8
    • Voir le profil
Présentation (suite)
« Réponse #1 le: septembre 20, 2017, 03:52:05 pm »
Bonjour à tous,

Je commence donc avec Arduino et j'aimerais utiliser les très prometteuses bibliothèques de Thierry concernant les 'accessories.h' et les 'commanders.h'.
Afin de mettre au point les éléments de bases de mon hardware, j'ai testé la transmission DCC depuis un PC avec PanelPro d'un ordre donné via un Sprog v3 sur une carte Mega 2560 et cela semble marcher!

Pour cela je me sers de l'exemple croquis "SimpleLed" de Thierry afin d'allumer une LED (broche 22) à la suite d'un ordre donné (adresse 10) par PanelPro.
En mode debug des bibliothèques, je lis bien sur le moniteur du Mega que DCCINT se met alternativement à 0 et à 1 sur l'adresse 10 choisie après réception des ordres DCC venu du PC.

Mais, la led que j'ai mise sur le port digital sur broche (22) ne s'allume jamais !?!
J'ai bien contrôlé via un autre petit croquis que la LED marche bien sur cette broche 22. ...

Merci d'avance pour vos éclairages avancés et avec mes remerciements anticipés.

Marco


bobyAndCo

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 904
  • HO avec DCC++
    • Voir le profil
Re : Présentation nouveau membre
« Réponse #2 le: septembre 21, 2017, 05:52:49 am »
Bonjour Marco,

Ce dont tu parles m'intéresse beaucoup et devrait aussi je pense en intéresser d'autres. Tout d'abord JMRI et toute la suite d'applications dans son sillage sont des produits très performants et aboutis. Tellement complets que ça semble vraiment complexe à prendre en main. Mais je pense que ça doit permettre de répondre à pas mal de besoins des modélistes ferroviaires. Et autant que j'ai pu en voir, une bonne partie de la documentation est en français.

Par ailleurs, JMRI est compatible avec DCC++ (c'est plutôt bien vu à Locoduino) et si en plus c'est compatible avec les bibliothèque de Thierry, alors là...

N'y aurait-il pas moyen de se dispenser de Sprog qui vaut tout de même de l'ordre de 70€ ?

Ce serait bien si tu pouvais nous faire de petits retours sur tes configurations et tests. Sur un nouveau fil de préférence.

Pour t'aider à résoudre ton problème, il faudrait que tu mettes ton code Arduino en téléchargement avec "Fichiers joints et autres options…" en bas à gauche de la fenêtre de rédaction de message.

Bienvenue et bien amicalement.

Christophe

CATPLUS

  • Sr. Member
  • ****
  • Messages: 407
    • Voir le profil
Re : Présentation nouveau membre
« Réponse #3 le: septembre 21, 2017, 07:38:05 am »
Bonjour Marco
J'aime bien cette application

J'ai fait il y a quelques temps une interface pour JMRI (Arduino Mega 24 IN & 48 OUT) que j'ai modernisé depuis.
Avant de vous soumettre le montage, je vais envoyer le code qui fonctionne à mon ami Christophe pour le finaliser.
 
http://teamtrack.soforums.com/t1242-JMRI-1.htm

Cordialement
Marcel

Best Regards

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 744
    • Voir le profil
Re : Présentation nouveau membre
« Réponse #4 le: septembre 21, 2017, 12:00:58 pm »
Bienvenue parmi nous , et heureux de faire un heureux de plus avec mes bibliothèques :) . Comme le dit Christophe, joint le code du croquis, que je puisse tester et vérifier de mon côté si tout marche comme prévu. On est jamais à l'abri d'une erreur, et pas que du côté utilisateur !

Carcouaille

  • Newbie
  • *
  • Messages: 8
    • Voir le profil
Re : Présentation nouveau membre
« Réponse #5 le: septembre 21, 2017, 02:38:51 pm »
Bonjour,

Merci pour votre accueil et j'espère en être digne.

Concernant le problème que je viens de soulever, voici en pièces jointes le pdf de code.
Mon premier test reprend exactement le code "SimplLed" trouvé dans les exemples fournis par Thierry.
L'adresse DCC 20 est devenue 10; et la sortie digitale 8 est devenue la broche 22 pour mon test sur Mega.

Puis j'ai essayé avec "programme2" trouvé dans les exemples locoduino.org toujours dans 'accessories.h'.
j'ai changé la broche bouton poussoir de 2 à 8 et mis une led sur broche 22 à la place de 13 (LED_BUILTIN).
La cde TCO (poussoir) est OK avec quittances vues sur le moniteur de retour. LightOn ou LightOff ne fonctionne pas. Toujours pas de leds allumées. J'ai remis la broche LED à 13 (LED-BUILTIN) pour un dernier test et toujours pas de réponse. ......
La cde "Serial.begin" est rajoutée pour lire le moniteur et la cde "delay" est là pour freiner le déroulement des message lus sur ce moniteur de retour.

Je donne maintenant ma langue au chat.
Marco




Carcouaille

  • Newbie
  • *
  • Messages: 8
    • Voir le profil
Re : Présentation nouveau membre
« Réponse #6 le: septembre 21, 2017, 02:40:27 pm »
Re-Bonjour

voici le pdf du code programme2 en fichier joint

Dominique

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 2889
  • 100% Arduino et N
    • Voir le profil
Re : Présentation nouveau membre
« Réponse #7 le: septembre 21, 2017, 06:47:14 pm »
Bonjour Marco et bienvenue sur Locoduino  :D

Je vois que c'est parti sur les boudins de roues  8)

Pour info, ne mets pas ton code sous forme pdf mais directement en texte "Arduino" (copié-collé) entre deux balises code "#" ci-dessus, comme ceci :

#include <Accessories.h>

const int buttonPin = 8; // broche du poussoir

AccessoryLight light; // La DEL
PortOnePin port; // La connexion entre l'Arduino et la DEL.

void setup()
{
  Serial.begin (115200);
  Accessories::begin();

  port.begin(22, ANALOG); // broche 13 sur un Uno, broche digitale.

  light.begin(&port, 100); // On branche la DEL sur le port, et on lui assigne le No 100
  // initialise le poussoir comme entrée
  pinMode(buttonPin, INPUT);
}

void loop()
{
  // Selon l'état du bouton, on allume ou éteint la DEL
  if (digitalRead(buttonPin)== HIGH) {
    light.LightOn(); // Allume la DEL
  } else {
    light.LightOff(); // Eteint la DEL
  }
  delay (1500);
}

C'est plus facile à utiliser pour le tester sinon il faut remettre en forme la bouillie du pdf !

Pour les fichiers plus gros, on peut mettre en PJ, soit le fichier xxx.ino, soit le dossier qui le contient et zippé.

Bon courage

Dominique
Cordialement,
Dominique

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 744
    • Voir le profil
Re : Présentation nouveau membre
« Réponse #8 le: septembre 23, 2017, 01:33:36 pm »
Et c'était bien un problème dans la bibliothèque. Dans ma grande volonté de simplifier le source, j'en avais oublié de faire le nécessaire pour changer l'état des DELs ! Je t'invite donc à récupérer à nouveau la bibliothèque sur https://framagit.org/locoduino.org/Accessories/blob/master/Accessories.zip, la version 0.71 . Je te met aussi ma version du croquis utilisée pour tester. J'ai remplacé la broche 22 par la 13 pour mon Nano, et j'ai changé la façon de tester l'état pour que la led soit plus réactive à l'état du bouton..

#include <Accessories.h>

const int buttonPin = 8; // broche du poussoir
bool lightOn = false;

AccessoryLight light; // La DEL
PortOnePin port; // La connexion entre l'Arduino et la DEL.

void setup()
{
  Serial.begin (115200);
  Accessories::begin();

  port.begin(13, ANALOG); // broche 13 sur un Uno, broche digitale.

  light.begin(&port, 100); // On branche la DEL sur le port, et on lui assigne le No 100
  // initialise le poussoir comme entrée
  pinMode(buttonPin, INPUT);
}

void loop()
{
  bool oldLight = lightOn;
  // Selon l'état du bouton, on allume ou éteint la DEL
  lightOn = digitalRead(buttonPin) == HIGH;

  if (oldLight != lightOn)
  {
  if (lightOn)
    light.LightOn(); // Allume la DEL
  else
    light.LightOff(); // Eteint la DEL
  }
//  delay (1500);
}

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 744
    • Voir le profil
Re : Présentation nouveau membre
« Réponse #9 le: septembre 25, 2017, 02:14:05 pm »
Je dois encore faire une correction parce que je pense que celle qu'ai mise en ligne samedi annule toute possibilité de faire du fading... Donc copie à revoir rapidement. :(

Carcouaille

  • Newbie
  • *
  • Messages: 8
    • Voir le profil
Re : Présentation nouveau membre
« Réponse #10 le: septembre 25, 2017, 09:16:19 pm »
Je reprends contact après un long week-end.
J'attends que tu finisses tes dernières corrections sur la bibliothèque avant de poursuivre.

Pour la suite, où dois-je ouvrir un blog afin de mettre en ligne mon avancement et pour soumettre éventuellement (certainement) mes prochaines questions techniques ?
« Modifié: septembre 26, 2017, 09:08:11 am par Dominique »

Thierry

  • Global Moderator
  • Hero Member
  • *****
  • Messages: 744
    • Voir le profil
Re : Présentation nouveau membre
« Réponse #11 le: septembre 26, 2017, 10:32:16 am »
J'ai poussé les modifs hier soir. En fait le principal problème de ton croquis, c'est qu'il manque la ligne Accessories::loop() qui doit être présente dans le loop() pour que la bibliothèque puisse faire son travail ! Je pense que ton croquis aurait marché avec juste cette ligne en plus.
Pas besoin de blog, juste un nouveau sujet sur ce forum dans la partie 'Vos projets'.