Mündəricat:
- Addım 1: Lazım olan avadanlıq və protokollar
- Addım 2: Mikrofonu və PIR Sensorunu qoşun
- Addım 3: Zapier -də iş axını yaradın
- Addım 4: Google Skriptləri
- Addım 5: Axını Arduino Kodu ilə bağlayın
- Addım 6: Baxış, Nəticələr və Gələcək Ölçüləmə
Video: IDC2018IOT: Görüş Otağı Snitcher: 6 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:47
PROBLEM
Bildiyimiz kimi, ehtiyaclarınız üçün uyğun olan xüsusi iş sahəsinin seçimini müəyyən edən qabaqcıl texnologiya ilə birlikdə son bir neçə il ərzində birgə iş yerləri tendensiyası sürətlənir.
Təqdim olunan əsas xüsusiyyətlərdən biri, (ümumiyyətlə) sadə bir təqvim platforması tərəfindən idarə olunan birgə iş sahəsi üzvlərinə təklif olunan paylaşılan görüş otaqlarıdır.
İnsanların cədvəli dinamik olmağa meylli olduğu üçün bir problem yenidən ortaya çıxır.
Ehtiyacı ola biləcəyini düşünərək bir otaq sifariş edə bilərsiniz və vaxt boşluğunu qaçırmaq istəməyəcəksiniz.
Nəhayət, kimsə bu zaman dilimindən istifadə etməsə belə, təəssüf ki, insan təbiəti olduğu üçün bunu başqaları naminə xəbərdar etmək və ləğv etməkdən çəkinməz.
NECƏ HAL EDİRİK?
IoT texnologiyasından istifadə edərək - təyin olunmuş bir toplantı otağında səs və hərəkəti yoxlayaraq, hər bir zaman aralığında bir otaq üçün rezervasiya olub -olmamasını yoxlayırıq:
1. Rezervasiya edilməyibsə, heç nə etməyin.
2. Sifariş verilmişsə, aşkar edilmiş hər hansı bir hərəkət və ya səs olub olmadığını yoxlayın;
Əgər varsa, heç nə etmə.
Heç bir şey aşkar edilməyibsə, otaq sifariş edən istifadəçiyə otağın hələ də istifadədə olub -olmadığını soruşan bir xəbərdarlıq mesajı (e -poçt vasitəsilə) göndərin. istifadəçi hələ də otaqdan istifadə etdiyini bildirməsə, otaq vəziyyəti "Mövcud" olaraq dəyişdiriləcək.
* Burada, mümkün olduğu qədər ümumiləşdirmək üçün layihəmizi Google Calendar ilə birləşdirdik.
Addım 1: Lazım olan avadanlıq və protokollar
1. WIFI bağlantısından istifadə edərək hər şeyi dinamik şəkildə yeniləmək üçün NOSEMCU -dan istifadə etdik.
2. Otaqdakı səs -küyü "oxuyacaq" mikrofon sensoru.
3. Hər hansı bir hərəkət olub olmadığını yoxlayacaq PIR sensoru.
Proqram və server istifadəsi üçün Arduino kodundan başqa sistemimizi onlayn dəstəkləmək üçün Google Script və Zapier istifadə etdik. Əlavə edilmiş şəkildəki (və PDF) axını görə bilərsiniz.
Tətbiqləri birləşdirmək və iş axınlarımızı avtomatlaşdırmaq üçün Zapier -dən istifadə etdik (IFTTT kimi) və Google Təqvimlə ünsiyyət qurmağımıza kömək etmək üçün Google Scriptdən istifadə etdik. Yazdığımız skript, hadisə yaradıcısının e -poçtunu istehsal edir, beləliklə Zapier -ə göndərə bilərik və istifadəçi hadisəni silməzdən əvvəl otağı saxlamağı xahiş edib -etmədiyini (Google Cədvəllərdə saxlayaraq) yoxlayır.
Addım 2: Mikrofonu və PIR Sensorunu qoşun
İnsanlar danışarkən mikrofonun NODEMCU -ya göndərdiyi orta dəyərləri yoxlamaq istədik (aydındır ki, hər otaqda fərqli fon səsləri var idi). Bir az sınaq keçirdik və başa düşdük ki, işlədiyimiz otaq orta səs -küy səviyyəsi 50 -dən yuxarıdır.
PIR sensoru yalnız YÜKSƏLİ və ya DÜŞÜK dəyərlər verir, buna görə yoxladığımız otağa ən həssas olan həssaslıq səviyyəsini yoxlayırıq. Bu bələdçi olduqca faydalı oldu.
BAĞLANTILARIMIZ:
Mikrofon - şəkildəki kimi PIR sensoru: GND> GND, OUT> D7, VCC> VN (5V)
Addım 3: Zapier -də iş axını yaradın
Otağın həqiqətən boş olduğunu və ya hələ də istifadədə olduğunu bilmək üçün (və istifadəçilər, məsələn, fasilədədir), NodeMCU -nun Zapier -ə Webhook açmasından dərhal sonra onu təmin edən bir axın yaratmaq istərdik. otaq boşdur:
(1) TRIGGER - CATCH HOOKZapier, Webhooku tutur (NODEMCU tərəfindən göndəriləcək)
(2) Əməliyyat - GETZapier hadisə məlumatlarını əldə etmək üçün başqa bir Webhook göndərir;> Mövcud hadisə məlumatlarını əldə etmək üçün bir GoogleScript - GetCurrentEmailEventID (aşağıdakı addımdakı izahat) çağırır (işləyir) - hadisə adı, hadisə ID, istifadəçi e -poçtu.
(3) FİLTRE - YALNIZ DAVAM EDİR
Növbəti mərhələyə yalnız təqvimdə hal -hazırda baş verən bir hadisə (hər hansı bir hadisə) davam edərsə (ROOM IS BUSY), əks halda otaq boş olduğu üçün dayanır.
(4) ACTION - GMAILZapier, Gmail vasitəsilə otaq sifariş edən istifadəçiyə e -poçt göndərir (bu məlumatı 2 -ci addımda əldə etdiniz)
(5) Əməliyyat - GECİKMƏ İstifadəçiyə e -poçtu cavablandırmaq üçün vaxt verin. - İstifadəçi linki tıklayırsa: GoogleScript -ə zəng edin (işləyin) - ApproveCurrentEvent (Bu səbəbdən otaq 'Silmək üçün otaqlar' siyahısından çıxarılır və otaq hələ də dolu kimi qeyd olunur.)
(6) ƏMƏL - 5 dəqiqə sonra əldə edin, Zapier GoogleScript - DeleteCurrentEvent -ə zəng edir (çalışır) - İstifadəçi linki vurmadısa
Otaq identifikatorunun 'Silmək üçün otaqlar' siyahısında olub olmadığını yoxlayır
sadəcə hadisəni silir.
Addım 4: Google Skriptləri
Bütün sistemi birləşdirdikdə, GoogleScripts bir IDE -nin əhəmiyyətsiz bir seçimi idi, beləliklə, müvafiq Google Kitabxanalarından istifadə etdik. Otaq Rezervasyon Platformasına görə dəyişəcək.
(1) GetCurrentEmailEventID
Webhook zəngi ilə işləyir.
Mövcud hadisə məlumatlarını əldə edərək, mümkün gecikməni ləğv etmək üçün müəyyən bir ofset istifadə edin.
(2)CurrentEvent təsdiq edin
Bir istifadəçi klik ilə işləyir.
İstifadəçinin otağın hələ də istifadədə olduğunu təsdiqləməsi halında, hadisə silmək istədiyi otaqlar silinəcəkdir. Bir Google hesabatı istifadə etdik, hər hansı bir siyahı forması burada uyğun ola bilər.
(3) DeleteCurrentEvent
Webhook zəngi ilə işləyir.
Siyahıda (Google vərəqi) müvafiq hadisə identifikatorunu axtarır və həmin hadisəni təqvimdən silir.
Addım 5: Axını Arduino Kodu ilə bağlayın
Əlavə edilmiş kod, bir neçə addım əvvəl yoxladığımız sensorlara onlayn sistemə qoşulur (bizim vəziyyətimizdə Google təqvimi). Otağın məşğul olub -olmadığını yoxlayır, sonra yoxsa Zapier -də hadisə sorğusunu silməyə başlayan bir HTTP sorğusu (Webhook) göndərir.
Addım 6: Baxış, Nəticələr və Gələcək Ölçüləmə
Qarşılaşmamız lazım olan əsas problem, görüş otağını boşaltmağa qərar verərkən bütün kənar halları əhatə etməkdir. Daha sonra hər hansı bir vəziyyəti nəzərə alaraq bir dövlət maşını yaratmaq məcburiyyətində qaldıq ki, bir səhv baş verməsin və otaq yalnız lazım olduğu zaman mövcud olaraq qurulsun.
Məsələn, otaq hazırda olmayan bir qrup üçün ayrılıbsa (məsələn, fasilədədir), lakin buna hələ də ehtiyac duyulursa, NODEMCU otağın pulsuz olduğunu> SORUN.
Sonra həll yolumuz, otağı rezervasiya edən istifadəçiyə (anlamaq asan olmayan) e -poçt göndərmək idi.
İstifadəçi müəyyən bir müddətdə cavab vermədisə (5 dəqiqə olaraq təyin etdik, ancaq asanlıqla dəyişdirilə bilər), hadisəni təqvimdən silirik (və otağı azad edirik).
Bu yolla, nəticədə bütün mümkün ssenariləri idarə etməyə və işləyən bir sistem yaratmağa müvəffəq olduq.
SİSTEM SINIRLAMALARIMIZ:
1. İstifadə olunan sensorlar çox dəqiq və həssas olmalıdır.
2. Otağın ölçüsü sensorun radiusu/diapazonu ilə məhdudlaşır.
3. İstifadəçinin reaksiyasına etibar etməliyik.
4. Sistemimiz bir neçə platformadan (Google təqvimi, Gmail, Zapier və s.) İstifadə edərək qurulmuşdur və onların xidmətlərindən istifadə etmək məcburiyyətində qalacaq.
5. Bu xidməti birdən çox otaq üçün miqyaslandırmaq (bütün sistemi təkrarlamaq əvəzinə) otaq identifikatoru ilə əlavə işləmə tələb edir.
6. Sistem yalnız avtomatikdir və otaq sifarişini ləğv etmək üçün əl ilə seçim yoxdur.
GƏLƏCƏK İNKİŞAFLARI:
Sistemi mütləq iki şəkildə genişləndirərdik:
1. Hər hansı digər təqvim platformaları ilə işləmək bacarığı (buna görə də hər hansı bir əməkdaşlıq məkanı şirkəti bundan istifadə edə bilər).
2. Birdən çox otağı, mərtəbəni və sahəni idarə etmək bacarığı.
İnanırıq ki, bu cür miqyasların ümumiləşdirilməsi, sınanması və birdən çox otağa (mərtəbə və s.) Əlavə edilməsi 2-3 ay çəkəcək.
Əlavə olaraq, məhdudiyyətsiz miqdarda pul və qaynaqlardan istifadə edərək daha geniş diapazonlu daha yaxşı sensorlar istifadə edərdik, onları təyin olunmuş otağa uyğunlaşdıra bilərik - diapazon, radius, sensorların sayı və s. açıq -aydın
Tövsiyə:
İşıqlı və Səsli Yataq otağı üçün Siqnal! 6 Addım
İşıq və Səsli Yataq otağı üçün Siqnal!: Salam, bu gün sizə Arduino UNO ilə yataq otağınızın qapısı üçün necə həyəcan siqnalı edəcəyinizi göstərəcəyəm
Shelly ilə Film üçün Otaq otağı: 4 addım
Shelly ilə Film üçün Otaq otağı: Layihə İcraçı xülasəsi Otağımın oturma otağımı film izləmək üçün rahat etmək üçün google ev prosedurlarından istifadə edərək çox sadə bir avtomatlaşdırma necə yaradılır
Space Marul Otağı Təlimatlandırılır- Aviaşirkət Liseyi Robototexnika: 8 Addım
Space Marul Otağı Təlimatlandırılır- Havayolu Liseyi Robototexnika: Bu, robototexnika sinfinə yazılan üç lisey şagirdi tərəfindən hazırlanan bir təlimatdır. NASA tərəfindən yer üzündə böyüyən yarışma üçün kosmosda kahı yetişdirmək üçün bir otaq yaradacağıq. Konteynerin necə yaradılacağını sizə göstərəcəyik. Gəlin
DIY Soket Test Cihazı, Qəbul Otağı Mütləq: 12 Addım
DIY Socket Tester, Qəbul Otağında olmalıdır: Evi bəzədikdən sonra bəlkə də narahat olursan, priz işçisi məni doldurmaq üçün səhv xətti bağlamayacaq və ya sızma qorunmayacaq. Narahat olmayın, indi xüsusi olaraq corabın tel sırasını təyin edən bir priz test cihazı hazırlayaq
Yataq otağı lampası Ws2812: 6 addım (şəkillərlə birlikdə)
Yataq Otağı Lampası Ws2812: Hamıya salam, mövcud yataq otağı lampasını ağıllı telefondan və ya brauzeri olan hər hansı bir cihazdan idarə etmək və Apple Home -dan daha çox inteqrasiya etmək üçün yenidən qurmağa qərar verdim. Hədəflər bunlardır: 1. Parlaqlığı, rəngi və ya animasiyanı/effektləri idarə etmək üçün WS2812b led şeridi istifadə edin2. Bizə