Talaan ng mga Nilalaman:

Batay sa Arduino na Digital Thermometer: 3 Mga Hakbang
Batay sa Arduino na Digital Thermometer: 3 Mga Hakbang

Video: Batay sa Arduino na Digital Thermometer: 3 Mga Hakbang

Video: Batay sa Arduino na Digital Thermometer: 3 Mga Hakbang
Video: How to use MAX6675 thermocouple k type with Arduino 2024, Nobyembre
Anonim
Batay sa Arduino na Digital Thermometer
Batay sa Arduino na Digital Thermometer

Sa proyektong ito, isang Arduino based digital thermometer ay dinisenyo na maaaring magamit upang pag-aralan ang temperatura ng silid.

Ang thermometer ay karaniwang ginagamit bilang isang instrumento sa pagsukat ng temperatura. Mayroong iba't ibang mga prinsipyo na maaaring magamit upang masukat ang temperatura tulad ng thermal expansion ng solids o likido, ang presyon ng gas, pagsukat ng infrared na enerhiya, atbp.

Nakabatay sa digital thermometer na batay sa Arduino na maaaring magamit upang pag-aralan ang temperatura ng silid. Ang LM35 LM35 ay isang sensor ng temperatura. Ang boltahe ng output ng sensor na ito ay direktang proporsyonal sa temperatura sa centigrade. Maaaring magamit ang LM35 sa saklaw ng -550C hanggang + 1500C na may katumpakan na +/- 0.750C.

Mga gamit

Arduino Uno

LM35 Temperatura sensor

16x2 LCD Display

Hakbang 1: Disenyo ng Circuit ng Digital Thermometer

Disenyo ng Circuit ng Digital Thermometer
Disenyo ng Circuit ng Digital Thermometer

Ang sensor ng temperatura na ginamit sa proyektong ito ay LM35. Ang output ng isang sensor ng temperatura ay direktang proporsyonal sa temperatura ngunit sa analog form. Samakatuwid, ang output ng LM35 ay nangangahulugang ang pin 2 ay konektado sa analog input A0 ng Arduino.

Dahil ito ay isang digital thermometer, kailangan nating baguhin ang mga analog na halaga ng temperatura sa digital at ipakita ang resulta sa isang display tulad ng LCD, atbp. 16X2 LCD ang ginagamit. Ang pin no 1 at 2 ng LCD ay konektado sa ground at supply ayon sa pagkakabanggit. Upang mapamahalaan ang kaibahan ng display, ang Pin 3 ng LCD ay nakakabit sa wiper ng isang 10 KΩ POT.

Ang natitirang mga terminal ng POT ay nakakabit sa supply at ground. Ang mga Pin 15 at 16 ng LCD ay ginagamit upang paikutin ang backlight ng LCD na konektado sa supply at ground ayon sa pagkakabanggit. Upang maipakita ang impormasyon sa LCD, nangangailangan kami ng 4 na pin ng data ng LCD. Ang mga Pin 11 - 14 (D4 - D7) ay nakakabit sa Pins 5 - 2 ng Arduino. Ang mga pin na 4, 5 at 6 (RS, RW at E) ng LCD ay mga control pin. Ang mga pin 4 (RS) ng LCD ay konektado sa pin 7 ng Arduino. Ang Pin 5 (RW) ay konektado sa lupa. Ang Pin 6 (E) ay konektado sa pin 6 ng Arduino.

Hakbang 2: Paggawa ng Digital Thermometer

Paggawa ng Digital Thermometer
Paggawa ng Digital Thermometer

Ang isang mataas na katumpakan na digital thermometer ay nakabalangkas sa proyektong ito. Ang pagtatrabaho ng circuit ay tulad ng ipinaliwanag sa ibaba.

Ang sensor ng temperatura ibig sabihin LM35 ay patuloy na pinag-aaralan ang temperatura ng kuwarto at nagbibigay ng isang magkatulad na boltahe na direktang proporsyonal sa temperatura.

Ang data na ito ay ibinibigay sa Arduino sa pamamagitan ng A0. Tulad ng nakasulat sa code, binago ng Arduino ang halagang analog boltahe na ito sa mga pagbasa ng temperatura sa digital.

Ang halagang ito ay ipinapakita sa LCD. Ang output na ipinapakita sa LCD ay isang eksaktong pagbabasa ng temperatura ng kuwarto sa centigrade.

Ang Internet ng Mga Bagay na Kurso sa Pagsasanay sa kurso ng Internet ng HIOTron ay bumuo ng iba't ibang mga IoT Solusyon sa ganoong aplikasyon upang mapahusay ang karanasan ng gumagamit.

Hakbang 3: Patakbuhin ang isang Programa

# isama

LiquidCrystal lcd (7, 6, 5, 4, 3, 2);

Const int Sensor = A0;

byte degree_symbol [8] =

{

0b00111, 0b00101, 0b00111, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000

};

walang bisa ang pag-setup ()

{

pinMode (Sensor, INPUT);

lcd.begin (16, 2);

lcd.createChar (1, degree_symbol);

lcd.setCursor (0, 0);

lcd.print ("Digital");

lcd.setCursor (0, 1);

lcd.print ("Thermometer");

pagkaantala (4000);

lcd.clear ();

}

walang bisa loop ()

{

float temp_reading = analogRead (Sensor);

temperatura ng float = temp_reading * (5.0 / 1023.0) * 100;

antala (10);

lcd.clear ();

lcd.setCursor (0, 0);

lcd.print ("Temperatura sa C");

lcd.setCursor (4, 1);

lcd.print (temperatura);

lcd.write (1);

lcd.print ("C");

pagkaantala (1000);

}

Inirerekumendang: