Étape 6: Calculer l’inclinaison et affichage
Angle d’inclinaison est calculé selon les mesures d’accélération le long de X et Z haches.
La figure ci-dessus, nous pouvons voir cet angle est calculé comme tan-inverse de (-Ax/Az).
Il existe une fonction en python appelée atan2 qui prend deux arguments et donne l’angle entre - pi et radians pi basés sur le signe et le ratio des arguments. Voici un extrait de code montrant l’application de calcul d’angle.
Notez que le signe pour Ax et Az est inversé de celle utilisée dans le
Figure. C’est voulu. Elle est nécessaire parce que lorsque l’accéléromètre est monté à bord d’Edison comme décrit précédemment, la façade de l’Office de l’accéléromètre qui a la puce adxl335, est dirigée vers le bas tandis que dans la figure, j’ai fait les calculs en supposant qu’il doit faire face vers le haut. Je ne savais pas cela jusqu'à ce que j’avais réuni tout et le tester ensuite. Je m’excuse si cela crée une certaine confusion à la suite de mon contrôle.
Affichage
Pour l’affichage en direct de l’angle d’inclinaison, nous allons utiliser le module de PyQtGraph. Voici un aperçu de haut niveau du fonctionne de la partie de l’écran :
1)-zone de traçage, haches etc. sont initialisés
2) une fonction appelée update() est appelée de manière récursive chaque 50 milli-secondes qui commence un socket client, obtient les données provenant du serveur, le traite pour calculer l’angle, affiche sur le graphe et ferme le socket. Cela se produit périodiquement chaque 50ms à l’aide d’une minuterie (appelée QTimer).
Pour plus de détails concernant le logiciel, veuillez vous référer à l’application intégrale des programmes client et serveur, que j’ai téléchargé à l’étape suivante.