(Page créée avec « {{Tuto Details |Licences=Attribution (CC-BY) |Description=A noter que le capteur utilisé permet également d'avoir la température. |Area=Astronomy |Difficulty=Technical... ») |
|||
(8 révisions intermédiaires par 3 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
{{Tuto Details | {{Tuto Details | ||
+ | |Main_Picture=Capteur_de_pression_atmosphérique_par_arduino_600px-BMP085.png | ||
|Licences=Attribution (CC-BY) | |Licences=Attribution (CC-BY) | ||
|Description=A noter que le capteur utilisé permet également d'avoir la température. | |Description=A noter que le capteur utilisé permet également d'avoir la température. | ||
− | | | + | |Disciplines scientifiques=Arduino, Computing |
|Difficulty=Technical | |Difficulty=Technical | ||
|Duration=35 | |Duration=35 | ||
Ligne 10 : | Ligne 11 : | ||
{{Materials | {{Materials | ||
|ItemList={{ItemList | |ItemList={{ItemList | ||
− | |||
− | |||
|Item=Ficelle | |Item=Ficelle | ||
}}{{ItemList | }}{{ItemList | ||
Ligne 17 : | Ligne 16 : | ||
}}{{ItemList | }}{{ItemList | ||
|Item=Capteur de pression | |Item=Capteur de pression | ||
+ | }}{{ItemList | ||
+ | |Item=Arduino Uno | ||
}} | }} | ||
}} | }} | ||
− | |||
{{Tuto Step | {{Tuto Step | ||
|Step_Title=Realiser | |Step_Title=Realiser | ||
Ligne 34 : | Ligne 34 : | ||
{{Tuto Step | {{Tuto Step | ||
|Step_Title=Copier | |Step_Title=Copier | ||
− | |Step_Content=Copier-coller ce code dans le programme arduino puis le téléverser dans la carte : #include "Wire.h" | + | |Step_Content=Copier-coller ce code dans le programme arduino puis le téléverser dans la carte :<syntaxhighlight lang="arduino"> |
− | + | #include "Wire.h" | |
− | Adafruit_BMP085 mySensor; | + | |
− | float tempC; | + | #include "Adafruit_BMP085.h" // librairie spéciale pour cette famille de capteurs |
+ | |||
+ | Adafruit_BMP085 mySensor; // on crée un objet du type souhaite | ||
+ | |||
+ | float tempC; // variable qui contiendra la température | ||
+ | |||
float pression; //variable pour la pression | float pression; //variable pour la pression | ||
− | + | ||
+ | //A noter : la pression est renvoyé en Pa (Pascal), | ||
+ | //la météo donne la pression en hectoPascal, | ||
+ | //suffit d'enlever les 2 derniers chiffres tout simplement... | ||
+ | |||
void setup() { | void setup() { | ||
− | + | ||
− | + | Serial.begin(9600); //Pour changer, on lance la transmission PC - arduino | |
− | } | + | mySensor.begin(); //Et la communication capteur-arduino |
+ | |||
+ | } | ||
+ | |||
void loop() { | void loop() { | ||
− | + | ||
− | + | tempC = mySensor.readTemperature(); //On lit la temperature | |
− | Serial.print("Temperature : "); | + | pression=mySensor.readPressure(); //et on lit la pression |
− | Serial.print(tempC); | + | |
− | Serial.println(" | + | Serial.print("Temperature : "); Serial.print(tempC); Serial.println(" °C"); |
− | Serial.print("Pression: "); | + | |
− | Serial.print(pression); | + | Serial.print("Pression: "); Serial.print(pression); Serial.println(" Pa"); |
− | Serial.println(" Pa"); | + | |
− | Serial.println(""); | + | Serial.println(""); delay(1000); |
− | delay(1000); | ||
} | } | ||
+ | </syntaxhighlight><br /> | ||
}} | }} | ||
{{Tuto Step | {{Tuto Step | ||
Ligne 70 : | Ligne 82 : | ||
}} | }} | ||
{{Tuto Status | {{Tuto Status | ||
− | |Complete= | + | |Complete=Published |
}} | }} | ||
+ | {{Separator}} |
Auteur Tess | Dernière modification 21/09/2024 par Antonydbzh
Capteur_de_pression_atmosphérique_par_arduino_600px-BMP085.png
Réaliser le montage suivant :
C'est à dire : SDA a A4, SCL a A5, GND a GND et VIN a 5V
Lien pour le téléchargement : https://github.com/adafruit/Adafruit-BMP085-Library/archive/master.zip
#include "Wire.h"
#include "Adafruit_BMP085.h" // librairie spéciale pour cette famille de capteurs
Adafruit_BMP085 mySensor; // on crée un objet du type souhaite
float tempC; // variable qui contiendra la température
float pression; //variable pour la pression
//A noter : la pression est renvoyé en Pa (Pascal),
//la météo donne la pression en hectoPascal,
//suffit d'enlever les 2 derniers chiffres tout simplement...
void setup() {
Serial.begin(9600); //Pour changer, on lance la transmission PC - arduino
mySensor.begin(); //Et la communication capteur-arduino
}
void loop() {
tempC = mySensor.readTemperature(); //On lit la temperature
pression=mySensor.readPressure(); //et on lit la pression
Serial.print("Temperature : "); Serial.print(tempC); Serial.println(" °C");
Serial.print("Pression: "); Serial.print(pression); Serial.println(" Pa");
Serial.println(""); delay(1000);
}
On ouvre ensuite la fenêtre du terminal (bouton en haut a droite du menu du programme arduino)
Le capteur renvoie la pression et la température. On peut faire varier cette température en posant son doigt dessus afin de la voir augmenter.
Il s'agit d'un capteur numérique : le capteur est en fait uniquement la partie du milieu qui est sensible a la pression et la température. Les valeurs sont ensuite renvoyées à l'arduino par les broches A4 et A5. Les fonctions de la librairie permettent ensuite de récupérer des valeurs concrètes sans avoir besoin de faire des calcules.
Le transport des informations se fait par le biais du bus I2C, bus très utilisé dans les capteurs arduino. Contrairement au bus OneWire, celui-ci a besoin de 2 fils (A4 et A5) afin d'envoyer les data (SDA) et l'horloge (SCL). Afin d'avoir plus de détails sur le calcul des valeurs, un coup d'oeil directement dans la librairie est nécéssaire : tout y est. https://github.com/adafruit/Adafruit-BMP085-Library
Le capteur peut servir de thermomètre ainsi que de baromètre. Il manquerait simplement un écran lcd afin de ne pas avoir besoin de l'ordinateur pour lire les valeurs. La pression peut ainsi permettre de connaitre le temps qu'il va faire (les cartes des hautes et des basses pressions sont utilisées par les météorologues) ainsi que l'altitude qui fait varier la pression.
Dernière modification 21/09/2024 par user:Antonydbzh.
Published
Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #