Obsah:

Internetová zásuvka: 13 krokov
Internetová zásuvka: 13 krokov

Video: Internetová zásuvka: 13 krokov

Video: Internetová zásuvka: 13 krokov
Video: Тестировщик с нуля / Урок 13. URL адрес. Что такое IP адрес и маска подсети? DNS сервер. Кэш и куки 2024, November
Anonim
Image
Image
Potrebné zásoby
Potrebné zásoby

Pokyny na nastavenie zásuvky pre webový server PowerHub a internet povolený

Centrálne centrum uchovávania údajov pre svetlo a zásuvky vo vašej domácnosti s prístupom na internet!

Krok 1: Pokyny na nastavenie Outletu pre webový server PowerHub a internet povolený

Centrálne centrum uchovávania údajov pre svetlo a zásuvky vo vašej domácnosti s prístupom na internet

Blikajúci pevný disk RaspberriPi/Nainštalujte požadovaný softvér (pomocou systému Ubuntu Linux) Stiahnite si „RASPBIAN JESSIE LITE“https://www.raspberrypi.org/downloads/raspbian/

Vytvorte si nový pevný disk pre DashboardPI

Vložte kartu microSD do počítača pomocou adaptéra USB a vytvorte obraz disku pomocou príkazu dd

Nájdite vloženú kartu microSD pomocou príkazu df -h, odpojte ju a vytvorte obraz disku pomocou príkazu dd copy copy

$ df -h/dev/sdb1 7,4G 32K 7,4G 1%/médiá/XXX/1234-5678

$ umount /dev /sdb1

Pozor: uistite sa, že je príkaz úplne presný, môžete týmto príkazom poškodiť ostatné disky

if = umiestnenie obrázkového súboru RASPBIAN JESSIE LITE z = umiestnenie vašej karty microSD

$ sudo dd bs = 4M if =/cesta/do/raspbian-jessie-lite.img of =/dev/sdb (poznámka: v tomto prípade je to/dev/sdb,/dev/sdb1 bol existujúcim továrenským oddielom na microSD)

Nastavenie RaspberriPi

Vložte novú kartu microSD do Raspberrypi a zapnite ju monitorom pripojeným k portu HDMI

Prihlásiť sa

užívateľ: pi pass: malina

Z bezpečnostných dôvodov si zmeňte heslo k účtu

sudo passwd pi

Krok 2: Povoľte rozšírené možnosti RaspberriPi

sudo raspi-config

Vyberte: 1 Rozbaľte Systém súborov

9 Rozšírené možnosti

Hostname A2 ho zmení na „WIFI-OUTLET“

A4 SSH Povoliť server SSH

A7 I2C Povoliť rozhranie i2c

Povoliť anglickú/americkú klávesnicu

sudo nano/etc/default/keyboard

Zmeňte nasledujúci riadok: XKBLAYOUT = „my“

Reštartujte PI, aby sa prejavili zmeny rozloženia klávesnice / zmena veľkosti systému súborov

$ sudo shutdown -r teraz

Automatické pripojenie k WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Pridajte nasledujúce riadky, aby sa váš raspberrypi automaticky pripojil k vášmu domácemu WiFi (ak je napríklad vaša bezdrôtová sieť v nasledujúcom príklade pomenovaná „linksys“)

network = {ssid = "linksys" psk = "BEZDRÔTOVÉ HESLO TU"} Reštartovaním PI sa pripojíte k sieti WiFi

$ sudo shutdown -r teraz

Teraz, keď je váš PI konečne v lokálnej sieti, môžete sa k nemu vzdialene prihlásiť pomocou SSH. Najprv však musíte získať IP adresu, ktorú momentálne má.

$ ifconfig Hľadaj vo výstupe nasledujúceho príkazu pre IP adresu PI „inet addr: 192.168. XXX. XXX“

Prejdite na iný počítač a prihláste sa do svojho raspberrypi pomocou ssh

$ ssh [email protected]. XXX. XXX

Krok 3: Začnite s inštaláciou požadovaných balíkov

$ sudo apt-get aktualizácia

$ sudo apt-get upgrade

$ sudo apt-get install vim git python-requests 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

Aktualizujte nastavenia miestneho časového pásma

$ sudo dpkg-reconfigure tzdata

vyberte svoje časové pásmo pomocou rozhrania

Nastavte príkaz jednoduchého adresára l [voliteľné]

vi ~/.bashrc

pridajte nasledujúci riadok:

alias l = 'ls -lh'

zdroj ~/.bashrc

Opraviť zvýraznenie predvolenej syntaxe VIM [voliteľné]

sudo vi/etc/vim/vimrc

odkomentujte nasledujúci riadok:

syntax zapnutá

Nainštalujte ovládače i2c Python

Krok 4: VYBUDUJTE WEBOVÉ API

Nasledujúce pokyny vám umožnia postaviť centrálny rozbočovač, ktorý vysvetľuje rôzne zásuvky a nástenné vypínače, ktoré môžete postaviť, ktoré zariadenia sa zapínajú a vypínajú. Toto je malý skript PHP, ktorý umiestnite na webhosting podľa vlastného výberu. Na získanie a nastavenie informácií má nasledujúce API. Poznámka: Nezabudnite zahrnúť súbor.htaccess, aby prebehlo správne smerovanie adresy URL.

Nainštalujte priečinok „index.php“, „values/“a settings.php (nakonfigurované podľa vlastných hodnôt) na webový server s povoleným PHP. Hodnota tajného kľúča v súbore „settings.php“sa musí zhodovať s hodnotou tajného kľúča, ktorú by ste nastavili v súbore „settings.py“. To na základnej úrovni zabráni tomu, aby akákoľvek iná webová prevádzka nastavovala / zapisovala hodnoty, zapína vaše zariadenia. Teraz na to potrebujete tento hašovaný kľúč API v hlavičke žiadosti

Rozhranie API podporuje nasledujúce funkcie, pre tento projekt budeme používať iba hodnoty „vlajky“, ktoré sú logickými hodnotami, ktoré informujú, že prepínač sa má zapnúť a vypnúť. Ak by ste chceli využiť hodnoty „čítania“, mohli by ste to mať, takže ak sa teplota v miestnosti príliš zahreje uložením teploty, môže to zapnúť okenný ventilátor atď.

Získajte kód

Klonovaním nasledujúceho projektu z GitHub získate kód na spustenie webového servera a výstupu RaspberryPI.

github.com/khinds10/PowerHub

Koncové body API pri spustení na webovom serveri

myhost/message (získať aktuálnu sadu správ)

myhost/message/set (HTTP POST na nastavenie tejto správy použije surovú reťazcovú hodnotu na túto adresu URL)

myhost/flag/{id} (aktuálny booleovský stav vlajky získate celým číslom: {id})

myhost/flag/all (získať aktuálny booleovský stav všetkých vlajok ako pole)

myhost/flag/{id}/set (nastavte aktuálny booleovský stav na „true“pre príznak podľa celého čísla: {id})

myhost/flag/{id}/unset (aktuálny booleovský stav pre príznak nastavte na celé číslo: {id})

myhost/reading/{id} (získate aktuálnu priemernú hodnotu pre čítanie podľa celého čísla: {id})

myhost/reading/all (získať aktuálnu priemernú hodnotu pre všetky hodnoty ako pole)

myhost/reading/{id}/set (HTTP POST na túto adresu URL pridá nespracovanú číselnú hodnotu na pridanie novej hodnoty k aktuálnemu vypočítanému priemeru) - nižšie nájdete celkový počet hodnôt, ktoré sú zostavené do priemernej hodnoty. Konfigurácia Hodnoty „nameraných hodnôt“sa vypočítajú ako priemer určitého počtu posledných číselných hodnôt pretrvávajúceho čítania. Nasledujúcu konštantu nastavte na to, koľko z posledných meraní by malo byť zahrnutých do priemeru.

$ readingsAverageLimit = 5;

Server Datastore Server zachová hodnoty pre jednoduché súbory umiestnené podľa nižšie uvedených konvencií pomenovania. Poznámka: {id} bude nahradené skutočným celým číslom uvedeným na adrese URL prichádzajúcej žiadosti.

$ valueFileFolder = 'hodnoty' (názov priečinka, ktorý bude obsahovať súbory meraní) $ messageFileName = 'message.msg' (názov textového súboru správy) $ readingsFilesNames = 'čítanie {id}.avg' (priemer CSV súbor čítaní) $ flagFilesNames = 'flag {id}.flg' (názov súboru s booleovskou hodnotou príznaku)

Uistite sa, že všetky hodnotové súbory sú zapisovateľné hodnotami systemchmod 777/*

Krok 5: Potrebné zásoby

Potrebné zásoby
Potrebné zásoby
Potrebné zásoby
Potrebné zásoby
Potrebné zásoby
Potrebné zásoby

1 palcová dierová píla (na vŕtačku)

5V 2 -kanálový reléový modul

Duplexná nástenná doska

Duplexná zásuvka

Pi Zero W

Povrchový držiak Backbox Dual Gang

Biele podsvietené tlačidlá

Krok 6: Budovanie predajne

Budovanie predajne
Budovanie predajne

Rozbite záložky

Zlomte jazýček na bočnej strane zásuvky, aby sa každá zásuvka zapínala/vypínala nezávisle

Krok 7: Nainštalujte tlačidlá

Nainštalujte tlačidlá
Nainštalujte tlačidlá
Nainštalujte tlačidlá
Nainštalujte tlačidlá

Na čelnej doske výstupu pomocou 1 -palcovej píly vyrežte 2 otvory pre tlačidlá, ktoré sa umiestnia vedľa zásuviek

Test Dimenzovanie komponentov

Zaistite, aby sa všetky súčasti zmestili do krabice na povrchovú montáž

Krok 8: Drôtové relé

Drôtové relé
Drôtové relé
Drôtové relé
Drôtové relé

Relé zapojte do zásuvky, od predlžovacieho kábla k stene, pripojte uzemnenie (zelené) a neutrálne (biele) priamo k zásuvke. V prípade horúcich (čiernych) pripojte ich k relé a potom z relé ku každému výstupu horúce konektory jednotlivo

Krok 9: Ďalšie obrázky zapojenia a montáže

Dodatočné obrázky zapojenia a montáže
Dodatočné obrázky zapojenia a montáže

Krok 10: Schéma zapojenia

Elektrické schéma
Elektrické schéma

Pomocou diagramu správne zapojte komponenty tak, aby pracovali s kódom RaspberryPI Python.

Krok 11: Testujte beh na sucho

Testujte beh na sucho
Testujte beh na sucho
Testujte beh na sucho
Testujte beh na sucho
Testujte beh na sucho
Testujte beh na sucho

Po konečnej montáži pred zaskrutkovaním jednotky otvorov vykonajte suchý chod zariadenia, aby ste sa uistili, že nie sú skraty alebo zlé zapojenie

Krok 12: Nastavte spúšťacie skripty

crontab -e

pridajte nasledujúce riadky

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

Odporúča: