3.1 Débogage des objets connectés
Comme les objets connectés impliquent des composants électroniques, ils peuvent être plus difficiles à déboguer que de simples programmes. L’erreur est-elle dans le code ou dans les connexions?
3.1.1 Avec Arduino
Avec Arduino, une première étape de vérification du code est faite lors de la compilation avant de transférer le programme à notre objet. Ensuite, aucun moyen n’est prévu pour faire du débogage sur l’objet directement, c’est-à-dire que l’IDE n’a pas cette fonction. Cependant, on a accès au moniteur série (dans le menu Outils) qui permet une communication entre l’Arduino et l’ordinateur et peut être utilisé pour déboguer en laissant des traces et en utilisant l’ordinateur pour envoyer des commandes à l’Arduino. De plus, le simulateur contient aussi un débogueur avec les fonctions standards comme les points d’arrêts et l’observation des variables. Pour utiliser le moniteur série, on doit d’abord l’initialiser avec la commande Serial.begin(9600), où 9600 est la vitesse en bauds. Ensuite, on peut utiliser Serial.println(texte) pour afficher une ligne de texte. On peut aussi recevoir des données du moniteur série. Pour cela on utilise les commandes Serial.available() pour savoir si des données ont été envoyées, puis Serial.read() autant de fois que nécessaire pour lire les caractères reçus, un à la fois.
Figure 59 — Utilisation du moniteur série de l’Arduino
Vidéo 30 : Débogage d’objets connectés avec Arduino
Vidéo 31 : Débogage d’objets connectés avec le simulateur d’Arduino
3.1.2 Avec Raspberry Pi
Avec un Raspberry Pi, c’est différent et c’est peut-être plus facile. Comme le Raspberry Pi a un système d’exploitation, on a accès à un environnement de développement plus complet, incluant un débogueur.
Figure 60 — Débogueur du Raspberry Pi
On peut donc obtenir des messages précis lors d’erreurs d’exécution. De plus, comme on peut programmer et contrôler l’exécution de nos programmes directement sur le Raspberry Pi, on peut aussi laisser des traces à la console et offrir certains contrôles à l’utilisateur par des entrées de données à la console. On peut même créer une interface graphique directement sur le Raspberry Pi, si on a installé un système d’exploitation qui le permet, pour contrôler les composants connectés.
Vidéo 32 : Débogage d’objets connectés avec Raspberry Pi