Mündəricat:

Android və Arduino ilə Ev Avtomatlaşdırması: Evə çatanda qapını açın: 5 addım
Android və Arduino ilə Ev Avtomatlaşdırması: Evə çatanda qapını açın: 5 addım

Video: Android və Arduino ilə Ev Avtomatlaşdırması: Evə çatanda qapını açın: 5 addım

Video: Android və Arduino ilə Ev Avtomatlaşdırması: Evə çatanda qapını açın: 5 addım
Video: Home Assistant Lessons - Biz Telegram-dakı menyu vasitəsilə WLED ünvan lampasına nəzarət edirik 2024, Sentyabr
Anonim
Android və Arduino ilə Ev Avtomatlaşdırması: Evə çatanda qapını açın
Android və Arduino ilə Ev Avtomatlaşdırması: Evə çatanda qapını açın

Bu Təlimat, ehtiyac duyduğunuz hər yerdən əldə edilə bilməsi üçün internet bağlantısı istifadə edərək smartfon vasitəsilə idarə ediləcək bir ev avtomatlaşdırma sisteminin qurulmasıdır. Üstəlik, bir meyar yerinə yetirildikdə müəyyən hərəkətlər edəcək (məsələn, smartfon ev wifi şəbəkəsinə qoşulduqda işığı yandırmaq, GPS -in müəyyən bir sahəsinə daxil olanda qapını açmaq və ya istədiyiniz hər şey).

Mümkün olan ən az kodlaşdırma tələb edən mövcud bir Android tətbiqi istifadə ediləcək: kodu yükləyin və bitirdiniz. Beyin - mikro nəzarətçi - Ethernet qalxanı olan Aruino Uno və ya NodeMCU ESP8266 kimi Arduino və ya Arduino ilə uyğun bir lövhə olacaq.

Bir şərt yerinə yetirildikdə sistemi işə salmaq üçün (GPS mövqeyi, vaxt, ecc …) bədnam Taskerdən istifadə edəcəyik; bu barədə daha sonra.

Sistemin həyata keçirilməsində aşağıdakı əsas məqamlar nəzərə alınmışdır:

  • Ucuz olmalıdır.
  • Yerli ev şəbəkəsindən kənarda (yəni wifi) daxil olmaq lazımdır.
  • Qurmaq və qurmaq Həqiqətən asan və sürətli olmalıdır.
  • Etibarlı olmalıdır.

Deyilənə görə, bütün layihə təxminən 20 avroya başa gələcək (bir ESP8266 üçün 7.50 €, bir relay lövhəsi üçün 8 €, qalan hissə əlavə avadanlıq üçün) və hamısını qurmaq üçün təxminən 30 dəqiqə çəkəcək - heç də pis deyil.

Beləliklə, maraqlanırsınızsa, bu sadə və sürətli bələdçini izləyin və özünüzə qurun!

Addım 1: Avadanlıq qurulması

Avadanlığın Qurulması
Avadanlığın Qurulması

Bütün komponentlərinizi topladıqdan sonra etməli olduğunuz ilk şey hər şeyi tellə bağlamaqdır.

Bu nümunədə bir ampulü ESP8266 -ya bağlayacağıq; Əsas gərginliklərlə işləyərkən son dərəcə diqqətli olmalı olduğunuzu unutmayın - evlər sizi öldürə biləcək 220V istifadə edir! İşləməzdən əvvəl həmişə gücünü kəsin və əmin deyilsinizsə bir mütəxəssisdən kömək axtarın!

Deyirdi: bu cür gərginlik və cərəyanı idarə etmək üçün (kiçik ESPR8266 -nı yandıracaq) uyğun bir röleyi istifadə etməliyik (5V məntiqi olan, standart Arduino üçün uyğun olan və ya 3.3V məntiq səviyyəli rölesi), 3.3V ESP82666 pinoutu üçün uyğundur); əlaqələr olduqca asandır, əlavə etdiyimiz diaqrama əməl edin.

Qeyd edək ki, bəzi relay lövhələri (əlaqələndirdiyimiz kimi) ACTIVE LOW; açmaq üçün röleyi yerə bağlamalısınız və əksinə. Bu sizin vəziyyətinizdirsə, Homotica gözəl bir həll təklif edir; Növbəti paraqrafda hansının olduğunu görəcəyik.

Addım 2: ESP8266 Konfiqurasiyası

ESP8266 Konfiqurasiya
ESP8266 Konfiqurasiya
ESP8266 Konfiqurasiya
ESP8266 Konfiqurasiya
ESP8266 Konfiqurasiya
ESP8266 Konfiqurasiya

İndi avtomatlaşdırma sisteminin aparatını qurduqdan sonra mikro nəzarətçini proqramlaşdırmalıyıq.

Bunu etmək üçün təqdim olunan eskizi ESP8266 -ya yükləmək üçün Arduino proqramına ehtiyacımız olacaq; Buna görə Arduino Yükləmə Səhifəsinə gedin və sizin üçün ən uyğun versiyanı götürün.

Yüklədikdən sonra quraşdırın.

IDE qurduqdan sonra eskizin işləməsi üçün lazım olan kitabxanaya ehtiyacımız var; Qurmaq üçün App Github Repo -nu açın və sağdakı yaşıl düymədən Yüklə seçin.

Kompüterinizdəki Yükləmə qovluğuna gedin və WinRar və ya WinZip kimi bir proqramdan istifadə edərək faylı açın; yeni yaradılmış "homotica-master" qovluğunu açın və "Homotica" adlı daxili qovluğu Arduino Redaktor Kitabxanaları qovluğuna kopyalayın (ümumiyyətlə C: / İstifadəçiləriniz_ istifadəçi_adınız / Sənədlər / Arduino / kitabxanaları altında tapa bilərsiniz). "Homotica-master" da qalan faylları silin, onlara ehtiyacımız olmayacaq

Kodu ESP8266 -ya yükləməkdə bir addım çatışmır: Arduino IDE -nin lövhə ilə əlaqə qurması üçün kitabxananı almalıyıq, çünki rəsmi olaraq dəstəklənmir.

Bunu etmək üçün bu addımları izləyin (kreditlər: Github ES8266 Arduino Repo):

  • Arduino'yu başladın və Fayllar> Tercihlər pəncərəsini açın.
  • Əlavə İdarəçi URLləri sahəsinə "https://arduino.esp8266.com/stable/package_esp8266com_index.json" (tirnoq olmadan) daxil edin. Onları vergüllə ayıraraq birdən çox URL əlavə edə bilərsiniz.
  • Alətlər> İdarə Heyəti menyusundan İdarə Heyətləri menecerini açın və esp8266 platformasını quraşdırın ("esp8266" axtarın və "esp8266 tərəfindən ESP8266 İcması" nı yükləyin).

Hər şey qurulub. Eskiz koduna diqqət yetirək.

Fayl> Misal> Homotica> Homotica ESP8266 açın, BÜTÜN kodu yeni bir eskizdə kopyalayın və aşağıdakı parametrləri dəyişdirin:

  • ssid: simsiz şəbəkənizin adını bura daxil edin
  • parol: wifi şifrəniz
  • ip, ağ geçidi, alt şəbəkə: yəqin ki, bu ayara toxunmaq lazım olmayacaq; ESP8266 -nın fərqli bir ünvana sahib olmasını istəyirsinizsə ipi dəyişdirin
  • mUdpPort: daha sonra marşrutlaşdırıcıda açacağımız liman; nə olduğunu bilmirsinizsə, ona toxunmayın
  • kod: tətbiqinizi təsdiq etmək üçün istifadə ediləcək unikal 8 simvol kodu; istədiyinizi seçə bilərsiniz.

ACTIVE LOW quruluşundan istifadə edirsinizsə, nümunə kodunda göstərildiyi kimi homotica.setActiveLow () a zəng etməyi unutmayın!

İşi başa çatdırmaq üçün: halında loop və homotica.set (mUdpPort, kod) arasında ESP8266 -nın hansı GPIO ilə işləməli olduğunu söyləmək üçün homotica.addUsedPin (5) (nümunədə göstərildiyi kimi) əlavə edin; bütün homotica.simulateUdp (…) sətirlərini silin.

Qalmalı olduğunuz kod budur:

#daxil edin

#include #include const char* ssid = "mywifiname"; const char* parol = "wifipassword"; IPAddress ip (192, 168, 1, 20); IPAddress ağ geçidi (192, 168, 1, 1); IPAddress alt şəbəkəsi (255, 255, 255, 0); imzasız int mUdpPort = 5858; statik String kodu = "aBc159"; Homotica homotica; void setup () {WiFi.config (ip, ağ geçidi, alt şəbəkə); WiFi.begin (ssid, parol); while (WiFi.status ()! = WL_CONNECTED) {gecikmə (500); } homotica.addUsedPin (5); homotica.setActiveLow (); // <- ehtiyac yalnız homotica.set (mUdpPort, kod); } boşluq döngəsi () {homotica.refresh (); }

Hər şey düzgün qurulduqda, əlavə edilmiş ekran görüntüsünə uyğun olaraq Alətlər menyusundan tərtibçi parametrlərini dəyişdirin və Alətlər> Limanda ESP8266 -nın kompüterinizə qoşulduğu portu seçin.

İndi yüklə vurun. Mikro nəzarətçiniz quruldu və işə hazırdır!

Addım 3: Router və IP

Router və IP
Router və IP
Router və IP
Router və IP

Hər bir şəbəkədən ESP8266 ilə əlaqə qurmaq üçün marşrutlaşdırıcının ona göndərdiyimiz əmri daxil etməsini bildirməliyik.

Bunu etmək üçün yönlendiricinizin konfiqurasiya səhifəsinə gedin (adətən 192.168.1.1) və "virtual server" və ya "liman yönləndirmə" kimi bir şey axtarın; Google'da axtarış etdiyiniz router modeliniz üçün dəqiq ayarı tapa bilərsiniz.

Liman yönləndirməsində, ESP8266 (əvvəllər konfiqurasiya edilmiş) portu vasitəsi ilə ESP8266 (əvvəllər konfiqurasiya edilmiş) ilə bütün əlaqələrə imkan verən yeni bir qayda yaradın. Homotica adlandırın, ESP8266 IP -ni IP sahəsinə daxil edin və qeyd edin.

İstifadə etdiyiniz marşrutlaşdırıcı bunu etməyə icazə vermirsə, narahat olmayın: tətbiqdən mobil şəbəkədən istifadə edə bilməyəcəksiniz, ancaq ev wifi içərinizdən mükəmməl işləyəcək.

İndi, xarici dünyadan yönlendiricimizə müraciət etmək üçün onun ümumi IP -ni bilmək lazımdır; İşin mənfi tərəfi odur ki, internet provayderinin əksəriyyəti sizə statik bir IP vermir, əksinə zamanla dəyişən dinamikdir.

Ancaq gözləyin, biz bunu həll edə bilərik!

