Mündəricat:

Raspberry Pi ilə SmartHome: 5 addım
Raspberry Pi ilə SmartHome: 5 addım

Video: Raspberry Pi ilə SmartHome: 5 addım

Video: Raspberry Pi ilə SmartHome: 5 addım
Video: Raspberry Pi 4B - Установка Debian 12 Bookworm, и Supervised Home Assistant - сентябрь 2023 2024, Noyabr
Anonim
Raspberry Pi ilə SmartHome
Raspberry Pi ilə SmartHome

Bu layihə üçün bir veb sayt və mobil tərəfindən idarə oluna bilən bir SmartHome hazırladım. Bunun üçün Raspberry PI -ni verilənlər bazası və veb -server olaraq istifadə edirəm.

Təchizat

Bunu başlamaq istəyirsinizsə, bir neçə şeyə ehtiyacınız var:

  • 5 ağ LED (5 mm)
  • 1 ədəd bir telli temperatur sensoru
  • 1 LDR (işığa bağlı rezistor)
  • 2 servo mühərrik
  • 1 microSD (Raspberry Pi üçün)
  • 1 Çörək paneli güc təchizatı
  • 1 Raspberry Pi 3 Model B+
  • 3 Köpük lövhəsi
  • 1 pilləli motor (5V)
  • 1 RFID-RC522 oxucu
  • 8 rezistor (220 Ohm)
  • 1 rezistor (10K Ohm)
  • 2 Çörək taxtası
  • 2 paket tullanan tel
  • 1 16x2 LCD ekran
  • 1 ədəd PCF8574AN
  • 4 kiçik pəncərə (3D çaplı)
  • 1 qapı (3D çap)
  • 2 böyük pəncərə (3D çap)
  • 1 qaraj qapısı (3D çap)

Bütün bunları almaq üçün ehtiyacınız varsa, maksimum xərc 150 avro ətrafında olacaq

Addım 1: Kabel çəkmə

Kablolama
Kablolama
Kablolama
Kablolama
Kablolama
Kablolama

Başlamağın ən asan yolu, artıq əsas məlumatlara sahib olmaq üçün kabel çəkməkdir, bu üsulla kodu yazarkən hər şeyin işlədiyini asanlıqla yoxlaya bilərsiniz.

Bu yolla, Raspberry Pi -də hər şeyi birləşdirmək üçün kifayət qədər sancaqlar olub olmadığını görə bilərsiniz. Bu vəziyyətdə, LCDimi daha az GPIO sancaqları ilə idarə etmək üçün PCF8574AN istifadə etdim.

Sxemi çəkmək üçün Fritzing -dən istifadə etdim. Kabellərinizi yaxşı təşkil edilmiş bir şəkildə görə biləcəyiniz lazımlı bir proqramdır.

İkinci fotoda gördüyünüz kimi çoxlu kabellər var, buna görə də mütəşəkkil şəkildə işləməlisiniz.

Addım 2: Mənzil

Mənzil
Mənzil
Mənzil
Mənzil
Mənzil
Mənzil
Mənzil
Mənzil

Mənzil üçün divar kimi köpük lövhələrdən istifadə etdim. Lövhələri istədiyiniz formada kəsmək üçün bıçaqdan istifadə etdim. Pəncərələr, qapılar və qaraj qapıları 3D çapdır. Əlbəttə ki, evi əvvəlcədən çəkdim, buna görə hansı ölçüləri istifadə etməli olduğumu bilirdim.

Evi çəkmək üçün SketchUp istifadə etdim. Divarları düz tutmaq və bir yerdə tutmaq üçün yapışqan tabancasından istifadə etdim, fotoşəkillərdə görə bilsəniz, pəncərə və qaraj qapısı yapışqanla yapışdırılıb ki, kifayət qədər möhkəm olsun. Qara qutu 3 -cü fotoşəkildə hər şeyin sağlam qalması üçün nəql etdiyim bir qutu var

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

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

Əvvəlcə verilənlər bazasını Mysql Workbench istifadə edərək dizayn etməlisiniz. Buna nail olsanız, Raspberry Pi üzərində Mysql verilənlər bazasını quraşdırmalısınız.

Etdiyiniz ilk zımba Pi -nin yeniləndiyini yoxlamaqdır. Aşağıdakı əmrdən istifadə edə bilərsiniz:

sudo apt-get yeniləməsi

sudo apt-get yeniləmə

İndi Mysql serverini quraşdıra bilərsiniz:

sudo apt-get mysql-server qurun

Mysql serveri quraşdırılıbsa, Mysql müştərisini quraşdırın

sudo apt-get mysql-client yükləyin

İndi sql serverinə komanda ilə baxırsınızsa:

sudo mysql

