Après avoir vu les concepts généraux du satellite autonome, nous allons maintenant décrire le matériel mis en œuvre et les principes de réglage et de fonctionnement.
LES SATELLITES AUTONOMES : une nouvelle approche du concept de Satellites Locoduino. (2)
Les matériels
. Par :
. URL : https://www.locoduino.org/spip.php?article349Nous avons trois types de cartes :
- Deux cartes en un seul exemplaire pour tout le réseau, qui sont la carte Main (principale) et la carte Watchdog.
- Différentes cartes satellites, toutes absolument identiques qui peuvent ou non être équipées de certains composants selon les besoins.
Le microcontrôleur sur chaque carte est un ESP32, choix qui répond bien à différentes contraintes : Cout faible, puissance du processeur double cœur, mémoire flash suffisamment importante pour stocker des données comme un serveur d’application et les données spécifiques du canton et de ses accessoires.
La carte Main :
La carte Main est assez classique. Il s’agit d’un ESP32 avec un tranceiver CAN MCP2562. J’avais présenté dans Locoduino une petite carte « universelle » qui met en œuvre le CAN et qui convient parfaitement :
La mission de cette carte est d’assurer certaines fonctions centralisées. Eh oui il y en a un peu comme par exemple assigner un identifiant unique (ID) à chaque carte satellite lors de sa première installation sur le réseau.
Elle permet également d’effectuer des opérations globales sur l’ensemble des cartes comme activer ou désactiver le WiFi pour toutes les cartes ou encore le mode « Discovery », là encore pour l’ensemble des cartes, sauvegarder les réglages de toutes les cartes en mémoire flash et en une seule opération.
Cette carte « Main » peut être disposée à n’importe quel endroit du réseau pour peu qu’elle fasse partie intégrante du bus CAN. Sur les cartes satellites, aucun programme ne sera exécuté s’il n’y a pas préalablement de communication CAN avec cette carte « Main ».
La carte Watchdog :
D’un point de vue matériel, la carte Watchdog est identique à la carte Main.
Cette carte n’a qu’une seule mission, surveiller que toutes les cartes satellites fonctionnent normalement et, dans le cas contraire, stopper immédiatement toutes les locomotives du réseau pour éviter des dommages.
Cette carte « Watchdog » peut être disposée à n’importe quel endroit du réseau pour peu qu’elle fasse partie intégrante du bus CAN.
Le bus CAN devant être bouclé à chaque extrémité par une résistance de 120Ω, je préconise de placer ces deux cartes chacune à une extrémité du bus et avec la résistance activée. Vous n’aurez alors plus à y penser quand vous ajouterez ou enlèverez des satellites sur le bus.
Les cartes Satellite :
Au centre de la carte, nous avons un ESP32 à 38 pins ESP32-DevKitC avec 4MB de mémoire flash et deux cœurs que nous exploitons car la carte est beaucoup sollicitée en calculs.
On trouve facilement ce type de carte sur internet pour une dizaine d’euros environ.
Juste au-dessus, nous avons les boutons de sélection et le switch utilisés dans le processus de découverte sur lesquels je reviendrai en détail plus tard.
Les cartes sont reliées entre elles avec des câbles Ethernet et des connecteurs RJ45. Dans ces câbles transitent le signal CAN (High et Low) mais aussi le courant en 12 ou 24 volts qui sert à l’alimentation électrique de la carte et de ses accessoires.
Il n’y a aucun autre câble nécessaire pour relier les satellites entre eux. Les seuls autres câbles nécessaires sont pour les équipements locaux : capteurs et servo moteurs en particulier.
Je recommande des câbles de catégorie 5 ou 6 pour la qualité de transmission et pour supporter le courant de puissance. S’agissant de câbles blindés et comme le CAN est très peu sensible aux perturbations électro magnétique, on mesure facilement l’intérêt de ce principe de liaison.
On voit aussi l’intérêt en simplification du câblage et en économies réalisées.
Les cartes doivent être reliées en série pour former un bus et ne peuvent en aucun cas faire l’objet de liaisons en étoile comme on le fait par exemple en Ethernet en utilisant des hubs.
A droite de l’ESP32, nous avons un convertisseur 5 volts/1 ampère pour alimenter les principaux accessoires de la carte comme les servomoteurs d’aiguilles, les feux de signalisation etc… La tension maximale admissible pour le convertisseur est 36 volts mais 24 volts me semble être un maximum raisonnable.
L’ESP32 est alimenté par ce courant de 5 volts et utilise ensuite son propre convertisseur pour la réduction du courant en 3,3 volts, sa tension de fonctionnement. Quelques pads à souder sur la carte permettent de « repiquer » du 5 ou du 3,3 volts en cas de besoin (capteur IR de position par exemple).
Un bornier à vis sert à alimenter la première carte en 12 ou 24 volts avec une alimentation extérieure. Courant qui sera ensuite véhiculé de cartes en cartes par le câble Ethernet comme nous l’avons vu plus haut.
Il est judicieux de réalimenter régulièrement le circuit (toutes les 6 ou 8 cartes) par le biais de ce bornier.
Juste en dessous de l’alimentation, nous avons la communication CAN avec un transceiver MCP2562, une résistance de 120 Ω qui doit être activée lorsque la carte est la première ou la dernière du bus en plaçant un cavalier sur le jump.
A droite du transceiver on distingue l’emplacement pour un connecteur destiné à la liaison CAN en filaire mais qui n’est pas installé ici puisque le transport du signal s’opère à l’intérieur du câble RJ45.
Dans le bas à gauche de la carte, nous avons la partie signalisation.
Il est possible d’alimenter jusqu’à 16 leds de signaux lumineux par l’utilisation de registres à décalage, ici des 74HC595 encadrés en rouge ci-dessous avec le repère (1).
Le courant sur chacune des sorties des 74HC595 devant être au maximum de 20 mA, nous utilisons des transistors Darlington ULN2803 distribuer le courant aux différentes leds - repère (2).
On dispose des résistances à chaque sortie de ULN2803 pour adapter le courant à la spécificité des leds reliées à la carte - repère (3).
L’alimentation des led’s en courant peut être assurée directement au travers du régulateur 5 volts de la carte. On disposera alors un jumper sur la partie gauche - repère (4).
Il est également possible d’alimenter directement les ULN2803 au travers du connecteur et d’une diode en bas et au milieu de la carte - repère (4). La tension du courant pourra alors être différente de 5 volts et les résistances seront alors calculées en conséquence. Il ne faudra surtout pas oublier d’enlever le jumper à gauche.
L’alimentation des leds est à anode commune.
Enfin, sur la partie basse et droite de la carte, nous disposons de quatre connecteurs pour piloter jusqu’à quatre servo-moteurs d’aiguilles.
Chaque carte satellite permet la reconnaissance de locomotives avec la technologie Railcom© et donc, la détection d’occupation.
Deux capteurs « tout ou rien » sont présents (capteurs à effet Hall, IR…) à 10 ou 20 centimètres de chaque extrémité du canton.
Voici ci-dessous une configuration type pour un canton avec une aiguille à horaire.
Pour info, voici le mapping adopté pour la carte satellite :
Fichiers Gerber des satellites autonomes
- Fichiers Gerber du satellite autonome
- Cliquez sur la vignette pour télécharger les fichiers Gerber de la carte.
Fichiers Gerber de la carte universelle ESP32 pour Main et Watchdog