hi2csetup i2cmaster ,%00111100, i2cfast_8, i2cbyte
hi2cout $02,($00) 'mode conversion continu
pause 100
for i=1 to 5
hi2cin $03, (b15,b14,b19,b18,b17,b16)' lecture des valeurs magnet X , Z et Y
next i
ATAN2(X,Y)
A0=Alpha
sertxd ("A0=",#A0,13,10)
Oui : faudrait tester pour être bien sur.Oui je ne fais que des demi tour , car c'est chaud un 360° avec les cables , regulier et pas trop vite . voulez vous que j'essaye ?
Oui mais elle etait vendue en tant que boussole compensée je comprends pas ....Comme écrit dans le programme, la boussole n'est pas compensée...
Le titre est trompeur...Oui mais elle etait vendue en tant que boussole compensée je comprends pas ....
Regardez le lien
Arnaque pour vendre ?
Ok . tant pis pour moiLe titre est trompeur...
Mais l'explication est claire :
Il donne accès à toutes les données nécessaires pour le raccorder à un microcontroleur et calculer la sortie compensée.
En plus, à ce prix là, il n'y a pas de miracle...
scheiß, il y a clairement un quadrant inversé. Mais j'ai enlevé le débug...
#picaxe 20X2
#no_table
symbol I=b1
symbol Xmg=w1 ' b2_b3
symbol Ymg=w2 ' b4_b5
symbol Zmg=w3 ' b6_b7
symbol X=w7 ' b14_b15
symbol Y=w8 ' b16_b17
symbol Z=w9 ' b18_b19
symbol Xm=w10
symbol Ym=w11
symbol A0=w25
symbol Alpha=w26
symbol Q=w27
#MACRO ATAN2(dx,dy) ' r?sultat retourn? dans Alpha
Xm=dx
Ym=dy
gosub ATAN2_Function
#ENDMACRO
' ATTENTION
' Ne pas mettre beaucoup de code dans une macro, (sauf optimisation draconi?ne)
' En effet, ce code est recopi? autant de fois que la macro est appel?e...
' ici, on ne recopie que le GOSUB, pas ATAN2_Function...
#MACRO Quadrant(Base) ' r?sultat retourn? dans Alpha
Q=Base
gosub Q_Function
#ENDMACRO
' HeadTracker v02 2014_02_06 JYB (Non compensé)
'
'************ initialisation *******************
setfreq m8 'fr?quence
hi2csetup i2cmaster ,%00111100, i2cfast_8, i2cbyte
hi2cout $02,($00) 'mode conversion continu
pause 100
for i=1 to 5
hi2cin $03, (b15,b14,b19,b18,b17,b16)' lecture des valeurs magnet X , Z et Y
next i
ATAN2(X,Y)
A0=Alpha
'######################################################################
'|||||||||||||||||||||| Programme principal |||||||||||||||||||||||||||
'======================================================================
do
hi2cin $03, (b15,b14,b19,b18,b17,b16)' lecture des valeurs magnet X , Z et Y
ATAN2(X,Y)
; if Alpha>A0 then
; Alpha=Alpha-A0
; else
; Alpha=Alpha+360-A0
; endif
sertxd (#X," ",#Y," ",#Z," > " ,#Alpha,13,10)
loop
end
ATAN2_Function:
if Ym <32768 then ' Ym > 0
if Xm<32768 then ' Xm > 0
Quadrant(0)
else ' Xm < 0
Xm=-Xm
Quadrant(90)
endif
else ' Ym < 0
Ym=-Ym
if Xm<32768 then ' Xm > 0
Quadrant(270)
else ' Xm < 0
Xm=-Xm
Quadrant(180)
endif
endif
RETURN
Q_Function:
if Xm>Ym then
Alpha=100*Ym/Xm
Alpha=ATAN Alpha
Alpha=Q+Alpha
else ' Xm < Ym
Alpha=100*Xm/Ym
Alpha=ATAN Alpha
Alpha=90+Q-Alpha
endif
return
' HeadTracker v07 2014_02_03 JYB (Non compense)
'
#picaxe 20X2
#no_table
symbol I=b1
symbol Xmg=w1 ' b2_b3
symbol Ymg=w2 ' b4_b5
symbol Zmg=w3 ' b6_b7
symbol X=w7 ' b14_b15
symbol Y=w8 ' b16_b17
symbol Z=w9 ' b18_b19
symbol Xm=w10
symbol Ym=w11
symbol A0=w25
symbol Alpha=w26
symbol Q=w27
#MACRO ATAN2(dx,dy) ' resultat retourne dans Alpha
Xm=dx
Ym=dy
gosub ATAN2_Function
#ENDMACRO
' ATTENTION
' Ne pas mettre beaucoup de code dans une macro, (sauf optimisation draconi?ne)
' En effet, ce code est recopi? autant de fois que la macro est appel?e...
' ici, on ne recopie que le GOSUB, pas ATAN2_Function...
#MACRO Quadrant(B1,B2) ' Result ==> Alpha
if Xm>Ym then
Alpha=100*Ym/Xm
Alpha=ATAN Alpha
Alpha=B1
else ' Xm < Ym
Alpha=100*Xm/Ym
Alpha=ATAN Alpha
Alpha=B2
endif
#ENDMACRO
'************ initialisation *******************
setfreq m8 'frequence
hi2csetup i2cmaster ,%00111100, i2cfast_8, i2cbyte
hi2cout $02,($00) 'mode conversion continu
pause 100
for i=1 to 5
hi2cin $03, (b15,b14,b19,b18,b17,b16)' lecture des valeurs magnet X , Z et Y
next i
ATAN2(X,Y)
A0=Alpha
sertxd ("A0=",#A0,13,10,13,10)
'######################################################################
'|||||||||||||||||||||| Programme principal |||||||||||||||||||||||||||
'======================================================================
do
hi2cin $03, (b15,b14,b19,b18,b17,b16)' lecture des valeurs magnet X , Z et Y
ATAN2(X,Y)
if Alpha>=A0 then
Alpha=Alpha-A0
else
Alpha=Alpha+360-A0
endif
sertxd (#X," ",#Y," ",#Z," > " ,#Alpha,13,10)
loop
end
' Input Xm & Ym are 2 complement encoded
' Xm and YM can be anything from -32767 to + 32767
' So you can use Xm=X1-X2
' even if X2 greater than X1
'
ATAN2_Function:
if Ym <32768 then ' Ym > 0
if Xm<32768 then ' Xm > 0
Quadrant(Alpha,90-Alpha)
else ' Xm < 0
Xm=-Xm
Quadrant(180-Alpha,90+Alpha)
endif
else ' Ym < 0
Ym=-Ym
if Xm<32768 then ' Xm > 0
Quadrant(360-Alpha,270+Alpha)
else ' Xm < 0
Xm=-Xm
Quadrant(180+Alpha,270-Alpha)
endif
endif
RETURN
Pas de soucis vous me dites et je fais .Je me suis imprimé le pdf : je vais maintenant tenter de compenser le "roll" et le "pitch"
Mais pour ça, il va falloir lire les 6 valeurs X,Y,Z et Xm, Ym , Zm
Pour le moment la boussole est sur plaque d'essai , avec son seul 20X2 . on peut augmenter la vitesse sans problème . et ainsi reglé et bien comprendre le fonctionnement, car en l'état je ne pourrais pas présenter encore le head tracker ! . C'est le roll qui pose probléme , il faudrait reussis à le diminuer voir le supprimer , mais une diminution de l'effet serait déjà trés bien .Vu que ça va être assez calculatoire, ce serait bien d'augmenter la vitesse du processeur en changeant aussi les inits et de vérifier qu'il communique toujours sur le bus I2C...
' HeadTracker v08 2014_02_03 JYB (Non compense)
'
' Conventions de nommage suivant AN3192 STMicroelectronic
'
#picaxe 20X2
#no_table
{'Définition des symboles
symbol I=b1
symbol Ax=w1 ' b2_b3 valeurs brutes de l'accéléromètre
symbol Ay=w2 ' b4_b5
symbol Az=w3 ' b6_b7
Symbol Pitch=w4
Symbol Roll=w5
symbol Mx=w7 ' b14_b15 valeurs brutes du magnétomètre
symbol My=w8 ' b16_b17
symbol Mz=w9 ' b18_b19
symbol Xm=w23 ' paramètres de ATAN2
symbol Ym=w24
symbol A0=w25 ' Angle de référence pour le Heading
symbol Alpha=w26 ' retour de ATAN2
symbol Q=w27 ' variable temporaire pour ATAN2 et autres
}
{'Définition des macros
#MACRO ATAN2(dx,dy) ' resultat retourne dans Alpha
Xm=dx
Ym=dy
gosub ATAN2_Function
#ENDMACRO
' ATTENTION
' Ne pas mettre beaucoup de code dans une macro, (sauf optimisation draconi?ne)
' En effet, ce code est recopi? autant de fois que la macro est appel?e...
' ici, on ne recopie que le GOSUB, pas ATAN2_Function...
#MACRO Quadrant(B1,B2) ' Result ==> Alpha
if Xm>Ym then
Alpha=100*Ym/Xm
Alpha=ATAN Alpha
Alpha=B1
else ' Xm < Ym
Alpha=100*Xm/Ym
Alpha=ATAN Alpha
Alpha=B2
endif
#ENDMACRO
}
{' Initialisations
setfreq m8 'frequence
{'************ initialisation accéléromètre *******************
hi2csetup i2cmaster ,%00110000, i2cfast_8, i2cbyte
hi2cout $20,($27) 'activation
hi2cout $23,($00) 'mode 2g
}
{'************ initialisation magnétomètre *******************
hi2csetup i2cmaster ,%00111100, i2cfast_8, i2cbyte
hi2cout $02,($00) 'mode conversion continu
}
pause 100
}
for i=1 to 5
hi2cin $03, (b15,b14,b19,b18,b17,b16)' lecture des valeurs magnet X , Z et Y
next i
ATAN2(Mx,My)
A0=Alpha
sertxd (13,10,"A0=",#A0,13,10)
sertxd ("Ax Ay Az Mx My Mz > Pitch Roll Heading",13,10)
'======================================================================
'|||||||||||||||||||||| Programme principal |||||||||||||||||||||||||||
'======================================================================
do
hi2csetup i2cmaster ,%00110000, i2cfast_8, i2cbyte
hi2cin $A8, (b2,b3,b4,b5,b6,b7) ' lecture Accéléromètre
hi2csetup i2cmaster ,%00111100, i2cfast_8, i2cbyte
hi2cin $03, (b15,b14,b19,b18,b17,b16) ' lecture Magnétomètre
atan2(Ax,Az)
Pitch=Alpha
atan2(Ay,Az)
Roll=Alpha
ATAN2(Mx,My)
if Alpha>=A0 then
Alpha=Alpha-A0
else
Alpha=Alpha+360-A0
endif
sertxd (#Ax," ",#Ay," ",#Az," ",#Mx," ",#My," ",#Mz," > " ,#Pitch," ",#Roll," ",#Alpha,13,10)
loop
end
{'ATAN2
ATAN2_Function:
' Input Xm & Ym are 2 complement encoded
' Xm and YM can be anything from -32767 to + 32767
' So you can use Xm=X1-X2
' even if X2 greater than X1
'
if Ym <32768 then ' Ym > 0
if Xm<32768 then ' Xm > 0
Quadrant(Alpha,90-Alpha)
else ' Xm < 0
Xm=-Xm
Quadrant(180-Alpha,90+Alpha)
endif
else ' Ym < 0
Ym=-Ym
if Xm<32768 then ' Xm > 0
Quadrant(360-Alpha,270+Alpha)
else ' Xm < 0
Xm=-Xm
Quadrant(180+Alpha,270-Alpha)
endif
endif
RETURN
}
Ben ça me parait pas mal, et c'est surtout à vous que ça doit plaire !N'hesitez a me dire si ca ne va pas hein !!!!
Les conditions : 1 tour complet ( 360° ) dans le sens horaire , une pause pour bien le caler , et hop un autre tour complet dans l'autre sens ( anti-horaire).
View attachment 17831
Trop fort , effectivement lors du premier tour complet , j'ai eu du mal a finir en un seul mouvement j'ai donc fais un accoup pour remplacer ma main ! .mais ça semble plausible vu vos conditions d'expérimentation.
Oui pour setfreq m32Voulez vous que je passe en setfreq m32 ?
POur le test de la V8 . si j'ai bien compris; les trois valeurs derrière le signe ">" doivent correspondent respectivement aux pitch roll et heading .
Si c'est bien le cas , seul la valeur du heading est correct . les autres valeurs restent toutes les deux a 269-270 , et quand j'incline vraiment fort par exemple pour le pitch( hochement de tete) la valeur du roll passe a 180 environ . et quand j'incline fort le roll (oreille sur les épaules) c'est la valeur de pitch qui passe a 180° .
Voulez vous que je fasse des tests pour chaque axe ? je les mets a la suite dans .txt avec une séparation ?
' HeadTracker v09 2014_02_03 JYB (Non compense)
'
' Conventions de nommage suivant AN3192 STMicroelectronic
'
#picaxe 20X2
#no_table
{'Definition des symboles
symbol I=b1
symbol Ax=w1 ' b2_b3 valeurs brutes de l'acc?l?rom?tre
symbol Ay=w2 ' b4_b5
symbol Az=w3 ' b6_b7
Symbol Pitch=w4
Symbol Roll=w5
symbol Mx=w7 ' b14_b15 valeurs brutes du magn?tom?tre
symbol My=w8 ' b16_b17
symbol Mz=w9 ' b18_b19
symbol Xm=w23 ' param?tres de ATAN2
symbol Ym=w24
symbol A0=w25 ' Angle de r?f?rence pour le Heading
symbol Alpha=w26 ' retour de ATAN2
symbol Q=w27 ' variable temporaire pour ATAN2 et autres
}
{'Definition des macros
#MACRO ATAN2(dx,dy) ' resultat retourne dans Alpha
Xm=dx
Ym=dy
gosub ATAN2_Function
#ENDMACRO
' ATTENTION
' Ne pas mettre beaucoup de code dans une macro, (sauf optimisation draconi?ne)
' En effet, ce code est recopi? autant de fois que la macro est appel?e...
' ici, on ne recopie que le GOSUB, pas ATAN2_Function...
#MACRO Quadrant(Qxm,Qym) ' Result ==> Alpha
if Xm>Ym then
gosub ATAN_Xm
Alpha=Qxm
else ' Xm < Ym
gosub ATAN_Ym
Alpha=Qym
endif
#ENDMACRO
}
{' Initialisations
setfreq m8 'frequence
{'************ initialisation acc?l?rom?tre *******************
hi2csetup i2cmaster ,%00110000, i2cfast_8, i2cbyte
hi2cout $20,($27) 'activation
hi2cout $23,($00) 'mode 2g
}
{'************ initialisation magn?tom?tre *******************
hi2csetup i2cmaster ,%00111100, i2cfast_8, i2cbyte
hi2cout $02,($00) 'mode conversion continu
}
pause 100
}
for i=1 to 5
hi2cin $03, (b15,b14,b19,b18,b17,b16)' lecture des valeurs magnet X , Z et Y
next i
ATAN2(Mx,My)
A0=Alpha
sertxd (13,10,"A0=",#A0,13,10)
sertxd ("Ax Ay Az Mx My Mz > Pitch Roll Heading",13,10)
'======================================================================
'|||||||||||||||||||||| Programme principal |||||||||||||||||||||||||||
'======================================================================
do
hi2csetup i2cmaster ,%00110000, i2cfast_8, i2cbyte
hi2cin $A8, (b2,b3,b4,b5,b6,b7) ' lecture Acc?l?rom?tre
hi2csetup i2cmaster ,%00111100, i2cfast_8, i2cbyte
hi2cin $03, (b15,b14,b19,b18,b17,b16) ' lecture Magn?tom?tre
atan2(Ax,Az)
Pitch=Alpha
atan2(Ay,Az)
Roll=Alpha
ATAN2(Mx,My)
if Alpha>=A0 then
Alpha=Alpha-A0
else
Alpha=Alpha+360-A0
endif
sertxd (#Ax," ",#Ay," ",#Az," ",#Mx," ",#My," ",#Mz," > " ,#Pitch," ",#Roll," ",#Alpha,13,10)
loop
end
{'ATAN2
ATAN2_Function:
' Input Xm & Ym are 2 complement encoded
' Xm and YM can be anything from -32767 to + 32767
' So you can use Xm=X1-X2
' even if X2 greater than X1
'
if Ym <32768 then ' Ym > 0
if Xm<32768 then ' Xm > 0
Quadrant(Alpha,90-Alpha)
else ' Xm < 0
Xm=-Xm
Quadrant(180-Alpha,90+Alpha)
endif
else ' Ym < 0
Ym=-Ym
if Xm<32768 then ' Xm > 0
Quadrant(360-Alpha,270+Alpha)
else ' Xm < 0
Xm=-Xm
Quadrant(180+Alpha,270-Alpha)
endif
endif
RETURN
}
{ 'Réduction des nombres trop grands et calcul de l'arc Tangente
ATAN_Xm:
select case Ym ' Ym < Xm
case < 655 ' Ym < 655
Alpha=100*Ym/Xm
case < 6553 ' 655 < Ym < 6553 donc Xm > 655
Q=Xm/10
Alpha=10*Ym/Q
else ' 6553 < Ym donc Xm > 6553
Q=Xm/100
Alpha=Ym/Q
end select
Alpha=ATAN Alpha
RETURN
ATAN_Ym:
select case Xm ' Xm < Ym
case < 655 ' Xm < 655
Alpha=100*Xm/Ym
case < 6553 ' 655 < Xm < 6553
Q=Ym/10
Alpha=10*Xm/Q
else ' 6553 < Xm
Q=Ym/100
Alpha=Xm/Q
end select
Alpha=ATAN Alpha
RETURN
}
Ah bon §!!! . pourtant les valeurs sont bizarres non ?Votre test est très bien.
Si ça marche, idem en penchant sur le coté.
Non non . Pour moi l'avant c'est le côté opposé au bord de la table . C'EST à dire le côté de la prise d'alimentation.Bon : déjà je suppose que pour vous l'avant est du coté de la prise de programmation,
c'est à dire en haut du bouquin quand on peut lire le titre. C'est bien ça ?
IdemAllez je file au lit . A demain si vous le voulez bien .
Les calculs ne sont pas bons : c'est pour ça que les graphiques ont une forme bizarre (sauf le heading : là c'est à cause du manque de compensation)A quel test correspondent les 2 graphiques? Car la j'avoue ne pas comprendre? Dans les deux courbes les valeurs dépassent les 360°
Oui effectivement il y une chmilblik quand on penche trop.
Sony mais votre histoire e trouver le zéro j'ai pas compris non plus!
Ah oui ok , je comprends mieux .Le problème du zéro des angles, c'est de savoir s'il est en haut, en bas, en avant ou en arrière... (4 possibilités)
C'est dit sur la notice, mais fo pas se vautrer dans les calculs... Et avec une arithmétique uniquement positive, les risques d'erreur sont nombreux...
' HeadTracker v10 2014_02_04 JYB (Non compense)
'
' Conventions de nommage suivant AN3192 STMicroelectronic
'
#picaxe 20X2
#no_table
{'Definition des symboles
symbol I=b1
symbol Ax=w1 ' b2_b3 valeurs brutes de l'acc?l?rom?tre
symbol Ay=w2 ' b4_b5
symbol Az=w3 ' b6_b7
Symbol Pitch=w4
Symbol Roll=w5
symbol Mx=w7 ' b14_b15 valeurs brutes du magn?tom?tre
symbol My=w8 ' b16_b17
symbol Mz=w9 ' b18_b19
symbol Xm=w23 ' parametres de ATAN2
symbol Ym=w24
symbol A0=w25 ' Angle de reference pour le Heading
symbol Alpha=w26 ' retour de ATAN2 et de ASIN
symbol Q=w27 ' variable temporaire pour ATAN2 et autres
}
{'Definition des macros
#MACRO ATAN2(dx,dy) ' resultat retourne dans Alpha
Xm=dx
Ym=dy
gosub ATAN2_Function
#ENDMACRO
' ATTENTION
' Ne pas mettre beaucoup de code dans une macro, (sauf optimisation draconi?ne)
' En effet, ce code est recopi? autant de fois que la macro est appel?e...
' ici, on ne recopie que le GOSUB, pas ATAN2_Function...
#MACRO Quadrant(Qxm,Qym) ' Result ==> Alpha
if Xm>Ym then
gosub ATAN_Xm
Alpha=Qxm
else ' Xm < Ym
gosub ATAN_Ym
Alpha=Qym
endif
#ENDMACRO
}
{' Initialisations
setfreq m8 'frequence
{'************ initialisation acc?l?rom?tre *******************
hi2csetup i2cmaster ,%00110000, i2cfast_8, i2cbyte
hi2cout $20,($27) 'activation
hi2cout $23,($00) 'mode 2g
}
{'************ initialisation magn?tom?tre *******************
hi2csetup i2cmaster ,%00111100, i2cfast_8, i2cbyte
hi2cout $02,($00) 'mode conversion continu
}
pause 100
}
for i=1 to 5
hi2cin $03, (b15,b14,b19,b18,b17,b16)' lecture des valeurs magnet X , Z et Y
next i
ATAN2(Mx,My)
A0=Alpha
sertxd (13,10,"A0=",#A0,13,10)
sertxd ("Ax Ay Az Mx My Mz > Pitch Roll Heading",13,10)
'======================================================================
'|||||||||||||||||||||| Programme principal |||||||||||||||||||||||||||
'======================================================================
do
hi2csetup i2cmaster ,%00110000, i2cfast_8, i2cbyte
hi2cin $A8, (b2,b3,b4,b5,b6,b7) ' lecture Acc?l?rom?tre
hi2csetup i2cmaster ,%00111100, i2cfast_8, i2cbyte
hi2cin $03, (b15,b14,b19,b18,b17,b16) ' lecture Magn?tom?tre
gosub Pitch_Roll
ATAN2(Mx,My)
if Alpha>=A0 then
Alpha=Alpha-A0
else
Alpha=Alpha+360-A0
endif
sertxd (#Ax," ",#Ay," ",#Az," ",#Mx," ",#My," ",#Mz," > " ,#Pitch," ",#Roll," ",#Alpha,13,10)
loop
end
{'ATAN2
ATAN2_Function:
' Input Xm & Ym are 2 complement encoded
' Xm and YM can be anything from -32767 to + 32767
' So you can use Xm=X1-X2
' even if X2 greater than X1
'
if Ym <32768 then ' Ym > 0
if Xm<32768 then ' Xm > 0
Quadrant(Alpha,90-Alpha)
else ' Xm < 0
Xm=-Xm
Quadrant(180-Alpha,90+Alpha)
endif
else ' Ym < 0
Ym=-Ym
if Xm<32768 then ' Xm > 0
Quadrant(360-Alpha,270+Alpha)
else ' Xm < 0
Xm=-Xm
Quadrant(180+Alpha,270-Alpha)
endif
endif
RETURN
}
{ 'Reduction des nombres trop grands et calcul de l'arc Tangente
ATAN_Xm:
select case Ym ' Ym < Xm
case < 655 ' Ym < 655
Alpha=100*Ym/Xm
case < 6553 ' 655 < Ym < 6553 donc Xm > 655
Q=Xm/10
Alpha=10*Ym/Q
else ' 6553 < Ym donc Xm > 6553
Q=Xm/100
Alpha=Ym/Q
end select
Alpha=ATAN Alpha
RETURN
ATAN_Ym:
select case Xm ' Xm < Ym
case < 655 ' Xm < 655
Alpha=100*Xm/Ym
case < 6553 ' 655 < Xm < 6553
Q=Ym/10
Alpha=10*Xm/Q
else ' 6553 < Xm
Q=Ym/100
Alpha=Xm/Q
end select
Alpha=ATAN Alpha
RETURN
}
{' Calcule Pitch et Roll
Pitch_Roll:
if Ax<32768 then
Alpha=Ax/16
gosub ASIN_P
Pitch=180-Alpha
else
Alpha=-Ax/16
gosub ASIN_P
Pitch=180+Alpha
endif
' Q=cos Alpha ' pas implemente.
if Ay<32768 then
Alpha=Ay/16
gosub ASIN_P
Roll=180+Alpha
else
Alpha=-Ay/16
gosub ASIN_P
Roll=180-Alpha
endif
return
ASIN_P: ' sin(90°)=1050
select case Alpha
case <750:Alpha=Alpha+8/17
case <960:Alpha=Alpha-750/10+45
case <1040:Alpha=Alpha-960/4+66
else:Alpha=90
endselect
return
}
Ben c'est mieux non ?Alors docteur ?
Ben très honnêtement , je ne sais pas trop , cette nuée de chiffre me parle pas vraiment ; vos graphiques me parle déjà plus ! . Sans traitement Excel c'est pas évident . je vois bien le heading , qui me semble parfait ; sauf peut être quand on penche . mais de la a vous dire si c'est mieux , c'est impossible .Ben c'est mieux non ?
Si c'est plus clair pour vous, n'affichez que les 3 dernières valeurs (celles après le signe >)Ben très honnêtement , je ne sais pas trop , cette nuée de chiffre me parle pas vraiment ; vos graphiques me parle déjà plus ! . Sans traitement Excel c'est pas évident . je vois bien le heading , qui me semble parfait ; sauf peut être quand on penche . mais de la a vous dire si c'est mieux , c'est impossible .
Oui le heading : 360° à partir de la position de départ.Ah oui , la c'est beaucoup plus clair.
MAis vous parlez pour le roll et le pitch ? Car le heading lui varie bien sur 360 degré?
Je ne comprends pas et je pense jamais, comment vous allez calculez la compensation. Je pense même pas que ça vaille le coup que vous essayié de m'expliquer lol. C'est juste impressionnant!
Je vous rassure : la démo des formules d'Einstein pour la relativité restreinte, je comprends strictement rien non plus.E Alors une fois arrivé au formule digne d'Einstein, je tout coupé lol .
Ca, pas de soucis- remettre la ligne de debug avec les 6 valeurs
Ca c'est comme d'hab , a plat sur ma table et sur 360°==> un tour complet horizontal
j'ai toujours fais sur 90 ° , il faut que je fasse 360 ° aussi ?==> idem en pitch et en roll
Ca avec les cables ca va pas etre possible , mais le faire tourner a plat sur la table ca reviens au même, non ?idem en tournant sur vous même de 30° en 30° environ,
Au sens litterale la crepe ? c'est dire que je fais un roll et pitch sur 180 ° ? en même temps que je tourne a plat , ou apres avoir tourner a plat ?A chaque fois, vous retournez la crêpe dans les deux sens et en pitch et en roll.
okTout à la suite, sans séparation ni indication des différentes manipulations...