Uploaded by jamshidbekmirzakrimov

1750435

advertisement
O‘ZBEKISTON RESPUBLIKASI OLIY TA’LIM
FAN VA INNOVATSIYALAR VAZIRLIGI
URGANCH DAVLAT PEDAGOGIKA INSTITUTI
“PEDAGOGIKA” FAKULTETI
“Texnologik ta'lim” yo‘nalishi 221-guruh (sirtqi) talabasi
Berdiyeva Gulxayoning
“Robotatexnika” fanidan tayyorlagan
MUSTAQIL ISHI
Mavzu : DHT HARORAT VA NAMLIKNI O’LCHASH SENSORI.
Bajardi:
Berdiyeva Gulxayo
Qabul qildi:
Tayirov Hamza
1
Reja
1. DHT11 nima?
2. Shunga o'xshash mahsulotlar
3. Pinout, xususiyatlari va ma'lumotlar
sahifasi
4. Arduino bilan integratsiya
4.1 Arduino IDE-dagi kod
2
DHT HARORAT VA NAMLIKNI O’LCHASH SENSORI
Harorat va namlikni o'lchash juda keng tarqalgan ko'plab elektron ishlab
chiqaruvchilarning loyihalarida. DIYda ma'lum tizimlarni boshqarish uchun ushbu
parametrlarni o'lchash odatiy holdir. Masalan, harorat yoki namlik ma'lum bir
qiymatga yetganda ishga tushadigan sovutgich, o'simliklarni parvarish qilish yoki
havoni tozalash tizimini yaratishga qodir bo'lish. Ammo buning uchun DHT11
kabi sensor kerak.
Bozorda ko'plab sensorlar mavjud qo'llab-quvvatlanadigan harorat oralig'i yoki
har xil aniqlik bilan juda xilma-xil harorat oralig'i. Bunga misol eng
mashhurlaridan biri va elektronikada ishlatiladigan LM35. Analog qurilmalardan
AD22103KTZ kabi o'tkazuvchanlikning o'zgarishi bilan ishlaydigan boshqa
namlik sezgichlari ham mavjud. Ammo agar siz ikkala parametrni ham o'lchashni
xohlasangiz, ehtimol ushbu maqolada bugun muhokama qiladigan qurilma juda
qiziqroq ...
DHT11 nima?
El DHT11 - harorat va namlikni o'lchaydigan oddiy sensor, barchasi bitta. A)
Ha siz ikkita datchik sotib olishingiz shart emas alohida-alohida. Uning narxi
taxminan 2 evroga teng, shuning uchun u juda arzon, garchi siz uni Arduino uchun
ushbu turdagi elektron komponentlarda odatdagidek modulga o'rnatilganda
(foydalanish uchun qulaylik uchun tenglikni ustiga o'rnatilgan bo'lsa). Kengashda u
5 kilogrammli tortish qarshiligini va bizni ishlash to'g'risida ogohlantiruvchi
LEDni o'z ichiga oladi.
DHT11 mavjud kalibrlangan raqamli signal tufayli yuqori ishonchlilik va
barqarorlik. Bundan tashqari, agar siz uning ma'lumot varag'iga qarasangiz, unda
qiziqarli xususiyatlarga ega ekanligini ko'rasiz, buni keyingi bo'limlarda ko'rasiz.
Shunga o'xshash mahsulotlar
Sizni qiziqtirishi mumkin bo'lgan DHT11 ga o'xshash mahsulot mavjud.
Bu DHT22. Bundan tashqari, bu harorat va namlikning integral sensori, ammo bu
3
holda uning narxi biroz yuqoriroq, taxminan 4 evroga teng. Haroratni o'lchashning
aniqligi DHT5 singari 11% o'zgarishga ega, ammo undan farqli o'laroq, namlik
darajasi 20 dan 80% gacha. Shuning uchun siz namlikni 22 dan 0% gacha
o'lchashingiz kerak bo'lgan loyihalar uchun DHT100 bilan qiziqishingiz mumkin.
La ma'lumotlar yig'ish chastotasi u DHT11 dan ikki baravar ko'p, DHT22 da
soniyada 2 ta namuna o'rniga 1 ta namuna olinadi. Haroratga kelsak, u -11ºC dan +
40ºC gacha aniqroq o'lchashi mumkin, chunki u darajadagi fraktsiyalarni o'lchashi
mumkin, xususan u ortiqcha / minus 125ºC o'zgarishini qadrlashi mumkin.
Pinout, xususiyatlari va ma'lumotlar sahifasi
Haqida juda ozgina texnik ma'lumotlarni topishingiz mumkin Ma'lumot
sahifalaringizda DHT11. Ushbu qurilmaning har bir ishlab chiqaruvchisi
o'zgarishi mumkin bo'lgan ba'zi bir qiymatlarni taqdim etishi mumkin, shuning
uchun har doim siz sotib olgan qurilmaning ma'lum ishlab chiqaruvchisi PDF-ni
o'qishni tavsiya etaman. Garchi ko'pchilik qadriyatlar sizga bir xil ko'rinishga ega
bo'lsa-da, ikkinchisida biroz farq bo'lishi mumkin. Uning eng muhim texnik
xususiyatlari:

3,5v dan 5v gacha bo'lgan quvvat manbai

2,5mA oqim sarfi

Raqamli chiqish signali

Harorat 0ºC dan 50ºC gacha

Taxminan 25ºC o'zgaruvchanlikdagi 2ºC haroratni o'lchash uchun aniqlik

Haroratni o'lchash o'lchamlari 8-bit, 1ºC
4

Namlik 20% RH dan 90% RH gacha o'lchashi mumkin

5-0ºC gacha bo'lgan harorat uchun 50% RH namligi uchun aniq

Ruxsat etilganligi 1% RH, siz undan pastroq variantlarni tanlashingiz
mumkin emas

