Mündəricat:

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: 10 addım (şəkillərlə)

Video: Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat: 10 addım (şəkillərlə)

Video: Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat: 10 addım (şəkillərlə)
Video: Home Assistant İşıq zəngli saat günəşin doğuşu və qürubu həftənin vaxtı və gününə görə aktivləşdirmə 2024, Iyul
Anonim
Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat
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 sayta görə zəngli saatını dəyişə bilərsiniz. Siqnal çalınanda bir səs (zil) olacaq və 2 işıq yanacaq (2 LED). LEDlər yalnız qaranlıq olduqda yanacaq (işıq sensoru). LEDlər otağın işıqlandırılmasını təmin edir ki, təbii olaraq ayağa qalxa biləsiniz. Siqnalı söndürmək üçün düyməni basın. Mürgülə atma funksiyasından (+5 dəq) istifadə etmək istəyərkən əlinizi ultrasəs sensoru qarşısında tutmalısınız. Hərəkət aşkar edilərsə (ultrasəs sensoru), LCD -nin vəziyyəti dəyişəcək.

LCD statusu:

  1. Saytın IP ünvanı
  2. Saat / tarix
  3. Növbəti həyəcan vaxtı
  4. Rütubət və temperatur

Bu, təhsil aldığım sahədəki ilk layihəmdir: Howest -də (Kortrijk Belçika) Multimedia və Rabitə Texnologiyası (MCT).

Addım 1: Komponentlər və materiallar

Komponentlər və materiallar
Komponentlər və materiallar
Komponentlər və materiallar
Komponentlər və materiallar
Komponentlər və materiallar
Komponentlər və materiallar

Layihəm üçün aşağıda sadalayacağım bir çox hissədən istifadə etdim, sifariş verdiyim veb saytlar kimi bütün uyğun komponent qiymətləri olan excel faylını da əlavə edəcəyəm.

Komponentlər

  • Raspberry Pi 3 model B+
  • Raspberry Pi enerji təchizatı
  • Lcd ekran
  • Buzzer
  • LDR
  • 2 Led
  • DHT-11
  • HC-SR04 Ultrasonik məsafə sensoru
  • Düymə
  • Qayçı

Materiallar:

  • Ağac 7 mm
  • Taxta 2 sm
  • Yapışqan film

Alətlər:

  • Lehimləmə
  • Super yapışqan
  • Gördü
  • Tornavidalar
  • Qazma

Aşağıdakı PDF sənədində tam qiymət siyahısını görə bilərsiniz.

Addım 2: Avadanlıqları bir araya gətirmək

Avadanlıqların Bir yerdə qoyulması
Avadanlıqların Bir yerdə qoyulması
Avadanlıqların Bir yerdə qoyulması
Avadanlıqların Bir yerdə qoyulması

Etdiyim Fritzing sxeminə uyğun olaraq dövrə qurdum, aşağıdakı sxemi yüklədim. Dövrədə birdən çox sensora və birlikdə işləyən bir aktuatora malikdir. Hansı fərqli sxemlərin olduğunu, bunları necə bağlamalı olduğunuzu sxemdə tapa bilərəm.

  1. 15 sm məsafədə (öz -özünə kodlanmış məsafə) hərəkəti aşkar edən ultrasəs məsafə sensoru var və LCD -nin vəziyyətini dəyişir, lakin siqnal aktivdirsə, həyəcanı 5 dəqiqə gecikdirir.
  2. 4 statusu (ip ünvanı, tarix/saat, növbəti siqnalizasiya, temp/zum) göstərən bir LCD ekran var.
  3. Havanın temperaturunu və rütubətini ölçən dht11
  4. Siqnalı söndürmək üçün bir düymə və ya 3 saniyədən çox basarsanız rpi bağlanacaq
  5. Quraşdırılmış həyəcan vaxtı cari vaxtla uyğun gəlsə, səs -küy salmaq üçün bir siqnal
  6. Otaqdakı işığı ölçmək üçün LDR sensoru
  7. 2 Qaranlıq olduqda otağı işıqlandırmaq üçün Led -> LDR

Addım 3: verilənlər bazası modeli (mySQL)

Verilənlər bazası modeli (mySQL)
Verilənlər bazası modeli (mySQL)

ERD diaqramımı yuxarıda görə bilərsiniz, mən də bir zibil faylını əlaqələndirəcəyəm ki, verilənlər bazasını özünüz üçün idxal edə biləsiniz.

Bu verilənlər bazası ilə bir çox şeyi göstərə biləcəksiniz:

  • Temperatur
  • Rütubət
  • İşıq dəyəri
  • Siqnal vaxtı quruldu/söndürüldü/təxirə salındı
  • Buzzer işləyirsə
  • İşıqlar yanarsa

Bu verilənlər bazasını yenidən yaratmaq istəyirsinizsə, Raspberry Pi -yə qoşulmaq üçün yeni bir istifadəçi yaratmalısınız.

Addım 4: Raspberry Pi ilə əlaqə

Raspberry Pi ilə əlaqə
Raspberry Pi ilə əlaqə

Əvvəlcə Putty -ni yükləməlisiniz, veb saytında pulsuz bir versiya var. Burada yükləyə biləcəyiniz Raspbian proqramına da ehtiyacınız olacaq.

