Auteur Sujet: décodeur modulaire pour réseau modulaire , à commande d'ag par micro-moteurs PAP  (Lu 1134 fois)

trimarco232

  • Sr. Member
  • ****
  • Messages: 324
    • Voir le profil
j'ai remarqué ce type de micro-moteur PAP sur un site express , et je me suis demandé s'il était possible de s'en servir comme moteur d'aiguille , à déployer sur mon futur réseau
les inconvénients  :
- nécessite 4 broches d'arduino au lieu de 2
- disponibilité à terme ?
- endurance ?
- fixation et raccordement : je n'ai pas de solution évidente à ce stade
les avantages :
- prix
- dimension
- pas de réglage : on envoie un nombre majoré de pas , à la fin le moteur bute et saute tout simplement  les pas en trop
.
j'ai réalisé un test avec un nano et un petit module avec ponts en H , le fonctionnement me paraît bon : il a la force qui va bien , et il est suffisamment rapide pour un moteur lent
« Modifié: septembre 25, 2024, 05:54:19 pm par trimarco232 »

trimarco232

  • Sr. Member
  • ****
  • Messages: 324
    • Voir le profil
Le décodeur , en cours de réalisation par jlcpcb , découle des projets restés en l"état :
https://forum.locoduino.org/index.php?topic=1431.0
https://forum.locoduino.org/index.php?topic=1433.0
On a une carte maître à base de nano , le décodage se fait par la méthode d'Aiko Pras , via un optocoupleur caché sous le nano ; ce dernier commande directement 8 ponts en H
A droite du nano , on a un convertisseur dc/dc qui permet de choisir la tension des moteurs , qui doit toutefois être inférieure à 12v , vu le type de pont en H utilisé ; doit aussi être inférieure à 12v , la tension qui alimente le nano , car s'agissant d'un clone , il est équipé d'un régulateur 5v de type mps1117 , qui ne supporte pas + ; pour régler ceci , j'ai reconduit ma solution simple , de mettre en série dans le 12v= choisi pour l'alimentation des cartes, une zener qui en retranchera ses 4v7
Avec 4 fils par moteur PAP , le nano ne peut en commander que 4 , ce qui va être trop peu pour , par exemple , un module d'entrée de gare moyenne : j'ai donc reconduit mes idées à base de registre à décalage 74hc595 , pour pouvoir ajouter des extensions ; bon , alors le la carte nano revient à 11€ (tout compris) , et la carte d'extension à 9€ : l'économie de ce procédé est psychologique , disons que j'avais envie de le réaliser :  faire modulaire pour des modules , c'est cohérent , et avoir un maître qui tire des esclaves , cela rappelle les trains ... qu'on a connu
Sur la carte qui suit le maître , j'ai illustré 2 variantes de moteurs d'aiguille :
- du mtb , qui nécessite un + commun , disponible en 1ère et dernière position ses borniers à 6 broches ; ce + commun peut aussi être un (-) commun , on peut le sélectionner par le cavalier visible au-dessus du convertisseur dc/dc
- du tortoise , qui ne nécessite pas de tension commune ; il me semble que les moteurs conrad fonctionneraient aussi de cette façon
Pour le mtb et le tortoise , il ne faut que 2 broches de nano , on peut donc en avoir 8 sur une carte
.
Les cartes d'extension nécessitent 3 fils du nano , c'est les 3 fils du périphérique SPI , que j'ai choisi pour alléger le travail du cpu ... le problème , c'est que le nano n'a pas autant de broches ! j'ai donc sacrifié le 1er pont en H : on n'a donc que 7 moteurs type mtb , ou 3 moteurs PAP , sur le maître ... toutefois, le nano visé est , comme illustré , à base de clone lgt8f328p , dont les broches A6 et A7 peuvent aussi être digitales , alors tout marche ; le lgt fonctionne à 32MHz , il est possible que cette puissance me serve pour gérer la commande par registres à décalage , des cartes d'extension
Édité : menues clarifications
« Modifié: octobre 15, 2024, 12:33:15 pm par trimarco232 »

trimarco232

  • Sr. Member
  • ****
  • Messages: 324
    • Voir le profil
Des nouvelles du projet : les 1ers tests que j'ai pu faire sont concluants , alors je crois que le concept est viable (toutefois , il y a encore à résoudre la question de l'installation mécanique du moteur)
Le test a été réalisé avec 1 maître et 2 cartes d'extension
La vitesse de translation semble un peu faible : j'ai choisi un pas d'une durée de 10ms , on pourrait réduire pour aller + vite , mais ce serait au détriment de la force ; il faut peut-être réserver le principe aux petites échelles (TT , N , Z) , pour limiter la course , de manière à voir une durée de translation réaliste
Le décodage DCC avec la bibliothèque d'Aiko a fonctionné du 1er coup (y compris ma modif pour utiliser la fonction capture) , pareil pour la commande des ponts en H situés sur la carte maître
Mais j'ai perdu 1/2 journée sur la programmation de la commande des cartes d'extension , à cause d'un double bug conjugué , dont je suis (presque) entièrement responsable :
- une erreur d'offset entre un segment de RAM et son pointeur , c'est classique , mais même mis en évidence par l'analyseur logique , je n'ai pas voulu l'admettre , car bêtement persuadé que je n'avais pas pu me tromper sur ce point
- j'ai voulu absolument utiliser le périphérique SPI pour commander les 74HC595 , car c'est efficace et ... élégant ; mais quand on met le SPI en fonction , la broche MISO se met fatalement en INPUT (amha une tare dans le dessin de l'AVR (que j'avais oubliée) , pas la faute d'Arduino) , or j'utilise cette broche en OUTPUT , pour commander le fil Latch des 74HC595 ... j'ai été sauvé par ma conception des cartes d'extension , qui pour contenir les parasites , terminent le fil Latch sur une résistance reliée au +5v ; ainsi , quand le SPI fonctionne pour transférer les données vers les 74HC595 , le Latch reste gentiment en position HIGH ; à la fin des transferts SPI , (en fait au début , juste avant le démarrage des transferts suivants) , je désactive le périphérique SPI , ce qui permet d'avoir le Latch en OUTPUT , pour envoyer une courte impulsion LOW ; puis le SPI est réactivé (juste écrire un octet dans son registre) , ce qui remet le Latch en INPUT , la résistance le tire vers HIGH , et c'est à ce moment que le Latch est effectif
Un mot concernant le coût : j'en ai eu , port et montage des composants CMS compris , pour 90€ chez JLCPCB , pour 10 cartes maîtres et 5 cartes d'extension ; il faut rajouter 60€ de composants "through hole" (arduinos , supports , connectique , condensateurs , zener) , à monter soi-même , ce qui fait ~10€ la carte finie (+précisément 11€ la maître , et 9€ l'extension , car il y a en + l'arduino à 1€50 et l'optocoupleur à 0€50) ; je précise que ces prix comprennent les composants cms , fournis et soudés sur les cartes par jlcpcb
On en est revenu (peut-on s'en réjouir ?) aux prix délirément bas d'avant la pandémie , comme vous pouvez le voir ici :
« Modifié: octobre 15, 2024, 12:39:39 pm par trimarco232 »