Mündəricat:

EasyTalk: Asan Əlaqə və Yanınızda Təqvim: 6 Addım
EasyTalk: Asan Əlaqə və Yanınızda Təqvim: 6 Addım

Video: EasyTalk: Asan Əlaqə və Yanınızda Təqvim: 6 Addım

Video: EasyTalk: Asan Əlaqə və Yanınızda Təqvim: 6 Addım
Video: ORACAO DA PROTECAO DIVINA SALMO 121 2024, Dekabr
Anonim
EasyTalk: Asan Ünsiyyət və Yanınızda Təqvim
EasyTalk: Asan Ünsiyyət və Yanınızda Təqvim
EasyTalk: Asan Ünsiyyət və Yanınızda Təqvim
EasyTalk: Asan Ünsiyyət və Yanınızda Təqvim

Adım Kobe Marchal, Belçikanın Howest şəhərində oxuyuram və Multimedia və Kommunikasiya Texnologiyası (MCT) tələbəsiyəm. Birinci kursun son tapşırığı üçün IoT cihazı etməli oldum.

Evdə qardaşımın həmişə oynadığı bir problem var və anam aşağıdan ona bir şey söyləməli olanda, qulaqcıq taxdığı və heç nə eşitmədiyi üçün qışqırmalı olur. Onun üçün bu problemi həll etmək istədim, buna görə bir veb saytından mesaj göndərə biləcəyiniz bir cihaz qurdum. Öz hadisələrinizi saxlaya biləcəyiniz və ya bir URL üzərindən xarici bir təqvim idxal edə biləcəyiniz bir təqvim olaraq da istifadə olunur. Bu cihaz eyni zamanda temperatur və hava keyfiyyəti dəyərlərini saxlayır, buna görə də tez -tez fərq etmədiyinizə görə oynayarkən və ya işləyərkən nə qədər sağlam olduğunu görə bilərsiniz.

Bu cihaz EasyTalk adlanır və bu problemi həll edir. Hadisələrinizi, vaxtınızı və ya temperaturunuzu və hava keyfiyyətinizi görə biləcəyiniz üçün OLED ekranı istifadə edən kiçik bir cihazdır. Mesaj göndərildikdə, bir bildiriş səsi ilə sizi görür və bəli və ya yox cavab verə biləcəyiniz mesajı ekranda göstərir.

Bu şeyi qurmaq istəyirsinizsə və ya necə edildiyini görmək istəyirsinizsə, oxumağı şiddətlə təklif edirəm. Mənim haqqımda daha çox bilmək istəyirsinizsə, portfelimə daxil ola bilərsiniz.

Addım 1: Materiallar

Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar

İlk addım bu layihədə istifadə etmək üçün lazım olan bütün materialları toplamaqdır. Səninlə səmimi olacağam. Bu ucuz bir cihaz deyil, ümumi dəyəri 271 avrodur. Aşağıda onların siyahısı və aydınlaşdırmaq üçün bəzi fotoşəkillər var.

  • Raspberry Pi 4 Model B - 4GB
  • Pibow Coupé 4 - Ninja
  • 12 x Premium Jumperwires şeridi - 40 ədəd - M/M - 20 sm
  • 6 x Premium Jumperwires şeridi - 40 ədəd - M/F - 20 sm
  • 2 x 36 pin yığma başlığı
  • 40 pinli kişi qutu başlığı
  • 40 pin Regenboog GPIO kabel
  • Monoxrom 2.42 "128x64 OLED Qrafik Ekran Modulu Kit
  • Kleine Metalen Dinamik Draadjes ilə görüşdü - 8 ohm 0.5W
  • Adafruit Mono 2.5W Class D Audio Versterker
  • 3,5 mm Aux Jack kabeli
  • 7 mm iplik ani basma düyməsi
  • Tumelschakelaar
  • PIR Bewegingssensor
  • DS18B20 Rəqəmsal temperatur sensoru
  • Grove - Sensor v1.3
  • Grove - I2C ADC
  • Raspberry Pi 4 USB-C Voeding
  • Flexibel mini statistikası
  • 470 Ohm rezistorlar
  • 4, 7K Ohm müqavimət
  • İstilik büzücü borular
  • 6 x Vida M2 x 6mm
  • 6 x Vida M2 x 8mm
  • 3 x M2 x 16 mm vintlər
  • Alüminium 3 mm

