Futur boitier de commande à distance d'un groupe de modules intégrés à un Grand Réseau Modulaire.
Cela faisait déjà longtemps que je réfléchissais à un montage pour remplacer mon système actuel d'alimentation traction d'un groupe de modules appartenant à un Grand Réseau Modulaire.
Mon cahier des charges était (et reste encore) le suivant :
Le courant fourni devra être compatible avec tous les engins moteurs courant continu roulant sur le Grand Réseau Modulaire.
Le boîtier devra s'adapter aux modules du Grand Réseau Modulaire, le plan de celui-ci n'étant pas connu d'avance, et, en exposition, changeant d'une exposition à l'autre.
Les modules ne m'appartenant pas, aucune modification ne doit y être apporté, dans le décor comme dans le câblage électrique. Il en résulte que je peux seulement me brancher sur les prises d'alimentation des modules, qui peuvent être des prises DIN HP (normes françaises), des jacks (normes allemandes), des dominos,...
Dans la mesure du possible, pour les modules avec des embranchements, des gares à voie multiples, ces embranchements/voies voies multiples devront pouvoir être encore utilisés "manuellement", les voies principales étant gérées par mon système.
La zone gérée par mon système devra pouvoir être découpée en plusieurs cantons, avec cantonnement automatique.
Accélérations et ralentissement devront être gérés automatiquement.
La gestion de ce système devra pouvoir se faire "de loin" et éventuellement de plusieurs endroits à la fois.
Une solution évidente à priori : un serveur WEB spécialisé dialoguant avec les humains, et transmettant les ordres reçus à un ordinateur spécialisé gérant les courants de traction.
C'est l'exemple parfait d'un arduino avec un shield Ethernet.
Hélas, pendant longtemps, cette solution se heurtait à des problèmes d'entrées/sorties
Première méthode : on utilise par canton une sortie PWM pour gérer la vitesse, et ue sortie digitale reliée à un relais inverseur, et une entrée digitale testant un détecteur de consommation pour connaître l'état "Libre/occupé" du canton.
Problèmes posés :
Il faut amplifier le courant des deux sorties "vitesse" et "sens".
Il faut une sortie PWM et deux entrées/sorties digitales par canton, à multiplier par le nombre de cantons, ce qui fait beaucoup
C'est le microprocesseur de l'Arduino qui va faire la gestion de chacune des sorties PWM, et cela va lui représenter une lourde charge de tavail
Deuxième méthode : On rajoute des shields moteurs CC spécialisés pour la vitesse et le sens de déplacement.
Avantage sur la première méthode : plus besoin d'amplifier le courant des deux sorties "vitesse" et "sens".
En choisissant les bons shields, c'est le shield qui gère les sorties PWM qui va faire le travail de gestion, libérant le microprocesseur de l'Arduino qui pourra se concentrer sur autre chose.
Gros inconvénient ; tous les shields moteurs CC utilisent les mêmes deux sorties de l'Arduino, et on ne peut donc pas avoir plus de deux cantons gérés d'une façon indépendante.
Et puis, il y a peu, j'ai découvert le shield "ADAFRUIT 1438".
Première bonne nouvelle : il permet de commander directement, en courant haché, soit quatre moteurs analogiques, soit deux moteurs pas-à-pas (plaque tournante, pont roulant, ...), soit quatre aiguillages Kato à commande par deux fils, soit quatre jeux de lumière, soit un panachage de ces possibilités.
Deuxième bonne nouvelle : il a son propre contrôleur commandé par le bus I2C de l’Arduino, ce qui soulage ce dernier de presque tout le travail.
Troisième bonne nouvelle : son adresse sur le bus I2C pouvant être choisie dans une plage de 32 adresses, on peut donc en empiler jusqu'à 32 sur le pauvre Arduino, transformé en Super Extra Big Mac XXXXXXXXXL, ce qui permet de commander, individuellement, le sens et la vitesse de 32x4 = 128 cantons !
Ce shield sera donc au cœur de mon montage et permettra, d'abord, de gérer un tronçon de Grand Réseau Modulaire, puis plus tard, le fonctionnement complet de mon ensemble T-Trak "Paris".
Afin de ne pas mélanger tout, je me propose donc d'ouvrir des fils "secondaires" pour chaque point important (Réseau informatique local, dessins SVG, détecteur de locomotive chaude,...) et de réserver ce fil pour l'intégration de l'ensemble.
Premier "sous-fil" : le shield "ADAFRUIT 1438" :
https://le-forum-du-n.1fr1.net/t27401-shield-4-moteurs-adafruit-1438-pour-arduino#525832