Table des matières:

Thermomètre numérique avec Arduino et DS18B20 : 7 étapes
Thermomètre numérique avec Arduino et DS18B20 : 7 étapes

Vidéo: Thermomètre numérique avec Arduino et DS18B20 : 7 étapes

Vidéo: Thermomètre numérique avec Arduino et DS18B20 : 7 étapes
Vidéo: LA DOMOTIQUE À 2€ FAIRE UN THERMOMÈTRE DIGITAL AVEC UN ARDUINO, une sonde DS18B20 et LCD I2C 2024, Novembre
Anonim
Thermomètre numérique avec Arduino et DS18B20
Thermomètre numérique avec Arduino et DS18B20
Thermomètre numérique avec Arduino et DS18B20
Thermomètre numérique avec Arduino et DS18B20

Créez simplement un thermomètre numérique qui peut vous indiquer la température ambiante actuelle sur un écran LCD. Il s'agit d'un projet pour débutants. Appareil dont vous avez besoin: 1. Arduino UNO R3 2. Capteur de température DS18B20. 3. Écran LCD 16X2. 4. Fils de connexion. 5. Tableau de projet. Maintenant, faisons un thermomètre numérique….. Il s'agit d'un brochage Atmega168 pour arduino. Sautez simplement ceci si vous voulez faire ce thermomètre avec votre arduino.

Étape 1: Créez Arduino sur une planche à pain

Faire Arduino sur Breadboard
Faire Arduino sur Breadboard

Créer un arduino sur une planche à pain est très simple. Maintenant, la procédure de câblage étape par étape est donnée ci-dessous: 1. Pin 7 -> +5V 2. Pin8 -> GND 3. Pin9 -> Crystal -> Condensateur 22pF -> GND 4. Pin10-> Crystal -> Condensateur 22pF -> GND 5. broche 22 -> GND 6. Pin21 & Pin20 -> +5V 7. Pin1-> Registre 10K vers GND + Bouton poussoir vers +5V Maintenant vous êtes prêt……………..

Étape 2: connexion de l'écran LCD

Connexion LCD
Connexion LCD

Étape 3: connexion du capteur de température DS18B20

Connexion du capteur de température DS18B20
Connexion du capteur de température DS18B20

Étape 4: Préparation du circuit

Préparation du circuit
Préparation du circuit

Connectez l'écran LCD avec l'atmega ou l'arduino selon l'exemple d'écran LCD par défaut sur l'arduino IDE. Connectez maintenant le bus DS1307 DATA au DIGITAL PIN 7 (Atmega pin 13)

Étape 5: CODE Arduino

#include #include #include int DS18S20_Pin = 7; // DS18S20 Broche de signal sur numérique 7 par rahulmitra LiquidCrystal lcd (12, 11, 5, 4, 3, 2); //Puce de température e/s OneWire ds (DS18S20_Pin); // sur la broche numérique 7 par rahulmitra void setup(void) { Serial.begin(9600); lcd.begin (16, 2); // Imprime un message sur l'écran LCD. lcd.print("Rahul Mitra"); } void loop(void) { float temperature = getTemp(); Serial.println(température); lcd.setCursor(0, 1); lcd.print("Temp: "); lcd.print(température); lcd.print(" *C"); retard (100); //juste ici pour ralentir la sortie afin qu'il soit plus facile à lire } float getTemp(){ //renvoie la température d'un DS18S20 en DEG Celsius octet data[12]; octet adr[8]; if (!ds.search(addr)) { //plus de capteurs sur la chaîne, réinitialiser la recherche ds.reset_search(); retour -1000; } if (OneWire::crc8(addr, 7) != addr[7]) { Serial.println("CRC n'est pas valide!"); retour -1000; } if (addr[0] != 0x10 && addr[0] != 0x28) { Serial.print("Le périphérique n'est pas reconnu"); retour -1000; } ds.reset(); ds.select(adr); ds.write(0x44, 1); // démarre la conversion, avec la mise sous tension du parasite à la fin de l'octet present = ds.reset(); ds.select(adr); ds.write(0xBE); // Lire Scratchpad pour (int i = 0; i < 9; i++) { // nous avons besoin de 9 octets data = ds.read(); } ds.reset_search(); octet MSB = données[1]; octet LSB = données[0]; float tempRead = ((MSB << 8) | LSB); //utilisation du flottant de compliment à deux TemperatureSum = tempRead / 16; return TemperatureSum; }

Étape 6: Enfin, vous avez terminé

Enfin vous avez fait
Enfin vous avez fait
Enfin vous avez fait
Enfin vous avez fait

Étape 7: Voir EN DIRECT

www.youtube.com/watch?v=7718FODdtio&list=UUY916I6z4Y3QQhzjHsIhR8w

Conseillé: