Sunteți pe pagina 1din 4

Lucrarea practică Nr.

2
Tema:Senzor de temperatură

Scopul lucrării: Dezvoltarea uui program care va controla senzorul de temperature și afișa valorile
măsurate într-un port serial.
Mersul lucrării:
1. Elaborăm schema circuitului în laboratoul virtual Autodesk TinkerCad.

Fig 2.1 Circuitul cu senzorul de temperatură, și LCD display.

2. Elaborăm programul circuituui pentru funcționarea corectă a circuiyului efectuat


#include <LiquidCrystal.h>
const int buttonPin1 = 9;
const int buttonPin2= 8;
const int buttonPin3= 7;
const int buttonPin4= 6;
const int ledPin1 = 10;
const int ledPin2 = 13;
// variables will change:
int buttonState1 = 1;
int buttonState2 = 1;
int buttonState3 = 1;
int buttonState4 = 1;
int i=0;
int a=0;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

61110 CPB LP02 V14


Mod Coala Nr.document Semnat Data
Elaborat Oselschi Pavel Lit. Coala Coli
Verificat Lupescu Vasile 1 4
Senzor de temperatură
C-428
void setup() {
Serial.begin(9600);
lcd.begin(16, 2);
pinMode(buttonPin1,INPUT_PULLUP);
pinMode(buttonPin2,INPUT_PULLUP);
pinMode(buttonPin3,INPUT_PULLUP);
pinMode(buttonPin4,INPUT_PULLUP);
pinMode(ledPin1,OUTPUT);
pinMode(ledPin2,OUTPUT);
}
void loop() {
buttonState1 = digitalRead(buttonPin1);
buttonState2 = digitalRead(buttonPin2);
buttonState3 = digitalRead(buttonPin3);
buttonState4 = digitalRead(buttonPin4);
int reading1 = analogRead(A0);
float voltage1 = reading1 * 5.0;
voltage1 /= 1024.0;
float temperatureC1 = (voltage1 - 0.5) * 100 ;
int reading2 = analogRead(A1);
float voltage2 = reading2 * 5.0;
voltage2 /= 1024.0;
float temperatureC2 = (voltage2 -0.5)*100;
Serial.println(buttonState2);
lcd.setCursor(12, 0);
lcd.print(i);
lcd.setCursor(14, 0);
lcd.print("^C");
lcd.setCursor(2, 0);
lcd.print(temperatureC1);
lcd.setCursor(2,1);
lcd.print(temperatureC2);
lcd.setCursor(12,1);

Coala
Senzor de temperatură 2
Mod Coala Nr.document Semnat Data
lcd.print(a);

lcd.setCursor(14,1);
lcd.print("^C");
lcd.setCursor(7,0);
lcd.print("|Set:");
lcd.setCursor(7,1);
lcd.print("|Set:");
lcd.setCursor(0,0);
lcd.print("t:");
lcd.setCursor(0,1);
lcd.print("t:");
if (buttonState1==0)
{
delay(20);
i++;
}
if(buttonState2==0)
{
delay(20);
i--;
}
if (temperatureC1<=i)
{
digitalWrite(ledPin1,1);
}
else
{
digitalWrite(ledPin1,0);
}
if(i==91)
{
i--;
}

if(i<10)
{
i=10;
}
if (buttonState3==0)
{
delay(20);
a++;
}

if(buttonState4==0)
{
delay(20);
a--;
}

Coala
Senzor de temperatură 3
Mod Coala Nr.document Semnat Data
if (temperatureC2<=a)
{
digitalWrite(ledPin2,1);
}
else
{
digitalWrite(ledPin2,0);
}
if(a==91)
{
a--;
}
if(a<10)
{
a=10;
}
delay(2000);
lcd.clear();
}

Concluzii: În această lucrare practică am creat circuitul electric cu microcontroler Arduino UNO și
conectarea la acesta a senzorilor de temperatură precum și a display-ului LCD, la fel și programarea
acestuia ca prin butoane sa setăm temperatura dorită care este afișată la display, și pornirea a ledurilor
dacă temperatura este mai mică decât ceea indicată, și deconectarea acestora până temperatura ajunge la
cea setată

Coala
Senzor de temperatură 4
Mod Coala Nr.document Semnat Data

S-ar putea să vă placă și