Cette page fournit une simple interface de navigation pour trouver des entités décrites par une propriété et une valeur nommée. D’autres interfaces de recherche disponibles comprennent la page recherche de propriété, et le constructeur de requêtes ask.
| Généralités | Alimentation | 3 à 5 Vcc |
| Interface | I2C et SPI sur connecteur au pas de 2,54 mm | |
| Dimensions | 30 x 14 x 10 mm | |
| Poids | 10 g | |
| Température | Plage de mesure | - 40 à 85 °C |
| Humidité | Plage de mesure | 0 à 100 % RH |
| Précision relative | ± 3 % RH | |
| Temps de réponse | 8 sec | |
| Pression atmosphérique | Plage de mesure | 300 à 1100 hPa |
| Précision absolue | ± 1 hPa | |
| Qualité de l'air (IAQ) | Plage de mesure | 0 à 500 (valeur de résistance) |
| Temps de réponse | 1 sec |
| Capteur BME 680 | ||
|---|---|---|
| Avant le setup | Importation des bibliothèques | #include "bsec.h" |
| Création de l’objet | Bsec ''objet;'' | |
| Dans le setup | Démarrage de l’objet | Wire.begin(); ''objet''.begin(BME680_I2C_ADDR_SECONDARY, Wire); //Configuration du capteur bsec_virtual_sensor_t sensorList[4] = { BSEC_OUTPUT_RAW_PRESSURE, BSEC_OUTPUT_IAQ, BSEC_OUTPUT_SENSOR_HEAT_COMPENSATED_TEMPERATURE, BSEC_OUTPUT_SENSOR_HEAT_COMPENSATED_HUMIDITY, }; ''objet''.updateSubscription(sensorList, 4, BSEC_SAMPLE_RATE_LP); |
| Dans le loop | Utilisation | if(''objet''.run()){ // Dès que la mesure est effectuée, on affiche les valeurs ''objet''.temperature; ''objet''.humidity; ''objet''.pressure; ''objet''.iaq; //indice de qualité de l'ai 0 -500 ''objet''.accuracy; // fiabilité des mesures (0 -> calibration 3-> mesures fiables) } |
#include "bsec.h" // ajout de la bibliothèque Bsec de Bosh
Bsec iaqSensor; // creation de l'objet Iaq
void setup(void)
{
Serial.begin(115200); // Initialisation de la connexion série
Wire.begin(); // Démarrage de la connexion I2C avec le capteur
iaqSensor.begin(BME680_I2C_ADDR_SECONDARY, Wire); // démarrage du capteur
bsec_virtual_sensor_t sensorList[4] = { // Configuration du capteur
BSEC_OUTPUT_RAW_PRESSURE,
BSEC_OUTPUT_IAQ,
BSEC_OUTPUT_SENSOR_HEAT_COMPENSATED_TEMPERATURE,
BSEC_OUTPUT_SENSOR_HEAT_COMPENSATED_HUMIDITY,
};
iaqSensor.updateSubscription(sensorList, 4, BSEC_SAMPLE_RATE_LP); // configuration du capteur
}
void loop(void)
{
if (iaqSensor.run()) { // Dès que l'on reçoit des mesures
Serial.print("temperature : ");
Serial.println(iaqSensor.temperature); // Affichage de la température
Serial.print("humidite : ");
Serial.println(iaqSensor.humidity); // Affichage de l'humidité
Serial.print("pression : ");
Serial.println(iaqSensor.pressure); // Affichage de la pression en Pascal
Serial.print("IAQ : ");
Serial.println(iaqSensor.iaq); // Indice de la qualité de l'air
Serial.print("iAQ accuracy : ");
Serial.println(iaqSensor.iaqAccuracy); // Indice de calibration (attendre qu'il passe à 3 pour exploiter les mesures environ 2h)
}
}/*
* Code repris de http://wiki.t-o-f.info/Arduino/%c3%89liminationDuRebondissement
*/
int BUTTON_PIN = 0; //GPIO 0 correspond à la broche D3
int previousButtonState;
int count =0;
unsigned long debounceTimeStamp;
void setup() {
Serial.begin(57600);
pinMode( BUTTON_PIN , INPUT_PULLUP );
previousButtonState = digitalRead( BUTTON_PIN );
}
void loop() {
if ( millis() - debounceTimeStamp >= 5 ) {
int currentButtonState = digitalRead( BUTTON_PIN );
if ( currentButtonState != previousButtonState ) {
debounceTimeStamp = millis();
if ( currentButtonState == LOW ) {
count = count + 1;
Serial.println(count);
}
}
previousButtonState = currentButtonState;
}
}| Composant | Rôle | Détails |
|---|---|---|
| '''ESP32 (6)''' | Microcontrôleur principal | Gère moteur + LEDs + API en wifi |
| ⚙️ '''Moteur pas à pas / Servo SG90 (4)''' | Action mécanique du socle | 3 positions (basse, moyenne, haute) |
| 💡 '''Bandeau LED NeoPixel (3)''' | Lumière d’ambiance | 12 LEDs RGB |
| 📜 Papier rugueux et épais (1) | décorer et refléter la lumière | environ 60cmx15cm selon la taille du POGL |
| Papier réfléchissant perforer(2) | laisse passer plus ou moins la lumière | 15cm de diamètre, trou aléatoire 1cm de diamètre |
Adafruit_NeoPixel.h → gestion des LEDs avec fil piloteServo.h ou Stepper.h → contrôle du moteur (selon le modèle choisi)main.ino
├── [CONFIG] constantes moteur + LEDs
├── [DOMAIN] types (enum Densite, Color, TramPoint)
├── [DATA] scénario de simulation tram
├── [STATE] variables d'état (couleurs, index, timer)
├── [API HW] moteurs/LEDs (tournerMoteur, setTargetColor, smoothTransition, showColor)
├── [LOGIC] mapping densité → angle/couleur + traitement changement
├── [APP] setup(), loop() non-bloquante (tick simulation)| Statut (mettre OK + URL ou liens si images dispos sur Wikideb), ou « A ajouter » | |
| Photos | |
| Vidéo | |
| Niveau scolaire (Classes où la notion est étudiée) |
| 9H | 8H | 7H | 6H | 5H | 4H | 3H | 2H | H | F | HB | B | 2B | 3B | 4B | 5B | 6B | 7B | 8B | 9B |
| Dure | → | Moyenne | → | Tendre | |||||||||||||||
Vous avez entré un nom de page invalide, avec un ou plusieurs caractères suivants :
< > @ ~ : * € £ ` + = / \ | [ ] { } ; ? #