NoIp -ə gedin, yeni bir hesab yaradın, sonra yeni bir ana adı yaradın (əlavə olunmuş şəklə baxın). Hansı host adınızın olduğuna diqqət yetirin (mənim nümunəmdə: https://yourhostname.ddns.net) və növbəti addıma keçin.

(Qeyd: Kompüterinizin yönlendirici IP'nizi NoIp host adı ilə avtomatik olaraq sinxronlaşdırmasını istəyə bilərsiniz: bunu etmək üçün pulsuz tətbiqlərini yükləyin)

Addım 4: Tətbiq Konfiqurasiyası

Tətbiq Konfiqurasiyası
Tətbiq Konfiqurasiyası
Tətbiq Konfiqurasiyası
Tətbiq Konfiqurasiyası
Tətbiq Konfiqurasiyası
Tətbiq Konfiqurasiyası

Tətbiqə baxaq, elə deyilmi?

Tətbiqi Play Store səhifəsindən yükləyin və açın.

Sol menyunu açın, lövhələr seçin və yenisini yaradın. ESP8266 eskiz kodunda əvvəllər təyin etdiyimiz parametrləri dolduracağıq:

  • Arduino Adı: nə istəyirsən (bu ESP8266 olsun)
  • Host IP: bu ola bilər

    • https://yourhostname.ddns.net NoIp bağlantısı ilə istinad edilən yönlendiricinin statik IP
    • ESP8266 IP -ni yalnız ev wifi şəbəkənizdən istifadə etmək istəyirsinizsə 192.168.1.20
  • Host port: əvvəllər qurduğumuz və açdığımız liman 5858
  • Doğrulama kodu: aBc195 eskizində təyin etdiyimiz 8-char kodu

Yadda saxla. Menyu yenidən açın, yeni bir cihaz yaradın; nümayiş üçün bir ampul bağlayacağıq:

  • Adı: işıq
  • Düymə adı: On istifadə edəcəyik, istədiyinizi seçin
  • Pin nömrəsi: ampulü bağladığımız pin. Ehtiyatlı ol! ESP8266 -da pin etiketləri (D1, D2…) GPIO Pin adına uyğun gəlmir! Hansı pinin GPIO olduğunu müəyyən etmək üçün Google -da axtarın (nümunəmizdə: pin 5 D1 olaraq etiketlənir)
  • Davranış: cihazı açmaq, söndürmək, "itələmək" vəziyyətini dəyişdirmək (açmaq və söndürmək) arasında seçim edə bilərsiniz.

Yadda saxla. İndiyə qədər hər şeyi düzgün qurmusunuzsa, lampanın yanındakı düyməni açmalısınız.

Sərin, elə deyilmi?

İndi daha çox cihaz, daha çox lövhə əlavə etmək və onları səhnələrdə təşkil etməklə əylənə bilərsiniz.

Ancaq yeni yaratdığınız şeyi tam gücdə istifadə etmək üçün Tasker -dən istifadə etməli olacağıq.

Addım 5: Tasker İnteqrasiyası

Tasker İnteqrasiyası
Tasker İnteqrasiyası
Tasker İnteqrasiyası
Tasker İnteqrasiyası
Tasker İnteqrasiyası
Tasker İnteqrasiyası

Tasker -ə sahibsinizsə və ya almaq istəyirsinizsə, oxumağa davam edin! Homotika'ya nə edəcəyimizi və nə vaxt edəcəyimizi söyləmək üçün istifadə edəcəyik.

Bu nümunədə, evimizdəki wifi -yə hər dəfə qoşulduğumuzda işığı yandıracağıq və vaxt 16: 00-18: 00 arasındadır.

Tasker'i açın; yeni bir tapşırıq yaradın (işığı yandırın), Əlavə et> Plugin> Homotica seçin, plagini konfiqurasiya etmək üçün qələmi daxil edin. İşıq> Açıq və Saxla seçin. Əsas menyuya qayıdaraq yeni bir Profil yaradın, Vəziyyət> WiFi bağlantısı seçin, SSID sahəsinə tur Wifi adını daxil edin; geri basın və fəaliyyətə girərkən İşığı Yandır seçin. İndi yeni yaradılan profilin sol hissəsinə uzun basın, Əlavə et> Vaxt> Saat 16.00 -dan 18.00 -a qədər seçin, sonra bağlayın.

Biz qurtardıq. Qurduğumuz vaxt evə girəndə işığımız yanacaq.

Bu lazımlı!

İndi sizin növbənizdir: Homotica və Tasker ilə yaradıcı olun və yaratdıqlarınızı bizə göstərməyi unutmayın!

Tövsiyə: