Train Miniature Magazine

Sondages => H0 3-rails digital => Discussion démarrée par: papat le 24 Juillet 2018, 18:37:26 PM

Titre: Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: papat le 24 Juillet 2018, 18:37:26 PM
Bonjour,

Je bosse sur un prototype de module de détection de canton (mais pas que) basé sur Arduino. Je n'avais pas trouvé de schéma "prêt à l'emploi" sur le Net (pour du 3 rails, car pour le 2 rails on trouve facilement) alors j'ai un peu tâtonné ... mais à présent c'est ok  :)

Voici le schéma pour un module "mixte", 8 entrées "détection de cantons" et 8 entrées "détection de contact" :
[EDIT] : schéma peaufiné (11 juin 2019)
(https://i63.servimg.com/u/f63/12/15/55/84/pdftoj10.jpg)

Et le prototype en action :
(https://i63.servimg.com/u/f63/12/15/55/84/nano_s10.jpg)
On y devine un Arduino Uno sous la carte rouge (qui est un shield Can Bus), une box Märklin 60113 avec son transfo d'alimentation (c'est un gros transfo de 60 VA, mais je l'avais déjà  :D ).
Le Uno est piloté par l'application DESKTOP STATION sur le PC (voir ce lien (https://desktopstation.net/)). Il communique avec la 60113 via un câble CAN Bus.

Et on voit aussi aussi un Arduino Nano sur le breadboard (plaque blanche) avec une partie des composants du schéma et le câblage de test. Ici je n'ai câblé que 8 entrées, 4 "détection de canton" via optocoupleurs et 4 "détection de contact" pour les essais.
Et ben ça fonctionne  ;D

Edit: petit oubli de référence : le programme du Nano (gestion capteurs -> bus S88) a été trouvé sur le site LOCODUINO, sur cette page (http://www.locoduino.org/spip.php?article138).

Voici le TCO sur le PC :
(https://i63.servimg.com/u/f63/12/15/55/84/dzotec10.png)
J'ai réalisé un ovale de test divisé en quatre cantons. Les deux cantons avec les points rouges sont ceux qui détectent les locos en action  :)

Prochaine étape : réalisation d'un circuit imprimé avec tout le bazar dessus, et essais avec plusieurs modules en série sur le bus S88 ...

A plus  8)
Titre: Re : Module détection S88-N Arduino
Posté par: papat le 17 Août 2018, 17:04:58 PM
Ça ne passionne pas les foules, mais bon je poursuis quand même  :)

Attention, ce qui suit est un prototype. Il fonctionne chez moi, mais je ne peux offrir aucune garantie à celui qui le reproduirait ! (mise en garde habituelle pour les montages DIY).

Après quelques essais et de légères adaptations (ajout d'une capa filtrant le signal), le prototype fonctionne toujours correctement. Voici la dernière mouture de mon schéma (cliquez dessus pour l'agrandir) :
(https://i63.servimg.com/u/f63/12/15/55/84/th/schema10.png) (https://servimg.com/view/12155584/157)

Et le PCB qui va avec (simple face) :
(https://i63.servimg.com/u/f63/12/15/55/84/th/pcb_s810.png) (https://servimg.com/view/12155584/156)

Ce module S88-N est devenu modulable. Par bloc de quatre entrées, on peut décider si ce seront des "détection de cantons" ou des "détection de contacts". Pas besoin de la partie "optocoupleurs" pour la détection de contacts, un simple strap et on économise quelques composants.
Il est également possible de paramétrer  le software du Nano afin qu'il ne gère que 8 entrées au lieu de 16. Tout dépend des besoins.
Exemples : 0 canton et 8 contacts (version 8 entrées) ; 4 cantons et 12 contacts ou 8 cantons et 8 contacts (version 16 entrées) ... etc

Ne possédant pas de modules de détection du commerce, je n'ai pu tester la compatibilité. Mais d'après ce que j'ai lu sur le Net, mélanger les marques n'est pas toujours une bonne idée.
Lorsque j'aurai réalisé plusieurs modules "maison", je reviendrai faire un topo sur le coût de la chose ...

Pour les bricoleurs intéressés, je peux aussi fournir les fichiers Eagle.  ;)
Titre: Re : Module détection S88-N Arduino
Posté par: ho-mat le 17 Août 2018, 17:07:46 PM
c'est pas que ça ne passionne pas ... mais c'est pas toujours évident à comprendre...
Titre: Re : Module détection S88-N Arduino
Posté par: papat le 17 Août 2018, 17:24:35 PM
 :D ah oui évidemment ... même chose pour moi d'ailleurs, tout ce processus a pris du temps pour que ça se mette en place dans ma cervelle  ;D
Refaire de l'électronique après trente ans d'abstinence, apprendre à jouer avec des logiciels comme Kicad et Eagle ... c'était bien rigolo !  :D
Titre: Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: papat le 06 Octobre 2018, 19:01:42 PM
Et l'aventure continue !

Ça m'a pris pas mal de temps, mais j'ai également bricolé un décodeur d'accessoires basé sur la technologie "Arduino".
Ce décodeur est une adaptation personnelle du décodeur d'accessoires DCC D18, développé par Ulysse, que l'on peut découvrir sur cette page (http://udelmas.e-monsite.com/pages/decodeur-d18.html). Ce décodeur est vraiment bluffant ! Un seul de ces décodeurs peut gérer une quantité incroyable d'accessoires ... Ulysse détaille cela sur la page dont j'ai fourni le lien.

Ce décodeur utilise la norme DCC, pas MM2. Malgré mes recherches, je n'ai pas trouvé de décodeur DIY (Do It Yourself) basé sur Arduino utilisant le signal Motorola.
Ce n'est pas un souci majeur, ma centrale Desktop Station est multi-protocoles. Elle peut gérer les accessoires en DCC en même temps que des locos MM2 et MFX (j'ai essayé).

L'Arduino Nano (c'est le modèle que j'utilise) possédant 16 broches paramétrables en sortie, il est possible de gérer 16 accessoires différents (ou 8 paires d'aiguilles standard utilisant des solénoïdes) ; et ce quelle que soit leur adresse DCC évidemment (il n'est pas du tout indispensable que les adresses soient consécutives ! ). Cela résulte de l'excellent boulot abattu par Ulysse.
Je me suis contenté (et c'était pas rien, je ne suis pas développeur ;D ) d'adapter le programme pour gérer mes servos d'aiguillage directement depuis l'Arduino.
Pour diverses raisons, l'Arduino ne peut gérer "que" 12 servos maximum. 4 sorties restent disponibles pour d'autres accessoires.

Voici le schéma de mon bricolage, celui-ci est prévu pour 10 servos, 2 sorties directes et 4 Leds. Tout cela est évidemment complètement paramétrable et on peut tout aussi bien gérer 3 servos, 10 Leds et 3 accessoires divers par exemple (j'aime bien concevoir des éléments à usages multiples).
(https://i63.servimg.com/u/f63/12/15/55/84/my_nan11.png) (https://servimg.com/view/12155584/160)

Le PCB qui va avec :
(https://i63.servimg.com/u/f63/12/15/55/84/th/my_nan10.png) (https://servimg.com/view/12155584/159)

Et le prototype qui m'a permis de "valider" le concept :
(https://i63.servimg.com/u/f63/12/15/55/84/img_0310.jpg) (https://servimg.com/view/12155584/158)

Comme pour le détecteur S88-N, ce décodeur est un prototype. Il semble bien fonctionner, reste à réaliser le circuit imprimé et voir le fonctionnement sur mon futur réseau. J'ai confiance !  :)

Bon, maintenant que mes options techniques sont validées je vais enfin pouvoir commencer à poser les voies ...

Suite au prochain épisode  :D
A plus, et n'hésitez pas à donner votre opinion !
Titre: Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: papat le 11 Juin 2019, 22:21:23 PM
Et l'aventure se poursuit ...  :)
Voici où j'en suis arrivé :

Les modules arduino pour la détection S88 sont réalisés.
Idem pour la commande des accessoires (aiguillages etc).

(https://i63.servimg.com/u/f63/12/15/55/84/img_0210.jpg)

Tout ce joyeux bazar vient d'être testé et, après une ou l'autre petite correction, tout fonctionne  :D :D :D moi content !!!

J'ai câblé trois modules S88 pour tester le chaînage, c'est ok. La "console" (mon laptop en fait) avec le logiciel Desktop Station lit le bus via l'arduino UNO et réagit aux changement d'état des entrées. C'est tout bon.
Chacun de ces modules possède 16 entrées, au choix "capteur canton" ou "capteur switch" ; ce choix est fait lors de la soudure des composants (donc définitif).
Note : il y a un petit bidouillage à réaliser sur la carte arduino Nano si c'est ce modèle qui est utilisé.

Testé également : un des modules D18 "commande accessoires". Avec, pour l'essai, un servo (destiné à la commande d'aiguillage) et des Leds (pour un signal par exemple, ou toute autre fonction lumineuse). Et lui aussi répond très bien aux ordres de la centrale  :D
Chaque module peut commander 16 sorties. Le choix "servo" (max. 12 servos par carte) ou "sortie libre" est fait également lors de la soudure des composants. 4 sorties sont déjà réservées pour des Leds (résistance série sur la carte).


Reste un prototype à tester, j'en parlerai ultérieurement.

Ouf, ça c'est fait !  :D
Titre: Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: Geoff440 le 12 Juin 2019, 07:58:15 AM
 :o  bravo pour ton montage, tu as vérifié si le firmware de l' arduino a les sécurités activée pour genre la surchauffe !?!
Tu as l' air de vachement bien t' y connaître lol
Tu as vu qu' avec ces cartes nano tu peux faire aussi des panneaux d' annonces d' arrivée en gare !
https://youtu.be/pktBc7knRiM

J'ai une arduino aussi sur mon imprimante 3d. C'est fou le nombre de périphérique possible pour ces cartes nano, des mesures, sondes, a la volée surtout destinée à la robotique a la base.

Bon courage pour la suite !
Titre: Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: papat le 12 Juin 2019, 08:56:30 AM
Merci  :)

Pas de souci de surchauffe pour l'arduino, à condition de respecter quelques règles. Notamment le courant de sortie, qui est limité à 40mA pour chacune des sorties mais sans dépasser 200mA pour l'ensemble des sorties.

Pour des applications plus gourmandes, il faut passer par une amplification du signal. Transistor, circuit Darlington comme le ULN2803 ou plein d'autres solutions.

Le site Locoduino  (https://www.locoduino.org/)est plein de bons conseils pour l'utilisation de l'arduino en modélisme ferroviaire !

Je file, faut que j'aille bosser ...  ;D
Titre: Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: papat le 22 Juillet 2019, 16:48:32 PM
Petites précisions, au cas ou certains lecteurs seraient quand même intéressés par la chose :

Le décodeur d'accessoires D18 fait l'objet d'un sujet sur le forum LR Presse. En voici le lien (http://forums.lrpresse.fr/viewtopic.php?f=3&t=85743&sid=a73fe0c165d6c6287fce972b88ad7bde).
J'ai participé à ce sujet en leur parlant de mon petit bricolage.

Concernant le D18 "à ma sauce" toujours, voici un lien vers Github (https://github.com/papat400/DCC-accessories-decoder-D18-with-servos-and-EEPROM) où se trouvent les fichiers (programme arduino et fichiers Eagle pour le PCB), disponibles au téléchargement bien sur.
Titre: Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: papat le 16 Novembre 2019, 20:22:46 PM
Ne sachant pas trop où caser ce message, je l'ajoute ici.

Me voici avec un nouveau jouet :

(https://i.servimg.com/u/f63/12/15/55/84/20191110.jpg)

Je sens que je vais bien m'amuser  ;D ;D ;D
Titre: Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: ph444 le 17 Novembre 2019, 15:51:44 PM
Cela sent l'imprimante 3D à plein nez  :)
Titre: Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: papat le 20 Novembre 2019, 20:07:44 PM
Tout à fait  :)
Pour le moment je suis en mode "apprentissage". Cette machine semble prometteuse  :D
Titre: Re : Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: Geoff440 le 20 Novembre 2019, 20:31:36 PM
Citation de: papat le 20 Novembre 2019, 20:07:44 PM
Tout à fait  :)
Pour le moment je suis en mode "apprentissage". Cette machine semble prometteuse  :D

Belle bête bravo pour l'acquisition, si tu la destine a des productions ferroviaires je te conseille d'utiliser le câble pla, l'abs demande trop de température en comparaison, quel type de câble peux-tu utilisé ?
Titre: Re : Re : Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: papat le 21 Novembre 2019, 17:15:16 PM
Citation de: Geoff440 le 20 Novembre 2019, 20:31:36 PM
Belle bête bravo pour l'acquisition, si tu la destine a des productions ferroviaires je te conseille d'utiliser le câble pla, l'abs demande trop de température en comparaison, quel type de câble peux-tu utilisé ?

Je cite la notice " PLA, PETG, PVA, Nylon, And Most Exotics, Any Material Melting <=250 C"
Donc un peu de tout  :) Pour l'instant j'ai acheté une bobine de PLA et une d'ABS.
Je sais aussi que pour pouvoir imprimer certaines matières (réputées abrasives), il faut changer le nozzel. Mais ce n'est pas pour tout de suite, on verra en avançant.

En ce moment je bricole des supports de servomoteur pour mes aiguillages et des entretoises pour les cartes électroniques.
Voici l'impression en PLA :
(https://i63.servimg.com/u/f63/12/15/55/84/img_1510.jpg)

Le support de servo seul, en ABS cette fois (impression "draft", c'est en effet assez brouillon) :
(https://i63.servimg.com/u/f63/12/15/55/84/img_1511.jpg)

Le support monté avec servo et switches :
(https://i63.servimg.com/u/f63/12/15/55/84/img_1512.jpg)
(https://i63.servimg.com/u/f63/12/15/55/84/img_1513.jpg)

Et enfin une entretoise pour la carte électronique qui "lévite" (spectaculairement  ;D )  au dessus :
(https://i63.servimg.com/u/f63/12/15/55/84/img_1514.jpg)
Titre: Re : Re : Re : Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: Geoff440 le 23 Novembre 2019, 04:35:03 AM
Citation de: papat le 21 Novembre 2019, 17:15:16 PM
Citation de: Geoff440 le 20 Novembre 2019, 20:31:36 PM
Belle bête bravo pour l'acquisition, si tu la destine a des productions ferroviaires je te conseille d'utiliser le câble pla, l'abs demande trop de température en comparaison, quel type de câble peux-tu utilisé ?

Je cite la notice " PLA, PETG, PVA, Nylon, And Most Exotics, Any Material Melting <=250 C"
Donc un peu de tout  :) Pour l'instant j'ai acheté une bobine de PLA et une d'ABS.
Je sais aussi que pour pouvoir imprimer certaines matières (réputées abrasives), il faut changer le nozzel. Mais ce n'est pas pour tout de suite, on verra en avançant.

En ce moment je bricole des supports de servomoteur pour mes aiguillages et des entretoises pour les cartes électroniques.
Voici l'impression en PLA :
(https://i63.servimg.com/u/f63/12/15/55/84/img_1510.jpg)

Le support de servo seul, en ABS cette fois (impression "draft", c'est en effet assez brouillon) :
(https://i63.servimg.com/u/f63/12/15/55/84/img_1511.jpg)

Le support monté avec servo et switches :
(https://i63.servimg.com/u/f63/12/15/55/84/img_1512.jpg)
(https://i63.servimg.com/u/f63/12/15/55/84/img_1513.jpg)

Et enfin une entretoise pour la carte électronique qui "lévite" (spectaculairement  ;D )  au dessus :
(https://i63.servimg.com/u/f63/12/15/55/84/img_1514.jpg)

Ha oui ça a l'air vachement plus propre avec le pla, tu as refait le support en pla vert que tu avais fait en abs orange ? Tu as testé les solidités ?

D'une pièce a l'autre j'ai une difficultés monstre a trouvé un bon réglage avec l'abs, entre la vitesse d'éxécution et les températures, j'ai toujours soit un décollement de la pièce sur les bord et les coins qui remonte a une hauteur folle, soit le même problème quand c'est lent parce que le lit doit être a minimum 100°. Si ça va trop vite j'ai même un pas qui saute en y ou x parce que ça va trop vite, faut dire que c'est une reprap sortie avec des tonnes d'amélioration a faire parce qu'elle devait "faire ses jeunes".
C'est quoi ton montage ? J'ai plus ou moins les mêmes servo comme endstop.

Tu as imprimé tout ça en une fois ? Pas de problème dû au recul de l'extrudeur quand il passe d'une pièce a l'autre ou de décollage ni de saut de pas ? Si Oui combien de temps pour tout faire ?

Je sent bien que je vais me mettre uniquement a pla moi lol il me donne des sueurs froides cet abs.
Titre: Re : Re : Re : Re : Re : Re : Module détection S88-N Arduino et décodeur accessoires DCC
Posté par: papat le 30 Novembre 2019, 18:31:30 PM
Citation de: Geoff440 le 23 Novembre 2019, 04:35:03 AM
Ha oui ça a l'air vachement plus propre avec le pla, tu as refait le support en pla vert que tu avais fait en abs orange ? Tu as testé les solidités ?

D'une pièce a l'autre j'ai une difficultés monstre a trouvé un bon réglage avec l'abs, entre la vitesse d'éxécution et les températures, j'ai toujours soit un décollement de la pièce sur les bord et les coins qui remonte a une hauteur folle, soit le même problème quand c'est lent parce que le lit doit être a minimum 100°. Si ça va trop vite j'ai même un pas qui saute en y ou x parce que ça va trop vite, faut dire que c'est une reprap sortie avec des tonnes d'amélioration a faire parce qu'elle devait "faire ses jeunes".
C'est quoi ton montage ? J'ai plus ou moins les mêmes servo comme endstop.

Tu as imprimé tout ça en une fois ? Pas de problème dû au recul de l'extrudeur quand il passe d'une pièce a l'autre ou de décollage ni de saut de pas ? Si Oui combien de temps pour tout faire ?

Je sent bien que je vais me mettre uniquement a pla moi lol il me donne des sueurs froides cet abs.

Beaucoup de questions !  ;D Je vais tenter d'y répondre.

Logiciel de découpe utilisé : Cura.
J'avais d'abord réalisé le support en PLA, en mode "normal" (épaisseur par couche = 0.15). J'ai fait celui en ABS par après, en testant le mode "draft" (couche = 0,20 ; et sans doute d'autres différences mais je n'ai pas examiné cela). Je préfère le mode "normal" !  :)

Pour l'ABS je ne rencontre pas de souci, il s'imprime bien avec les paramètres suivants : lit à "seulement" 80°C ; extrudeur à 240°C et bordure (brim) de 8 mm pour favoriser l'adhérence. La vitesse d'impression est de 30 mm/sec, les autres vitesses (remplissage, paroi etc) sont calculées par Cura.
De temps en temps, je nettoie le lit à l'alcool isopropylique C'est important, cela le dégraisse complètement et ça améliore l'adhésion des impressions. Le lit en question est un buildtak magnétique souple placé sur le lit chauffant.

Pour le PLA je chauffe le lit à 60° et extrudeur à 200°. Avec juste un contour extérieur (jupe, ou skirt) de 5 lignes.

La solidité à l'air correcte. J'en ai cassé un en le décollant du lit ... mais l'épaisseur est faible et ça ne devra pas supporter de grosses contraintes.

Sinon, pour le support servo j'ai vu que "l'inventeur" du modèle en avait conçu un autre. Visible sur le site Train d'enfer (https://traindenfer95.wixsite.com/accueil).

Mon adaptation de sa première version est imprimée en deux pièces (à assembler), pas de souci d'impression.
J'ai fait plusieurs impressions, simples et multiples et ça va plus ou moins. Je dois encore voir pour calibrer mon imprimante, j'ai des dérives dimensionnelles sur les grandes pièces. J'apprends ...

J'espère que ça pourra t'aider !

Cordialement,
Thierry.