İndi sql workbench və irəli mühəndis ilə.mwb faylını açaraq verilənlər bazası kodunuzu idxal edə bilərsiniz. Kodu kopyalayın və Raspberry -dən mysql -ə yapışdırın. Verilənlər bazası hazırlanır.

İstifadəçinin bütün icazələri əldə etməsi üçün istifadəçi adınızı cədvələ əlavə edin

smarthome -da bütün imtiyazları verin.

Əlbəttə ki, indi masanı təzələməlisiniz

FLUSH İSTİFADƏLƏRİ;

Bunu yoxlamaq üçün sadəcə cəhd edə bilərsiniz:

smarthome istifadə edin;

tarixçədən * seçin;

İstifadəçi cədvəlində istifadəçilərin adları nişanı ilə bir araya gəlir, burada yeni istifadəçilər əlavə edə bilərsiniz. Cihazlar cədvəlində identifikatoru olan bütün aktiv sensorları tapa bilərsiniz. Historiek cədvəli, temperatur sensoru, qaraj qapısının statusu nişanı və daha çox kimi baş verən hər şeyi göstərir.

Addım 4: Quraşdırma

Raspberry Pi -də görüntünü qurmaq üçün Putty istifadə edə bilərsiniz, bu pulsuz bir proqramdır. Əsas görüntü faylını burada tapa bilərsiniz:

İnterfeyslər

Əlbəttə ki, Pi -də bəzi interfeysləri aktivləşdirməlisiniz. Əvvəlcə konfiqurasiya səhifəsinə keçin.

sudo raspi-config

İndi 1-Wire və Spi kateqoriyalarına gedə bilərsiniz və hər ikisini də aktivləşdirə bilərsiniz. İstilik sensoru üçün bunlara ehtiyacınız olacaq.

Wifi

Pi -də Wi -Fi əldə etmək üçün növbəti addımları izləyin.

Əvvəlcə kök olaraq daxil olun

sudo-i

Sonra wifi şəbəkənizin adını və şifrənizi daxil edin

wpa_passphrase = "wifiname" "parol" >> /etc/wpa_supplicant/wpa_supplicant.conf

Sonra WPA müştəri daxil edin

wpa_cli

interfeysi seçin

wlan0 interfeysi

İndi konfiqurasiyanı yenidən yükləyin

yenidən qurmaq

İndi bağlı olduğunuzu yoxlaya bilərsiniz

ip a

Paketlər

Ediləcək ilk şey ən son versiyaları yeniləməkdir

sudo apt yeniləmə

Python üçün quraşdırırıq və Pi -nin düzgün versiyanı seçdiyinə əmin oluruq

update-alternatives-install/usr/bin/python python /usr/bin/python2.7 1-alternativ alternativlər-install/usr/bin/python python/usr/bin/python3 2

Veb serverinin Saytı işə salması üçün Apache2 -ni quraşdırmalıyıq

sudo apt install apache2 -y

Bəzi python paketlərinin də quraşdırılması lazımdır

  • Şüşə
  • Flask-Cors
  • Flask-MySQL
  • Şüşə-SocketIO
  • PyMySQL
  • Python-socket
  • istək
  • boru
  • gpio
  • Gevent
  • Gevent-veb yuvası

tapılmayan bir paketlə əlaqədar problemlər varsa, üzərinə sağ vurun və quraşdırılmasına icazə verin.

Addım 5: Kod

Kod
Kod
Kod
Kod

arxa tərəf

Arxa plan üçün kodu pythonda yazırıq və yazmaq üçün pycharm istifadə edirik. Arxa tərəfdən gələn marşrutları poçtalyonla yoxlamaq mümkündür. Bu proqramla POST və GET metodlarından istifadə edə bilərsiniz. Arxa planda çox işləmə istifadə etdim, buna görə hər şey arxa planda işləyir və birlikdə işləyə bilər. Raspberry Pi -də görüntünü qurmaq üçün Putty istifadə edə bilərsiniz, bu pulsuz bir proqramdır.

cəbhə

Ön tərəfdə işıqları yandıra bilən, qaraj limanını və qapını aça bilən bir neçə düymə var. JavaScript və CSS istifadə edərək düymələrdəki stil aktiv olduqda dəyişir. Həm də canlı temperatur və keçmiş temperaturları olan bir cədvəl var. İstifadəçi səhifəsində müxtəlif istifadəçiləri görə bilərsiniz, verilənlər bazasına bir istifadəçi də əlavə edə bilərsiniz və qaraj qapısını kimin son olaraq açdığını və ya bağladığını görə biləcəyiniz bir istifadəçi tarixi var.

Ön və arxa ucun kodunu burada tapa bilərsiniz

github.com/NMCT-S2-Project-1/nmct-s2-proje…

Tövsiyə: