Tartalomjegyzék:

Internetkapcsoló: 13 lépés
Internetkapcsoló: 13 lépés

Videó: Internetkapcsoló: 13 lépés

Videó: Internetkapcsoló: 13 lépés
Videó: ▶️ Сиделка 13 и 14 серия - Мелодрама | Фильмы и сериалы - Русские мелодрамы 2024, Július
Anonim
Image
Image
Szükséges kellékek
Szükséges kellékek

A PowerHub webszerver projekt és az Internet engedélyezett Outlet telepítési utasítások

Központi adatmegőrző központ internetes kompatibilis fényekhez és konnektorokhoz otthonában!

1. lépés: A PowerHub webkiszolgáló projektje és az Interneten engedélyezett Outlet telepítési utasítások

Központi adatmegőrző központ internetes kompatibilis fényekhez és konnektorokhoz otthonában

Villogó RaspberriPi merevlemez/szükséges szoftver telepítése (Ubuntu Linux használatával) Töltse le a "RASPBIAN JESSIE LITE" címet

Hozza létre új merevlemezét a DashboardPI számára

Helyezze be a microSD -t a számítógépbe USB -adapter segítségével, és hozza létre a lemezképet a dd paranccsal

Keresse meg a behelyezett microSD -kártyát a df -h paranccsal, távolítsa el, és hozza létre a lemezképet a disk copy dd paranccsal

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

$ umount /dev /sdb1

Vigyázat: győződjön meg arról, hogy a parancs teljesen pontos, ezzel a paranccsal más lemezeket is károsíthat

if = a RASPBIAN JESSIE LITE képfájl helye = a microSD -kártya helye

$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of =/dev/sdb (megjegyzés: ebben az esetben a/dev/sdb, a/dev/sdb1 egy meglévő gyári partíció microSD)

A RaspberriPi beállítása

Helyezze be az új microSD -kártyát a raspberrypi -be, és kapcsolja be a HDMI -porthoz csatlakoztatott monitorral

Belépés

felhasználó: pi pass: málna

A biztonság érdekében módosítsa fiókja jelszavát

sudo passwd pi

2. lépés: Engedélyezze a RaspberriPi speciális beállításait

sudo raspi-config

Válasszon: 1 Bontsa ki a fájlrendszert

9 Speciális beállítások

A2 gazdagépnév módosítsa "WIFI-OUTLET" -re

A4 SSH Az SSH szerver engedélyezése

A7 I2C Az i2c interfész engedélyezése

Engedélyezze az angol/amerikai billentyűzetet

sudo nano/etc/default/keyboard

Módosítsa a következő sort: XKBLAYOUT = "mi"

Indítsa újra a PI billentyűzetet a billentyűzetkiosztási változtatásokhoz / a fájlrendszer átméretezéséhez

$ sudo shutdown -r most

Automatikus csatlakozás a WiFi-hez

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Adja hozzá a következő sorokat, hogy a raspberrypi automatikusan csatlakozzon az otthoni WiFi -hez (ha a vezeték nélküli hálózat neve például "linksys", a következő példában)

network = {ssid = "linksys" psk = "WIRELESS PASSWORD ITT"} Indítsa újra a PI -t, hogy csatlakozzon a WiFi hálózathoz

$ sudo shutdown -r most

Most, hogy a PI végre a helyi hálózaton van, távolról bejelentkezhet SSH -n keresztül. De először meg kell szereznie a jelenlegi IP -címet.

$ ifconfig Keresse meg az "inet addr: 192.168. XXX. XXX" parancsot a következő parancs kimenetében a PI IP -címéhez

Menjen egy másik gépre, és jelentkezzen be raspberrypi -jébe az ssh -n keresztül

$ ssh [email protected]. XXX. XXX

3. lépés: Kezdje el a szükséges csomagok telepítését

$ sudo apt-get frissítés

$ sudo apt-get upgrade

$ sudo apt-get install vim git python-kérések python-gpiozero python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev python3-spidev python-spidev

Frissítse a helyi időzóna beállításait

$ sudo dpkg-reconfigure tzdata

az interfész segítségével válassza ki az időzónáját

Állítsa be az egyszerű könyvtár l parancsot [opcionális]

vi ~/.bashrc

add hozzá a következő sort:

alias l = 'ls -lh'

forrás ~/.bashrc

A VIM alapértelmezett szintaxis kiemelésének javítása [nem kötelező]

sudo vi/etc/vim/vimrc

szüntesse meg az alábbi sort:

szintaxis bekapcsolva

Telepítse az i2c Python illesztőprogramokat

4. lépés: A WEB API ÉPÍTÉSE

A következő utasítások lehetővé teszik a központi elosztó felépítését, amely elmagyarázza a különféle wifi -kompatibilis konnektoroknak és fali kapcsolóknak, melyeket ki- és bekapcsolhat. Ez egy kicsi PHP -szkript, amelyet az Ön által választott webhoszton helyezhet el. A következő API -val rendelkezik az információk megszerzéséhez és beállításához. Megjegyzés: ne felejtse el felvenni a.htaccess fájlt az URL megfelelő irányításához.

Telepítse az "index.php", az "values/" mappát és a settings.php fájlt (saját értékeire konfigurálva) egy tetszés szerinti PHP -kompatibilis webszerverre. A "settings.php" fájl titkos kulcsának meg kell egyeznie a "settings.py" fájlban megadott titkos kulcs értékével. Ez alapvető szinten megakadályozza, hogy bármilyen más webes forgalom beállítson / írjon értékeket, és bekapcsolja eszközeit. Ehhez most szüksége van erre a kivonatolt API -kulcsra a HTTP -kérés fejlécében.

