ROBOTIQUE
1_comment connecter des câbles d’humidité à carte USB
32 :
Composants nécessaires:
_Le capteur DHT11:
Le capteur DHT11 mesure la température et l’humidité.
L’utilisation de ce type de capteur est intéressante pour un
débutant car il permet de mesurer une grandeur physique
accessible à tous.
Le capteur DHT11 a 4 broches, mais il est souvent vendu sur
une carte support qui possède 3 broches. Il communique avec
l’Arduino très simplement au travers d’une de ses entrées
numériques. Les 2 autres broches sont pour son alimentation
5 V et la masse (GND).
Le montage
Le montage est très simple, il suffit de câbler le 5 V de l’Arduino Uno sur la
broche 5 V, la masse de l’Arduino Uno sur la broche GND et la broche
DATA du capteur sur la broche numérique 2 de l’Arduino Uno par exemple.
La librairie “DHT sensor library”
Afin d’ajouter une librairie à l’IDE Arduino, il faut aller dans le
menu “Outils->Gérer les bibliothèques”
Il suffit ensuite de rechercher et d’ajouter la librairie “DHT
sensor library” de Adafruit.
Le croquis
Le croquis (programme) de l’Arduino est très simple grâce à
cette librairie “DHT sensor library”.
// Capteur de temperature et d'humidite DHT11
// https://tutoduino.fr/
// Copyleft 2020
#include "DHT.h"
// Definit la broche de l'Arduino sur laquelle la
// broche DATA du capteur est reliee
#define DHTPIN 2
// Definit le type de capteur utilise
#define DHTTYPE DHT11
// Declare un objet de type DHT
// Il faut passer en parametre du constructeur
// de l'objet la broche et le type de capteur
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
// Initialise la capteur DHT11
dht.begin();
void loop() {
// Recupere la temperature et l'humidite du capteur et l'affiche
// sur le moniteur serie
Serial.println("Temperature = " + String(dht.readTemperature())+" °C");
Serial.println("Humidite = " + String(dht.readHumidity())+" %");
// Attend 10 secondes avant de reboucler
delay(10000);
Le capteur DHT22
Le capteur DHT22 est très similaire au DHT11, mais il
offre une meilleur précision de mesure (± 0,5 °C) et il
peut être alimenté avec une tension de 3.3V ou 5V.
Il faut faire attention car le câblage du module DHT22
est différent du DHT11. Les broches GND et DATA sont
inversées sur ces deux modules.
Sinon la programmation est identique, il suffit de
changer la partie du code :
#define DHTTYPE DHT11
en :
#define DHTTYPE DHT22
Étalonner le capteur de température
J’ai remarqué que l’étalonnage des capteurs était
souvent assez mauvais, il peut-être utile d’utiliser un
thermomètre de référence et d’appliquer une
correction à la mesure retournée par le capteur.
L’utilisation d’une variable dédiée permettra de
modifier facilement cette valeur étalonnage d’un
capteur à l’autre. D’ailleur il ne s’agit pas d’une variable
mais d’un #define car il permet d’économiser de la
mémoire sur l’Arduino par rapport à l’utilisation d’une
variable.
// Capteur de temperature et d'humidite DHT22
// https://tutoduino.fr/
// Copyleft 2020
#include "DHT.h"
// Definit la broche de l'Arduino sur laquelle la
// broche DATA du capteur est reliee
#define DHTPIN 2
// Definit le type de capteur utilise
#define DHTTYPE DHT22
// Constante mesuree avec un thermometre de reference
// qui sert a etalonner le capteur de temperature
#define DELTA_TEMPERATURE 0.7
// Declare un objet de type DHT
// Il faut passer en parametre du constructeur
// de l'objet la broche et le type de capteur
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
// Initialise la capteur DHT11
dht.begin();
void loop() {
// Recupere la temperature et l'humidite du capteur et l'affiche
// sur le moniteur serie
Serial.println("Temperature = " + String(dht.readTemperature() - DELTA_TEMPERATURE)+" °C");
Serial.println("Humidite = " + String(dht.readHumidity())+" %");
// Attend 10 secondes avant de reboucler
delay(1000);
}
2_comment reéalisé des jeu de lumières avec Arduino:
Composants nécessaires:
carte Arduino
capteur de lumière KY-018
résistance de 220Ω
LED rouge
des fils de connexion
Montage
Pour réaliser le montage, on peut connecter
la borne (+) de LED rouge à la borne numérique N°4 de
l’Arduino
la borne (-) de LED rouge à la borne GND de l’Arduino
la broche DO du capteur de lumière à la borne
analogique A0 de l’Arduino
la broche VCC du capteur de lumière à la borne 3.3V de
l’Arduino
la broche GND du capteur de lumière à la borne GND de
l’Arduino
Programme Arduino
Voici le programme du système d’éclairage automatique
:
int digitalPin = 4;
int analogPin = A0; // KY-026 analog interface
int digitalVal; // digital readings
int analogVal; //analog readings
void setup()
pinMode(digitalPin, OUTPUT);
digitalWrite(digitalPin, LOW);
void loop()
// lire la valeur retourné par le capteur de lumière
analogVal = analogRead(analogPin);
if (analogVal>670){ // lorsque la capteur lumière détecte une luminosité très basse
digitalWrite(digitalPin, HIGH); // allumer LED rouge
} else {
digitalWrite(digitalPin, LOW); // éteindre LED rouge
delay(100);