Vous êtes sur la page 1sur 18

UNIVERSITE DE GAFSA

FACULTE DES SCIENCES DE GAFSA

Compte rendu

TP INFORMATIQUE : Arduino

Elaboré par :
Radhwen DALY HAMDOUNI
Encadré par :
Sami HIDOURI

Classe : 1er année mastère mécatronique Groupe 3

Année universitaire 2020 – 2021

1
Sommaire
But ……………………………………………………………………………………………………………………………………………………………………………..3

I. C’est quoi l’arduino : ........................................................................................................................................... 3


A. Description de la carte Arduino Uno ................................................................................................................ 3
B. Principe de fonctionnement ............................................................................................................................ 6
C. Structure d'un programme, langages utilisés ................................................................................................... 6
II. SOUS LE SIMILATEUR TINKERCARD : .................................................................................................................. 10
1. Le circuit d’une Led clignotant :................................................................................................................. 10
2. Le circuit de 4 Led clignotant :.................................................................................................................... 11
3. Détecteur de gaz :...................................................................................................................................... 12
4. Eclairage avec photorésistance : ................................................................................................................ 14
5. Détecteur de Gaz avec afficheur Lcd : ........................................................................................................ 17

2
BUT :
Dans ce travail pratique, nous maîtriserons le simulateur tinkercad et ferons la programmation et la création
des schémas des circuits.

Le simulateur Arduino est disponible à cette adresse: https://www.tinkercad.com.

Il permet la réalisation des chémas d'implantation des composants sur les platines d'expérimentation, tout
comme Fritzing ,mais aussi la réalisation des chémas et de circuits électroniques.

I. C’est quoi l’arduino :

Arduino est la marque d'une plateforme de prototypage open source qui permet aux utilisateurs de créer des
objets électroniques interactifs à partir de cartes électroniques matériellement libres sur lesquelles se trouve
un microcontrôleur (d'architecture Atmel AVR commence l'Atmega328p, et d'architecture ARM
commence le Cortex-M3 pour l'Arduino Due).

Les schémas de ces cartes électroniques sont publiés en licence libre. Cependant, certaines composantes,
comme le microcontrôleur par exemple, ne sont pas sous licence libre.

Le microcontrôleur peut être programmé pour analyser et produire des signaux électriques, de manière à
effectuer des tâches très diverses comme la domotique (le contrôle des appareils domestiques éclairage,
chauffage…), le pilotage d'un robot, de l'informatique embarquée, etc.

A. Description de la carte Arduino Uno

Il existe de nombreux modèles de cartes Arduino, la plus populaire étant probablement la Uno.

L’image ci-dessous vous donne un aperçu de l'organisation de la carte (dimensions : 65 x 52 mm) dans sa
version Uno.

3
Elle emploi un microcontrôleur ATMEGA328P alimenté en 5V.

Il y a 14 entrées/sorties numériques dont 6 sont utilisables en PWM (Pulse Width Modulation ou MLI pour
modulateur de largeur d’impulsion).

Il y a 6 entrées analogiques. Le microcontrôleur possède un CAN avec 10 bits de résolution.

Sur la carte, il y a un circuit qui permet de gérer facilement l’USB qui peut alimenter la carte.

C'est une carte électronique open source, constituée essentiellement de :

 un microcontrôleur fabriqué par Atmel,


 un port USB,
 des connecteurs d'entrés/sortie (plus ou moins nombreux selon les modèles).

L'open hardware, par analogie à l'open software, permet de partager les plans pour pouvoir répliquer,
améliorer, comprendre un dispositif matériel.

4
Arduino, c'est aussi un IDE (disons plutôt un éditeur de code) qui permet d'envoyer les programmes sur la
carte à travers un port USB.

Aussi on peut alimenter une arduino sans usb avec un Connecteur de Pile 9V

Type de fiche: 2.1x5.5mm prise male DC vers 9V, Matériel (externe):plastique, Couleur: Noir, Rouge,
Longueur de câble:12cm.

5
Aussi on peut alimenter une arduino sans usb avec un Bloc alimentation 12V
Cette alimentation vous permet d'alimenter n'importe quel projet nécessitant 12V sous 1A maximum.

B. Principe de fonctionnement

Le principe, rapidement évoqué dans la toute première phrase, est d'utiliser les pins (i.e. les connecteurs
numérotés que l'on peut voir sur la photo) pour lire ou écrire des informations.

Les informations sont de très bas niveau, vu que c'est un signal soit de 5 V, soit de 0 V.

Un bit, quoi. Tout juste de quoi faire clignoter un LED (spoiler : c'est ce que nous allons faire tout de suite).

Nous verrons plus tard que des protocoles de communication sont à notre disposition pour ne pas se taper
l'écriture des bits un par un sur un pin.

Mais vous l'aurez compris, globalement, on va être dans de la programmation de bas niveau.

C. Structure d'un programme, langages utilisés

nous allons écrire notre premier programme !

Le but ?

Faire clignoter une LED sur la carte. Ben oui, il faut commencer petit pour bien saisir la structure d'un
programme dans cet environnement.

Le programme principal consiste en deux fonctions (ce sera toujours le cas), dont voici les signatures ultra
simples :

 void setup()
 void loop()

6
o setup() est appelée une seule fois, au moment de la mise sous tension de la carte.
o loop() est appelée, comme son nom l'indique, en boucle.

 Elle est lancée après setup(), et tourne à fond à l'infini (tant que la carte est alimentée en tout cas).

Le langage de programmation utilisé est au choix le C, mais pour sa relative simplicité par rapport au C pur.

Donc pour reprendre sur notre programme de base, on a quelque chose comme ça :

void main(){
setup();

while(true)
loop();
}

En pratique, nous n'implémenterons que les deux fonctions setup() et loop().

Le main() est généré par le compilateur.

Allez, assez discuté, passons à notre programme, le grand classique B link:

int led = 13;

void setup() {
pinMode(led, OUTPUT); // Définit la pin 13 comme pin de sortie
}

// the loop routine runs over and over again forever:


void loop() {
digitalWrite(led, HIGH); // Allume la LED
delay(1000); // Attend une seconde
digitalWrite(led, LOW); // Eteint la LED
delay(1000); // Attend une seconde
}

Dans ce programme, on fait usage de 3 fonctions de la librairie standard :

 pinMode(pinNumber, mode) : définit le mode de fonctionnement d'une pin. À la louche, soit INPUT, soit
OUTPUT ;
 digitalWrite(pinNumber, value) : si la pin est définie en OUTPUT, cette instruction permet d'écrire 1 ou 0.
Si on mesure avec un voltmètre la tension entre la pin et la masse, on aura +5 V ou 0 V. HIGH et
LOW sont des constantes prédéfinies, mais 1 ou 0 fonctionneraient aussi ;
 delay(ms) : cette instruction bloque l'exécution du programme (de tout le programme) pendant une
durée donnée en millisecondes.

La pin 13 est très pratique, car elle est reliée à une LED intégrée à la carte.

Du coup, dès qu'on active ou désactive la 13, une petite LED orange s'allume ou s'éteint.

Dans la partie précédente on a déjà vu c’est quoi l’arduino, leur language de programmation, comment
créer un simple programme.

Dans la partie suivante on va faire la simulation de plusieurs programmes sous le software Tinkercard.

7
Le matériel de ce travail :

- Circuit arduino uno.

Arduino UNO est la meilleure carte à utiliser avec l'électronique et les codecs.

S'il s'agit de votre première expérience avec la plate-forme, UNO est le tableau le plus puissant avec
lequel vous pouvez commencer à travailler.

UNO est la carte la plus utilisée et la plus documentée pour toute la famille Arduino.

- Led.

La LED est un composant opto-électronique. Cela veut simplement dire qu’il s’agit d’un composant
électronique capable d’émettre de la lumière lorsqu’il est parcouru par un courant électrique. Une
diode électroluminescente ne laisse passer le courant électrique que dans un seul sens – de l’anode
vers la cathode (le sens passant, comme une diode classique, l’inverse étant le sens bloquant) de plus
elle produit un rayonnement monochromatique ou polychromatique incohérent à partir de la
conversion d’énergie électrique lorsqu’un courant la traverse.

8
- Buzzer.

Le buzzer est un composant constitué essentiellement d'une lamelle réagissant à l'effet


piézoélectrique. La piézoélectricité est la propriété que possèdent certains minéraux de se déformer
lorsqu'ils sont soumis à un champ électrique. Ce phénomène est réversible ; si nous déformons ce
minéral, il produit de l'énergie électrique.

Dans l'univers Arduino, le buzzer est principalement utilisé pour émettre un son.

- Capteur de Gaz.

Le MQ-2 est un capteur qui permet de détecteur du gaz ou de fumée à des concentrations de 300
ppm à 10000 ppm. Après calibration, le MQ-2 peut détecter différents gaz comme le GPL (LPG), l’i-
butane, le propane, le méthane, l’alcool, l’hydrogène ainsi que les fumées. Il est conçu pour un usage
intérieur à température ambiante.

- Capteur de luminosité.

9
Un capteur de luminosité (ou photorésistance) est un composant électronique, dont la résistivité varie
suivant le niveau de luminosité.

 Nous utilisons le Lux comme unité de mesure du flux lumineux.


Plus l’éclairement sera intense, plus la tension au borne de la photorésistance sera grande.

II. SOUS LE SIMILATEUR TINKERCARD :

1. Le circuit d’une Led clignotant :

Programme :

10
2. Le circuit de 4 Led clignotant :

Les quatre LED sont allumés et s'atteints successivement chacun avant l'autre puis faire la répétition de cycle.

Programme :

11
3. Détecteur de gaz :

1er cas : le capteur ne détecte pas la fumée.

2éme cas : le capteur détecte la fumée.

12
Programme :

13
4. Eclairage avec photorésistance :

1er cas : le capteur détecté la lumière, Led ne s’allume pas.

2éme cas : le capteur ne pas détecté la lumière, Led allume.

14
Programme :

// Initialisation des constantes :

const int analogInPin = A0; // Numéro de la broche à laquelle est connecté le photorésistance

const int analogOutPin = 8; // Numéro de la broche à laquelle est connectée le buzzer piezo-electrique

int sensorValue = 0; // Valeur lue sur le photorésistance

int outputValue = 0; // Valeur envoyée au buzzer

void setup() {

// Initialise la communication avec l'ordinateur,

// pour afficher les valeurs sensorValue et outputValue

// sur l'écran de l'ordinateur.

Serial.begin(9600);

// Indique que la broche analogOutPin est une sortie :

pinMode(analogOutPin, OUTPUT);

// Indique que la broche analogInPin est une entrée :

pinMode(analogInPin, INPUT);

void loop() {

// La commande suivante lit la valeur "analogique" du photorésistance

// (une valeur entière comprise entre 0 et 1023)

// et stocke le résultat dans sensorValue :

sensorValue = analogRead(analogInPin);

// La valeur lue (comprise entre 0 et 1023)

// doit être interprétée et traduite en fréquence

// (comprise entre 50 Hz à 30 000 Hz).

// La commande suivante change sensorValue vers

// un intervalle de 50 Hz à 30 000 Hz

// et stocke le résultat dans outputValue :

outputValue = map(sensorValue, 0, 1023, 0, 255);

15
outputValue = (outputValue - 255)*-1;

// La commande suivante envoie de cette nouvelle

// valeur sur le buzzer

analogWrite(analogOutPin, outputValue);

// Les commandes suivantes affichent les valeurs dans

// le "serial monitor" de l'ordinateur

Serial.print("sensor = " );

Serial.print(sensorValue);

Serial.print("\t output = ");

Serial.println(outputValue);

16
5. Détecteur de Gaz avec afficheur Lcd :

1er cas : S'il n’y a pas de gaz, le programme affiché SAFE dans l’écran de Lcd avec l’allumage de La
LED vert.

2éme cas : S'il y a de gaz, le programme affiché ALERT dans l’écran de Lcd et le buzzer sonne avec
l’allumage de La LED rouge.

17
Programme :

18

Vous aimerez peut-être aussi