Bütün materiallar üçün nə qədər pul ödədiyimi və haradan aldığımı görə bilərsiniz.

Addım 2: Raspberry Pi

Bu layihə üçün Raspberry Pi istifadə edirik, çünki qurulması asandır və çox şey üçün istifadə edilə bilər. Etmək istədiklərimiz üçün mükəmməldir.

Raspberry Pi Desktop OS -ni yükləyin və Raspberry Pi -yə quraşdırın. Raspi-konfiqurasiyada SPI, I2C və One Wire-i aktiv etməlisiniz. Daha sürətli açılması üçün Önyükleme Seçimlərindəki bəzi şeyləri deaktiv etməyi təklif edirəm. Bunun xaricində bunu etmək üçün pip ilə qurmalı olduğunuz bəzi kitabxanalardan istifadə edirəm.

pip3 quraşdırın:

  • adafruit-circuitpython-ssd1305
  • ics
  • Şüşə
  • Flask-Cors
  • Şüşə-JWT-Genişləndirilmiş
  • mysql-bağlayıcı-python

Bir veb sayt qurmaq üçün apache2 də lazımdır, burada apt istifadə edirik:

sudo apt install apache2 -y

Simsiz əlaqə qurmalısınız, çünki Raspberry Pi -də olduğu halda UTP kabelini ala bilməzsiniz.

Verilənlər bazasına daxil olmaq üçün MariaDB -ni də qurmalısınız.

Addım 3: Kabel çəkmə

Kablolama
Kablolama
Kablolama
Kablolama

Növbəti addım hər şeyi bir -birinə bağlamaq və bütün komponentlərin işlədiyini yoxlamaqdır. Çörək taxtasını çıxarmaq və cihazın daha kiçik olması üçün naqilləri daha az etmək üçün bir PCB yaratdım. Bu, monitörünüzün yanında dayanacağı və çox yer tuta bilməyəcəyi üçün sizi işinizdən yayındırmaması üçün lazımdır.

Addım 4: Verilənlər bazası

Verilənlər bazası
Verilənlər bazası

Bu cihaz, bütün məlumatlarını saxlamaq və veb saytında və cihazın özündə göstərmək üçün normallaşdırılmış MySQL verilənlər bazasından istifadə edir. MySQL Workbench -də yaratdım.

Bu verilənlər bazasında 5 cədvəl var.

Cədvəl Activiteiten (= fəaliyyətlər, hadisələr) təqvimdəki bütün hadisələri saxlamaq üçün istifadə olunur. Bura başqa bir təqvimdən alınan bütün hadisələr də daxildir.

Table Apparaten (= cihazlar), Historiek (= tarix) cədvəlində istifadə olunan müxtəlif növ cihazları saxlamaq üçün istifadə olunur. Bu layihədə istifadə olunan iki sensör var, temperatur sensoru və hava keyfiyyəti sensoru, amma mənim veb saytdan cihaza göndərilən mesajları saxlamaq üçün veb saytın üçüncü bir "cihazı" da var.

Cədvəl Gebruikers (= istifadəçilər) istifadəçiləri saxlayır. Parolu ilə daxil ola və cihaza göndərildikdə mesajla görünən bir ləqəb təyin edə bilərlər.

Sensor dəyərlərini və cihaza göndərilən mesajları saxlamaq üçün Historiek Cədvəli (= tarix) istifadə olunur.

Və nəhayət masa bağlantıları (= URL -lər) bütün xarici təqvim URL -lərini saxlayır.

Addım 5: Kod

Kod
Kod
Kod
Kod
Kod
Kod

Ən yaxşı təcrübə olduğu üçün yeni bir istifadəçi etməyi məsləhət görürəm, amma lazım deyil, standart pi istifadəçisini də istifadə edə bilərsiniz.

Ön kod apache2 -dən standart html qovluğuna qoyulur. Bu qovluğu/var/www/html -də tapa bilərsiniz.

Arxa plan üçün ev qovluğuna bir qovluq düzəltməlisiniz və bütün kodu ora daxil etməlisiniz.

Bu koddakı bəzi dəyərləri də dəyişdirməliyik. Əvvəlcə app.py saytına daxil olun. 23 -cü sətirdə bir telli temperatur sensörünün adını təyin edin. Bu, yəqin ki, sizin üçün fərqli bir şey olacaq. Doğru adı tapmaq üçün bir terminal açın və yazın:

ls/sys/bus/w1/cihazlar

