Mündəricat:
- Addım 1: Başlamaq üçün: Materiallar
- Addım 2: Adım 2: Problemi həll etmək üçün yaxınlaşın
- Addım 3: Adım 3: GUI və Əsas Kod axınının konfiqurasiyası
- Adım 4: Adım 3: Termostat Sisteminin Qurulması
- Adım 5: Adım 4: Qapı Sisteminin Qurulması
- Adım 6: Adım 6: Daşqın İşıq Sisteminin Qurulması
- Addım 7: Nəticə
Video: Arduino Ağıllı Ev Sistemi: 7 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Bu Təlimat kitabında, Sparkfun Red lövhəsi olan MATLAB -ın App Designer ilə öz ağıllı ev sisteminizi necə yaratacağınızı sizə göstərəcəyik. Bu Təlimat, MATLAB -ın Tətbiq Dizaynerini anlamaq, fotorezistor, servomotor və PIR hərəkət sensoru istifadə etmək üçün istifadə edilə bilər.
Addım 1: Başlamaq üçün: Materiallar
Bu layihə üçün aşağıdakı materiallar lazımdır:
- Arduino Uno (Bu layihə üçün Sparkfun Qırmızı lövhədən istifadə etdik)
- Bir fotorezistor
- Bir mini servo motor
- Bir fasiləsiz servo motor
- Bir PIR hərəkət sensoru
- Bir temperatur sensoru
- 2 ədəd LED
- Lazım gələrsə tellər və rezistorlar
Addım 2: Adım 2: Problemi həll etmək üçün yaxınlaşın
Bu layihənin əsas məqsədi MATLAB ilə bir Arduino Uno lövhəsini kodlaşdıraraq istifadəsi asan bir ağıllı ev sistemi yaratmaq idi. Əvvəlcə yalnız bir temperatur və rütubət sensoru ilə işləməyi düşündük, ancaq bu iki sensörün yanında olsaydıq, ağıllı ev sistemimiz ümumi bir auditoriyaya asanlıqla satıla bilməzdi. Ağıllı bir termostat və təhlükəsizlik sistemi olaraq işləyəcək ümumi bir ağıllı ev enerji sistemi yaratmaq istədiyimizə qərar verdik. Nəhayət, istifadəçinin ağıllı evi istədikləri kimi asanlıqla dəyişdirə bilməsi üçün MATLAB -ın AppDesigner ilə işləmək istədik.
Addım 3: Adım 3: GUI və Əsas Kod axınının konfiqurasiyası
Başlamaq üçün MATLABs AppDesigner -i açmalı və aşağıdakıları yerləşdirməlisiniz:
İsti və soyuq eşik girişi üçün iki ədəd redaktə sahəsi
Qapını açmaq üçün düymə
Şömine, qapı, fan və sel işığı üçün dörd göstərici lampa.
İstifadəçi ilə ünsiyyət qurmaq üçün iki etiket.
Bu layihə üçün dizayner daxilində qlobal dəyişənlərlə və başlanğıc funksiyası ilə işləməyi asanlaşdırdıq. Başlanğıc funksiyasında bu dəyişənlərə ehtiyacınız olacaq:
qlobal a
a = arduino ('COM3', 'uno', 'Kitabxanalar', 'Servo'); qlobal qlobal q qlobal istiUI qlobal soyuqUI qlobal kilidini açmaq qlobal temp qlobal Curr_temp qlobal int_light
Hal -hazırda yalnız bir dəyişən üçün bir tapşırıq var ki, kompüteriniz arduino oxuya bilsin. COM3, kompüterinizin hansı portdan istifadə etdiyindən asılı olaraq fərqli ola bilər.
Kodu işə saldığınız zaman, qlobal dəyişənləri yaradan və sistemi kalibr edən başlanğıc funksiyasından başlayacaq. Bu funksiyanın sonunda Timer adlı bir xassəni çağıran bir taymer funksiyası olacaq. Bu Taymer xüsusiyyətinin içərisində ev sistemini işlədən kodu qoyduq ki, taymer kalibrləmə kodunu yenidən işə salmasın.
Qeyd: Sistem üçün heç bir kabel təlimatı verməmişik. SparkFun Red lövhəsi ilə birlikdə gələn təlimata istinad etdik.
Adım 4: Adım 3: Termostat Sisteminin Qurulması
Termostatın funksiyası aşağıdakı kimi işləyir:
İstifadəçi çox isti və ya çox soyuq hesab etdiyi temperaturu daxil edəcək. Termometr oxuduqdan sonra, ev çox soyuq olarsa, "şömine" (qırmızı LED) açılacaq və evi qızdıracaq. Ev çox isti olarsa, "fan" (fasiləsiz servo motor) evi soyutmağa başlayacaq.
Termostat sistemini kodlaşdırmaq üçün:
Mövcud tempi göstərmək və istifadəçiyə soyuq və isti eşiklərini daxil etmək üçün başlanğıc funksiyası daxilində başlayacağıq.
p = 'A0' %Fotoresistor pimi
volt = readVoltage (a, temp); celc = (volt-0.5).*100; Curr_temp = celc*9/5+32; app. Label_4. Text = num2str (Curr_temp); Etiket nömrəsi fasiləni dəyişə bilər (10); Dəyişmək istəyə bilər !!!!!
Sonra Timer xüsusiyyətindəki termostat sistemini tamamlayacağıq.
qlobal Curr_temp
qlobal soyuqUI qlobal bir qlobal hotUI əgər Curr_temp hotUI app. FanStateLamp. Color = [0.47 0.67 0.19]; GUI lampasını yaşıl rəngə çevirir WritePWMDutyCycle (a, 'D11',.9) %Növbəti üç kod xətti servo fan durdurmasını (10) writePWMDutyCycle (a, 'D11',.0) başqa tətbiqini işə salır. FireplaceStateLamp. Color = [0.90 0.90 0.90]; Bu, bütün GUI lampaları və şömine tətbiqini söndürür. FanStateLamp. Color = [0.9 0.9 0.9]; writeDigitalPin (a, 'D13', 0); bitmək
Adım 5: Adım 4: Qapı Sisteminin Qurulması
Qapı funksiyası aşağıdakı kimi işləyir:
MATLAB kodunuzu ilk dəfə işə saldığınız zaman, tətbiq fotorezistorun ilkin işıq oxumasını ala bilməsi üçün qapını açmanızı istəyəcək. Bu tamamlandıqda, taymer aktivləşəcək və fotorezistor ikincil işıq oxunuşlarını alacaq. İkincil işıq oxunuşu əvvəlkindən daha yüngül olarsa, servo motor qapını kilidləyəcək. İstifadəçi qapının kilidini açmaq istəyirsə, tətbiqin qapısını açacaq bir düyməni basa bilər.
Servo motoru və fotorezistoru konfiqurasiya etmək üçün:
Qapı sistemini kodlaşdırmaq üçün:
İlkin işıq oxunuşlarını almaq üçün başlanğıc funksiyası daxilində başlayacağıq.
s = servo (a, 'D9') %Pin məftilə görə dəyişə bilər
app. Label_4. Text = 'Zəhmət olmasa sistemi kalibr etmək üçün qapını açın'; fasilə (15); Bu istifadəçinin qapını açması üçün vaxt verir int_light = readVoltage (a, p); app. Label_4. Text = 'Barmağınızı çıxara bilərsiniz';
Sonra, kodu Timer xüsusiyyətində tamamlayacağıq
qlobal kilid açma
qlobal int_light global s global a %Curr_light = readVoltage (a, p) müqayisə etmək üçün cari işıq oxunuşunu əldə edin; % - Qapını kilidləyin - əgər int_light <Curr_light writePosition (s, 1) % Servo mövqeləri hər motor fasiləsinə görə fərqlənə bilər (0.5); app. DoorStateLamp. Color = [0.47 0.67 0.19]; son % - Qapının kilidini aç - əgər kilidi açarsan == 1234 fasilə (0.5); writePosition (s,.52) app. DoorStateLamp. Color = [0.85 0.33 0.10]; bitmək
Nəhayət kilid açma düyməsini geri çağırma yaradacağıq. İstifadəçi kilidini açma düyməsini basdıqdan sonra qlobal dəyişən kilid açmağa Timer xassəsindəki son if ifadəsini tamamlaya biləcək bir nömrə veriləcək.
qlobal kilid açma
kilidini aç = 1234;
Adım 6: Adım 6: Daşqın İşıq Sisteminin Qurulması
Daşqın işığı aşağıdakı kimi işləyir:
MATLAB kodunu işə saldığınız zaman, PIR hərəkət sensoru hərəkəti aşkar etməyə başlayacaq. Bir növ hərəkət algıladıqda, güc siqnalını kəsər. Bu siqnal kəsildikdən sonra evin xaricində daşqın işığı yanacaq.
Daşqın işıq sistemini konfiqurasiya etmək üçün:
Daşqın işıq sistemini kodlaşdırmaq üçün:
Bu dəfə Timer xüsusiyyətinə keçə bilərik, çünki əlavə dəyişənlər yazmağa ehtiyac yoxdur.
human_detected = readDigitalPin (a, 'D2'); İnsan_detected == 0 yazmaDigitalPin (a, 'D7', 1) olarsa, Konfiqurasiya konfiqurasiyaya görə dəyişə bilər. %Pin tətbiq dəyişə bilər. elseif human_detected == 1 app. FloodLightStateLamp. Color = [0.9 0.9 0.9]; writeDigitalPin (a, 'D7', 0) sonu
Addım 7: Nəticə
İndi App Designer ilə GUI -nin bir layihəsi və Arduino kodunuz varsa, öz redaktələrinizi etməyə və ya Arduino -nuzu qoşmağa və hazır olmağa hazırsınız!
Tövsiyə:
Ağıllı Masa LED İşığı - Ağıllı İşıqlandırma W/ Arduino - Neopixels İş Sahəsi: 10 Adım (Şəkillərlə birlikdə)
Ağıllı Masa LED İşığı | Ağıllı İşıqlandırma W/ Arduino | Neopixels Çalışma Alanı: İndi günlərimiz evdə çox vaxt keçirir, virtual olaraq oxuyuruq və işləyirik, buna görə də xüsusi və ağıllı işıqlandırma sistemi olan Arduino və Ws2812b LEDləri ilə iş sahəmizi daha da genişləndirməyək. Masa üstü LED işığı
SONOFF Ağıllı Açarları ilə Ağıllı Pərdələri necə DIY etmək olar ?: 14 addım
SONOFF Smart Açarları ilə Ağıllı Panjurları Necə DIY etmək olar?: SONOFF ağıllı açarlarda kilidləmə rejimindən istifadə edərək adi pərdələrinizi/pərdələrinizi ağıllı hala gətirin Çoxlarınız bunun səhərlər pərdələri/pərdələri çəkdiyiniz bir iş olduğunu qəbul edəcəksinizmi? və axşam aşağı çəkin? Hər halda, mən
Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat: 10 addım (şəkillərlə)
Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat: Heç ağıllı bir saat istəmisinizmi? Əgər belədirsə, bu sizin üçün bir həlldir! Ağıllı Zəngli Saat hazırladım, bu veb saytına görə zəngli saatını dəyişə biləcəyiniz bir saatdır. Siqnal çalınanda bir səs (zil) olacaq və 2 işıq yanacaq
ESP32: 7 addımlardan istifadə edərək IoT əsaslı Ağıllı Bağçılıq və Ağıllı Kənd Təsərrüfatı
ESP32 istifadə edərək IoT əsaslı Ağıllı Bağçılıq və Ağıllı Kənd Təsərrüfatı: Dünya zaman keçdikcə kənd təsərrüfatı kimi dəyişir. Hazırda insanlar hər sahədə elektronikanı birləşdirir və kənd təsərrüfatı bunun üçün istisna deyil. Kənd təsərrüfatında elektronikanın bu birləşməsi fermerlərə və bağları idarə edən insanlara kömək edir
Ağıllı evinizi ağıllı şəkildə qoruyun: 14 addım
Ağıllı Evinizi Smartly Secure: Təhlükəsiz və etibarlı bir yarışma üçün yarışıram. Təlimatçılığımı bəyənirsinizsə, zəhmət olmasa ona səs verin! Mən sizə evinizi və ətrafınızı necə asanlıqla və ucuz bir şəkildə necə təmin edəcəyinizi göstərəcəyəm. Konfiqurasiya edin