Taula de continguts:

Domòtica: feu sonar una alarma i visualitzeu-lo a la pantalla LCD quan la temperatura és superior al valor del llindar: 5 passos
Domòtica: feu sonar una alarma i visualitzeu-lo a la pantalla LCD quan la temperatura és superior al valor del llindar: 5 passos

Vídeo: Domòtica: feu sonar una alarma i visualitzeu-lo a la pantalla LCD quan la temperatura és superior al valor del llindar: 5 passos

Vídeo: Domòtica: feu sonar una alarma i visualitzeu-lo a la pantalla LCD quan la temperatura és superior al valor del llindar: 5 passos
Vídeo: Беспроводная библиотечная книга с сенсорным экраном 7000 рупий/- 2024, De novembre
Anonim
Domòtica: feu sonar una alarma i visualitzeu-lo a la pantalla LCD quan la temperatura sigui superior al valor del llindar
Domòtica: feu sonar una alarma i visualitzeu-lo a la pantalla LCD quan la temperatura sigui superior al valor del llindar

Aquest bloc mostrarà com fer un sistema domòtic que començarà a sonar una alarma sempre que la temperatura arribi a superar el valor llindar programat. Es mantindrà mostrant la temperatura actual de l'habitació a la pantalla LCD i l'acció necessària (per exemple: Disminueix la temperatura) quan la temperatura arribi a més del valor llindar. En aquest tutorial, faig servir el sensor de temperatura AD22100 fabricat per Analog Devices i AG-1005G Buzzer. AD22100 és un sensor de temperatura de sortida de tensió amb condicionament del senyal

Pas 1: parts

Necessiteu aquestes parts amb vosaltres abans de començar a treballar indestructible

1. Junta Arduino UNO

2. Pantalla LCD (16x2)

3. Zumbador: 2 pins (AC-1005G)

4. Sensor de temperatura: 3 pins (AD22100)

Pas 2: Connexió de les diferents parts amb Arduino UNO

Connexió LCD amb placa Arduino UNO

Pin LCD RS (pin 4) amb pin 7 de la placa Arduino

Pin d'activació LCD (pin 6) amb pin 8 de la placa Arduino

Pin LCD D4 (pin 11) amb pin 9 de la placa Arduino

Pin LCD D5 (pin 12) amb pin 10 de la placa Arduino

Pin LCD D6 (pin 13) amb pin 11 de la placa Arduino

Pin LCD D7 (pin 14) amb pin 12 de la placa Arduino

Afegiu un pot de 10 KΩ a + 5v (Pot Pin 1) i GND (Pot Pin 3), Connecteu el pin central del pot (Pot Pin 2) al pin LCD V0 (Pin 3).

Pin VDD LCD (pin 2) i pin LCD A (pin 15) amb + 5 v a la placa Arduino.

Pin VSS LCD (Pin 1) i Pin LCD K (Pin 16) amb GND a la placa Arduino.

Connexió del sensor de temperatura AD22100 amb placa Arduino UNO

El pin 1 (V +) de l'AD22100 s'hauria de connectar a +5 v a la placa Arduino.

El pin 2 (Vo) de l'AD22100 s'hauria de connectar al pin A1 de la placa Arduino.

El pin 3 (GND) de l'AD22100 s'hauria de connectar a GND a la placa Arduino

Connexió de buzzer (AC-1005G) amb la placa Arduino UNO

La sortida PWM del pin 6 de la placa Arduino s’hauria de connectar a l’entrada + ve de Buzzer.

El GND de la placa Arduino s’hauria de connectar amb l’entrada -ve de Buzzer

Pas 3: codis Arduino

Compileu-lo i pengeu-lo a la placa Arduino i observeu la demostració del sistema domòtic

// El programa comença aquí

int val;

int tempPin = A1;

int buzzer = 6;

#include LiquidCrystal lcd (7, 8, 9, 10, 11, 12);

configuració nul·la () {

// posa aquí el teu codi de configuració per executar-lo una vegada:

lcd.begin (16, 2);

lcd.clear ();

Serial.begin (9600);

pinMode (buzzer, OUTPUT);

}

void loop () {// posa aquí el teu codi principal per executar-lo repetidament:

val = analogRead (tempPin); // AD22100 està connectat al pin A1

/*

* Per a 25C, val és 900, això significa

* 900 correspon a 1,9375 v

* La funció de transferència és (V + / 5) * (1.375 + 22,5 mv / degC * 25 degC), * Llegiu el full de dades de l'AD22100

*/

float cel = ((((1.9375 / 900) * val) - 1.375) /22,5) * 1000;

float farh = (cel * 9) / 5 + 32;

Serial.print (val);

Serial.println ();

Serial.print ("TEMPRATURA =");

Serial.print (cel); Serial.print ("* C");

Serial.println ();

si (cel> 26) {

to (brunzidor, 1000);

lcd.clear ();

lcd.print ("Temp per sobre del llindar");

lcd.setCursor (0, 1);

lcd.print ("Disminueix la temperatura");

}

en cas contrari

{noTone (timbre);

lcd.clear ();

lcd.print ("Temp sota control");

lcd.setCursor (0, 1);

lcd.print ("Temp =");

lcd.print (cel);

lcd.print ("degC");

}

retard (500);

}

// El programa acaba aquí

Pas 4: Descripció detallada del programa

Intentaré explicar algunes seccions del codi.

Funcions relacionades amb la sentència If / else

Si la temperatura és superior al valor llindar, envio un senyal al timbre perquè soni una alarma i es mostri a la pantalla LCD per disminuir la temperatura amb la secció inferior del codi

si (cel> 26)

{to (timbre, 1000);

lcd.clear ();

lcd.print ("Temp per sobre del llindar");

lcd.setCursor (0, 1);

lcd.print ("Disminueix la temperatura");

}

Si no, envieu el valor actual de la temperatura a la pantalla LCD i es visualitza aquesta temperatura.

en cas contrari

{noTone (timbre);

lcd.clear ();

lcd.print ("Temp sota control");

lcd.setCursor (0, 1);

lcd.print ("Temp =");

lcd.print (cel);

lcd.print ("degC");

}

Funcions relacionades amb Buzzer

tone (buzzer, 1000): aquesta funció enviarà un senyal d'1 kHz al pin anomenat buzzer, que es defineix com a Pin 6 i el zumbador magnètic està connectat al Pin 6. noTone (buzzer) - deixarà d'enviar senyal d'1 kHz. Per tant, el timbre s’aturarà

Funcions relacionades amb el sensor de temperatura

La conversió del valor analògic de la lectura temporal al valor deg C es realitza mitjançant una funció de transferència que es pot trobar al full de dades AD22100 tal com s’escriu a continuació.

Vout = (V + / 5 V) × (1,375 V + 22,5 mV / ° C × TA) i el mateix valor s’imprimeix a la pantalla LCD.

Pas 5: demostració dels instructables

Un cop compilat i carregat el programa a la placa Arduino UNO

intentem augmentar la temperatura detectada pel sensor de temperatura AD22100 i gaudim del sistema domòtic.

Per augmentar la temperatura del sensor, el toco amb el soldador disponible al Lab.

Podeu fer un cop d'ull a la demostració aquí …

Demostració del sistema domòtic

Recomanat: