Laboratoriya ishi №19. Buzzer(Piezo emitent). Laboratoriya ishining maqsadi


Download 0.91 Mb.
Pdf ko'rish
bet9/12
Sana11.06.2022
Hajmi0.91 Mb.
#749980
1   ...   4   5   6   7   8   9   10   11   12
Bog'liq
4-didline
Toshkent axborot texnologiyalari universiteti telekommunikatsiya, 1-TOPSHIRIQ, ta\'lim muassasasi ijtimoiy pedagogning ish texnologiyasi, Umarov O, Server tomondan holatni boshqarish. Mvc texnologiyasi, Parabolik tipdagi tenglamalar yechimlarining xossalarini o 2, Aniq integralni taqribiy hisoblash formulalari, Test, 5-DETLINE, Biznes jarayon 1
Laboratoriyaning amaliy qismi. 
Modelni yig‘ish uchun bizga quyidagilar kerak: 
• 
Arduino Uno / Arduino Nano / Arduino Mega platasi; 
• 
plata (doska); 
• 
1 bipolyar tranzistor
• 
1 ta doimiy dvigatel; 
• 
1 dan 10 kOm gacha bo‘lgan 2 ta rezistor; 
• 
papa-papa va papa-mama simlari. 
Siz shahar motorini to‘g‘ridan -to‘g‘ri Arduino raqamli yoki analog portlariga 
ulay olmaysiz. Buning sababi, Arduino platasidagi pinlar 40 mA dan yuqori tokni 
uzatishga qodir emas. Bunday holda, shahar motoriga yukga qarab, yuzlab 
milliamperlar kerak bo‘ladi. Shu sababli, yuqori kuchlanishli elektr zanjirini L293D 
tranzistorli yoki Dvigatel qalqoni bilan boshqarishga ehtiyoj bor. 
 
Modelning Arduinoga ulanish sxemasi quyidagicha: 
DC motorini Arduinoga ulash sxemasi 
Elektr sxemasini yuqoridagi rasmda ko‘rsatilgandek yig‘ing. Agar siz 
panelda yig‘ilishiga diqqat bilan qarasangiz, tranzistor tugma vazifasini 
bajarayotganini sezasiz. Agar tugma itargich bosilganda elektr zanjirini yopsa, u 


holda tranzistor tayanchga kuchlanish qo‘llanilganda tokni o‘tkaza boshlaydi. 
Shunday qilib, biz Arduino-da avtomatik yoki yarim avtomatik dvigatelni 
boshqarishimiz mumkin. 
Ushbu model uchun quyidagi dastur mos keladi: 
void setup() { 
pinMode(11, OUTPUT); // 13 pin ni chiqishini e’lon qilamiz 

void loop() { 
digitalWrite(11, HIGH); // svetodiodni yoqamiz 
delay(2000); // 2 sekund kutamiz 
digitalWrite(11, LOW); // svetodiodni o‘chiramiz 
delay(2000); // 2 sekund kutamiz 

Agar siz payqagan bo‘lsangiz, bu darsdan olingan eskiz - Arduinodagi LEDni 
yoqish. Mikroprotsessor nuqtai nazaridan, Pin13 bilan nima bog‘liqligi muhim emas 
- LED, tranzistor yoki Arduinodagi Lightsaber uchun LED drayveri. E'tibor bering, 
R1 rezistori tranzistorning poydevorini erga tortadi va R2 qarshiligi mikrokontroller 
portini ortiqcha yuklanishdan himoya qiladi. 
Kod. Sensorli motorni boshqarish 
Arduino DC motorini boshqarish kodini boshqacha yozish mumkin. Keling, 
kontaktlarning zanglashiga fotorezistorni qo‘shamiz va xonadagi yorug‘lik darajasi 
pasayganda motorni avtomatik ravishda yoqamiz. Suyuqlik darajasi sensori yoki 
boshqa sensorlardan ham foydalanishingiz mumkin. Eskizda biz DC motorini 
boshqarish (yoqish / o‘chirish) uchun if va else iboralaridan foydalanamiz. 
Arduino UNOda shahar motorini boshqarish 
// A0 analog kirish uchun nom bering 
#define sensor A0 
// A0 analog kirish qiymatlari uchun nom bering 
// unsigned int faqat musbat sonlarni qabul qiladi 
unsigned int value = 0; 
void setup() { 
// 11 pin tranzistorli chiqish bo‘ladi (англ. «output») 
pinMode(11, OUTPUT); 

void loop() { 
// A0 analog kirishda fotorezistordan qiymatni o‘qing 
value = analogRead(sensor); 


// Agar qiymat 500 dan past bo‘lsa, tranzistorni yoqing 
if (value<500) digitalWrite(9,HIGH); 
// Aks holda (agar qiymati> 500 bo‘lsa), tranzistorni o‘chiring 
if (value>500) digitalWrite(9, LOW); 


Download 0.91 Mb.

Do'stlaringiz bilan baham:
1   ...   4   5   6   7   8   9   10   11   12




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2022
ma'muriyatiga murojaat qiling