Përmbajtje:

Priza e aktivizuar me internet: 13 hapa
Priza e aktivizuar me internet: 13 hapa

Video: Priza e aktivizuar me internet: 13 hapa

Video: Priza e aktivizuar me internet: 13 hapa
Video: Ирония судьбы, или С легким паром, 1 серия (комедия, реж. Эльдар Рязанов, 1976 г.) 2024, Korrik
Anonim
Image
Image
Furnizimet e nevojshme
Furnizimet e nevojshme

Projekti i serverit të uebit të PowerHub & Udhëzimet e konfigurimit të prizës së aktivizuar

Qendra qendrore e qëndrueshmërisë së të dhënave për dritën e aktivizuar në internet dhe prizat në shtëpinë tuaj!

Hapi 1: Udhëzimet për konfigurimin e prizës të Projektit të PowerHub Webserver & Internet Enabled

Qendra e qëndrueshmërisë së të dhënave për ndriçimin e aktivizuar nga Interneti në shtëpinë tuaj

Disk i ndezur RaspberriPi/Instaloni Softuerin e Kërkuar (Duke Përdorur Ubuntu Linux) Shkarkoni "RASPBIAN JESSIE LITE"

Krijoni hard diskun tuaj të ri për DashboardPI

Futni microSD në kompjuterin tuaj nëpërmjet përshtatësit USB dhe krijoni imazhin e diskut duke përdorur komandën dd

Gjeni kartën tuaj të futur microSD përmes komandës df -h, çmontoni atë dhe krijoni imazhin e diskut me komandën e diskut dd

$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678

$ umount /dev /sdb1

Kujdes: sigurohuni që komanda është plotësisht e saktë, mund të dëmtoni disqe të tjerë me këtë komandë

if = vendndodhja e skedarit të imazhit RASPBIAN JESSIE LITE e = vendndodhja e kartës tuaj microSD

$ sudo dd bs = 4M nëse =/path/to/raspbian-jessie-lite.img e =/dev/sdb (shënim: në këtë rast, është/dev/sdb,/dev/sdb1 ishte një ndarje ekzistuese e fabrikës në microSD)

Konfigurimi i RaspberriPi tuaj

Vendosni kartën tuaj të re microSD në mjedër dhe ndizeni atë me një monitor të lidhur me portën HDMI

Identifikohu

përdorues: pi kaloni: mjedër

Ndryshoni fjalëkalimin e llogarisë tuaj për siguri

sudo passwd pi

Hapi 2: Aktivizoni RaspberriPi Opsionet e Avancuara

sudo raspi-config

Zgjidhni: 1 Zgjero sistemin e skedarëve

9 Opsione të Avancuara

Emri i hostit A2 ndryshojeni atë në "WIFI-OUTLET"

A4 SSH Aktivizo serverin SSH

A7 I2C Aktivizo ndërfaqen i2c

Aktivizo tastierën angleze/amerikane

sudo nano/etc/default/tastierë

Ndryshoni rreshtin e mëposhtëm: XKBLAYOUT = "ne"

Rinisni PI për ndryshimet në paraqitjen e tastierës / ndryshimin e madhësisë së sistemit të skedarëve për të hyrë në fuqi

$ sudo mbyllje -r tani

Lidhu automatikisht me WiFi tuaj

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Shtoni rreshtat e mëposhtëm që raspberrypi juaj të lidhet automatikisht me WiFi -në e shtëpisë tuaj (nëse rrjeti juaj pa tel quhet "linksys" për shembull, në shembullin e mëposhtëm)

network = {ssid = "linksys" psk = "FALASJE E PALAS KITU"} Rinisni PI për t'u lidhur me rrjetin WiFi

$ sudo mbyllje -r tani

Tani që PI juaj është më në fund në rrjetin lokal, mund të regjistroheni nga distanca në të përmes SSH. Por së pari ju duhet të merrni adresën IP që ka aktualisht.

$ ifconfig Kërkoni për "inet addr: 192.168. XXX. XXX" në daljen e komandës së mëposhtme për adresën IP të PI -së tuaj

Shkoni në një makinë tjetër dhe identifikohuni në raspberrypi tuaj nëpërmjet ssh

$ ssh [email protected]. XXX. XXX

Hapi 3: Filloni të instaloni paketat e kërkuara

$ sudo apt-merrni përditësim

$ sudo apt-get upgrade

$ sudo apt-get install vim git python-kërkon python-gpiozero python-smbus i2c-tools python-imaging python-smbus build-thelbësor python-dev rpi.gpio python3 python3-pip libi2c-dev python3-spidev python-spidev

Përditësoni cilësimet lokale të zonës kohore

$ sudo dpkg-rikonfiguroni tzdata

zgjidhni zonën tuaj kohore duke përdorur ndërfaqen

Vendosni drejtorinë e thjeshtë të komandës l [opsionale]

vi ~/.bashrc

shtoni rreshtin e mëposhtëm:

alias l = 'ls -lh'

burimi/.bashrc

Fiksoni theksimin e sintaksës së paracaktuar të VIM [opsionale]

sudo vi/etc/vim/vimrc

mos komentoni rreshtin e mëposhtëm:

sintaksë e aktivizuar

Instaloni drejtuesit i2c Python

Hapi 4: NDURTIMI I API -së WEB

Udhëzimet e mëposhtme do t'ju lejojnë të ndërtoni shpërndarësin qendror që shpjegon prizat e ndryshme të aktivizuara wifi dhe çelsat e murit që mund të ndërtoni, cilat pajisje ndizen dhe fiken. Ky është një skript i vogël PHP për ta vendosur në një webhost sipas zgjedhjes tuaj. Ka API -në e mëposhtme për të marrë dhe vendosur informacionin në të. Shënim: mos harroni të përfshini skedarin.htaccess që të bëhet drejtimi i duhur i URL -ve.

Instaloni dosjen "index.php", "vlerat/" dhe settings.php (të konfiguruara në vlerat tuaja) në një server të faqes në internet të zgjedhur nga ju. Vlera e çelësit sekret në skedarin "settings.php" duhet të përputhet me vlerën e çelësit sekret që do të vendosnit në skedarin "settings.py". Kjo do të parandalojë në një nivel bazë çdo trafik tjetër në internet të vendosë / shkruajë vlera, duke ndezur pajisjet tuaja, tani ju nevojitet ky çelës API i hashur në kokën e kërkesës HTTP për ta bërë këtë.

API mbështet veçoritë e mëposhtme, për këtë projekt ne do të përdorim vetëm vlerat e "flamurit" të cilat janë vlera boolean që i thonë çelësit të ndizet dhe fiket. Ndoshta nëse dëshironi të përfitoni nga vlerat e "leximit", mund ta keni atë, kështu që nëse temperatura e dhomës nxehet shumë duke kursyer një temperaturë atje, mund të ndezë një ventilator të dritares, etj.

Merrni Kodin

Klononi projektin e mëposhtëm nga GitHub për të marrë kodin për të ekzekutuar serverin në internet dhe prizën RaspberryPI.

github.com/khinds10/PowerHub

Pikat përfundimtare të API kur ekzekutohen në serverin e uebit

myhost/mesazh (merrni grupin aktual të mesazheve)

myhost/message/set (HTTP POST një vlerë e papërpunuar e vargut në këtë URL për të vendosur një mesazh të ri)

myhost/flag/{id} (merrni statusin aktual boolean të flamurit me numër të plotë: {id})

myhost/flag/all (merrni të gjithë statusin aktual boolean të të gjithë flamujve si një grup)

myhost/flag/{id}/set (caktoni statusin aktual boolean në 'true' për flamurin me numër të plotë: {id})

myhost/flag/{id}/unset (caktoni statusin aktual boolean në 'false' për flamurin me numër të plotë: {id})

myhost/reading/{id} (merrni vlerën mesatare aktuale për leximin me numër të plotë: {id})

myhost/reading/all (merrni vlerën mesatare aktuale për të gjitha leximet si një grup)

