Arduino est une carte électronique (matériel libre) sur lequel se trouve un microcontrôleur qui peut être programmé facilement de manière à effectuer des tâches très diverses.

Depuis le n° 795 du magazine Loco Revue, différents programmes et montages sont proposés afin de réaliser des dispositifs divers et variés comme des feux tricolores ou un va et vient.

Mon objectif dans cet article n’est pas de vous décrire cette carte électronique (merci dans ce cas de vous reporter aux articles parus dans le magazine Loco Revue) mais de vous présenter un exemple d’utilisation.

Quel est mon objectif ?
Reproduire avec un Arduino un tableau de commande intégrant un dispositif d’enclenchement. En fait, comment reproduire le fonctionnement d’un poste d’aiguillage en y intégrant la partie cachée de l’iceberg, les enclenchements.

Différentes règles ont été décrites dans cet article.

Il va falloir maintenant décrire les entrées et les sorties qui seront utilisées.

Les entrées : Le levier

Il existe dans le commerce des kits permettant de reproduire fidèlement un levier (Cf. http://www.modelrailway-online.com/poste-daiguillage/). Dans ce cas et dans la réalité lorsqu’on est face à un système entièrement mécanique, les enclenchements sont réalisés avec des jeux de barre.  Je décide d’utiliser un bouton poussoir et de matérialiser la position du levier d’aiguillage (fermé par défaut ou ouvert) par 2 voyants.  Le changement de position du levier sera donc conditionné aux respects des enclenchements définis. En un mot, si un changement est incompatible, il ne sera pas possible.

Les sorties : un câble ou une barre permettant de manœuvrer le signal, l’aiguille,…

Je décide de mettre à un état HIGH le port correspond. Peu importe ce qu’il y aura après à commander, je spécifierai ce point par la suite car il ne remettra pas en cause toute la logique liée aux enclenchements. À noter qu’il existe différentes cartes complémentaires qui permettent de convertir le signal de faible intensité délivrer par les sorties de la carte Arduino afin de piloter par exemple des moteurs lents de type Tortoise ou Cobalt.

Voici le plan de la gare qui devra être contrôlée par le programme :

Ce plan de voies est directement inspiré d’un article paru dans le n° de février 2014 de Railway Modeller. Il est typique des gares terminus des voies secondaires des chemins de fer britanniques mais il peut tout à fait être adapté à la France.

Voici donc le code complet :

Comme différents points sont paramétrables (le nombre de leviers, la table d’enclenchements,…), ce programme peut répondre à d’autres types de plan de voies. Il n’a que de limite que le nombre de ports nécessaire. Mais sachant qu’une carte Arduino Mega dispose de 70 ports, cela laisse un peu de marge!!!

Tags: ,

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.