Mouser ma'lumotlar sahifasi
Ma'lumotlarga kelsak, raqamli translyatsiya. Shuning uchun, boshqa sensorlarda
bo'lgani kabi analogdan raqamliga o'tish shart emas. Bu Arduino IDE-da yozish
uchun kodni murakkablashtirdi, ammo bu holda bu kerak emas va bu juda ham
oson. Sensorning o'zi analog bo'lsa-da, lekin konversiyani amalga oshiradigan
tizimni o'z ichiga oladi va to'g'ridan-to'g'ri Arduino-ning raqamli kirishiga ulanishi
mumkin.
Voltajning o'zgarishi bo'lgan analog signal Arduino mikrokontrolleriga yuborish
uchun raqamli formatga o'tkaziladi. U uzatiladi 40 bitli ramka DHT11 tomonidan
olingan namlik va harorat ma'lumotlariga mos keladigan. Birinchi ikkita 8-bitli
guruh namlik uchun, ya'ni ushbu ramkaning eng muhim 16 biti. Keyin qolgan 2 ta
harorat uchun 8-bitli guruhlar. Ya'ni namlik uchun ikki bayt va harorat uchun ikki
bayt
0011
bor.
0101
0000
0010
0001
Masalan:
1000
0000
0000
0011
1001
Bu holda 0011 0101 0000 0010 namlik qiymati va 0001 1000 0000 0000
haroratdir. Birinchi qism butun son uchun, ikkinchi qism esa o'nlik uchun. 0011
1001 ga kelsak, ya'ni oxirgi 8-bit parite xatolarga yo'l qo'ymaslik. Shunday qilib,
translyatsiya paytida hamma narsa to'g'ri ekanligini tekshirishingiz mumkin. Bu
avvalgi bitlarning yig'indisiga to'g'ri keladi, shuning uchun agar summa tenglikka
teng bo'lsa, u to'g'ri bo'ladi. Men qo'ygan misolda bunday bo'lmaydi, chunki siz
5
ko'rib turganingizdek, bu mos kelmaydi ... Bu muvaffaqiyatsizlikka ishora qiladi.
Bu ma'lum bo'lganidan so'ng, DHT11 ning texnik darajasidagi keyingi narsa - bu
pinlar. The kontaktlar yoki pinout Ushbu qurilmaning oddiy qismi, chunki unda
faqat 4 tasi mavjud. Pimlardan biri quvvat yoki Vcc uchun, ikkinchisi
ma'lumotlarni uzatish uchun I / O uchun, ulanmagan NC pinasi va erga ulanish
uchun GND Arduino bilan integratsiya
DHT11-ning pinout-ni bilganingizdan so'ng va shuningdek Arduino kengashi,
ulanish juda oddiy. Esingizda bo'lsa, agar siz tenglikni ichiga o'rnatilgan DHT11
modulini tanlagan bo'lsangiz, pinlar uchta bo'ladi, chunki ishni osonlashtirish
uchun NC o'chiriladi. Siz qilishingiz kerak bo'lgan narsa - bu avvalgi rasmdagi
diagrammada ko'rinib turganidek, er pinini Arduino-ning GND ulanishlaridan
biriga
ulashdir.
Boshqa tomondan, quvvat pimi ulangan bo'lishi kerak Arduinodan 5v
ulanish, Shunday qilib sensor GND va Vcc bilan to'liq quvvatlanadi, ammo
hozirda ma'lumotlar yo'q. Ma'lumotlarni DHT11 datchigidan Arduino platasiga
uzatish uchun har qanday raqamli yozuvlardan foydalanishingiz mumkin, masalan,
rasmda paydo bo'lgan 7 ... Endi sizda kerakli Arduino IDE ni yaratgandan so'ng,
uni ishlatishga tayyor bo'lgan barcha narsalar mavjud.
Kod Agar sensor sizning loyihangizda uzoqroq bo'lsa va siz 20 metrdan uzunroq
kabeldan foydalanmoqchi bo'lsangiz, unda 5k tortish qarshiligidan foydalaning,
kattaroq kabellar uchun bu mutanosib ravishda katta bo'lishi kerak. E'tibor bering,
agar siz 3,5v o'rniga 5v quvvatdan foydalansangiz, kuchlanish pasayishi sababli
kabel 20 sm dan oshmasligikerak.
Ular tavsiya qilgan narsa ekanligini unutmang har 5 soniyada o'lchovlarni
bajaring, DHT11 ishlashi mumkin bo'lgan namuna olish chastotasi yuqori bo'lsada,
lekin
tez-tez
bajarilsa,
unchalik
aniq
bo'lmasligi
mumkin.
Arduino IDE-dagi kod To'g'ridan-to'g'ri kodga o'ting, shunday deb ayting Arduino
IDE DHT11 yordamida hayotingizni osonlashtiradigan xususiyatlarga ega bo'lgan
6
bir qator mavjud kutubxonalardan foydalanishingiz mumkin. Masalan, ulardan biri
bu Adafrutni ta'minlaydi. PDF-da Arduino bilan boshlanadigan boshlanuvchilar
uchun qo'llanma borligini unutmang bu yerdan bepul yuklab oling va bu sizga
yordam
berishi
mumkin.
Tegishli kutubxonani o'rnatgandan so'ng, sharh berishingiz mumkin kodni
kiriting Arduino bilan loyihangiz uchun DHT11 harorat va namlik sensorini
boshqarish. Masalan:
1
#include "DHT.h"
2
const int DHTPin = 7;
3
DHT dht(DHTPin, DHTTYPE);
4
void setup() {
5
Serial.begin(9600);
6
Serial.println("Midiendo...");
7
dht.begin();
8
}
9
void loop() {
10
delay(2000);
11
float h = dht.readHumidity();
12
float t = dht.readTemperature();
13
if (isnan(h) || isnan(t)) {
14
Serial.println("Fallo en la lectura del sensor DHT11");
15
return;
16
}
17
Serial.print("Humedad relativa: ");
18
Serial.print(h);
19
Serial.print(" %\t");
20
Serial.print("Temperatura: ");
7
21
Serial.print(t);
22
Serial.print(" ºC ");
Annotatsiya:
Bugungi
kunda
respublikamizda
muhtaram Prezidentimiz
tomonidan qishloq xo‘jaligini raqamlashtirish, qishloq xo‘jaligi sub'ektlari
o‘rtasidagi o‘zaro munosabatlarda bozor tamoyillarini joriy etish, zamonaviy
resurs tejovchi va intensiv agrotexnologiyalarni joriy etishga alohida e'tibor
qaratilmoqda. 2017-yildan hozirgi kungacha butun dunyo bo‘ylab qishloq
xo‘jaligi uchun avtomatlashtirilgan tizimlar va texnologiyalarning ommalashib
kelmoqda.
Kalit soʻzlar: datchik, namgarchilik datchiklari, ma’lumotlar liniyasi, namlik
miqdori.
Dehqonchilikda datchik va sensorlardan foydalanish — intellektual ferma
tashkil etishda muhim qadam hisoblanadi. O‘nlab kvadrat kilometr joydan ular
radiokanallar orqali nazoratdagi ob’yektlar holati — asosan, tuproqning namlik
darajasi, harorati, o‘simlikning sog‘lomlik darajasi, yonilg‘i zaxirasi va boshqa
muhim parametrlar haqida uzluksiz ma’lumot yetkazib tura oladi. Masalan,
nazorat nuqtalariga o‘rnatiladigan sensorlar tuproq xususiyatlarining asosiy
tizimlarini aniqlashga moslashtirilgan. Datchiklar esa tabiiy xilma-xillik (relef,
tuproq turi, yorug‘lik, ob-havo, begona o‘tlar va zararkunandalar miqdori),
kasallikka chalingan o‘simlik, hosildorlik haqida oldindan ma’lumot beradi.
Sensor va datchiklar nafaqat ekin yetishtirishga, balki hosilni to‘liq saqlashga
ham yordam beradi. Bularning bari o‘simliklarni parvarishlashga aql bilan
yondashuvni ta’minlaydi.
Ma’lumotlarga qaraganda Dunyo bo‘yicha 70 foiz toza suv qishloq xo‘jaligi uchun
sarflanib, achinarlisi uning 60 foizi shunchaki isrof bo‘lib ketar ekan. Bu
muammoni ham qishloq xo‘jaligini raqamlashtirish tizim hal qiladi — tizim suv
nasoslarini masofadan turib boshqarish imkonini berib, fermerlarni suv oqishi va
8
yetishmovchiligi haqida ogohlantiradi. Hindistonlik fermerlar bu borada «Nano
Ganesh» mobil tizimidan foydalanishadi. Tizim yordamida ular suvni,
mablag‘larini va vaqtlarini tejab qolishga erishmoqdalar[1]. Chilida esa mevalar
plantasiyasini datchiklar bo‘yicha sug‘orish suv sarfini 70 foizga kamaytirish
imkonini bermoqda.
Endilikda esa bir qator innovatsion g’oyalar asosida yuqoridagi ishlarni amalga oshirish
yo’lga qo’yilmoqda. Jumladan tuproqning namgarchilik xolatidan kelib chiqqan
holda sug‘orish texnologiyalaridan keng foydalanish yo’lga qo’yilmoqda. Bu
texnologiyaning asosi bir necha turdagi datchiklardan foydalanish bilan bog’liq.
Shunday datchiklardan biri sifatida namgarchilik datchiklarini misol sifatida keltirsak
bo’ladi. Bu turdagi datchik atrofdagi bo'shliqdagi namlik miqdori bir kubometr
havodagi suv massasi sifatida hisoblanadi va to'yinganlik foizi sifatida
aniqlanadi. Har qanday namlik sensori ishlashi namlikning fizik miqdorini elektr
signaliga aylantirishga asoslangan bo’ladi. Suv miqdorini aniqlashda esa namlik
sezgichlari to'g'ridan-to'g'ri yoki bilvosita o'lchash usullaridan foydalanish
mumkin[1]. Namlik sensori (yoki gigrometr) namlik va havo haroratini
sezadi, o'lchaydi va
1-rasm. Namlikni sezuvchi sensori namunasi.
9
Namlik
sensori
o'zgartiradigan
elektr
tokini
o'zgarishlarni
yoki
havodagi
aniqlash
orqali
haroratni
ishlaydi.
Zamonaviy namlik o'lchagichlarda dukkakli va donli ekinlar,
shuningdek, turli urug' va o'tlarning namlik darajasini tez
tekshirish uchun ishlatiladi. Bunday holda, qurilma nafaqat
laboratoriya sharoitida, balki ekinlarni saqlash, sotish yoki
yetishtirish
joyida
ham
ishlatilishi
mumkin.
Namlik
o'lchagichni yig'ish, quritish yoki saqlash vaqtida ishlatish
mumkin [2]. Bu esa quyidagi 2-rasmda ko’rsatilgan.
2-rasm. DHT11 harorat va namlikni o'lchaydigan oddiy
datchik.
Bu yerda 1-VCC - Plus manba 3,5 … 5,5 V, 2-Data - Namlik
va temperatura ma’lumotlari vaqtini (Data) orqali habar berish,
3-NC – Zaxira, 4-Ground - Minus manba. Ushbu qurilmalar
modelga qarab har xil sozlamalarga ega bo'lishi mumkin[3].
Birinchidan, ishlatishdan oldin o'rganilayotgan obektni turi
aniqlanadi. Namlik o'lchagichni ishlatganda, namuna to'g'ridanto'g'ri qurilmaga qo’yiladi va namlik darajasini tekshirish
dasturi boshlanganidan bir necha soniya o'tgach, sinov natijasi
displeyda ko'rsatiladi.
Namlik datchiklari namlik sezgichlarining eng arzon turlaridan
biri. Uning ishlashi namlikni yutish uchun ba'zi o'tkazuvchi
10
materiallarning xususiyatiga asoslanadi, buning natijasida
elementning omik qarshiligi o'zgaradi. Bunday datchik Arduino
mikrokontrollerga ulagan holda dasturiy ta’minot asosida
nazoratni amalga oshirish prinsipi quyida ko’rsatilgan (3rasm).
3. Arduino bilan DHT11 namlikni o'lchaydigan datchik orqali
mikrokontrollergaulanish
sxemasi.
Sug'orishda tuproqdagi namlik ko'payadi, bu esa tuproqning
o'tkazuvchanligini
sezilarli
darajada
oshiradi.
Suv
bug'langandan so'ng, tuproq quriydi va datchik elektrodlari
orasidagi qarshilik yana oshadi. Bu jarayonni grafikda
ko`radigan bo`lsak u quyidagicha bo`ladi[4].
Har bir yangi bitni uzatishdan oldin, datchik ma'lumotlar
liniyasini 50 mks davomida nolga tushadi, so'ngra uni 1 holatga
qo'yib yuboradi. Datchik ma'lumotlar liniyasini 1 ga qancha
chiqarishiga qarab, mikrokontroller qaysi bit uzatilganligini
aniqlaydi. Agar keyingi nolga tushgungacha bo'lgan vaqt
oralig'ining davomiyligi 26-28 mks bo'lsa, u holda 0, 70 mks
bo'lsa, 1 uzatiladi[5]. Uzatilgan ma'lumotlarning umumiy
miqdori 40 bitni tashkil qiladi: 1 va 2 bayt namlik haqidagi
ma'lumotlarning mos ravishda butun va to`ldiruvchi qismini, 3
va 4 baytda harorat haqidagi ma'lumotlarning butun va
to`ldiruvchi qismini o'z ichiga oladi va nazorat summasi 5 bayt,
bu oldingi 4 bayt qo'shilgandan so'ng oxirgisi 8 bit
hisoblanadi[6]. Ma'lumotlar paketini uzatgandan so'ng, datchik
mikrokontrollerning keyingi so'roviga qadar to’xtash rejimiga
11
o'tadi.
Yuqorida ko’rib o’tilgan oddiygina misol bu texnologiyaning
naqadar samaradorligini, keng masshtablarda joriy etilsa
suvdan oqilona foydalanish, tejash imkonini yaratib berishini
ko’rsatadi.
Adabiyotlar ro’yhati
1. E. Udd, Fiberoptic sensors, CRC Press, 2006
2. R. Narayanaswamy, O. S. Wolfbeis, Optical Sensors:
Industrial, Environmental and Diagnostic Applications,
2004.
3. P. Ficocelli, “Fiber optic Thermal Monitoring Systems for
SAGD”, PTAC Technology Information Session, March,
2008.
4. P.Ferdinand,La saga des Capteurs à Fibres Optiques depuis
35 ans, Colloque 2013 du Club CMOI
Mesures
Optiques
pour
«Contrôles
l’Industrie»
de
et
la
Société Française d’Optique, 18-21 nov. 2013, Orléans
5. O.
Sezerman, “Fiber Optics Distributed Strain and
Temperature
Sensor
(DSTS)”,
www.ozoptics.com,
September, 2008.
6. NI, “Fiber-Optic Sensing”,http://www.ni.com/opticalsensing/, 2012.
AM2302 namlik sig'imi raqamli harorat va namlik moduli kalibrlangan raqamli signal
chiqishi bilan harorat va namlik sensori. U yuqori ishonchlilik va mukammal uzoq
muddatli barqarorlikka ega mahsulotlarni ta'minlash uchun maxsus raqamli modul
olish texnologiyasi va harorat va namlikni aniqlash texnologiyasidan foydalanadi.
Sensor sig'imli sezgir elementni va yuqori aniqlikdagi haroratni o'lchash elementini
o'z ichiga oladi va yuqori samarali 8-bit mikrokontroller ulangan. Shuning uchun
mahsulot mukammal sifat, o'ta tezkor javob, shovqinga qarshi qobiliyat, iqtisodiy
12
jihatdan samarali afzalliklarga ega. Har bir sensor juda aniq namlik kalibrlash
kamerasida sozlangan. Kalibrlash koeffitsientlari mikrokontrollerda dastur shaklida
saqlanadi, bu kalibrlash koeffitsientlarini chaqirish uchun aniqlash signalini qayta
ishlash ichidagi sensor. Standart yagona avtobus interfeysi, yaratish tizimi integratsiya
osonroq va tezroq. Kichkina o'lcham, kam quvvat iste'moli, signal uzatish masofasi 20
metrgacha yoki undan ko'p, bu uni barcha turdagi ilovalar va hatto eng talabchan
ilovalar uchun eng yaxshi tanlov qiladi. Ulanishni osonlashtirish uchun 3-pin (yagona
avtobus interfeysi) uchun mahsulotlar. Foydalanuvchi ehtiyojlariga ko'ra maxsus
qadoqlash taqdim etilishi mumkin.
Ikkinchidan, qo'llash doirasi HVAC, namlagichlar, sinov va tekshirish uskunalari,
iste'mol tovarlari, avtomobillar, avtomatik boshqaruv, ma'lumotlarni qayd qiluvchilar,
maishiy texnika, namlik regulyatorlari, tibbiy, ob-havo stantsiyalari va boshqa tegishli
namlikni aniqlash nazorati.
Uchinchidan,
mahsulotning
diqqatga
sazovor
joylari
Ultra past energiya iste'moli, uzatish masofasi, barcha avtomatik kalibrlash, sig'imli
namlik sensoridan foydalanish, to'liq almashtiriladigan, standart raqamli bitta avtobus
chiqishi, mukammal uzoq muddatli barqarorlik, yuqori aniqlikdagi haroratni o'lchash
komponentlari.
To'rtinchidan, mahsulot parametrlari
Hajmi: 40 * 23 mm
Og'irligi:4g
Voltaj: 5V
Portlar:
Harorat
Namlik
raqamli
ikki
yo'nalishli
diapazoni:
diapazoni:
20-90
bitta
±
{0}}
foiz
RH
avtobus
±
2
0,5
foiz
RH
Platforma :, bitta chipli
DHT11 va DHT22 datchiklari tez va aniq emas, lekin ular oddiy, arzon va
mashg‘ulotlar uchun ajoyib. Ular ikki qismdan iborat - namlik sensori va termistor.
Ichidagi chip A / D konvertatsiyasini amalga oshiradi va har qanday
mikrokontroller o‘qishi mumkin bo‘lgan raqamli signalni chiqaradi.
13
DHT11 va DHT22 sensorlar o‘rtasidagi farq nima?
DHT sensorlarining ikkita versiyasi bir -biriga o‘xshash va bir xil pinoutga
ega. Ularning farqlari xarakteristikada. Xususiyatlar:
DHT11 sensori:
•
namlikni 20-80% oralig‘ida aniqlash
•
haroratni 0 ° C dan + 50 ° C gacha aniqlash
•
ovoz berish tezligi sekundiga 1 marta
DHT22 sensori:
•
namlikni 0-100% oralig‘ida aniqlash
•
haroratni -40 ° C dan + 125 ° C gacha aniqlash
•
2 soniyada 1 marta ovoz berish chastotasi
Shunday qilib, DHT22 sensorining ishlashi DHT11 bilan solishtirganda
yaxshiroq va shuning uchun u biroz qimmatroq. Har 1-2 soniyada tez-tez o‘qish
ishlamaydi, lekin, ehtimol, sizning loyihangiz uchun yuqori ishlash talab
qilinmaydi.
DHT sensorlarini Arduinoga ulash
DHT datchiklari standart pinlarga ega va ularni panelga o‘rnatish oson.
DHT sensorlar 4 ta chiqishga ega:
1.
tok kuchi.
2.
ma'lumotlar chiqishi
3.
ishlatilmaydi.
4.
GND (tuproq).
Quvvat va ma'lumotlar pinlari orasiga 10K rezistor qo‘yilishi kerak.
DHT sensori ko‘pincha tayyor modul sifatida sotiladi. Bunday holda, u
uchta pimga ega va qarshiliksiz ulanadi, chunki qarshilik allaqachon platada.
Eskizni tekshirgichga yuklang va Service-> Port Monitor yordamida to‘g‘ri
ishlayotganini tekshiring:
Siz namlik va haroratni ko‘rishingiz kerak. O‘zgarishlarni, masalan,
datchikdan nafas chiqarish orqali ko‘rish mumkin (oynani tuman qilish kabi).
Nafas olish namlikni oshiradi.
Ushbu DHT11 harorat va namlik sensori harorat va namlik sensori
qobiliyatiga ega bo'lgan kalibrlangan raqamli signal chiqishiga ega. U yuqori
darajada ishlaydigan 8 bitli mikrokontroler bilan birlashtirilgan. Uning
texnologiyasi yuqori ishonchlilik va mukammal uzoq muddatli barqarorlikni
ta'minlaydi. Ushbu sensor rezistiv element va nam NTC haroratini o'lchash
asboblari uchun sensorni o'z ichiga oladi. Zo'r sifat, tezkor javob, aralashishga
qarshi qobiliyat va yuqori ishlashga ega.
14
Har bir DHT11 sensori namlikni kalibrlash kamerasida juda aniq kalibrlash
xususiyatlariga ega. OTP dasturi xotirasida saqlanadigan kalibrlash koeffitsientlari,
ichki sensorlar jarayonda signallarni aniqlaydi, biz ushbu kalibrlash
koeffitsientlarini chaqirishimiz kerak. Tez va oson bo'lish uchun bitta simli ketmaket interfeys tizimi birlashtirilgan. Kichik o'lchamdagi, past quvvatli, signallarni
uzatish masofasi 20 metrgacha, bu turli xil dasturlarni va hatto eng talabchanlarini
ham yoqadi. Mahsulot 4 pinli bitta qatorli pinli paket. Qulay ulanish,
foydalanuvchilarning ehtiyojlariga qarab maxsus paketlar taqdim etilishi mumkin.
Namlik sensori - nisbiy namlikni o‘lchash va raqamli signalga, shuningdek
standart kuchlanish signaliga aylantirish uchun mo‘ljallangan qurilma.
Sensorning himoya qoplamalari qurilmani atrof -muhitning turli sharoitlari va
vazifalarida, shuningdek namlik ko‘rsatkichini boshqarishda foydalanishga imkon
beradi: binolarni avtomatlashtirish, kimyoviy ishlab chiqarishda quritishni nazorat
qilish, qishloq xo‘jaligida.
Namlikni o‘lchash usullari shartli ravishda to‘g‘ridan -to‘g‘ri va bilvosita
bo‘linadi. To‘g‘ridan -to‘g‘ri usullarda, sinov materiallari quruq moddalar va namlik
uchun maxsus tarqatiladi. Bilvosita usullar materialning namligi bilan bog‘liq bo‘lgan
jismoniy miqdorlarni o‘lchaydi.
Namligi yuqori bo‘lgan xonalarda, gidrostat bo‘lgan fanni o‘rnatish odatiy holdir
- namlik sensori, hammomdagi havoning suv bug‘lari bilan to‘yinganligini tahlil qiladi.
Bunday qurilma faqat namlik darajasi oshib ketganda yoqiladi.
DHT11 va DHT22 datchiklari Arduino muhitida juda mashhur va ko‘pincha ob havo stantsiyalari va aqlli uy loyihalarida ishlatiladi. Ushbu maqolada biz ushbu
sensorlardan qanday foydalanishni, eskizni yozish uchun kutubxonalardan
foydalanadigan Arduino Uno, Mega yoki Nano platalarga qanday to‘g‘ri ulanishni bilib
olamiz. Bu sensorlar o‘ziga xos tezligi va aniqligi bilan ajralib turmaydi, lekin ulardan
foydalanish oson, ular mavjudligi va arzonligi tufayli birinchi loyihalarida xavfsiz
ishlatilishi mumkin.
Sensor ikki qismdan iborat - sig‘imli harorat sensori va gigrometr. Birinchisi
haroratni o‘lchash uchun, ikkinchisi havo namligini o‘lchash uchun ishlatiladi. Ichidagi
chip analog-raqamli konversiyalarni amalga oshirishi va mikrokontroller tomonidan
o‘qiladigan raqamli signalni taqdim etishi mumkin.
Ko‘pgina hollarda, DHT11 yoki DHT22 ikkita versiyada mavjud: metall kontaktli
plastmassa korpus shaklidagi alohida sensori yoki sensori va lehimli quvur elementlari
bo‘lgan tayyor modul sifatida. Ikkinchi variantni haqiqiy loyihalarda ishlatish ancha
oson va yangi boshlanuvchilar uchun tavsiya etiladi.
DHT11 datchigi(sensori)
•
iste'mol oqimi - 2,5 mA (ma'lumotlarni konvertatsiya qilishda maksimal
qiymat);
15
•
•
•
•
•
•
Namlikni 20% dan 80% gacha o‘lchaydi. Xato 5%gacha bo‘lishi mumkin;
Haroratni 0 dan 50 darajagacha o‘lchashda ishlatiladi (aniqlik - 2%)
Umumiy o‘lchamlar: uzunligi 15,5 mm; Kengligi 12 mm; Balandligi 5,5 mm;
Elektr ta'minoti - 3 dan 5 voltgacha;
Vaqt birligi uchun bitta o‘lchov (sekund). Ya'ni, chastota 1 Gts;
4 ta ulagich. Qo‘shnilar orasidagi masofa 0,1 dyum.
DHT22 datchigi
•
•
•
Elektr ta'minoti - 3 dan 5 voltgacha;
Konversiya paytida maksimal oqim - 2,5 mA;
Namlikni 0% dan 100% gacha o‘lchash imkoniyati. O‘lchov aniqligi 2% dan 5%
gacha;
•
Minimal o‘lchangan harorat - minus 40, maksimal - 125 daraja Selsiy (o‘lchov
aniqligi - 0,5);
•
Qurilma 2 soniya ichida bitta o‘lchovni bajarishga qodir. Chastotasi - 0,5 Gts
gacha;
•
Umumiy o‘lchamlar: uzunligi 15,1 mm; Kengligi 25 mm; Balandligi 5,5 mm;
•
4 ta ulagich mavjud. Qo‘shni orasidagi masofa - 0,1 ';
Shubhasiz, arduinoda DHT11 harorat va namlik sensori ishlatilganda, qurilma
DHT22 ga qaraganda kamroq aniqroq qiymat beradi. Analog o‘lchangan qiymatlarning
katta diapazoniga ega, ammo narx mos keladi. DHT22 harorat va namlik sensori, xuddi
analogi kabi, bitta raqamli chiqishga ega, shuning uchun siz o‘qishni har 1-2 soniyada
bir martadan ko‘p bo‘lmagan holda olishingiz mumkin.
Harorati noldan yuqori bo'lgan har qanday odam yoki hayvon radiatsiya shaklida
issiqlik energiyasini chiqaradi. Bu nurlanish inson ko'ziga ko'rinmaydi, chunki u
infraqizil to'lqin uzunliklarida, odamlar ko'ra oladigan spektrdan pastroqda tarqaladi. Bu
energiyani o'lchash haroratni o'lchash bilan bir xil emas. Harorat issiqlik
o'tkazuvchanligiga bog'liq bo'lganligi sababli, odam xonaga kirganda, u xonadagi
haroratni darhol o'zgartira olmaydi. Biroq, PIR sensori izlayotgan tana harorati tufayli
noyob infraqizil emissiya mavjud.
HC-SR501 infraqizil harakat sensori ishlash printsipi oddiy, yoqilganda sensor
uning aniqlash zonasida "Oddiy" infraqizil nurlanishga o'rnatiladi. Keyin u
boshqariladigan hududda yurgan yoki harakatlanayotgan odam kabi o'zgarishlarni
qidiradi. Detektor infraqizil davoni aniqlash uchun piroelektrik sensordan foydalanadi.
Bu infraqizil nurlanishni qabul qilishga javoban elektr tokini hosil qiluvchi qurilma.
Transduser signal chiqarmaganligi sababli (masalan, ilgari aytib o'tilgan ultratovush
transduseri) u "passiv" jazolanadi. O'zgarish aniqlanganda, HC-SR501 chiqish signalini
o'zgartiradi.
16
HC-SR501 sensorining sezgirligi va samaradorligini oshirish uchun infraqizil
nurlanishni qurilmaga qaratish usuliga erishiladi, bunga "Fresnel Lens" yordamida
erishiladi. Ob'ektiv plastmassadan qilingan va gumbaz shaklida qilingan va aslida bir
nechta kichik Fresnel linzalaridan iborat. Plastmassa odamlar uchun shaffof bo'lsa-da, u
infraqizil nurlarga to'liq shaffofdir, shuning uchun u filtr vazifasini ham bajaradi.
HC-SR501 arzon PIR sensori bo'lib, u butunlay mustaqil bo'lib, mustaqil ravishda
yoki mikrokontroller bilan birgalikda ishlashga qodir. Sensor 3 dan 7 metrgacha
harakatni aniqlaydigan sezgirlikni sozlashga ega va uning chiqishi 3 soniyadan 5
daqiqagacha yuqori bo'lib turishi mumkin. Bundan tashqari, sensorda o'rnatilgan voltaj
regulyatori mavjud, shuning uchun u 4,5 dan 20 voltgacha bo'lgan doimiy kuchlanish
bilan quvvatlanadi va oz miqdorda oqim iste'mol qiladi. HC-SR501 3-pinli ulagichga
ega, maqsadi quyidagicha:
Pin maqsadi
► VCC - 4,5 dan 20 VDC gacha bo'lgan musbat doimiy kuchlanish.
► OUTPUT - 3,3 voltli mantiqiy chiqish. LOW kashfiyotni bildirmaydi,
YUQORI kimdir topilganligini bildiradi.
► GND - tuproq.
Doskada bir nechta parametrlarni o'rnatish uchun ikkita potansiyometr ham
mavjud:
► SENSITIVITY - maksimal va minimal masofani (3 metrdan 7 metrgacha)
o'rnatadi.
► VAQT - aniqlangandan keyin chiqish YUQORI qoladigan vaqt miqdori.
Kamida 3 soniya, maksimal 300 soniya yoki 5 daqiqa.
Jumper tayinlari:
► H - Hold yoki Repeat sozlamasi. Bu holatda HC-SR501 harakatni aniqlashda
davom etar ekan, YUQORI signal chiqarishda davom etadi.
► L - bu tanaffus yoki takrorlanmaslik variantidir. Bu holatda chiqish TIME
potentsiometri sozlamasi tomonidan belgilangan muddat davomida YUKOR bo‘lib
qoladi.
HC-SR501 taxtasida ikkita komponent uchun qo'shimcha teshiklar mavjud, yaqin
joyda belgi bor, siz Fresnel linzalarini olib tashlash orqali qarashingiz mumkin.
Qo'shimcha teshiklarning maqsadi:
► RT - bu termistor yoki haroratga sezgir qarshilik uchun. Buni qo'shish HCSR501 ni ekstremal haroratlarda ishlatishga imkon beradi va shuningdek, detektorning
aniqligini ma'lum darajada yaxshilaydi.
►
RL - yorug'likka bog'liq qarshilik yoki fotorezistor uchun ulanish.
Komponentni qo'shish orqali HC-SR501 faqat qorong'ida ishlaydi, bu harakatga sezgir
yoritish tizimlari uchun keng tarqalgan dastur hisoblanadi.
Piroelektrik sensorda infraqizil nurlanishni uzatuvchi materialdan tayyorlangan
ikkita to'rtburchaklar uyasi mavjud. Ularning orqasida ikkita alohida infraqizil sensor
elektrodlari mavjud: ulardan biri ijobiy chiqish signalini yaratish uchun mas'ul,
ikkinchisi esa salbiy. Ushbu qarorning sababi shundaki, biz infraqizil darajalarni
17
o'zgartirishni qidirmoqdamiz, balki atrofdagi infraqizil darajalarning o'zi emas. Ikki
elektrod bir-birini bekor qiladigan tarzda ulanadi. Agar yarmi boshqasidan ko'ra ko'proq
yoki kamroq infraqizilni ko'rsa, chiqish yuqori yoki past bo'ladi.
Sensor ishlamay qolganda (ya'ni sensor atrofida hech qanday harakat yo'q), ikkala
uyasi ham bir xil miqdordagi infraqizil nurlanishni aniqlaydi, natijada nol chiqish paydo
bo'ladi.
Lekin odam yoki hayvon kabi issiq narsa o'tib ketganda ; u birinchi navbatda PIR
sensorining yarmini qoplaydi, bu ikki yarmi o'rtasida ijobiy differentsial o'zgarishga olib
keladi. Issiq ob'ekt sezgi maydonini tark etganda, buning aksi sodir bo'ladi, bu
sensorning salbiy differentsial o'zgarishini keltirib chiqaradi. Tegishli signal pulsi
sensorning chiqish pinini yuqori haydashiga olib keladi.
PIR harakat detektori HC-SR501
Biror kishi hududni tark etgani yoki kirganini yoki yaqinlashganini aniqlashi kerak
bo'lgan Arduino loyihalarimizning aksariyati uchun HC-SR501 PIR sensorlari juda
yaxshi tanlovdir. Ular kam quvvat va arzon narxga ega, juda bardoshli, linzalarning
keng assortimentiga ega, ular bilan aloqa qilish oson va havaskorlar orasida juda
mashhur.
HC-SR501 PIR sensori uchta pinga ega: VCC quvvati, chiqish va tuproq (quyidagi
rasmda ko'rsatilgan). U o'rnatilgan voltaj regulyatoriga ega, shuning uchun uni 4,5 dan
12 voltgacha bo'lgan har qanday shahar kuchlanishidan quvvatlantirish mumkin, 5V
odatda ishlatiladi. Bundan tashqari, u bir nechta sozlamalarga ega. Keling, ularni
tekshirib ko'ramiz.
Bir nechta parametrlarni o'rnatish uchun taxtada ikkita potansiyometr mavjud:
Sezuvchanlik - harakatni aniqlash mumkin bo'lgan maksimal masofani belgilaydi.
U 3 metrdan 7 metrgacha o'zgarib turadi. Siz olgan haqiqiy masofaga makoningizning
joylashuvi ta'sir qilishi mumkin.
Vaqt - Chiqish signali aniqlangandan keyin yuqori bo'lib qoladigan vaqt miqdorini
belgilaydi. Minimal - 3 soniya, maksimal - 300 soniya yoki 5 daqiqa.
Nihoyat, taxtada jumper mavjud (ba'zi modellarda jumper lehimlanmagan). Uning
ikkita moslashtirish opsiyasi mavjud:
H - ushlab turish/qayta urinish/qayta ishga tushirish. Bu holatda HC-SR501
harakatni aniqlashda davom etar ekan, yuqori mantiqiy darajani chiqarishda davom
etadi.
Endi biz PIR sensori qanday ishlashini to'liq tushundik, uni Arduino platamizga
ulashimiz mumkin!
PIR sensorlarini mikrokontrollerga ulash juda oddiy. PIR raqamli chiqish
vazifasini bajaradi, shuning uchun siz qilishingiz kerak bo'lgan narsa uning chiqish
pinining yuqori (harakat aniqlangan) yoki mantiqiy past (aniqlanmagan) holatini
18
kuzatishdir. PIR sensoriga 5V qo'llang va erga ulang. Keyin chiqishni raqamli pin 2 ga
ulang.
HC-SR501 to'g'ri ishlashi uchun jumperni H (qayta ishga tushirish) holatiga
o'rnatishingiz kerak. Bundan tashqari, "vaqt" potentsiometrini soat sohasi farqli ravishda
to'liq aylantirib, vaqtni minimal (3 soniya) ga o'rnatishingiz kerak bo'ladi.
Sezuvchanlikni istalgan pozitsiyaga o'rnating yoki ishonchingiz komil bo'lmasa, uni
o'rta holatga qo'ying.
Endi siz kodni yuklashga va PIR sensoridan foydalanishga tayyormiz.
nt ledPin = 13;
// выбор вывода для светодиода
int inputPin = 8; // выбор входного вывода (для PIR датчика)
int pirState = LOW; // начинаем работу, предполагая, что движение не обнаружено
int val = 0;
// переменная для чтения состояния вывода
void setup()
{
pinMode(ledPin, OUTPUT);
pinMode(inputPin, INPUT);
// настраиваем вывод светодиода, как выход
// настраиваем вывод датчика, как вход
Serial.begin(9600);
}
void loop()
{
val = digitalRead(inputPin); // прочитать входное значение
if (val == HIGH)
// проверить, есть ли на входе высокий логический уровень
{
digitalWrite(ledPin, HIGH); // включить светодиод
if (pirState == LOW)
{
Serial.println("Motion detected!"); // напечатать об изменении выхода
pirState = HIGH;
}
}
else
{
digitalWrite(ledPin, LOW); // выключить светодиод
if (pirState == HIGH)
{
Serial.println("Motion ended!"); // напечатать об изменении выхода
pirState = LOW;
} }}
Foydalanilgan internet resurslari.
1. https://prodatchik.ru/vidy/datchik-vlazhnosti/
19
2. https://arduino-kit.ru/blogs/blog/project_14
3. https://xdomus.ru/arduino-i-umnyj-dom/monitoring-part2/
nazariy qismi.
Potentsiometr - bu kichik komponent, uni qanday ishlatishni bilishingiz kerak.
U ko‘pincha musiqiy asboblar hajmini boshqarish, chiroqlar yorqinligini
boshqarish va boshqalar kabi sxemalarda ishlatiladi.
Potentsiometr - sozlanishi qarshilikka ega o‘zgaruvchan qarshilik.
Potentsiometrlar robototexnika sohasida har xil parametrlarni - ovoz balandligi, quvvat,
kuchlanish va boshqalarni boshqaruvchi sifatida ishlatiladi. Bizning modelimizda
LEDning yorqinligi potansiometr tugmasining aylanishiga bog‘liq bo‘ladi. Bu ham
asosiy sxemalardan biridir.
Agar siz potentsiometrni yaxshi bilmasangiz, uni tushunish qiyin bo‘lib tuyulishi
mumkin. Lekin unday emas. Ishlayotganini ko‘rish uchun oxiridagi ulanish misollarini
ko‘rib chiqing.
Potentsiometr nima?
Asosiysi, bu qarshilik. Ammo, agar qarshilikning klassik qarshiligining qiymati
o‘zgarishsiz qolsa, potansiyometrda siz uning slayderini burish orqali qarshilik
qiymatini o‘zgartirishingiz mumkin.
Uning uchta pini bor va datchik shunday ko‘rinadi:
Potansiyometrning ikki yon kontaktlari o‘rtasida rezistiv material tasmasi
mavjud. Masalan, uglerod kabi. Ushbu material qarshilik ko‘rsatadi.
Biz o‘rta kontaktni toymasin kontakt deb ataymiz.
Slayderni chapga siljitganda, o‘rta va chap kontaktlar orasidagi qarshilik
kamayadi va o‘rta va o‘ng pinlar orasidagi qarshilik kuchayadi.
Slayderni o‘ngga siljiting va buning aksi bo‘ladi.
Potentsiometrni sotib olayotganda siz qiymatni tanlashingiz kerak. Masalan, 100
kΩ. Bu qiymat ikkita oxirgi kontakt orasidagi qarshilikdir. Va bu siz undan olishingiz
mumkin bo‘lgan eng katta qarshilik.
Ulanishga doir misoli. O‘zgaruvchan qarshilik
Agar sizga qarshilikni o‘zgartirmoqchi bo‘lgan oddiy rezistor kerak bo‘lsa, sizga
faqat ikkita pin kerak bo‘ladi: o‘rta va yon pinlardan biri.
Yuqoridagi rasmda LEDni boshqarishning oddiy sxemasi ko‘rsatilgan.
Qo‘shimcha qarshilik, potansiyometr qarshiligini nolga o‘zgartirsangiz ham, LEDni
o‘chirishga yo‘l qo‘ymaslik uchun mo‘ljallangan.
Potansiyometr milini bir tomonga burang, qarshilik kuchayadi. Uni boshqa
tomonga burang, qarshilik kamayadi.
Analog pinlar va umuman ADPlar potentsiometrlar (aka o‘zgaruvchan qarshilik
yoki reostat) bilan ishlashda tez -tez ishlatiladi. ADPning 10 biti sizga dastur
20
qiymatlarini 0 dan 1023 gacha (yoki ularning ko‘paytmalariga) o‘rnatish imkonini
beradi, ya'ni dasturning borishiga ta'sir qilish, ba'zi sozlamalarni o‘zgartirish va h.k.
Potentsiometrning har doim uchta oyog‘i bor: ikkita ekstremal va bitta markaziy.
Birgalikda bu 0-VCC diapazonidagi kuchlanishni o‘zgartirishga imkon beradigan
kuchlanish bo‘luvchi.
Potentsiometr Arduino-ga shu tarzda ulanadi, o‘rta pin har qanday A-pinli,
ekstremallari GND va quvvatga ulanadi. Qiymat o‘zgarishi yo‘nalishi GND va quvvatni
ulash tartibiga bog‘liq. Qarshilik uchun, ushbu qo‘llanmada kuchlanish taqsimlagichlari
haqidagi yozuvni o‘qing. Ko‘pincha, mikrokontrolderlar uchun qarshilik 10 kΩ bo‘lgan
potentsiometrlar o‘rnatiladi, lekin diapazon, qoida tariqasida, juda keng: 1 kΩdan 100
kΩ gacha. Qancha ko‘p bo‘lsa, shovqinli signal keladi va agar siz ozroq olsangiz,
hozirgi yo‘qotishlar potansiyometrni isitishga tushadi va bu hech kimga kerak emas.
// LED bilan pinlarning nomlarini bering
// va potentsiometr
#define led 9
#define pot A0
void setup()
{
// LEDli pin – chiqish
pinMode(led, OUTPUT);
// Potensiometrli pin – kirish
pinMode(pot, INPUT);
}
void loop()
{
// x o‘zgaruvchini e'lon qilish
int x;
// potentsiometrdan kuchlanishni o‘qing:
// 0 dan 1023 gacha raqam oladi
// uni 4 ga bo‘ling, biz diapazonda raqam olamiz
// 0-255 (kasr qismi o‘chiriladi)
x = analogRead(pot) / 4;
// natijani LEDga yuboring
analogWrite(led, x);
Bir razryadli 7ta segmentli indikator.
Yetti segmentli LED indikatori-bu raqamli ma'lumotlarni ko‘rsatish qurilmasi.
Bu arab raqamlarini ko‘rsatadigan ko‘rsatkichning eng oddiy qo‘llanilishi. Harflarni
ko‘rsatish uchun murakkabroq ko‘p segmentli va matritsali ko‘rsatkichlardan
foydalaniladi.
Yetti segmentli LED indikatori, nomidan ko‘rinib turibdiki, ettita displey
elementidan (segmentlardan) iborat bo‘lib, ularni alohida-alohida yoqish va o‘chirish
21
mumkin. Ularni turli kombinatsiyalarga qo‘shib, siz ulardan arab raqamlarining
soddalashtirilgan tasvirlarini yasashingiz mumkin.
Segmentlar A dan G gacha bo‘lgan harflar bilan belgilanadi; sakkizinchi segment
- kasr sonlarni ko‘rsatish uchun o‘nlik nuqta (DP).
Ba'zida harflar yetti segmentli displeyda ko‘rsatiladi.
Oddiy LED displeyda to‘qqizta chiziq bor: biri barcha segmentlarning
katodlariga, ikkinchisi esa har bir segmentning anodiga o‘tadi. Bu zanjir "umumiy katod
zanjiri" deb nomlanadi, umumiy anodli zanjirlar ham bor (u holda buning aksi to‘g‘ri).
Ko‘pincha bazaning turli uchlarida bitta emas, balki ikkita umumiy xulosa chiqariladi bu o‘lchamlarni oshirmasdan simni osonlashtiradi. "Umumjahon" deb ataladiganlar ham
bor. Bundan tashqari, o‘rnatilgan smenali registrga ega ko‘rsatkichlar mavjud, buning
natijasida mikrokontroller portlarining ishlatilgan pinlari soni ancha kamayadi, lekin
ular ancha qimmat va amalda kamdan-kam qo‘llaniladi. Va cheksizlikni tushunish
imkonsiz bo‘lgani uchun, biz hozircha bunday ko‘rsatkichlarni ko‘rib chiqmaymiz
(shuningdek, segmentlar soni ancha ko‘p bo‘lgan ko‘rsatkichlar ham bor, matritsa).
Bir xonali yetti segmentli ko‘rsatkich Arduinoga paneli orqali ulanishi mumkin,
eng muhimi, Arduino Uno segmentlarini boshqarish uchun pinout (indikator pinout) ni
bilishdir. Keling, etti segmentli indikatorni Arduino-ga qanday ulashni va taymerli
oddiy dasturni qanday qilishni ko‘rib chiqaylik. Biz indikatorni soat tugmasi yordamida
to‘g‘ridan -to‘g‘ri mikrokontrolerdan boshqaramiz.
Yuqoridagi rasmda umumiy katodli (minus) bitta raqamli yetti segmentli
indikatorning pinouti ko‘rsatilgan. Modul - bu yettita LEDni (shu tufayli indikator o‘z
nomini oldi) va nuqta shaklidagi sakkizinchi LEDni o‘z ichiga olgan kichik LED
ko‘rsatkich. LEDlarni Arduinodan boshqa ketma -ketlikda yoqish orqali siz turli
raqamlarni ko‘rsatishingiz mumkin.
E'tibor bering, panelda qarshilik yo‘q, shuning uchun LEDlarni ulashda tashqi
rezistorlardan foydalaning. Agar umumiy anodli yetti segmentli indikatorning pinouti
siz uchun tushunarsiz bo‘lsa, unda siz quvvatni turli pimlarga ulash orqali pinoutni
empirik tarzda o‘rnatishingiz mumkin. Agar noto‘g‘ri yoqilsa, hech qanday dahshatli
narsa bo‘lmaydi, lekin rezistorsiz LEDlar yonib ketishi mumkin.
Modelni yig‘ish uchun bizga kerak:
•
Arduino Uno / Arduino Nano / Arduino Mega platasi;
•
bir xonali yetti segmentli indikator 5161as / hdsp 7503;
•
teginish tugmasi;
•
rezistorlar 220 Ohm;
•
panel;
•
papa-papa simlari.
Modelning Arduinoga ulanish sxemasi:
22
5161as / hdsp 7503 modulini smenali registrsiz ishlatish uchun indikatordagi
LEDlarni yoqish uchun ko‘p sonli Arduino Uno pinlaridan foydalanish kerak bo‘ladi.
Birinchi misolda, biz paneldagi turli raqamlarni ko‘rsatish uchun LEDlarni navbatma navbat yoqamiz / miltillatamiz. Yuqoridagi rasmda bo‘lgani kabi sxemani yig‘ing va
quyidagi eskizni mikrokontrollerga yuklang.
Ushbu model uchun quyidagi dastur mos keladi:
23
#define A 8
#define B 7
#define C 6
#define D 5
#define E 4
#define F 3
#define G 2
void setup() {
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
pinMode(E, OUTPUT);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
void loop() {
digitalWrite(A, LOW); //bir raqami
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
delay(1000);
digitalWrite(A, HIGH); //ikki raqami
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
delay(1000);
digitalWrite(A, HIGH); //uch raqami
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, HIGH);
delay(1000);
Kod uchun tushuntirishlar: eskiz katta, shuning uchun biz o‘zimizni uchta
raqam bilan chekladik. Arduino 7 segmentli indikatorda boshqa raqamlarni
ko‘rsatish qiyin emas.
24
Download