Code minimal des capteurs pour Arduino

Auteur avatarAntony Le Goïc-Auffret | Dernière modification 17/10/2024 par Antonydbzh

Group-Initiation à Arduino arduino.jpg
Ici nous faisons la liste de tous les capteurs pour Arduino décrit dans wikidebrouillard
Licence : Attribution (CC-BY)

Introduction

Utiliser un capteur c'est parfois un peu technique, alors on a créé "Le code minimal".

C'est le code minimal pour utiliser un capteur avec le logiciel Arduino et une carte compatible (Arduino UNO, Wemos D1 mini, etc.).

Étape 1 - Mais au fait, c'est quoi un capteur ?

Il existe deux catégories de capteurs :

  • Les capteurs Analogiques
  • Les capteurs Numériques

Les capteurs Analogiques :

Ils renvoient du courant à l'Arduino.

Ils sont reliés aux broches Analogiques de la carte qui sont capables de transformer le courant en information (un signal numérique).


Les capteurs Numériques :

Il renvoient un 1 ou un 0 à l'Arduino


Étape 2 - Comment utiliser un bouton poussoir ?

Un bouton poussoir est un composant qui ouvre (le courant ne passe plus) ou ferme (le courant passe) un circuit électrique.


Bouton poussoir
Avant le Setup Importation de la bibliothèque
Création de l’objet
Dans le Setup Démarrage de l’objet pinMode(num_broche,INPUT_PULLUP) ;
Dans le Loop Utilisation int val_bouton = digitalRead(num_broche);

 1 ////////////////////////
 2 //   *Code Minimal*   //
 3 //     -Le Bouton-    //
 4 ////////////////////////
 5 /*Les programmes "Code Minimal" des petits débrouillards sont conçu pour 
 6 permettre la prise en main rapide d'un composant électronique.
 7 A retrouver sur https://www.wikidebrouillard.org
 8 
 9 -Le Bouton-
10 
11 Matériel :
12 - un D1 mini
13 - un bouton
14 
15 le bouton branché à la broche D3 du D1 mini 
16 car la broche D3 possède une résistance de pullup interne
17 Une résistance de pullup c'est lorsque la broche est branchée a une résistance reliée au niveau haut de la carte(HIGH)
18 dans le D1 mini il y a donc une résistance de 10Kohm qui relie la broche D3 au +3,3V
19  D3---^/\/v---+3V3
20  
21    ___
22  / ___ \
23 |_|   | |
24      /_/ 
25      _   ___   _ 
26     |_| |___|_| |_
27          ___|_   _|
28         |___| |_|
29 Les petits Débrouillards - décembre 2020 - CC-By-Sa http://creativecommons.org/licenses/by-nc-sa/3.0/
30 */
31 
32 // Déclaration des variables constantes
33 const int brocheBouton = D3; // Broche où est connectée le bouton 
34 const int brocheLed =  D4;   // Broche D4, où la led interne au wemos est connectée
35 
36 // Boucle d'initialisation
37 void setup() {
38   pinMode(brocheLed, OUTPUT);  // Initialisation de la broche de la led en sortie
39 
40   pinMode(brocheBouton, INPUT_PULLUP); // Initialisation de la broche du bouton en entrée et activation du pull-up interne
41 }
42 
43 //Boucle principale
44 void loop() {
45 // Lecture de l'état du bouton et stockage dans la variable etatBouton
46 // Déclaration de variable d'état locale (dite locale car déclarée dans la boucle "loop").
47    bool etatBouton = digitalRead(brocheBouton); //// Variable permettant de récupérer l'état du bouton
48 
49   // Si le bouton est appuyé, on éteins la led
50   if (etatBouton == HIGH) {
51     // extinction de la led
52     digitalWrite(brocheLed, HIGH);
53   } else {
54     // sinon allumage de la led
55     digitalWrite(brocheLed, LOW);
56   }
57 }



Étape 3 - Utiliser le capteur BME 280 (pression, humidité et température)

Bibliothèque :

Pour utiliser facilement ce capteur, nous vous conseillons d'utiliser la bibliothèque Grove BME280 (présente dans le gestionnaire de bibliothèques arduino)

plus d'infos pour Importer des bibliothèques dans l'interface Arduino
Item-BME280 Capture decran du 2020-12-11 14-37-37.png
La bibliothèque est disponible ici : https://github.com/Seeed-Studio/Grove_BME280

Câblage :

Item-BME280 Capture decran du 2020-12-11 14-42-46.png


Le code minimal :

BME280
Avant le Setup Importation de la bibliothèque #include "Seeed_BME280.h"

#include <Wire.h>

Création de l’objet BME280 bme280; // je crée l'objet "bme280" (qui est un BME280)
Dans le Setup Démarrage de l’objet bme280.init(); // ou bme280.init(0x76); ou bme280.init(0x77);
Dans le Loop Utilisation bme280.getTemperature()

Autres fonctionnalités

Fonction
bme280.getPressure() Récupère la pression en pascal
bme280.getHumidity() Récupère l'humidité en %

Exemple :

 1 #include "Seeed_BMP280.h" // import de la bibliothèque BMP280
 2 #include <Wire.h> // Import de la bibliothèque I2C 
 3 BMP280 bmp280; // création de l'objet
 4 void setup()
 5 {
 6  Serial.begin(9600); //initialisation de la liaison série
 7  bmp280.init(); //initialisation du capteur
 8 }
 9 void loop()
10 {  
11  float temp = bmp280.getTemperature(); //récupération de la température
12  Serial.print("Température : "); // affichage de la température dans le terminal série
13  Serial.println(temp);
14 }




Dernière modification 17/10/2024 par user:Antonydbzh.

Commentaires

Published