Traitement d’informations Contrôle TP Rev00 ARDUINO UNO & ZIGBEE Durée : 1h30 – 2h Bilan : Lycée des Métiers Jacques Prévert Combs – la – Ville Section de BAC PRO Systèmes électroniques numériques Electronique Industrielle Embarquée 1 Traitement d’informations Contrôle TP Rev00 ACTIVITÉ I – PRESENTATION L’objectif est de réaliser un sketch Arduino qui permet de commander un éclairage depuis une petite application Python en Zigbee (avec les modules XBee). Le fonctionnement est le suivant : - Une application Python a été créée pour se connecter au port série où est raccordé un module XBee (module Base). Le dossier complet « TPZIGBEEARDUINO » est sur le bureau du PC. - Un module Arduino Uno est équipé d’un shield Xbee et un voyant est connecté sur une des sorties numériques. XBee PC + Application + clé USB XBee - Le sketch Arduino a été commencé mais non terminé. Le voyant s’allumera s’il y a un état haut sur la sortie numérique ; un état bas l’éteindra. const int led = 12; byte requete; void setup() { Serial.begin(9600); // configure la liaison série à 9600 bits/s pinMode(led,OUTPUT); } void loop(){ } void serialEvent(){ requete =Serial.read(); if (requete == 0x41){ // procédure qui s’exécute uniquement lors d’une réception de donnée } else if (requete ==0x45){ } } Lycée des Métiers Jacques Prévert Combs – la – Ville Section de BAC PRO Systèmes électroniques numériques Electronique Industrielle Embarquée 2 Traitement d’informations Contrôle TP Rev00 II – EXERCICE 1 a) Raccordez la led et sa résistance série au bon endroit sur la carte Arduino. b) Ouvrir le skectch Arduino « commandeEclairage » présent sur le bureau du PC. Il s’agit ici d’ajouter les lignes qui permettent d’allumer et d’éteindre la led. On rappelle que l’application envoie la lettre A en hexadécimal (0x41) pour Allumer et envoie la lettre E (0x45) pour Eteindre. c) Une fois terminé, téléverser le sketch dans le module. d) Paramétrage des modules XBEE : avant les tests de fonctionnement de l’ensemble, il faut paramétrer les modules de sorte que : Module BASE Module REMOTE MY = 0 MY = 1 L’utilisation des logiciels XCTU est nécessaire. Tester si la communication est réalisée à la suite de votre paramétrage. Faire vérifier. e) Connecter le module REMOTE sur l’Arduino, et le second module sur le PC à l’aide de la clé USB. Le module REMOTE est alimenté par un adaptateur secteur. Lancer le programme Python « cdeEclairageMain » présent dans le répertoire TPZIGBEEARDUINO. Connecter l’application sur le bon port (module BASE). Tester le fonctionnement de l’ensemble. Faire vérifier. III– EXERCICE 2 On souhaite que la led ne s’allume pas lorsqu’il fait jour. Pour cela, on suppose qu’un capteur numérique fournit une information 0 ou 1 sur une entrée de l’Arduino. S’il fait jour, le capteur délivre un état bas, et un état haut s’il fait nuit. Modifier le programme pour résoudre ce problème. Penser à définir l’entrée utilisée et la configurer. Utiliser une condition if dans la procédure SerialEvent() du style : « je reçois un ordre d’allumer mais si l’état de l’entrée x est à 1, je n’allume pas ». Lycée des Métiers Jacques Prévert Combs – la – Ville Section de BAC PRO Systèmes électroniques numériques Electronique Industrielle Embarquée 3