Étape 4: Code
Le code n’est pas totalement expliqué, seulement les parties les plus importantes. Pourtant, vous pouvez télécharger le code et je pense que qui est assez bien compris. Si vous avez des questions n’hésitent pas à demander.
Le code se compose de 3 fichiers, l’un principal avec le code principal, capteurs d’initialisation, debug, boucle principale, etc.. Un autre fichier pour contrôler l’accéléromètre et gyroscope et un troisième pour les capteurs de température et baromètre. Tout d’abord, nous définissons les constantes et les variables qui utilisera le programme. Pour Plotly, nous définissons trois variables :
#define num_traces 4
Est le nombre de variables de données que nous voulons visualiser, dans notre cas 4.
char * streaming_tokens [num_traces] = {"your_plotly_stream_token", « another_plotly_stream_token »,...} ;
Ici, nous spécifions les clés de nos jetons de flux, chacun d’eux pour chaque variable de données.
graphique plotly = plotly ("your_plotly_username", "your_plotly_api_key", streaming_tokens, « your_plotly_filename », num_traces) ;
Enfin un type de données afin de permettre l’arduino communiquer avec notre service de Plotly, il faut indiquer le nom de notre compte Plotly la clé API et le nom du fichier qui stockera les données.
Le code principal initialise les capteurs et configure le bouclier Ethernet pour établir le contact avec le service web Plotly.
Dans la boucle, nous exécutons la fonction toutes les 100 millisecondes. Cela signifie que notre fréquence d’échantillonnage est de 10 Hz (on peut utiliser d’autres fréquences comme 100 ou 1000 Hz). Cette fonction prend les valeurs du capteur, les traiter (filtre de Kalman, filtre complémentaire,...) et enfin envoie les données au service de Plotly.
J’ai fait deux programmes, un pour utiliser les données de l’accéléromètre et gyroscope, envoyant quatre angles à Plotly, et une seconde qui mesurent la température et la pression et envoie ces valeurs plus la valeur d’altitude calculée précédemment à Plotly.