2-Amaliy ish Mavzu: tinkercad com da temperatura orqali svetafor chiroqlarining ketma-ket o’zgarishi va tovush hosil qilish. Amaliy ishning maqsadi


Download 49.53 Kb.
Sana18.06.2023
Hajmi49.53 Kb.
#1566355
Bog'liq
2-amaliy ish


2-Amaliy ish
Mavzu: tinkercad.com da temperatura orqali svetafor chiroqlarining ketma-ket o’zgarishi va tovush hosil qilish.
Amaliy ishning maqsadi: tinkercad.com da svetafor yasab o’rganish. U haqida amaliy ko’nikmalar hosil qilish.
Amaliy topshiriq:
Temperaturadan foydalanib Svetafor yasash.
Amaliy topshiriqning bajarilishi:
Ushbu svetaforni yasashda Arduino Uno R3, Светодиод, Резистор,Датчик температура,Пьезоэлемент dan foydalandim. Светодиод yordamida svetafor chiroqlarini yasadim. Qizil, sariq yashil ranglar hosil qildim. Светодиод ni,Резистор ni, Пьезоэлемент ni, Arduino Uno R3ga joylashtirib chiqdim. Светодиод ketma-ketlikda Arduino Uno R3 ga uladim.Katodlarni minus zaryadlarga,anodlarni plus zaryadlarga ulab chiqdim.Qizil rangli anod zaryadini D5 piniga,sariq rangli anod zaryadini D6 piniga,yashil rangli anod zaryadini D7 piniga ulab chiqdim.Katodni Резистор ga bog’lagan holda GND piniga uladim.
Пьезоэлемент tovush hosil qilish uchun ishlatdim.Uning pilus zaryadini D9 ga,minus zaryadini GND piniga uladim.
Svetafor chiroqlariga tok ko’p ketib qolish natijasida ular kuyishi mumkin.Buning oldini olish maqsadida men Резисторdan foydalandim. Резистор tokni bir kerakli miqdorda yetkazib beradi.
Bizga berilgan topshiriqda Датчик температура 50 ga kelsa qizil chiroq yonish kerak va tovush hosil bo’lishi kerak.Agar temperatura 50 dan o’tsa,sariq chiroq yonish kerak va tovushi ham o’zgarishi kerak.Temperatura 100 dan oshsa yashil chiroq yonishi kerak va tovushi ham o’zgarishi kerak.

Men svetaforni mana shunday ko’rinishda ishlab chiqdim.



Temperaturali,tovushli Svetafor maketi.
Dastur kodi
int pin_temp = A0;
float temp;
int pinBuzzer = 9;
int led_red = 5;
int led_yellow = 6;
int led_green = 7;

void setup(){


pinMode(led_red,OUTPUT);
pinMode(led_yellow,OUTPUT);
pinMode(led_green,OUTPUT);
pinMode(pinBuzzer, OUTPUT);
Serial.begin(9600);


}
void loop(){
float temp = analogRead(pin_temp);
Serial.print("T = ");
Serial.print(temp);
Serial.println();
delay(500);
if (temp <= 205){
tone(pinBuzzer, 7000, 50);
digitalWrite(led_yellow, LOW);
digitalWrite(led_red, HIGH);
digitalWrite(led_green, LOW);
}
else if ((temp > 207) and (temp < 307)){
tone(pinBuzzer, 5000,30);
digitalWrite(led_red, LOW);
digitalWrite(led_yellow, HIGH);
digitalWrite(led_green, LOW);
}
else {
tone(pinBuzzer, 3000, 30);
digitalWrite(led_yellow, LOW);
digitalWrite(led_green, HIGH);
digitalWrite(led_red, LOW);
}
}
Ushbu kodda o’zgaruvchilarimiz orqali Светодиодlarimiz qaysi raqamga borib ulangan bolsa usha Светодиод ga tasir qiladi. For tskli orqali svetaforni tez-tez yonib o’chirishni taminlaymiz.
digitalWrite(uzgaruvchi_nomi, HIGH);
Bu qatordagi kod Светодиод ni yoqish uchun ishlatiladi. Agar uni o’chirmoqchi bo’lsak quydagicha koddan foydalanamiz:
digitalWrite(uzgaruvchi_nomi, LOW);
Bu qatordagi kod esa tovushini chiqarish uchun yordam beradi.
tone(pinBuzzer, 5000,30);

Bu kod esa chiroqlarning qanchadir vaqt yonib turishi uchun hizmat qiladi.


delay(6000);
Download 49.53 Kb.

Do'stlaringiz bilan baham:




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