Accueil > La conception > L’électronique et l’informatique > L’architecture générale

L’architecture générale

Des micro-contrôleurs à foison

vendredi 6 juillet 2012, par Jean-Luc

L’architecture générale de l’électronique et de l’informatique n’est pas de ma conception mais essentiellement de celle de Pierre. Pour résumer rapidement, le contrôle des convois est effectué par un seul calculateur plutôt costaud et les contrôles des appareils de voie, des signaux et des alimentations de cantons sont délégués à des calculateurs plus simple du type PIC. L’interconnexion entre les calculateurs est assurée par 3 réseaux CAN [1].

Architecture générale du système électronique

Le cœur du système

Le matériel

Le calculateur central est une carte L2294 fabriquée par la société OLIMEX et équipée d’un micro-contrôleur ARM LPC2294 de Philips cadencé à 60MHz. Cette carte est distribuée en France par la société Lextronic. La carte offre 4 bus CAN. 3 d’entre eux sont utilisés et nous verrons leur usage plus loin. De plus un contrôleur Ethernet est présent.

Afin de compléter cette carte, Pierre a développé une carte mezzanine [2] comportant plusieurs fonctions additionnelles :

  • un écran LCD permettant l’affichage de messages de contrôle et de déverminage ;
  • un micro-contrôleur PIC accessible via l’un des bus CAN et remplissant plusieurs rôles : contrôle de l’écran LCD, synthèse d’un signal de synchronisation à destination des cartes d’alimentation de cantons, synthèse d’un signal de déclenchement de mesure de vitesse (plus d’informations sur ces fonctions seront présentées dans un billet consacré à la carte d’alimentation de cantons) ;
  • 2 circuits amplificateurs pour 2 des bus CAN. En effet, la carte L2294 n’a qu’un seul des bus CAN équipé d’une amplification, il est donc nécessaire d’ajouter ces circuits pour exploiter les autres bus ;
  • plusieurs boutons-poussoir, commutateurs permettant de 1) démarrer la carte dans plusieurs modes, 2) mettre en oeuvre un arrêt d’urgence ;
  • quelques diodes électro-luminescentes (LED) permettant une interaction avec l’utilisateur pour indiquer le fonctionnement, normal ou non, du système.
Carte mezzanine dépourvue de l’écran LCD

Le logiciel

Le logiciel reste à écrire. Pierre et Philippe emploierons un logiciel de suivi de convois appelé Caniche et écrit par Pierre alors que je compte écrire le mien. J’ai quelques idées, que j’exposerai dans un billet futur, sur la manière dont l’exploitation automatique du réseau sera implémentée. Le logiciel d’exploitation reposera sur un système d’exploitation temps-réel (ou RTOS [3]) appelé Trampoline. Trampoline implémente la norme ISO OSEK/VDX et aussi la norme AUTOSAR 4.0. Ces deux normes sont employées dans l’industrie automobile pour les systèmes électroniques embarqués à bord des véhicules. Il s’agit d’un RTOS destiné à de petits systèmes temps-réels dits durs, ou stricts, dont le comportement doit être facilement prévisible.

Les cartes d’alimentation de cantons

Ces cartes ont été conçues par Pierre. Un des 3 bus CAN est réservé à la communication avec ces cartes. Chaque carte regroupe 4 alimentations et possède un système d’adressage sur 4 bits via un DIP switch permettant de distinguer les cartes entre elles. Il est donc possible d’avoir jusqu’à 24 = 16 cartes, soit 64 cantons, sur le bus.

La carte 4 alimentations de canton

Un prototype de cette carte est opérationnel et a été testé de manière très satisfaisante. Philippe a posté un billet à ce propos. De plus amples informations seront données sur ces cartes dans un futur billet.

Les cartes de contrôle des appareils

Ces cartes sont connectées sur un second bus CAN réservé aux « accessoires ». Ces cartes sont de mon cru et sont conçues de manière modulaire : une carte mère banalisée comporte l’interfaçage avec le réseau CAN, le micro-contrôleur PIC, quelques LED, un DIP switch pour fixer son adresse comme pour la carte d’alimentations de cantons, une carte fille « mezzanine » permettant de personnaliser la fonction. Pour l’instant, sont conçues et dessinées 3 cartes mezzanine remplissant les fonctions suivantes :

  • Carte de commande de 10 aiguilles à moteur électromagnétique avec retour de position ;
  • Carte de commande de 8 aiguilles à FAM avec retour de position ;
  • Carte de commande de 16 moteurs à FAM sans retour de position pour les dételeurs et les signaux mécaniques.

Là aussi, 16 cartes sont possibles sur ce bus mais comme les logiciels seront différents, l’adressage pourra aussi être distingué de manière logicielle et il est donc possible d’avoir 16 carte par type de logiciel.

Les postes de conduite

Le 3e et dernier réseau CAN est destiné à recevoir des postes de conduite qui pourront se connecter à chaud. Ils permettent une exploitation manuelle du réseau. Un poste de conduite regroupe un afficheur LCD, un bouton rotatif relié à un codeur numérique, un clavier 12 touches et quelques commutateurs et poussoir. 4 postes de conduite sont possibles.

Connexion PC

La carte L2294 possédant un port Ethernet, il est aisé de le raccorder à un ordinateur. Pierre a écrit une pile TCP/IP qui tourne sur la carte. Cela permettra de communiquer avec elle via le réseau de la maison. De nombreux usages sont possible : maintenance du logiciel des PIC, supervision, traçage des messages CAN, etc.


[1Voir à ce propos l’article de Wikipédia « Controller Area Network »

[2C’est à dire une carte qui s’enfiche par dessus une autre via des connecteurs

[3Real Time Operating System

Messages

  • Bravo Jean-Luc pour ton blog. Dans la rubrique électronique j’y trouve des éléments qui me remette en mémoire un certain nombre de choses valable pour mon réseau. Cela ne me fais pas de mal car je ne maîtrise pas vraiment tout comme Pierre !
    J’ai placé un lien sur ton blog sur la page d’accueil du mien.

    Voir en ligne : Les trains du Tertre

Un message, un commentaire ?

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)