Përmbajtje:
2025 Autor: John Day | [email protected]. E modifikuara e fundit: 2025-01-13 06:58
Pershendetje te gjitheve! Ne jemi studentë nga Universiteti Tun Hussein Onn Malaysia (UTHM) që po kryejmë një projekt për të demonstruar se si mund të simulojmë një sensor të temperaturës, një LCD dhe një Arduino duke përdorur Tinkercad si pjesë e kurrikulës sonë për UQD0801 (Robocon 1) (Grupi 7)
Sensorët e temperaturës dhe LCD mund të shërbejnë si një mekanizëm i thjeshtë në situata të ndryshme të tilla si monitorimi i temperaturës së dhomës dhe madje edhe monitorimi i bimëve ose çdo vend që e konsideron temperaturën si një element të rëndësishëm!
Hapi 1: Lista e Komponentëve të Kërkuar
Ky projekt kërkon komponentë që janë shumë lehtë të arritshëm në treg.
Lista e Komponentëve:
1. Arduino Uno R3 (1)
2. Sensori i temperaturës (TMP36) (1)
3. LCD 16x2 (1)
4. Potenciometër 250kΩ (1)
5. Rezistencë 220Ω (1)
Hapi 2: Lidhja e Qarkut në Tinkercad
Tinkercad siguron qarqe të para-ndërtuara që mund t'i ndihmojnë përdoruesit të mos i ndërlikojnë qarqet e tyre duke u ndërtuar nga e para.
Në Circuit Desinger, ne mund të kërkojmë për LCD, e cila do të tregojë se ekziston një qark fillestar që ka një qark të lidhur paraprakisht midis një Arduino dhe LCD.
Hapi 3: Sensori i temperaturës TMP36
Në Tinkercad, ekziston vetëm një sensor i temperaturës, i cili është TMP36.
TMP36 nuk ka një rezistencë të ndjeshme ndaj temperaturës. Në vend të kësaj ky sensor përdor vetinë e diodave; pasi dioda ndryshon temperaturën tensioni ndryshon me të në një ritëm të njohur. Sensori mat ndryshimin e vogël dhe nxjerr një tension analog midis 0 dhe 1.75VDC bazuar në të. Për të marrë temperaturën, ne duhet të matim daljen dhe të bëjmë një llogaritje për ta kthyer atë në gradë celsius.
Hapi 4: Lidhni TMP36 me Arduino
TMP36 ka 3 kunja, të cilat mund të identifikohen lehtësisht duke vërejtur anën e sheshtë të sensorit.
Kunja e parë është kunja +5V e cila do të lidhet me furnizimin.
Kunja e dytë është Vout e cila do të lidhet me kunjin Analog In, (mund të jetë A0-A5). Ne përdorëm A0 për këtë projekt.
Kunja e tretë është kunja GND e cila do të lidhet me tokën e Arduino.
Hapi 5: Le të bëjmë disa kodime
Fillimisht, do të ketë një kod në redaktuesin e kodit që gjendet në Tinkercad.
Kjo ndodh sepse ne përdorëm një qark fillestar nga Tinkercad, duke ngarkuar kodin e tij së bashku me të për të lejuar përdoruesit e rinj të eksplorojnë dhe simulojnë daljen.
Ne mund t'i fshijmë të gjitha ato dhe të hartojmë kodin tonë.
Për çdo kod Arduino që do të hartojmë, duhet të sigurohemi që të përfshihen bibliotekat që lidhen me projektin.
E cila në këtë rast, ne kërkojmë dy biblioteka; -Biblioteka për LCD (LiquidCrystal.h)
-Biblioteka për komunikim serik (SoftwareSerial.h)
Të dyja këto biblioteka janë të pranishme në Tinkercad, që do të thotë se nuk ka nevojë të shkarkoni ndonjë bibliotekë nga burime të jashtme.
Prandaj; rreshtat e parë të kodit janë
#përfshi
#përfshi
Hapi 6: Pjesa tjetër e Kodit
// përfshini kodin e bibliotekës: #include
#përfshi
LiquidCrystal LCD (12, 11, 5, 4, 3, 2); // lidhja e kunjave rs, en, d4, d5, d6, d7 me arduino në pin 12 11 5 4 3 2
int celsius; // shpall një funksion celsius si një numër të plotë
void setup ()
{
Serial.filloj (9600); // vendosni normën e baudit në 9600 bit për sekondë
lcd.filloni (16, 2); // Madhësia e LCD është 16x2 // Shtypni një mesazh në LCD.
lcd.print ("Shfaqja e Temp");
Serial.println ("Shfaqja e Temp"); // printoni mesazhin në monitorin serik}
lak void ()
{
celsius = hartë (((analogRead (A0) -20) * 3.04), 0, 1023, -40, 125); // hartë për të marrë matematikisht temperaturën. Kuptimi 0 = -40 gradë dhe 1023 = 125 gradë
lcd.setCursor (0, 0); // kursori i vendosur në pikselin e parë të LCD.
lcd.print ("Shfaqja e Temp"); // printoni mesazhin në LCD
lcd.setCursor (0, 1); // kursori i vendosur në pikselin e parë të rreshtit të dytë
lcd.print (celsius); // printon daljen celsius nga leximi analog në LCD në 0, 1
lcd.print ("C"); // printoni alfabetin "c"
Serial.println (celsius); // dalja e treguar në monitorin serik
vonesa (1000); // leximi rifreskohet çdo 1 sekondë
lcd.qartë (); // pastron LCD -në
}