Talaan ng mga Nilalaman:
- Hakbang 1: Panoorin ang Video
- Hakbang 2: Mga Kinakailangan na Bahagi
- Hakbang 3: Disenyo ng Skema
- Hakbang 4: Disenyo ng PCB
- Hakbang 5: Gawin ang PCB
- Hakbang 6: Assembly
- Hakbang 7: Code
Video: Temperatura ng Arduino at Sensor ng Humidity: 7 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
Sundin ang Higit Pa ng may-akda:
Sa tutorial na ito, ipapaliwanag ko ang paggawa ng isang sensor ng temperatura at halumigmig gamit ang Arduino pro mini board na may DHT11 (o DHT22) sensor.
Hakbang 1: Panoorin ang Video
Mahalagang makita muna ang video bago lumipat sa susunod na hakbang. Ipinapaliwanag ng video ang lahat at ipinapakita kung paano ito ginagawa. Gayunpaman, sa post na ito, magsusulat ako ng higit pang teknikal na data at mga detalye.
www.youtube.com/watch?v=56LKl7Xd770
Hakbang 2: Mga Kinakailangan na Bahagi
Ang mga bahaging kinakailangan para sa proyektong ito ay:
1- Arduino pro mini board (o anumang Arduino).
2- DHT11 temperatura at sensor ng kahalumigmigan (o DHT22).
3- 16x2 LCD display.
4- Isang enclosure na iyong pinili, mas mabuti na pareho sa ginagamit sa video.
5- 10K potensyomiter.
6- Mga terminal ng tornilyo.
7- Mga lumalaban ng iba't ibang mga halaga.
8- 9v na baterya.
habang ang mga tool na kinakailangan ay:
1- drill ng kamay tulad ng isang Dremil.
2- magkakaibang mga piraso para sa drill, dahil gagamitin namin ang mga smoothing bits at cutting bits.
3- mga kamay na tumutulong.
plus, ang karaniwang mga kagamitang electronics tulad ng multimeter at iba pa.
Hakbang 3: Disenyo ng Skema
Sa proyektong ito, pinili ko na gumawa ng isang PCB para dito sa halip na kable ko ito mismo. Kaya't ginamit ko ang EasyEDA online na tool para sa trabaho na isang magandang karanasan.
Ito ang pahina ng proyekto sa easyEDA website:
Ang paliwanag ng eskematiko ay ang mga sumusunod:
1- Gumamit ako ng isang 6-pin ICSP adapter upang i-program ang Arduino pro mini dahil hindi ito kasama ng isa sa board. ito ay J2 sa eskematiko.
Ang 2- R2 ay 100 Ohms at itinatakda nito ang ningning ng LCD. Talaga, maaari kang maglagay ng higit na paglaban kaysa sa 100R kung nais mong maging dimmer ang LCD backlight. O mas mabuti pa, kumuha ng potensyomiter upang kumilos bilang isang variable na paglaban sa serye.
3- Ang JP1 ay isang konektor lamang na mayroong magandang PCB footprint. Hindi ako naglagay ng isang tunay na terminal ngunit sa halip ay naghinang ng mga wire. Gawin mo kung ano ang gusto mo.
4- U2 ang mga terminal ng koneksyon ng baterya. Dito, mas gusto ko ang isang magandang terminal ng turnilyo upang makakuha ng matatag na koneksyon. Maaari kang maghinang ng mga wire, ngunit tiyaking maglagay ng sapat na panghinang upang gawin ang koneksyon na sapat na matatag upang mapaglabanan ang anumang mga alog.
Ang 5- LCD1 ay ang bahagi ng LCD sa easyEDA. Mayroon itong pangunahing koneksyon sa Arduino pro mini. Tiyaking ang mga pin dito ay magkapareho sa mga nasa software.
Ang 6- RV1 ay isang 10K potentiometer upang maitakda ang LCD na kaibahan. Dapat itong gamitin lamang nang isang beses at ito ay noong una mong pinalakas ang LCD.
Hakbang 4: Disenyo ng PCB
Matapos matapos ang disenyo ng eskematiko at maunawaan kung ano ang ibig sabihin ng lahat, oras na ngayon para sa paggawa ng isang PCB para dito.
Dapat mong pindutin ang "I-convert sa PCB" sa EasyEDA upang likhain ang PCB sa PCB editor. Pagkatapos, simulang maglagay ng mga bahagi at gawin ang pagruruta tulad ng dati. Iminumungkahi ko na huwag gamitin ang auto-router bagaman.
Gumamit ako ng maraming mga vias upang ilipat mula sa itaas hanggang sa ilalim na layer dahil ang puwang ay napakaliit.
Hakbang 5: Gawin ang PCB
Ngayon, tapos na ang disenyo ng PCB. Sinuri namin ang lahat at walang nahanap na problema. Kailangan naming ipadala ang mga file ng disenyo (ang mga gerbers) sa kumpanya ng katha na PCB na aming pinili upang magawa niya ito para sa amin.
Ang aking piniling kumpanya ay ang JLCPCB. Ang mga ito ang pinakamahusay para sa mga nasabing proyekto at prototyping at nag-aalok lamang sila ng 2 $ ng presyo para sa isang buong 10 piraso ng iyong disenyo!
Kaya, ngayon nag-click kami (….) At pipiliin ang JLCPCB. Nakaturo kami sa website ng JLCPCB dahil kasosyo sila ng EasyEDA. Ngayon punan ang lahat at ilagay ang order. Maghintay ka lang hanggang sa dumating ang mga PCB.
Ito ay nagkakahalaga ng pagbanggit na ang JLCPCB ay hindi lamang may EasyEDA na nauugnay sa kanila, ngunit mayroon din silang isang malaking tindahan ng mga sangkap din! Ang benepisyo dito ay ang pagkuha ng parehong order ng PCB at order ng mga sangkap na naipadala nang magkasama! Oo, hindi na kailangang maghintay para sa 2 pakete na magkahiwalay na dumating, ngunit sa halip ay pinagsama ito sa isang pakete. Masidhing inirerekumenda kong gamitin ito.
Hakbang 6: Assembly
Nag-iisa kaming mga PCB sa lahat ngayon. Panahon na upang tipunin ang lahat.
Una, kailangan naming maghinang ng electronics ayon sa eskematiko. Ito ay isang madaling gawain para sa proyektong ito.
Matapos matapos ang paghihinang, gupitin ngayon ang mga kinakailangang butas sa plastic enclosure pagkatapos ay ayusin ang PCB sa iba pang mga bahagi nang maayos sa loob ng paggamit ng hot glue gun.
Dapat mo na ngayong gamitin ang potensyomiter upang ayusin ang kaibahan ng LCD, habang ang pagpili ng kinakailangang balbula ng risistor para sa ningning, pinili ko ang 100R.
Hakbang 7: Code
Ang code para sa proyektong ito ay naka-attach sa hakbang na ito, at ang paliwanag ay ang mga sumusunod:
// isama ang code ng library: # isama ang # isama ang "DHT.h" // itakda ang DHT Pin #define DHTPIN 2
Isama ang mga kinakailangang aklatan at tukuyin ang pin 2 ng Arduino pro mini bilang data pin para sa sensor. Siguraduhing mai-install ang mga libraryong ito kung wala ang mga ito.
// ipasimula ang silid-aklatan gamit ang mga numero ng mga interface ng interface LiquidCrystal lcd (9, 8, 7, 6, 5, 4); #define DHTTYPE DHT11 DHT dht (DHTPIN, DHTTYPE);
Simulan ngayon ang LCD library gamit ang mga pin na ito ayon sa eskematiko mismo. Gumamit din ng DHT library at piliin ang DHT11 bilang sensor na gagamitin, kaya kung mayroon kang DHT22 dapat mo itong palitan.
Ang huling linya ay nagsasabing mayroon kaming DHT11 sensor at ang data pin nito ay nasa pin na "DHTPIN" na kung saan ay pin 2 tulad ng naitala namin dati.
void setup () {// i-set up ang bilang ng mga haligi at hilera ng LCD: lcd.begin (16, 2); dht.begin (); lcd.setCursor (0, 0); lcd.print ("Temperatura at"); lcd.setCursor (0, 1); lcd.print ("kahalumigmigan sensor"); pagkaantala (3000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("THUNDERTRONICS"); lcd.setCursor (0, 1); lcd.print ("Hossam Moghrabi"); pagkaantala (3000); }
Ngayon ay oras na ng pag-set up! at narito kung ano ang nangyayari:
Ang LCD ay 16 sa pamamagitan ng 2 uri.
Simulan ang utos ng DHT upang makakuha ng mga halaga.
I-print ang "Temperatura at kahalumigmigan sensor" sa 2 linya.
Delay ng 3 segundo.
I-clear ang display
I-print ang "THUNDERTRONICS" sa unang linya pagkatapos ay i-print ang "Hossam Moghrabi" sa ika-2 linya.
Delay ng 3 segundo.
^ Ginawa ko ito bilang isang welcome screen na tumatagal ng halos 6 segundo o mahigit pa bago ipakita ang mga halaga.
void loop () {// basahin ang kahalumigmigan int h = dht.readHumidity (); // basahin ang temperatura sa c int t = dht.readTemperature (); kung (isnan (h) || isnan (t)) {lcd.print ("ERROR"); bumalik; }
Nasa loob kami ng aming walang hanggang loop na kung saan ay patuloy na paulit-ulit.
Mag-imbak ng mga pagbabasa ng kahalumigmigan sa loob ng variable na "h" at mga pagbabasa ng temperatura sa loob ng variable na "t".
Susunod, mayroon kaming isang kung pahayag. Karaniwan itong nagbabalik ng isang mensahe ng error kapag mayroong isang error. Iwanan ito nang hindi binabago.
Ngayon mayroon kaming lahat ng mga halagang kailangan namin.
lcd.setCursor (0, 0); lcd.print ("Temp. ="); lcd.print (t); lcd.print (""); lcd.print ((char) 223); lcd.print ("C"); lcd.setCursor (0, 1); lcd.print ("Humidity ="); lcd.print (h); lcd.print ("%"); // lcd.print ("Hossam Moghrabi"); pagkaantala (2000);
Panghuli, ipinapakita namin ang mga halagang ito sa LCD display. Maaari mong baguhin ito sa paraang nais mo dahil simpleng paglilimbag nito ng mga halaga sa loob ng "h" at "t" na mga variable. Ang paglalagay ng pagkaantala ng 2 segundo ay medyo opsyonal ngunit hindi ka makikinabang mula sa paggawa nito nang mas mabilis dahil ang sensor mismo ay hindi ganoon kabilis at kahit na ito ay, ang mga pisikal na halagang hindi kailanman nagbabago nang napakabilis. Kaya't ang 2 segundo ay napakabilis para sa trabaho!
Iyan na iyon!
Inirerekumendang:
Auto Cooling Fan Gamit ang Servo at DHT11 Temperatura at Humidity Sensor Sa Arduino: 8 Hakbang
Auto Cooling Fan Gamit ang Servo at DHT11 Temperature at Humidity Sensor Sa Arduino: Sa tutorial na ito matututunan natin kung paano magsimula & paikutin ang isang fan kapag ang temperatura ay tumaas sa itaas ng isang tiyak na antas
Pagmamanman ng Temperatura sa Temperatura at Humidity Gamit ang Cloud ng ESP32 at AskSensors: 6 na Hakbang
Pagsubaybay sa Temperatura ng Temperatura at Humidity Sa Cloud ng ESP32 at AskSensors: Sa tutorial na ito matututunan mo kung paano subaybayan ang temperatura at halumigmig ng iyong silid o desk gamit ang DHT11 at ang ESP32 na konektado sa cloud. Ang aming mga pag-update ng tutorial ay matatagpuan dito. DHT11 Mga detalye: Ang sensor ng DHT11 ay maaaring masukat ang temperatura
ESP8266 Pagsubaybay sa Temperatura ng Nodemcu Paggamit ng DHT11 sa isang Local Webserver - Kumuha ng Temperatura ng Temperatura at Humidity sa Iyong Browser: 6 na Hakbang
ESP8266 Pagsubaybay sa Temperatura ng Nodemcu Paggamit ng DHT11 sa isang Local Webserver | Kumuha ng Temperatura ng Temperatura at Kahalumigmigan sa Iyong Browser: Kumusta mga tao ngayon gagawa kami ng isang kahalumigmigan & temperatura monitoring system gamit ang ESP 8266 NODEMCU & Sensor ng temperatura ng DHT11. Ang temperatura at halumigmig ay makukuha mula sa DHT11 Sensor & makikita ito sa isang browser kung aling webpage ang magiging manag
Monitor ng Temperatura sa Temperatura at Humidity: 6 Hakbang
Room Temperature and Humidity Monitor: Sinusukat ng aking proyekto, QTempair ang temperatura ng kuwarto, halumigmig at kalidad ng hangin. Ang proyektong ito ay nagbabasa ng data mula sa mga sensor, ipinapadala ang data sa database at ang data na iyon ay ipapakita sa isang website. Maaari kang makatipid ng isang temperatura sa mga setting sa
Madali ang IoT: Nakukuha ang Data ng Remote na Panahon: UV at Temperatura ng Temperatura at Humidity: 7 Hakbang
Madali ang IoT: Nakukuha ang Data ng Remote na Panahon: UV at Temperatura ng Temperatura at Humidity: Sa tutorial na ito, makukuha namin ang malayuang data bilang UV (Ultra-Violet radiation), temperatura ng hangin at halumigmig. Ang data na iyon ay magiging napakahalaga at gagamitin sa hinaharap na kumpletong Weather Station. Ipinapakita ng block Diagram kung ano ang makukuha natin sa dulo