SIOC pas à pas


Quatrième édition                                                                                         Claude Kieffer  février 2015

Introduction

Les cartes IOCards permettent de commander pratiquement toutes les fonctions nécessaires à un cockpit. Extrêmement robustes, parce que conçues de façon simple, elles se sont révélées dès leur origine parfaites pour leur emploi, et, fait rarissime, elles n'ont jamais connu de mises à jour ou versions successives comme on en voit très souvent. Ces cartes sont des outils de base, et, bien entendu, il faut leur dire ce qu'elles doivent faire quand, par exemple, on ferme un interrupteur. Ce peut être rentrer le train, allumer des phares, ou commander toute une succession d'actions complexes, c'est au choix de l'utilisateur.

 

A l'origine, cette "programmation" des IOCards se faisait par le biais d'un logiciel assez simple, mais très limité, qu'on a appelé "IOCard classique". Mais, très rapidement, Manuel Velez, le concepteur de IOCard, a créé un langage spécifique de programmation pour ses cartes, dénommé SIOC. Sa vague ressemblance avec le langage C++ ne doit pas effrayer ceux qui n'ont, comme moi, aucune connaissance en programmation informatique. En fait, SIOC est à la portée de tous, il suffit de l'aborder méthodiquement, pas à pas. Très rapidement les constructeurs de cockpits ont pris conscience que débuter directement avec SIOC n'était pas vraiment compliqué, et permettait de pratiquement tout faire.

 

Aujourd'hui, tout le monde utilise SIOC, les débutants en cockpits comme les chevronnés, et comme IOCard est devenu entre temps le système d'interfaçage de cockpits le plus répandu dans le monde, quasiment le seul utilisé, en fait, cela fait beaucoup d'utilisateurs de SIOC, qui tous parlent le même langage et peuvent échanger entre eux.

 

Mais avant d'aborder la programmation SIOC, quelques précisions concernant les cartes IOCards elles-mêmes, leur présentation, leurs fonctions


les cartes IOCards de OpenCockpits

Le système IOCards est un ensemble de cartes électroniques destinées à gérer toutes les fonctions d'un cockpit: commandes de Flight Simulator ou P3D par des interrupteurs, boutons poussoirs, encodeurs rotatifs, etc...affichage digital des fréquences utilisées en vol et des paramètres du pilote automatique, commande de servo-moteurs ou de moteurs pas à pas, etc...

 

 

 

Les cartes IOcards peuvent être commandées chez Opencockpits .


1 - la carte Master

La carte Master est le coeur du système IOCards. Elle possède 72 entrées, sur lesquelles peuvent être branchées toutes sortes d'interrupteurs, et même des "encodeurs" qui permettent de sélectionner une fréquence, un cap, etc... Elle a également 45 sorties pouvant allumer des diodes LED témoins, et, si on lui ajoute une carte dite "Display", la carte Master peut faire fonctionner des afficheurs digitaux.

Au minimum, un cockpit doit comprendre une carte Master et une carte USB dite aussi USB Expansion. Les cartes d'affichage Display peuvent venir bien plus tard, et les autres cartes IOCard sont beaucoup plus spécialisées.

Avec une Master et une USB, on peut la plupart du temps faire fonctionner les trois quarts d'un cockpit.

 

La carte USB Expansion est indispensable, car toutes les cartes IOCards sont branchées en USB sur l'ordinateur. La carte USB Expansion peut recevoir 4 cartes Master, sur le schéma ci-dessous, une seule est représentée.

 

La carte Master nécessite une alimentation 5 volts continu, par elle-même elle consomme très peu, ce sont les LEDs qu'on peut brancher dessus qui consomment le plus. Une alimentation délivrant 1 Ampère peut suffire, mais la meilleure solution est certainement d'acheter une petite alimentation d'ordinateur (450 watts par exemple) qui délivrera tout le 5 volts nécessaire et, en prime, du 12 volts continu dont on pourrait bien avoir besoin un jour.

Attention: certaines alimentations à bas coût ont un "courant de fuite" assez élevé, qui peut détruire certains circuits intégrés. Pour éviter ce risque, il faut toujours utiliser une prise de courant avec Terre pour brancher ces alimentations au secteur.

la carte Master IOCards
la carte Master IOCards
branchement des cartes IOCards entre elles
branchement des cartes IOCards entre elles

Nota: tous les branchements d'un connecteur à l'autre se font broche à broche, c'est à dire la broche n°1 reliée à la n°1 . Ne jamais utiliser de câbles à fils croisés comme les "null-modems", en particulier pour la liaison DB25 entre la Master Card et la carte USB.

 

La première carte Master (4 sont possibles) doit être reliée au connecteur J1 de la carte USB, comme sur le schéma ci-dessus.

Les cartes IOCard peuvent être achetées chez OpenCockpits soit montées, testées et donc prêtes à être programmées, soit en kit. Dans ce dernier cas vous recevrez le circuit imprimé, tous les composants nécessaires, mais pas de schéma de câblage. Heureusement l'emplacement et la référence de chaque composant sont imprimés sur le circuit imprimé, mais il sera quand même très utile d'aller chercher sur le site de OpenCockpits la nomenclature des composants de la carte, et éventuellement le schéma théorique.

 

