”Faire clignoter une DEL”
. Objectif
Comme première activité, nous allons faire clignoter une DEL (rouge, verte, ou bleue), préalablement choisie, connectée sur une des broches 8, 7, ou 2 de l’Arduino Uno.
Cette activité a pour but l’apprentissage de l’utilisation des sorties digitales de l’Arduino qui ne peuvent prendre que 2 valeurs : 0 (niveau bas) ou 1 (niveau haut), soit électriquement : 0 V ou +5 V.
Donc, pour allumer la DEL, la broche de l’Arduino sur laquelle celle-ci est connectée, doit être au niveau haut (+5V) et pour l’éteindre, elle doit être au niveau bas (0 V).
Pour réaliser cette activité, on va demander à l’Arduino d’allumer une des 3 DELs (donc d’appliquer un niveau haut sur la broche de la DEL) pendant ½ seconde, puis de l’éteindre (donc d’appliquer un niveau bas sur la broche de la DEL) pendant une ½ seconde, puis à nouveau de l’allumer pendant ½ seconde et cela indéfiniment. De cette façon, on verra la DEL choisie clignoter.
Le code en Python ou en langage Arduino pourra être modifié pour voir l’influence des variables (durée d’allumage, d’extinction, numéro de la broche de la DEL).
. Le programme
. Programme en Python (”Projet1/Activity1/PY/Activity1.py”)
Déroulement du programme :
– Importation des librairies et définition de fonctions :
. Le module ”ConnectToArduino.py”, contenant les fonctions de connexion à l’Arduino via le protocole ”Firmata standard”,
. Le module ”PyFirmataDef.Py” regroupant toutes les fonctions utiles à l’utilisation de ”PyFirmata” (fonction de déclaration des entrées et sorties, d’itérateur, d’écritures…),
. La bibliothèque ”time” pour la gestion des temps de pause.
– Déclaration des constantes et variables :
. PinLED = 8 (constante correspondant au n° de la broche sur laquelle la DEL rouge est connectée)
. PortComArduino (port COM sur lequel l’Arduino est connecté)
– Connexion à l’Arduino :
. Détection du port COM, tentative d’ouverture du port COM sélectionné et connexion à l’Arduino:
PortComArduino = SelectPortCOM()
board = OpenPortCom(PortComArduino)
– Boucle principale du programme (boucle ”while True”) :
. Niveau haut sur la broche de la DEL pendant ½ seconde :
DigitalWrite(board,PinLED,1)
time.sleep(0.5)
. Niveau bas sur la broche de la DEL pendant ½ seconde :
DigitalWrite(board,PinLED,0)
time.sleep(0.5)
– Fin du programme en appuyant sur Ctrl-C :
–> La DEL est éteinte et le port COM est fermé.
. Programme en langage Arduino (”Projet1/Activity1/INO/Activity1.ino”)
Déroulement du programme :