Dans le précédent article, je vous ai présenté la naissance du projet GTRC – Garden Train Radio Control. Aujourd’hui, nous allons découvrir son architecture générale.

Avant d’entrer dans les détails du matériel ou du logiciel, il est important de comprendre comment les différents éléments du système communiquent entre eux.

L’objectif était de concevoir une architecture simple, fiable et évolutive, capable de piloter plusieurs locomotives indépendamment tout en restant relativement facile à reproduire.

Contrairement aux systèmes de commande traditionnels qui alimentent les rails pour transmettre les ordres aux locomotives (DCC ou analogique), GTRC repose sur une architecture entièrement radio.

Chaque locomotive est autonome et embarque son propre récepteur radio, sa batterie et un driver pour piloter le moteur. La télécommande communique directement avec la locomotive sélectionnée sans passer par les voies.

Cette approche présente plusieurs avantages :

  • les voies ne servent qu’à guider les trains ;
  • l’état de propreté des rails n’influence plus la transmission des commandes ;
  • plusieurs locomotives peuvent circuler simultanément sur le même réseau ;
  • chaque locomotive peut être équipée d’une électronique adaptée à ses caractéristiques.

L’ensemble du système est organisé autour de quatre éléments principaux.

La télécommande constitue le cœur du système.

Elle permet de sélectionner la locomotive à piloter, de contrôler sa vitesse et son sens de marche, d’allumer ou d’éteindre son éclairage et d’accéder aux différentes fonctions proposées par GTRC.

Elle est construite autour d’un Arduino Uno, associé à un écran OLED et à un module radio NRF24L01.

Toutes les commandes sont générées par la télécommande, qui envoie en permanence des informations aux locomotives afin que celles-ci reproduisent immédiatement les actions de l’utilisateur.

Chaque locomotive possède son propre récepteur.

Lui aussi est basé sur une carte Arduino Nano, associée à un module radio NRF24L01.

Le rôle du récepteur est de recevoir les commandes envoyées par la télécommande, puis de les traduire en actions concrètes :

  • commande du moteur ;
  • inversion du sens de marche ;
  • gestion de l’éclairage ;
  • surveillance de certaines fonctions de sécurité.

Chaque locomotive possède un identifiant logique unique. Cela permet à la télécommande de communiquer uniquement avec la locomotive sélectionnée, même si toutes les locomotives écoutent le même réseau radio.

La liaison entre la télécommande et les locomotives est assurée par les modules NRF24L01 fonctionnant dans la bande des 2,4 GHz.

Ces modules présentent plusieurs avantages :

  • coût très faible ;
  • excellente disponibilité ;
  • portée largement suffisante pour un réseau de jardin ;
  • faible consommation électrique ;
  • débit élevé.

Le protocole de communication utilisé par GTRC a été entièrement développé pour répondre aux besoins du projet.

Il ne se limite pas à transmettre une vitesse ou un sens de marche. Les messages radio transportent également les informations nécessaires à la gestion de la sécurité, du diagnostic et des différentes évolutions prévues dans les prochaines versions.

L’objectif est de disposer d’un protocole simple, rapide et parfaitement adapté au pilotage en temps réel des locomotives.

La sécurité a constitué l’une des priorités du développement.

Un réseau de jardin peut accueillir plusieurs locomotives évoluant simultanément. Il est donc indispensable de pouvoir les arrêter instantanément en cas de problème.

Pour cette raison, GTRC intègre un arrêt d’urgence radio capable d’être diffusé à l’ensemble des locomotives. Dès sa réception, chaque récepteur coupe immédiatement la traction afin d’immobiliser le train.

Le logiciel surveille également en permanence la communication radio afin de détecter une éventuelle perte de liaison et d’adopter un comportement sécurisé.

Au fil des versions, de nouvelles fonctions viennent renforcer cette fiabilité tout en conservant une architecture logicielle commune à l’ensemble des locomotives.

L’un des objectifs de GTRC est de pouvoir évoluer sans remettre en cause le matériel existant.

Les nouvelles fonctionnalités sont donc principalement développées au niveau logiciel. Cette approche permet d’ajouter progressivement de nouvelles possibilités tout en conservant une excellente compatibilité avec les versions précédentes.

Cette philosophie facilite également le partage du projet : chacun peut adapter le logiciel à ses propres besoins sans repartir de zéro.

Cette vue d’ensemble permet de comprendre l’organisation générale de GTRC.

Dans les prochains articles, nous entrerons progressivement dans le détail de chacun de ces éléments. Nous commencerons par la télécommande, véritable centre de commande du système, avant de découvrir les récepteurs embarqués puis le protocole radio développé spécifiquement pour les trains de jardin.