Module : Internet des Objets
Montage 1
Objectif : Actionner un moteur à courant continu avec un bouton poussoir
Composants utilisés :
• Moteur à courant continu
• Bouton poussoir
• Pile de 9V
• Fils électriques
Code :
Aucun code n’est requis
Montage 2
Objectif : Allumer/éteindre une LED avec un intervalle de temps d’une seconde.
Composants utilisés :
• LED rouge
• Résistor de 220ohms
• Fils électriques
Code
int ledPin = 3;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
digitalWrite(ledPin,HIGH);
delay(1000);
digitalWrite(ledPin,LOW);
delay(1000);
}
Montage 3
Objectif : Manipuler l’intensité lumineuse d’une LED à travers PWM
Composants utilisés :
• LED rouge
• Résistor de 220ohms
• Fils électriques
Code
int ledPin = 3;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
for (int valeur = 0; valeur <= 255; valeur++) {
analogWrite(ledPin, valeur);
delay(10);
}
for (int valeur = 255; valeur >= 0; valeur--) {
analogWrite(ledPin, valeur);
delay(10);
}
}
Montage 4
Objectif : Jeu de lumière avec deux LEDs (Allumer /éteindre en alternance les deux LEDs avec
un intervalle de temps d’une seconde)
Composants utilisés :
• LED rouge
• LED bleue
• Deux résistors de 220ohms
• Fils électriques
Code
int ledPinRouge = 13;
int ledPinBleue = 3;
void setup() {
pinMode(ledPinRouge, OUTPUT);
pinMode(ledPinBleue, OUTPUT);
}
void loop() {
digitalWrite(ledPinRouge,HIGH);
digitalWrite(ledPinBleue,LOW);
delay(1000);
digitalWrite(ledPinRouge,LOW);
digitalWrite(ledPinBleue,HIGH);
delay(1000);
Montage 5
Objectif : Allumer une LED 5 pendant secondes si le bouton poussoir est actionné sinon si le
bouton poussoir est relâché la LED passe en mode éteint. Afficher l’état de la LED dans le
moniteur série.
Composants utilisés :
• LED rouge
• Bouton poussoir
• Résistor de 220ohms
• Résistor de 10Kohms
• Fils électriques
Code
int ledPin = 11;
int BtnPin = 5;
void setup() {
pinMode(11, OUTPUT);
pinMode(2,INPUT);
[Link](9600);
void loop() {
int etat=digitalRead(BtnPin);
if(etat==1){
digitalWrite(ledPin,HIGH);
[Link]("Alumée");
delay(5000);
}else{
digitalWrite(ledPin,LOW);
[Link]("Eteinte");
}
}
Montage 6
Objectif : Afficher la température ambiante dans le moniteur série.
Composants utilisés :
• Capteur de température
• Fils électriques
Code
const int analogIn = A0;
int RawValue= 0;
double Voltage = 0;
double tempC = 0;
void setup(){
[Link](9600);
}
void loop(){
RawValue = analogRead(analogIn);
Voltage = (RawValue / 1023.0) * 5000;
tempC = (Voltage-500) * 0.1;
[Link]("\t Temperatura en C = ");
[Link](tempC,1);
delay(1000);
}
Montage 7
Objectif : Mesurer la température ambiante. Une fois la température dépasse le seuil de
38C° le Buzzer (Alarme) se met à biper
Composants utilisés :
• Capteur de température
• Buzzer
• Fils électriques
Code
const int analogIn = A0;
int RawValue= 0;
double Voltage = 0;
double tempC = 0;
int PinBuzzer=9;
void setup(){
[Link](9600);
}
void loop(){
RawValue = analogRead(analogIn);
Voltage = (RawValue / 1023.0) * 5000;
tempC = (Voltage-500) * 0.1;
[Link]("\t Temperatura en C = ");
[Link](tempC,1);
if(tempC>38.0){
digitalWrite(PinBuzzer,HIGH);
}else{
digitalWrite(PinBuzzer,LOW);
}
delay(1000);
Montage 8
Objectif : Ajuster l’intensité lumineuse d’une LED en fonction d’une photorésistance.
Composants utilisés :
• LED rouge
• Photorésistance
• Résistor 220ohms
• Résistor 4.7Kohms
• Fils électriques
Code
int led = 9;
int ldrPin = A5;
void setup() {
pinMode(led, OUTPUT);
}
void loop() {
int valeurLDR = analogRead(ldrPin);
int luminosite = map(valeurLDR, 0, 1023, 255, 0);
analogWrite(led, luminosite);
delay(20);
}
Montage 9
Objectif : Programmer le servo moteur de telle sorte que son bras se met à tourner de 0° à
180° avec un pas de 1°. Une fois à 180°, ledit bras se met à tourner à nouveau dans le sens
inverse c’est-à-dire de 180° à 0° avec le même pas. Configurez l’intervalle de temps à 15ms.
Composants utilisés :
• Servo moteur
• Fils électriques
Code
#include <Servo.h>
int pos = 0;
Servo servo_9;
void setup()
{
servo_9.attach(9);
}
void loop()
{
for (pos = 0; pos <= 180; pos += 1) {
servo_9.write(pos);
delay(15);
}
for (pos = 180; pos >= 0; pos -= 1) {
servo_9.write(pos);
delay(15);
}
}
Montage 10
Objectif : Affichage d’un message personnalisé à travers un écran LCD de taille 16x2 équipé
d’un adaptateur I2C.
Composants utilisés :
• Ecran LCD avec un adaptateur I2C
• Fils électriques
Code
#include <Adafruit_LiquidCrystal.h>
int seconds = 0;
Adafruit_LiquidCrystal lcd_1(0);
void setup()
{
lcd_1.begin(16, 2);
lcd_1.print("hello FSTe");
}
void loop()
{
lcd_1.setCursor(0, 1);
lcd_1.print(seconds);
lcd_1.setBacklight(1);
delay(500);
lcd_1.setBacklight(0);
delay(500);
seconds += 1;
}