Bonjour,
J'ai séparé les messages du fil de la carte 8 servos CAN+DCC qui partaient sur un autre sujet pour construire celui-ci. Le thème est donc :
Si on essaye de faire une carte qui fait un peu tout ce dont on a besoin et qui se voudrait universelle, quelle voie choisirait-on ?Je vais commencer par vous livrer mon opinion.
Pourquoi le faire ?L'objectif est de réduire le câblage et d'uniformiser le matériel et le logiciel. Chacun peut avoir sa définition de ce qu'est la réduction du câblage mais je vais donner la mienne :
minimiser la somme des longueurs des câbles.
Comme on ne peut pas réduire le nombre de câbles reliant les capteurs à l'informatique et l'informatique aux actionneurs, la réduction du câblage passe par la réduction de la longueur de ces câbles et donc par la décentralisation de l'informatique : Un satellite regroupant un micro (Arduino) et l'électronique nécessaire est implantée à proximité des capteurs et des actionneurs. Plus c'est proche et plus on minimise le câblage. À un extrême, on a l'idée de la carte unique centralisée avec une longueur de câblage maximum, à l'autre une carte qui ne sait gérer qu'un seul capteur ou actionneur et une longueur minimum. Dans les deux cas on perd l'universalité. Le choix doit donc se situer quelque part au milieu. Evidemment les tailles caractéristiques des installation du réseau mais aussi les systèmes électroniques disponibles viennent fixer également des contraintes. Il y a également l'immunité au bruit qui plaide pour l'utilisation de fils courts : essayer de commander un servomoteur avec 2 mètres de fils, c'est aller au devant des ennuis.
Concernant les contraintes liées aux types de modules Arduino exploitables, le minimum est défini par ceux à base d'ATMega 328. Sur les 20 E/S numériques disponibles, 5 sont pris pour la communication (SPI-CAN+IT) et 2 ne sont pas facilement exploitables si on veut communiquer avec l'ordinateur pour le debug. Il en reste donc 13 à partager entre les actionneurs et les capteurs. Le maxi peut aller d'un 328 étendu avec des registres à décalage, des
expandeurs d'E/S, etc à un Mega avec 48 E/S disponibles.
Il faut également noter que si on veut faire une seule conception de carte que l'on veut universelle, il ne faut pas aller trop haut dans le nombre de capteurs actionneurs gérés car certaines parties du réseau sont plutôt désertes.
De quoi a-t-on besoin ?On se place dans un contexte DCC qui n'est pas le mien et on se limite à l'exploitation. On a besoin de :
- détecter la position du matériel.
- positionner les aiguillages
- commander la signalisation
On voit déjà qu'on va avoir des petits problèmes d'universalité puisque la détection de position peut se faire de différentes façon avec des électroniques différentes (Consommation, barrières IR, ILS), positionner les aiguillages aussi et la signalisation peut être lumineuse ou mécanique. Ce n'est donc pas gagné.
L'exemple de gare de LRSi on prend pour exemple la gare de LR, qu'est ce que ça donne ?
J'ai re-dessiné cette gare en supposant un réseau en N avec des cantons (et donc des longueurs de train) de 90cm environ. La gare avec ses cantons d'entrée et de sortie fait plus de 5m de long. En tout on a 21 zones de détection, Sur ces 21 zones 9 sont des cantons. On va supposer, comme on a fait pour le Locoduinodrome, que la détection dans les zones se fait par consommation de courant et que la détection des sections d'arrêt des cantons se fait par barrière IR. Même si un canton n'est en théorie parcouru que dans un seul sens, il faut bien gérer le cas du train qui refoule. On a donc deux zones d'arrêt par canton. On a 15 aiguillages et 11 feux totalisant je ne sais pas combien exactement de LED mais à vue de nez un maximum de 7 LED par cible en comptant les oeilletons (je n'ai pas compté les feux au sol). Donc
- 21 détecteurs de consommation
- 18 détecteurs IR
- 15 servomoteurs
- 11 feux à 7 LED maximum
La carte définie pour le Locoduinodrome est sans doute un peu spécifique et un peu rigide. Elle a été définie pour une topologie particulière de 7 zones dont 5 cantons. 8 cartes sont nécessaires. Elle permet :
- 1 détection par consommation
- 2 détections IR
- 1 servomoteur
- 9 LED (numérotées de 0 à 8 )
Si il est difficile d'envisager de partager une même broche entre une entrée et une sortie selon la configuration, il n'est pas impossible, via des straps, de partager une sortie entre servo et LED par exemple. Pour cette gare, on voit que la répartition entre la détection par consommation et par barrière IR n'est pas bien répartie. Supposons qu'on puisse banaliser les entrées de détection (par exemple en ne faisant que de la détection par consommation ou bien en déportant l'électronique de détection sur une carte fille), on tombe à 13 cartes. Avec 4 détections, on tombe à 10 cartes. On peut partager une partie des sorties LED pour ajouter un deuxième servomoteur, voire un troisième ou un quatrième pour de la signalisation mécanique. On aurait donc pour un objectif de 10 cartes à 13 E/S :
- 4 détections par consommation ou bien 4 slots de détection
- 0 à 4 servomoteurs partagés avec les LED 5 à 8
- de 5 à 9 LED, les LED 0 à 4 étant uniquement des sorties LED, les LED de 5 à 8 étant partagée avec les servos