Putty'i açdığınız zaman 'sessiya' düyməsini basmalısınız. Bunu etdikdən sonra 'Uzaqdan Host' altında Pi'nin IP ünvanını doldurmalısınız. Sonra seçə biləcəyiniz bir istifadəçi adı daxil edə bilərsiniz. sonra 'OK' düyməsini basın.

Adətən bütün bu addımlardan sonra avtomatik olaraq bir əlaqəyə başlayacaq. Sonra şifrənizi daxil etməlisiniz və bağlısınız.

Addım 5: Raspberry Pi -də proqram təminatı

Raspberry Pi proqram
Raspberry Pi proqram

Kodumun işləməsi üçün (aşağıda link verəcəyəm) bəzi paketlər və kitabxanalar quraşdırmalısınız. Lazım olan ilk şey Pi -ni yeniləməyinizdir.

Əvvəlcə aşağıdakı əmri daxil edərək sisteminizin paket siyahısını yeniləyin: sudo apt-get update Sonra, aşağıdakı əmrlə bütün quraşdırılmış paketlərinizi ən son versiyalarına yüksəldin: sudo apt-get dist-upgrade Paketleri quraşdırdıqdan sonra bəzi kitabxanalar quraşdırmalısınız:

  • Flaskflask_cors
  • RPI. GPIO
  • Tarix vaxt
  • yivləmə
  • vaxt
  • alt proses
  • mysq
  • lSocketIO

Addım 6: Raspberry Pi -də bir veb server qurmaq

Raspberry Pi -də bir veb server qurmaq
Raspberry Pi -də bir veb server qurmaq

Putty konsolunuza gedin.

Apache veb serverini quraşdıracağıq. Bunu etməklə şəbəkənizə qoşulmuş istənilən cihazda veb saytı aça biləcəksiniz. Aşağıdakı əmri yazın və enter düyməsini basın: sudo apt-get install apache2

İndi qovluğa gedin:/var/www/html/Burada bütün fayllarınızı veb saytınızdan yerləşdirə bilərsiniz və Pi -nin IP ünvanına baxdığınız zaman index.html səhifəsi açılacaq. index.html -ə I böyük hərfini yazmamaq üçün diqqətli olun, əks halda indeks səhifəsini avtomatik açmayacaq.

Addım 7: Proqram təminatı: Python

Proqram təminatı: Python
Proqram təminatı: Python

Çoxlu python skriptləri hazırladım, kodu özünüz görə biləcəyiniz üçün githubhere -ni əlaqələndirəcəyəm. Amma bunu bir azdan izah edəcəm.

Ultrasonik sensor, işıqlar, LDR və LCD üçün bəzi sinifləri kodlaşdırdım. DHT11 sensoru üçün kitabxanalardan istifadə etdim. (idxal Adafruit_DHT) Nəhayət, layihənin tam işləməsi üçün yalnız bir fayl istifadə edirəm, bunun adı app.py. Həm də bu faylda bəzi marşrutları kodlaşdırdım, beləliklə verilənlər bazamdakı məlumatları oxuya bildim və sonra javascript sənədlərimdə istifadə etdiyim bir json obyektinə göndərdim.

Addım 8: Proqram təminatı: Veb sayt

Proqram təminatı: Veb sayt
Proqram təminatı: Veb sayt
Proqram təminatı: Veb sayt
Proqram təminatı: Veb sayt
Proqram təminatı: Veb sayt
Proqram təminatı: Veb sayt
Proqram təminatı: Veb sayt
Proqram təminatı: Veb sayt

Veb saytında həyəcan siqnalı qura biləcəyiniz bir fürsət verdim. Buna görə bunu etməyim üçün bir veb sayt yaratdım. Veb sayt vasitəsilə rütubəti, temperaturu və tarixini də izləyə bilərsiniz.

Pi yüklənərkən, python skriptimi işə salmağa başlayacaq. Bu, məlumatların veb saytında göstərilməsinə və həyəcan siqnalı qurulmasına imkan verəcəkdir. Sayt da cavab verir, buna görə də xüsusiyyətlərini itirmədən və ya başqa şəkildə mobil cihazlarda açıla bilər.

Kodumu github -da burada tapa bilərsiniz.

Addım 9: Davanın qurulması

Davanın qurulması
Davanın qurulması
Davanın qurulması
Davanın qurulması
Davanın qurulması
Davanın qurulması

Mənim vəziyyətim üçün saatı təqlid etmək üçün bir qutu qururam.

Davanın qurulma prosesini görə biləcəyiniz şəkillər də qoydum. Ölçmələr üçün aşağıda necə yükləyə biləcəyimi göstərən sxemimi görə biləcəyiniz bir fayl da yükləyəcəyəm.

Addım 10: İstifadəçi Manuel

Burada layihənin necə işlədiyinə dair qısa bir təlimat tapa bilərsiniz. İnşallah bu dərsliyin sonunda ağıllı zəngli saat düzəltsəniz gününüz daha yaxşı olacaq!

Oxuduğunuz üçün təşəkkürlər.

Tövsiyə: