technique: les encodeurs

 

plan du site
les news
généralités


la technique
- les interfaces
- l'affichage
- IO Cards
- les logiciels d'instruments


la pratique
le Beech200

- le projet
- le tableau de bord
- l'électricité
- le pedestal
- les gaz, volets, trims
- la menuiserie

-l'électronique


les liens
contact
téléchargements

 
Vous trouverez dans ce chapître:

- comment détecter le sens de rotation d'un commutateur rotatif:
- avec un système maison original mais performant


Sur le podium des casse-tête des constructeurs de cockpits figurent certainement les encodeurs rotatifs.
Il s'agit de ces boutons que l'on tourne dans un sens, pour augmenter une valeur, et dans l'autre sens pour la diminuer. Et pour corser le tout, chez Airbus, et maintenant sur certains Boeing, ces boutons sont dotés d'une troisième fonction: on pousse ces boutons pour valider le choix. C'est le cas par exemple de la sélection d'altitude: on tourne à gauche ou à droite pour régler la valeur et on pousse pour enclencher ALT au pilote automatique.

Prenons le cas de l'Auto Brake: pour augmenter le freinage, on tourne un bouton vers la droite. On peut faire l'équivalent en tapant sur le clavier CTRL + U, c'est une attribution prévue par Microsoft. Un commutateur rotatif très simple, relié à une carte émulatrice de clavier, peut donc générer à chacune de ses positions un CTRL + U et donc augmenter la valeur de freinage. Mais comment faire pour que, lorsqu'on tourne le même commutateur dans l'autre sens, les mêmes positions (donc les mêmes interrupteurs) génèrent maintenant un SHIFT + U qui voudra dire à Flight Simulator "diminuer la valeur de freinage" ?

 

 















   

La solution existe chez certains fabricants de composants électroniques: il s'agit des encodeurs rotatifs à détection de phase. C'est en gros un contacteur rotatif double dont une galette est décalée par rapport à l'autre.

Les plus courants des encodeurs sont dits de "type Gray", comme le CTS 288. Solide (tout métal), peu encombrant et vendu par OpenCockpits ou Hispapanels, cet encodeur peut se passer de toute carte électronique spéciale, il se branche directement sur la carte Master de IO Cards où il utilise deux entrées. C'est une excellente solution, qui peut être généralisée à tout un cockpit si on dispose de suffisamment d'entrées disponibles sur la carte Master, ou d'une deuxième Master.

Il existe également des encodeurs "mécaniques", qui peuvent se brancher directement sur une carte émulatrice de clavier: par exemple les références MRP1-20 et MRP 11 de Knitter Switches, d'un prix raisonnable, mais de fabrication un peu trop fragile à mon goût.

 


des encodeurs CTS 288,
version avec interrupteur
poussoir dans l'axe

   

Si on n'a besoin que de quelques encodeurs, il est peut être plus rentable d'essayer de se faire un encodeur "maison". J'ai finalement adopté un commutateur rotatif 12 positions à 2 Euros, dont le fonctionnement est modifié de façon sans doute un peu surprenante, mais d'une fiabilité absolue.

Le principe est simple: Les commutateurs rotatifs ordinaires ont jusqu'à 12 positions pour un tour quasiment complet. C'est à dire que chaque position est écartée de la suivante d'un angle de 360/12 = 30 ° Quand on commence à tourner le bouton, on parcourt ces 30° avant de tomber sur le cran suivant, là où le contact s'établit. Il s'agit de mettre à profit ce passage à vide de, disons 25°, pour détecter le sens de rotation.

Pour ce faire, le contacteur est monté sur un support à 2 cm environ du panneau extérieur. Sur la partie de son axe sous ce panneau, mettons... une pince à linge. Et voila une application de plus pour cet accessoire dont les ressources sont insoupçonnées... Pourquoi une pince à linge dans notre cockpit ? Parceque cet instrument se serre sur l'axe de 6 mm du contacteur, donc tourne avec lui. Mais si la pince à linge rencontre un obstacle, elle va se bloquer sur lui, ce qui n'empèchera nullement l'axe de tourner, la pince à linge va glisser dessus. Supposons que cet obstacle soit un micro-switch. Que se passe t'il quand on commence à tourner le contacteur ?


