Le gros morceau qui reste à faire (mais bien commencé quand même) est le gestionnaire des circulations qui assure le suivi des trains, la sécurité, les itinéraires, les horaires, etc..
Tout ça dans le contexte décrit depuis le début de ce sujet : toute une série de modules ou « sous-systèmes » indépendants qui communiquent entre eux par le bus Can. Évidemment sans PC, je préfère inventer mon propre système simple que d’utiliser une usine à gaz faite par d’autres (contribution aux réductions des gaz à effet de serre oblige
)
Ainsi je conçois un autre sous-système appelé « gestionnaire » qui peut :
- commander la centrale DCC++ (jusqu’à 12 trains qui peuvent être commandés manuellement avec les 12 potentiomètres d’écrits ci-avant)
- recevoir les commandes manuelles de la centrale DCC pour connaître a tout moment les comportements des trains
- recevoir toute la rétrosignalisation qui est installée sur le bus Can : les détections d’occupation de chaque zone, les détecteurs RFID et les détecteurs des points d’arrêt en gare, devant les signaux.
- commander les aiguilles lors de la création des itinéraires et lors des commandes manuelles à partir du premier TCO que j’avais fait, sur lequel s’affichent aussi les occupations de zones et les états des aiguilles.
- commander les signaux.
Et aussi s’interfacer avec d’autres tableaux de commande, voir un smart phone ou une petite tablette (en mode html) via une passerelle can-WiFi pour décupler les possibilités d’interface humaine.
Sans oublier les animations du décor, lumineuses et sonores.
Étant donné que la réalisation de mon réseau passe par les réalisations successives de ces sous-systèmes, toute la complexité est divisée en parties indépendantes qui communiquent par échanges de messages (voir les articles sur le bus Can). La première heureuse conséquence de cette architecture est que j’ai pu réaliser les différents morceaux sur plusieurs années sans me priver des joies de la conduite manuelle et sans remettre en cause les modules réalisés précédemment (sauf quelques ajustements logiciels quand nécessaire)
Même si la réalisation de mon réseau est personnelle, chacun pourra s’en inspirer pour l’adapter à son propre réseau.
Donc, comme c’est une période de vacances, loin de mon réseau, je commence donc à présenter ce gestionnaire dont il y aura plusieurs niveaux d’automaticité et de complexité. Mais, vacances obliges, les descriptions seront diffusées lentement, à commencer par les messages échangés entre les sous-systèmes.
Ce gestionnaire tourne, pour le moment sur un Due avec écran graphique 5 pouces décrit précédemment. L’écran graphique me permet de voir ce qui se passe sur le réseau, commander quelques scenarii via les boutons tactile.
L’ensemble du programme y compris la partie graphique n’occupe pas plus de 50% de la mémoire du Due. Donc pas d’urgence à changer de processeur
.
Le moniteur de l’IDE me permet de suivre toutes les actions de gestionnaire, puis, a posteriori, de comprendre les anomalies pour les corriger. J’ai ajouté sur le bus Can un sniffer pour enregistrer tout ce qui circule.
Et je joue au train !
A suivre…