Az API a következő funkciókat támogatja, ehhez a projekthez csak a "zászló" értékeket fogjuk használni, amelyek logikai értékek, amelyek a kapcsolót be- és kikapcsolják. Talán ha ki szeretné használni az "olvasási" értékeket, akkor megszerezheti, így ha a szobahőmérséklet túlmelegszik az ottani hőmérséklet mentésével, bekapcsolhatja az ablakventilátort stb.

Szerezd meg a kódot

Klónozza a következő projektet a GitHub -ból, hogy megkapja a kódot a webszerver és a RaspberryPI kimenet futtatásához.

github.com/khinds10/PowerHub

API végpontok, amikor webszerveren futnak

myhost/message (az aktuális üzenetkészlet lekérése)

myhost/message/set (a HTTP POST egy nyers karakterlánc értéket erre az URL -re új üzenet beállításához)

myhost/flag/{id} (a zászló aktuális logikai állapotának lekérése egész számmal: {id})

myhost/flag/all (tömbként lekérheti az összes zászló aktuális logikai állapotát)

myhost/flag/{id}/set (állítsa az aktuális logikai állapotot "true" értékre a zászlóhoz egész számmal: {id})

myhost/flag/{id}/unset (állítsa a jelenlegi logikai állapotot "false" értékre a zászlóhoz egész számmal: {id})

myhost/reading/{id} (az aktuális átlagolt értéket kapja le az egész számra: {id})

myhost/reading/all (tömbként kapja meg az összes átlagolt értéket)

myhost/reading/{id}/set (HTTP POST egy nyers numerikus értéket ehhez az URL -hez, hogy új értéket adjon hozzá a jelenlegi számított átlaghoz) - lásd alább, hogy összesen hány érték kerül összeállításra az átlagos értékhez Konfiguráció Az „olvasási” értékeket a legutóbbi, megmaradt olvasási számértékek bizonyos számú átlagaként számítják ki. Állítsa be a következő állandó értéket arra, hogy a legutóbbi leolvasások közül hányat kell belefoglalni az átlag eléréséhez.

$ readingsAverageLimit = 5;

A Datastore Server megtartja az értékeket az egyszerű fájlokhoz, amelyek az alábbi elnevezési konvenciókkal találhatók. Megjegyzés: A (z) {id} helyére a bejövő kérés URL -je által megadott valódi egész szám kerül.

$ valueFileFolder = 'értékek' (a mérési fájlokat tartalmazó mappa neve) $ messageFileName = 'message.msg' (az üzenet szövegfájljának neve) $ readingsFilesNames = 'olvasás {id}.avg' (a CSV neve átlagosan $ flagFilesNames = 'flag {id}.flg' (a logikai lobogó értéke jelzőfájl neve)

Győződjön meg arról, hogy az összes értékfájl írható a systemchmod 777 értékekkel/*

5. lépés: Szükséges kellékek

Szükséges kellékek
Szükséges kellékek
Szükséges kellékek
Szükséges kellékek
Szükséges kellékek
Szükséges kellékek

1 hüvelykes lyukfűrész (fúráshoz)

5V 2 csatornás relé modul

Duplex foglalatú fali lemez

Duplex foglalat

Pi Zero W

Surface Mount Backbox Dual Gang

Fehér, megvilágított nyomógombok

6. lépés: Az Outlet kiépítése

Az Outlet építése
Az Outlet építése

Break Outlet Tabs

Törje le a fület a konnektor oldalán, hogy minden aljzat egymástól függetlenül be- és kikapcsoljon

7. lépés: Telepítse a gombokat

Telepítse a gombokat
Telepítse a gombokat
Telepítse a gombokat
Telepítse a gombokat

A kimeneti előlapon az 1 hüvelykes fűrész segítségével vágjon 2 lyukat a gombok mellé történő elhelyezéséhez

Teszt Az alkatrészek méretezése

Győződjön meg arról, hogy minden alkatrész illeszkedik a kimeneti felületre szerelő dobozba

8. lépés: Vezeték relé

Vezeték relé
Vezeték relé
Vezeték relé
Vezeték relé

Csatlakoztassa a relét a konnektorhoz, a hosszabbító kábeltől a falig, csatlakoztassa a földet (zöld) és a semlegeset (fehér) közvetlenül a konnektorhoz. Forró (fekete) esetén csatlakoztassa őket a reléhez, majd a reléből az összes kimeneti forró csatlakozóhoz egyénileg

9. lépés: További kábelezési és szerelési képek

További kábelezési és szerelési képek
További kábelezési és szerelési képek

10. lépés: bekötési rajz

Bekötési rajz
Bekötési rajz

A diagram segítségével csatlakoztassa megfelelően az alkatrészeket a RaspberryPI Python kóddal való együttműködéshez.

11. lépés: Próbálja ki a száraz futást

Teszt száraz futás
Teszt száraz futás
Teszt száraz futás
Teszt száraz futás
Teszt száraz futás
Teszt száraz futás

A végső összeszerelés után, mielőtt összecsavarja a lyukas egységet, hajtsa végre az eszközt szárazon, hogy megbizonyosodjon arról, nincs -e rövidzárlat, rossz vezeték

12. lépés: Állítsa be az indítási parancsfájlokat

crontab -e

add hozzá a következő sorokat

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

Ajánlott: