Parlons Arduino > Débuter

Problème sur pilotage aiguillages par arduino via I2C

(1/12) > >>

VAUBAN38:
Bonjour à tous,

Je galère depuis quelques jours sur un projet de pilotage d'aiguillages Minitrix par Arduino Uno.
L'architecture mise en place est la suivante :
Arduino Uno --> Bus I2C --> MCP23017 (plusieurs) --> ULN 2064 (4 par MCP23017)--> Aiguillages alimentés en 16v continu.

Lorsque je lance un sketch de test en boucle sur un MCP23017 et les 8 aiguillages qui lui sont associés (séquence aig A Droit / A Dévié / B droit / B dévié etc....) tout cela par des impulsions successives de 200 ms, tout se passe bien pendant un certain temps.
Puis de manière aléatoire j'ai un aiguillage (pas toujours le même) qui reste bloqué en position droite, et sur la lancée plus aucun des aiguillages ne fonctionne....
Or le sketch continue lui à se dérouler normalement sur le moniteur série .....

Je n'arrive pas à déterminer quelle peut-être la cause : blocage du bus ? du MCP23017 ? autre .... ?

Merci de votre aide !

msport:
Bonjour,
ayant également expérimenté le bus I2C dans le même contexte, j'ai également eu des problèmes de parasitage avec des frayeurs de tension maintenue sur les bobines des aiguillages.
Arduino Uno --> Bus I2C --> PCF8574 (deux) --> ULN2803 (simple ou double en parallèle)--> Aiguillages Fleischmann HO (18ohms) en 12v continu.
Je soupçonne les PCF8574 de voir leur registres facilement déprogrammés par des parasites via le bus ou via l'alimentation mais je n'ai pas vraiment persévéré. Les résistances de fin de bus étaient bien mises et les liaisons courtes mais aucune précaution prise sur les alimentations.
En plus du problème de parasitage je ne suis pas arrivé à commander les bobines 18 ohms avec les ULN2803 mais je n'ai pas beaucoup insisté. Par contre c'était OK pour allumer des LED.
Je me suis tourné vers les décodeurs d'accessoires qui eux, fonctionnent :
Manette --> Arduino Uno booster --> DCC --> interface --> Nano --> buffer 74HC245 --> ULN2803 (double) --> Aiguillages Fleischmann
On m'a dit que les 74HC245 ne servaient à rien, mais ça reste à vérifier.
Mais manifestement à Locoduino le bus CAN est plus populaire, ceci explique peut-être cela.

VAUBAN38:
Merci pour cette réponse.
J'avais effectivement cru comprendre que le bus Can était privilégié par Locoduino, mais pour ma part je n'arrive pas vraiment à en saisir le fonctionnement    :-[ :-[  et je trouve l'I2C bien plus simple et intuitif compte tenu de mes petites connaissances !

Certes j'ai vu que différentes contraintes pouvaient exister (longueur des connexions, parasitages etc ..) mais par ailleurs j'ai pu voir que certaines réalisations étaient pourtant menées à bien malgré ces contraintes...

Pour ce qui concerne mon installation dans son état actuel de test le câble I2C (non blindé) ne mesure que 14 cm, et je précise que je suis en analogique pur.

J'aimerai vraiment trouver le grain de sable qui bloque !

msport:
Simplicité, un critère qui m'a aussi séduit ...
Tentez un petit condensateur de découplage au niveau de l'alimentation des MCP23017 (ce que je n'ai pas fait au niveau des PCF8574)
Et vérifiez la qualité du 5V correspondant : Banggood propose de petits oscilloscopes à monter pour moins de 20€.

VAUBAN38:
Pour ce qui concerne l'alimentation 5V, s'agissant d'une simple mise en test d'un MCP23017 et de ses 4 ULN associés je me suis simplement servi de l'alimentation 5v de l'arduino.....

Je vais peut-être essayer de passer sur une alim externe. Qu'en pensez vous ?

Navigation

[0] Index des messages

[#] Page suivante

Utiliser la version classique