un commutateur rotatif très courant à
2 Euros



une pince à linge et un micro-switch
   

Dans un premier temps, pendant les 25° environ où il n'y a aucun contact, la pince à linge va tourner. Puis elle rencontre un micro-switch qui se ferme, et ensuite seulement le contact du commutateur rotatif est établi et l'impulsion générée.

Et si l'on met deux micro-switches, un à gauche et un autre à droite de la pince à linge, c'est tantôt celui de gauche qui va se fermer, tantôt celui de droite, selon le sens de rotation.

Dès lors, il n'y a plus qu'à se servir de ces micro-switches comme d'aiguilleurs pour envoyer le signal vers une entrée ou une autre de la carte émulatrice de clavier pour signifier une augmentation ou une diminution d'une valeur.


   
Le schéma électrique, bien plus évident que ces longs discours est le suivant:






 
Un exemple: une commande de volets.

A titre d'emple, voici ce que cela donne en pratique sur un prototype de commande de volets.

Le levier de ce secteur est solidaire d'un secteur circulaire "à bosses" qui active un micro-switch à roulette à chaque passage devant un cran de volets. C'est l'équivalent d'un contacteur rotatif. Lorsqu'on tourne le levier sélecteur de volets, la pince à linge fixée sur l'axe va tourner avec lui, puis établir un contact sur un micro-switch fixé sur le flanc , pour générer par exemple un F6 (rentrer les volets d'un cran). Dans l'autre sens ce sera un F7 (sortir les volets d'un cran) L'écartement entre les deux micro-switches n'est pas du tout critique avec un encodeur à 12 positions. Avec un modèle à 20 positions, il faudrait resserrer un peu.

La seule précaution de construction à prendre est de faire en sorte que la pince à linge ne rencontre aucun obstacle sur son chemin, par exemple qu'elle ne puisse pas se coincer sur un flanc.

Les schéma électrique ci-dessus permet la mise à la masse d'une entrée "j'augmente la valeur" et d'une entrée "je la diminue".

Rien n'empèche d'utiliser le même principe sur de simples entrées de Joystick. La prise Joystick DB15 permet en effet d'utiliser 4 boutons , voir le chapître "les axes analogiques". Le bouton relié à la cosse 2 et à la masse (cosses 4 et 5) peut être attribué dans FS par exemple à F6 (rentrer les volets) et le bouton relié à la cosse 10 et 4-5 correspondra à F7, sortir les volets.

Si on tourne la manette de volets dans un sens, le switch SW1 va se fermer le premier, et rester fermé, poussé par la pince à linge, puis la prochaine bosse du secteur de volet ferme SW3: on a envoyé un F6.
Si c'est SW2 qui est fermé le premier, bien entendu, ce sera un F7 et les volets vont sortir.
Nous avons pris ici l'exemple d'une entrée sur une prise DB 15, en voie de disparition. Exactement le même principe s'applique pour le branchement sur une carte Master IOCards.

Après de nombreuses heures de vol avec ce système d'encodeur maison, je n'ai jamais pu le mettre en défaut, fiabilité 100%

Quant au coût... je vous laisse juge.

Mais, je l'avoue, ce n'est pas trop "aéronautique"...







la partie mobile d'une commande de volets
 



adaptation à une prise de Joystick DB15




   

améliorons: étape n°1

Un micro-switch normalement constitué a deux positions: une ON avec le levier poussé, et une OFF quand il est relâché. C'est un inverseur à 1 circuit 2 positions. Il suffit de dire que lorsque la pince à linge se promène à gauche, quand le levier est relàché donc, et que le contact est établi entre la cosse commune et la cosse OFF, ce sera un F6. Et que lorsque la manette de volets est actionnée dans l'autre sens, elle va activer l'autre position du micro-switch donc générer un F7 au prochain cran. Cela élimine un des deux micro-switches, qu'il suffit de remplacer par une butée quelconque, une vis de 3 par exemple.

 
 

améliorons: étape n°2

Si vous craignez que votre entourage ne s'inquiète de votre santé mentale quand vous direz que votre cockpit de Boeing marche avec des pinces à linge, il y a une solution, disons un peu plus élégante.

Achetez chez votre revendeur de modélisme le plus proche de la "corde à piano" de 0,8 mm, c'est tout simplement du fil d'acier trempé. Tournez une petite longueur de ce fil autour de la queue d'un forêt un peu plus petit que l'axe de votre commutateur rotatif, essayez 5,7 pour un axe de 6, et formez un ressort de 1 cm de long environ. Laissez une partie du fil droite, comme sur la photo ci-contre.Le principe est exactement le même que pour la pince à linge, le ressort est serré, mais modérément, sur l'axe. C'est plus joli, moins encombrant, mais plus délicat à règler que la pince à linge.

J'ai adopté cette solution pour des encodeurs devant entrer dans un espace réduit, comme la commande d'Auto Brakes sur le cockpit de B777.



amélioration 2: un ressort

 

améliorons: étape n°3

Comme il n'y a rien de tel qu'un système se serrant de lui-même sur l'axe du contacteur, il y a aussi la solution des pinces clip, aussi efficace que la pince à linge et moins encombrant

amélioration 3: la solution "clip-clou"



    transformons un contacteur 12 positions en encodeur rotatif.

Tout ce que nous avons vu jusque maintenant s'applique très bien à des commandes droite-gauche à plusieurs positions immuables, comme l'Auto Brake, on choisit un commutateur à 12 positions dont on bloque la rotation, par exemple à 4 ou 6 positions (la butée de blocage est fournie avec).

Mais quand il s'agit de sélectionner une altitude ou un cap, le problème est différent, il faudra peut être 20 ou 30 impulsions pour trouver la bonne valeur, or notre contacteur ne va pas plus loin que 12 positions. Heureusement, avec un tout petit peu de chirurgie, on peut le transformer en véritable encodeur, tournant indéfiniment dans un sens comme dans l'autre.

Reprenons le contacteur illustré plus haut, disponible chez GoTronic ou Conrad.

Pour l'ouvrir, il faut écarter avec un petit tournevis les 4 pattes noires, les maintenir écartées avec un petit fil ou une épingle, et retirer le fond noir. La partie centrale qui porte les contacts a aussi un dispositif pour se bloquer dans les encoches: ce sont deux billes de 3 mm maintenues en pression par un ressort. Ne vous demandez pas si elles vont sauter quand vous allez retirer l'axe, elles sauteront, et pour retrouver une bille de 3 mm entre les poils de la moquette,ou une fente de parquet, bon courage. Faites donc l'opération dans un carton ou un sac en plastique. Cette pièce porte une butée, indiquée par la flèche sur la photo ci-contre, supprimez-la non pas en limant, mais au cutter, c'est très vite fait. Le remontage est simple, les billes reprennent facilement leur place, on enclipse les deux parties (il y a une encoche), et voila, vous avez un véritable encodeur.



couper la butée
 
La rotation est quelque fois un peu dure, pour plus de confort on peut profiter du démontage pour couper une spire du ressort.

les 12 contacts

 

Mais, allez-vous dire, il y a le cas des Airbus, des encodeurs qui non seulement se tournent, mais aussi
se poussent
? Cela peut ressembler au dessin ci-contre. L'encodeur est monté sur une platine ayant une certaine souplesse. Cette platine peut donc être poussée , et actionner ainsi un bouton poussoir à faible course (0,3 à 2,5 mm)

Bien entendu , envoyer des équivalents clavier n'est pas la seule solution pour augmenter ou diminuer une valeur, on peut agir directement sur FS en lui "adressant" des instructions en hexadécimal qu'il interprète comme il faut. C'est plus direct qu'un émulateur de clavier, plus rapide, plus élégant: c'est le rôle des interfaces comme IOCards.

 

retour en haut de la page