11 amaliy mashg’ulot. Iq sensori va ultratovushli masofa o'lchagichga asoslangan aqlli bino uchun xavfsizlik tizimlarini ishlab chiqish. Ishning maqsadi



Yüklə 123,74 Kb.
səhifə2/6
tarix22.03.2024
ölçüsü123,74 Kb.
#180790
1   2   3   4   5   6
11-mavzu

arduinoga qanday ulash mumkin


Ushbu mashg’ulot uchun sizga kerak bo'ladi:

  • Arduino Uno / Arduino Nano / Arduino Mega;

  • PIR harakat sensori HC-SR501;

  • Plata

  • 1 ta LED va 220 Om qarshilik;

  • simlar «папа-папа», «папа-мама».


11.4-rasm. PIR sensorini Arduino Uno -ga ulash sxemasi


Arduino harakat sensorlarining pinouti ishlab chiqaruvchidan ishlab chiqaruvchiga farq qilishi mumkin, ammo kontaktlarning yonida yozuvlar mavjud (yuqoridagi rasmga qarang). Shuning uchun, ulanishdan oldin modulni diqqat bilan o'rganing. Bitta chiqish GND ga, ikkinchisi 5 Volt quvvat manbaiga (VCC) o'tadi va uchinchi chiqish (OUT) PIR sensoridan raqamli signalni chiqaradi. Yuqoridagi fotosuratda bo'lgani kabi sxemani yig'ing, LEDni Arduino -ning 12- piniga ulang va quyidagi eskizni yuklang.


Eskiz uchun Sensor harakatlar Arduino


#define PIR 2
#define LED 12
void setup() {
pinMode(PIR, INPUT);
pinMode(LED,OUTPUT); }
void loop() {
int pirVal = digitalRead(PIR);
if (pirVal == HIGH) {
digitalWrite(LED, HIGH);
delay(2000); }
else {
digitalWrite(LED,LOW);
delay(2000); } }

Tushuntirishlar uchun kod :


  1. #define direktivasidan foydalanib , biz tegishli PIR va LED nomlarini tayinladik. Bu faqat bizning qulayligimiz uchun;

  2. if iborasi ikki tomonlama tenglikdan foydalanadi: if ( pirVal == HIGH) . Arduino dasturlash tiliga ko'ra , ikki tomonlama tenglik taqqoslash operatoridir.

Eskiz uchun PIR sensorli yoritgich harakatlar


#define LED 3 // LED uchun port tayinlang
#define PIR 2 // PIR sensori uchun port tayinlang
unsigned long counttime; //hisoblagich uchun xotira ajratish
void setup() {
pinMode(LED, OUTPUT);
pinMode(PIR, INPUT); }
void loop() { // agar harakat bo'lsa, LEDni yoqing
if (digitalRead(PIR) == HIGH) {
digitalWrite(LED, HIGH); } // o'z ichiga oladi hisoblagich 1 daqiqaga _
counttime = millis(); // agar harakat bo'lmasa va 1 daqiqa o'tgan bo'lsa
if (digitalRead(PIR) == LOW && millis() - counttime > 60000) {
// 1 daqiqa davomida hech qanday harakat bo'lmasa, LEDni o'chiring
digitalWrite(LED, LOW); } }

Tushuntirishlar uchun kod :


  1. counttime = millis () funktsiyasidan foydalanish ; ortga hisoblashni boshlaymiz. Hamda kechiktirish funktsiyasidan farqli o'laroqDasturni to'liq to'xtatuvchi Arduino , mikrokontroller eskizdagi qolgan hisob-kitoblarni davom ettirishi mumkin.

  2. biz chiroqni o'chirish vaqtini o'zgartirdik. Agar birinchi eskizda LED sensordan LOW signalidan keyin darhol o'chsa. Endi biz chiroqni o'chirishdan oldin 1 daqiqa vaqt beramiz, agar odam xonadan chiqmagan bo'lsa.

Xulosa _ HC-SR501 Arduino harakat sensori xonadagi yoritishni avtomatik ravishda yoqish yoki ws2812b manzil tasmasi yordamida uydagi zinapoyaning “aqlli” yoritilishini yaratish imkonini beradi. Ushbu yozuvga sharhlarda siz taqdim etilgan mavzu bo'yicha savollaringiz yoki sharhlaringizni qoldirishingiz mumkin, biz oddiy foydalanuvchilarning barcha sharhlariga imkon qadar tezroq javob berishga harakat qilamiz.
11.2. Amaliy mashg’ulot Ultrasonik masofa o'lchagichni Arduino -ga ulash .

Yüklə 123,74 Kb.

Dostları ilə paylaş:
1   2   3   4   5   6




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə