Étape 2: Le programme
Après la première illustration, nous avons développé un déroulement du programme pour définir les fonctions du programme à mettre en œuvre. Le programme fournira deux options fonction, TEST et mode RUN, pour l’équipe de sélectionner. En mode TEST, le système va collecter les données de chaque capteur, stocker ces données dans la mémoire et répéter. Ce processus continuera jusqu'à ce qu’elle soit mise hors tension ou en mode RUN. Dans RUN mode le système opère dans une fonction de type de machine d’État. Chaque étape de vol sera représenté comme un État au sein du programme. Au sein de chaque État le système recueillera les données nécessaires, tel que défini par la configuration requise ainsi que les données nécessaires pour déterminer la prochaine étape de vol. Une fois que la prochaine étape de vol est détectée, elle passera à cet État. Ce processus continuera jusqu'à la fin de l’étape finale du vol. Une fois que le véhicule a atterri il terminera c' est dix minutes minuterie, suivie sans fil transmettant des données collectées et d’arrêt du système. Cet organigramme programme représentant c’est illustrée ici aussi.
Je joins le code pour le système final ici ainsi que les bibliothèques utilisées. Nous l’avons fait à l’origine du programme dans le Studio de Atmel Six mais j’ai reproduit il et passé au format de l’Arduino parce que je sais qu'il y a beaucoup de fans d’arduino ici. Si vous utilisez une autre interface de programmation, vous pouvez toujours passer faire fonctionner assez facilement. Le code utilise une poignée de bibliothèques tant que vous pouvez les transférer correctement, il devrait être assez facile à utiliser. Une bibliothèque a été créée pour presque chaque composant donc il maintient le code principal que moins encombré.
Le programme utilise quelques fonctions pour définir des choses vers le haut et initialiser tout. Il a aussi une fonction pour la LED RVB définir des indicateurs. Enfin, il y a une fonction séparée pour le mode RUN. Le système fonctionne dans une machine d’État comme la mode où il utilise des instructions case pour déterminer à quel stade il est et se termine à l’intérieur de fonctions pour chaque État. Les États sont justes entiers qui sont définis dans l’ordre en haut du programme donc les noms peuvent être utilisés au lieu de chiffres.