ATTENTION: la version kit peut sembler intéressante a priori, en raison de son prix moins élevé, mais ce peut être un très mauvais calcul si vous n'avez pas un bonne pratique du montage de ce genre de cartes, c'est à dire au minimum une bonne connaissance des composants électroniques (leur polarité par exemple, ainsi que les codes de couleur des résistances ou de marquage des condensateurs), un bon fer à souder, à panne très fine et ne chauffant pas trop , une loupe pour vérifier l'état des soudures, etc...

 

Bien montées, ces cartes fonctionnent toujours du premier coup, mais s'il y a une anomalie, le dépannage peut vite s'avérer très fastidieux ... Ces cartes sont la base même de tout cockpit, est-il judicieux de faire des économies à ce niveau? D'autant plus que si vous achetez une carte montée, elle est garantie. A vous de voir.


2 - les câbles de liaison

Chacun a sa méthode pour domestiquer les dizaines de câbles qui sortent des cartes IOCards. Pour ma part, j'ai eu recours, dans une première version, à des câbles en nappe de 40 conducteurs qui desservaient tout le cockpit. Chaque module du cockpit doit rester indépendant et facilement démontable. Ces modules peuvent être la platine de train rentrant, l'EFIS, etc... chacun d'eux verra donc les fils de ses interrupteurs, LEDs et autres afficheurs arriver sur un connecteur mâle HE10 de 2 x 20 broches (on en trouve facilement chez GoTronic, Sélectronic, RadioSpares ou Conrad)

 

Les entrées interrupteurs sur la carte Master, prenons cet exemple, arrivent sur deux connecteurs, J3 et J4 de 40 broches. De J3 part un câble plat 40 conducteurs vers la partie gauche du cockpit, et de J4 un autre vers la partie droite. A proximité de chacun des modules des connecteurs HE10 femelles sont sertis sur chaque "bus" et les connecteurs mâles des modules y sont branchés.

 

Evidemment d'un module peut ne sortir que quelques fils, peu importe, le connecteur mâle n'aura de fils branchés que sur les premières broches. Le module suivant occupera les suivantes etc... Ce système a plusieurs avantages: le câblage est clair, il est facilement modifiable et extensible. L'inconvénient est qu'il faut sertir des connecteurs et pour ce faire il vaut mieux avoir une pince spéciale et d'autre part on peut avoir l'impression de gaspillage, certains connecteurs étant bien nus. Il faut toutefois rappeler qu'un connecteur HE10 coûte moins d'un Euro.

 

Autre solution, et c'est la dernière version de mon cockpit, de la carte Master sortent des nappes de 40 fils très courtes, dont chaque fil est branché sur une barrette de connecteurs à vis. Voir la photo ci-dessous. Il faut absolument prendre des connecteurs serrant le fil entre deux lamelles, comme la référence 08094 de GoTronic, et non des "dominos" à vis qui arrachent les fils. Avec ce système, les entrées de la carte Master peuvent être numérotées dans le bon ordre (voir plus bas dans ce chapitre), le câblage du cockpit peut se faire petit à petit sans devoir faire des soudures sur des connecteurs pas toujours très accessibles, et les modifications sont très faciles. OpenCockpit dispose de cartes d'expansion qui ont le même rôle, également très pratiques.

 

Nota: Sur un connecteur DB25, les broches sont numérotées (prendre une bonne loupe...) Sur des HE10 seule la broche 1 est en général indiquée par un triangle. Les erreurs dans les numéros de cosses sont un des risques majeurs de disfonctionnement.

 

Quelques photos seront plus explicites:

 

 

 

 

On voit ici un câble en nappe équipé de 3 connecteurs HE10 femelle, la pince à sertir, et quelques connecteurs en attente.

 

 

 

 

Un connecteur HE1O mâle: ici, seuls les 9 premiers fils sont connectés. Il ne faut jamais souder les fils directement sur les broches, mais souder les broches sur un bout de circuit imprimé d'essai à pastilles, puis les fils sur ce circuit.

la carte Master et la solution barrettes-relais à vis, très pratique
la carte Master et la solution barrettes-relais à vis, très pratique

Attention, la carte Master a une particularité: les numéros des entrées ne correspondent pas toujours avec le numéro des broches des connecteurs d'entrée J3 et J4.

 

Résumons par un tableau les correspondances:

Comme on peut le voir, les entrées sont regroupées par groupes de 9, la première entrée portant le numéro 000, ce qui fait 72 entrées au total sur les deux connecteurs, J3 et J4.

Les entrées sont activées quand on relie une des broches d'un groupe à la broche correspondant à la masse (GND) du même groupe.

 

Par exemple, l'entrée 001 est activée en reliant par un interrupteur la broche 1 à la broche 10 du connecteur J3. De la même manière, l'entrée 009 sera activée en reliant les broches 17 et 20, etc...

 

Les "masses" GND sont en fait de fausses masses, il ne faut jamais les relier ensemble ou les relier au -5Volts.

 

Les connecteurs sont responsables de 99% des pannes dans un cockpit, et ce sont des pannes difficiles à détecter.

Veillez donc tout particulièrement à la qualité des soudures, et moins il y a de connecteurs dans un cockpit, mieux c'est.