myhost/reading/{id}/set (HTTP POST një vlerë numerike e papërpunuar në këtë URL për të shtuar një vlerë të re në mesataren aktuale të llogaritur) - shihni më poshtë për sa vlera në total janë përpiluar në vlerën mesatare Konfigurimi Vlerat e 'leximeve' llogariten si mesataret e një numri të caktuar të vlerave numerike të leximit të vazhdueshëm të kohëve të fundit. Vendosni konstanten e mëposhtme se sa nga leximet më të fundit duhet të përfshihen për të prodhuar mesataren.

$ leximetAverageLimit = 5;

Serveri i të dhënave do të ruajë vlerat për skedarët e thjeshtë të vendosur duke emërtuar konventat më poshtë. Shënim: {id} do të zëvendësohet me numrin e plotë të vërtetë të paraqitur nga URL -ja e kërkesës në hyrje.

$ valueFileFolder = 'vlerat' (emri i dosjes që përmban skedarët e matjes) $ messageFileName = 'message.msg' (emri i skedarit të tekstit të mesazhit) $ readingsFilesNames = 'lexim {id}.avg' (emri i CSV mesatarisht skedari i leximeve) $ flagFilesNames = 'flag {id}.flg' (emri i skedarit të flamurit të vlerës së flamurit boolean)

Sigurohuni që të gjithë skedarët e vlerës të shkruhen nga vlerat e systemchmod 777/*

Hapi 5: Furnizimet e nevojshme

Furnizimet e nevojshme
Furnizimet e nevojshme
Furnizimet e nevojshme
Furnizimet e nevojshme
Furnizimet e nevojshme
Furnizimet e nevojshme

Sharrë vrimë 1 inç (për stërvitje)

Modul stafetë 5V 2 kanal

Pllakë muri Receptacle Duplex

Receptacle Duplex

Pi Zero W

Surface Mount Backbox Dual Gang

Butona shtypi me ndriçim të bardhë

Hapi 6: Ndërtimi i prizës

Ndërtimi i prizës
Ndërtimi i prizës

Thyej skedat e prizës

Thyejeni skedën në anën e prizës që secila prizë të ndizet/fiket në mënyrë të pavarur

Hapi 7: Instaloni butonat

Instaloni butona
Instaloni butona
Instaloni butona
Instaloni butona

Në pllakën e daljes duke përdorur sharrën me vrimë 1 prerë 2 vrima për butonat që do të vendosen pranë prizave

Testimi i madhësisë së përbërësve

Sigurohuni që të gjithë përbërësit të futen në kutinë e montimit të sipërfaqes së daljes

Hapi 8: Stafetë me tela

Stafetë me tela
Stafetë me tela
Stafetë me tela
Stafetë me tela

Lidhni stafetën në prizë, nga kordoni i zgjatjes që shkon në mur, lidhni tokën (jeshile) dhe neutrale (të bardhë) direkt në prizë Për nxehtësinë (e zezë) lidheni ato me stafetën, pastaj nga stafeta në secilën prizë të nxehtë lidhës individualisht

Hapi 9: Instalime shtesë dhe imazhe të montimit

Instalime shtesë dhe imazhe të montimit
Instalime shtesë dhe imazhe të montimit

Hapi 10: Diagrami i telave

Diagrami i telave
Diagrami i telave

Përdorni diagramin për të lidhur saktë komponentët për të punuar me kodin RaspberryPI Python.

Hapi 11: Testoni vrapimin e thatë

Testoni vrapimin e thatë
Testoni vrapimin e thatë
Testoni vrapimin e thatë
Testoni vrapimin e thatë
Testoni vrapimin e thatë
Testoni vrapimin e thatë

Pas montimit përfundimtar para se të vidhosni njësinë e vrimës së bashku, bëni një punë të thatë të pajisjes për t'u siguruar që nuk ka pantallona të shkurtra, instalime elektrike të këqija

Hapi 12: Vendosni Skriptet e Fillimit

crontab -e

shtoni rreshtat e mëposhtëm

@reboot python /home/pi/PowerHub/device/outlet/buttons.py @reboot python /home/pi/PowerHub/device/outlet/relay.py

Recommended: