Bases

Comprendre les principes de base

Article écrit par LapinFou en Février 2019.

Voici quelques infos qui ne sont pas forcément claires dans les documentations, mais qu'il est important de bien comprendre.

Entrées


Lorsque l'on définit différentes combinaisons, il faut savoir que cela fonctionne comme en programmation:
SI condition
remplace par ça
SINON condition
remplace par ça
SINON
remplace par ça
Pour les programmeurs: if ... else if ... else if ... else ...

Donc on n'a pas besoin de définir tous les cas possibles du moment qu'il y a un cas par défaut. Même chose pour les phases de vol, la phase de vol par défaut est la phase de vol 0.

Ex sur mon Yak avec un réglage petits/grands débattements:
entrye10

Même si un inter a un problème mécanique, il prendra forcément une des 3 positions possibles (pour un inter 3 positions), pas une pseudo 4ème position non gérée par la radio !! Je précise ce point, car il y a une légende urbaine qui dit: "j'ai défini mes 3 positions, mais j'en ajoute une 4ème par défaut au cas où...". Cela ne sert à rien et je tiens l'info directement de l'un des programmeurs d'OpenTX: Kilrah.

Suite au retour d'un lecteur, j'ajoute des explications pour plus de clarté.
Pour les entrées, ce qu'il faut comprendre c'est que dès qu'une condition est VRAIE (soit un inter SA, SB, etc. ou un inter logique) alors l'entrée prend cette valeur.

Donc si vous faites comme cela:
input110
La 1ère condition est toujours VRAIE (car il n'y a pas de condition...), donc [E1] est toujours à 100% et la radio ne regardera pas les lignes suivantes.
La radio s'arrête sur la première condition qui est VRAIE et ne va pas plus loin.


Par contre, si vous écrivez votre entrée comme cela:
input210
[E1] est à 100% si SD↑, sinon [E1] est à 80% si SD-, sinon (par défaut) [E1] est à 65% (pas de condition = toujours VRAI).

Dans le cas d'un triple rate, ce n'est pas super grave, car les 3 positions correspondent à quelque chose.

Par contre, attention si vous faites du dual rate !!

GROSSE ERREUR A NE PAS FAIRE:
input310
Dans ce cas si SD = SD↓, alors l'entrée [E1] ne régira plus aux mouvements du manche Ail !!!
Aucune ligne n'étant vraie/valide, l'entrée [E1] restera bloquée sur sa dernière valeur connue.
C'est pour cela qu'il faut prendre la bonne habitude de toujours définir un cas par défaut SUR LA DERNIÈRE LIGNE.


Par contre, si vous faites cela:
input410
Alors vous avez 100% si SD↑ et vous avez 80% si SD- ou SD↓.


Si vous avez tout bien compris, vous devriez comprendre cet exemple de quintuple rate !

input510
Si SC-, alors 100% (peu importe la position de SD, puisque SC- est avant)
Si SC↓, alors 80% (peu importe la position de SD, puisque SC↓ est avant)

Si SC↑, alors la radio va regarder les autres lignes:
Si SD↑, alors 70%
Si SD-, alors 60%

Et par défaut, 50%

Évidemment, vous pouvez définir de l'expo, une courbe, un diff, etc. différents pour chaque réglage !!
C'est pratique pour ceux qui font du drone, car ils peuvent avoir un mode/courbe différent à chaque fois.

Ratio et Décalage


Point important concernant les entrées et mixages:
Il faut bien comprendre les paramètres Ratio et Décalage que l'on retrouve un peu partout. L'opération mathématique derrière cela est toute simple, c'est une fonction affine:
y=Ratio*x + Décalage
Je vous invite à lire également l'article de :coyotte ici → Notions complémentaire à propos de Ratio et Décalage
Les manches, slider, inter fonctionnent de -100% à +100%. Petit rappel sur la valeur décimale d'un pourcentage:
100% = 1
50% = 1/2 = 0.5
25% = 1/4 = 0.25
0% = 0
Si vous voulez que votre entrée/mixage fonctionne autrement, il faudra jouer sur ces 2 paramètres.
Exemple avec l'inter SD:
Code :

Inter / Valeur de l'inter/ Valeur souhaitée
SD↑ / -100% / 0%
SD- /    0% / +50%
SD↓ / +100% / +100%

Je vais donc choisir Ratio=+50% et Décalage=+50%
Donc, cela donne ça:
Code :
Inter / Valeur de l'inter / Valeur calculée
SD↑ / -100% / -100%*50% + 50% =  -1.0*0.5 + 0.5 = -0.5 + 0.5 = 0   =  0%
SD- /    0% /    0%*50% + 50% =     0*0.5 + 0.5 =    0 + 0.5 = 0.5 = +50%
SD↓ / +100% /  100%*50% + 50% =   1.0*0.5 + 0.5 =  0.5 + 0.5 = 1.0 = +100%


Exemple avec Ratio=-50% et Décalage=+50%
Code :
Inter / Valeur de l'inter / Valeur calculée
SD↑ / -100% / -100%*-50% + 50% = -1.0*-0.5 + 0.5 =  0.5 + 0.5 = 1.0 = +100%
SD- /    0% /    0%*-50% + 50% =    0*-0.5 + 0.5 =    0 + 0.5 = 0.5 = +50%
SD↓ / +100% /  100%*-50% + 50% =  1.0*-0.5 + 0.5 = -0.5 + 0.5 = 0   =  0%


Exemple avec Ratio=-50% et Décalage=-50%
Code :
Inter / Valeur de l'inter / Valeur calculée
SD↑ / -100% / -100%*-50% - 50% = -1.0*-0.5 - 0.5 =  0.5 - 0.5 = 0    =  0%
SD- /    0% /    0%*-50% - 50% =    0*-0.5 - 0.5 =    0 - 0.5 = -0.5 = -50%
SD↓ / +100% /  100%*-50% - 50% =  1.0*-0.5 - 0.5 = -0.5 - 0.5 = -1.0 = -100%


Exemple avec Ratio=50% et Décalage=-50%
Code :
Inter / Valeur de l'inter / Valeur calculée
SD↑ / -100% / -100%*50% - 50% = -1.0*0.5 - 0.5 = -0.5 - 0.5 = -1.0 = -100%
SD- /    0% /    0%*50% - 50% =    0*0.5 - 0.5 =    0 - 0.5 = -0.5 = -50%
SD↓ / +100% /  100%*50% - 50% =  1.0*0.5 - 0.5 =  0.5 - 0.5 = 0    =  0%


Dernier exemple:
Je veux une courbe qui va de 0% à 80%. Je peux créer une courbe qui fait le boulot (pas facile à modifier sur le terrain), ou je peux utiliser la même méthode que ci-dessus avec une variable globale.
Par exemple, je vais utiliser une variable VG1. Si vous avez compris les explications ci-dessus, vous comprendrez alors que si je veux 80%, alors VG1 doit valoir 80%/2, soit 40%
Avec VG1=40%, cela donne Ratio=VG1 et Décalage=VG1
Code :
Inter / Valeur de l'inter / Valeur calculée
SD↑ / -100% / -100%*VG1 + VG1 = -1.0*VG1 + VG1 = -VG1 + VG1 = 0     =  0%
SD- /    0% /    0%*VG1 + VG1 =    0*VG1 + VG1 =    0 + VG1 = VG1   = +40%
SD↓ / +100% /  100%*VG1 + VG1 =  1.0*VG1 + VG1 =  VG1 + VG1 = 2*VG1 = +80%


J'espère que ces paramètres forts utiles n'ont plus aucun secret pour vous maintenant !! :)

Vous pouvez également faire la même chose avec des courbes à 2 points, par exemple:

courbe10

Mixages


Pour les mixages le comportement est différent et dépend aussi du choix Ajout, Remplace ou Multiplie.
Par défaut, c'est "Ajout". Donc toutes les lignes de mixages pour une même voie vont s'ajouter les unes aux autres SAUF si elle sont conditionnées par un inter, phase de vol, inter logique, etc.
Dans le cas REMPLACER, s'il y a plusieurs lignes de vraies en même temps, c'est la dernière condition vraie qui gagne.
C'est comme en programmation C
a = 15;
a = 8;
a = 24;
C'est la dernière ligne qui gagne. Donc a prend la valeur 24.

Exemple concret dans le cas ci-dessous, si l'inter SF est en bas (SF↓), alors peut importe la valeur de SC. C'est la condition ledRTH qui est active.
mixage10

Astuce


Pour être sûr que ce sont les bons mixages (ou entrées) qui sont actifs, utilisez cette méthode: ce qui est en GRAS est ce qui est actif

mixage11

Servos/Sorties


Petites précisions sur les fins de course (équivalent ATV Futaba):

servos10

1- subtrim (à utiliser en dernier recours).
2- Équivalent de l'ATV Futaba (par défaut de -100 à +100%). Ce sont les "fin de course". Cela permet de régler le débattement minimum et maximum.
Le - entre les 2 chiffres correspond aux mouvements des manches/inters ( ou - ou ). Pratique ! :)
3- Inversion du sens du servo
4- Réglages à utiliser pour régler le neutre/décalage PPM (il ne faut surtout pas utiliser le subtrim pour le neutre, sinon le servo aura plus de débattement d'un côté que de l'autre). Voir explication ci-dessous pour la différence entre le triangle (par défaut et à privilégier, sauf cas particulier) et le signe égal.

dycala10

Doc à télécharger sur les servos/subtrims: Servos_et_Subtrims.pdf

:lapinfou
Cette page a été vue 24831 fois