və birdən çox fərqli rəqəmdən ibarət bir simli axtarın və 23 -cü sətirdə olanı əvəz edin.

Dəyişdirməyimiz lazım olan başqa bir şey config.py sənədindədir, verilənlər bazasının parolunu dəyişdirin.

Bunun açılışda işləməsini istəyirsinizsə, EasyTalk.service faylını da dəyişdirməlisiniz. Yalnız İşçi Dizini və İstifadəçini dəyişdirin. Bu faylı aşağıdakı əmrlə kopyalamalısınız:

sudo cp EasyTalk.service/etc/systemd/system/EasyTalk.service

Sonra işə salın:

sudo systemctl EasyTalk.service başladın

Və sonra onu işə salın ki, açılışda başlayacaq

sudo systemctl EasyTalk.service imkan verir

Addım 6: Dava

Dava
Dava
Dava
Dava
Dava
Dava
Dava
Dava

Mümkün qədər kiçik olması üçün işi 3D çap etməyə qərar verdim. Çap 3 hissədən ibarətdir, qutunun özü, bir qapaq və dinamik tutucu, çünki vintləri vidalayacaq delikləri yoxdur.

Hər şeyi bir araya gətirmək üçün bəzi cəsarətlərə ehtiyacınız olacaq.

  • 6 x Vida M2 x 6mm
  • 6 x Vida M2 x 8mm
  • 3 x Vida M2 x 16mm

Dürüst olsam da. Bu şeyi düzəltmək 4-5 saat çəkdi. Kiçik olduğu üçün hər şey uyğun gəlir və bəzən cəsarətləri vidalaşdırmaq çətindir, amma diqqətlə etsəniz işləyir.

Çörək taxtasını əvəz etmək üçün bir PCB də hazırladım, əvvəlcə başlıqları və 5 rezistoru (4 x 470 Ohm, 1 x 4.7K Ohm) lehimləməlisiniz.

PCB -yə sahib olduğunuzda, PCB -yə qoşulması lazım olan hər şeyə kabellərin lehimlənməsi ilə başlamağı təklif edirəm.

Bu edildikdə, PCB -ni yerləşdirmək və ona bağlamaq üçün OLED ekranı vidalayacaqsınız. Ekranda PCB var. Bunun üçün 6 mm vintlərdən istifadə edirsiniz.

Sonra hava keyfiyyəti sensörünü getməli olduğu yerə vurursunuz, amma bu bir az çətindir, çünki ADC ona qoşulur. İki komponentin bir -birinə toxunmaması üçün bunu düzgün etmək üçün görmək lazım olan 3 x 5 mm alüminium borularla 16 mm vintlərdən istifadə edirsiniz. Üçüncüsünə çata bilmədiyim üçün bunu iki vintlə etdim. 4 teli PCB -yə getmələri lazım olan yerə bağlayırsınız.

Sonra səs gücləndiricini PCB -yə qoşun və dinamikin 3D çap tutacağı ilə yerinə qoyun.

Bu addımlardan sonra ən çətin hissələr bitdi və qalan hər şeyi PCB -yə bağlaya və yerinə vidalaya bilərsiniz. Diqqət yetirin ki, gördüyünüz fotoşəkillərdə fərqli bir temperatur sensoru istifadə edirəm, son məhsul üçün temperatur sensörünü uzun bir kabel ilə istifadə etdim, çünki qutunun içindən istiliyi ölçürdü.

Bütün bunlar yerində olduqda, Raspberry Pi -ni vidalaşdırmalısınız. Çantanı bunun üçün istifadə edirəm, çünki istehsal etdiyi istiyə güvənmirəm, bu halda qoruma var, beləliklə 3D çap ərimir. Yerə bağlamadan əvvəl, elektrik kabelini və köməkçi kabelini (bir teli açıb lehimləməli və sonra Raspberry Pi -dən PCB -yə bağlamalısınız) bağlamalısınız, çünki sonra ona çata bilməzsiniz.

Sonra GPIO başlıq kabelini PCB -dən Raspberry Pi -yə bağlayın və qapağı bağlamadan əvvəl hər şeyin işlədiyini yoxlayın.

Aşağıda bir tripod bağlaya biləcəyiniz bir çuxur var, lakin bu isteğe bağlıdır.

Bu belədir! Ümid edirəm bu məqaləni oxumaqdan zövq aldınız! -Kobe

Tövsiyə: