Obsah:

Switch-it, automatická zásuvka s meraním prúdu v reálnom čase: 6 krokov
Switch-it, automatická zásuvka s meraním prúdu v reálnom čase: 6 krokov

Video: Switch-it, automatická zásuvka s meraním prúdu v reálnom čase: 6 krokov

Video: Switch-it, automatická zásuvka s meraním prúdu v reálnom čase: 6 krokov
Video: Часть 2 - Трипланетная аудиокнига Э. Э. Смита (главы 5–8) 2024, November
Anonim
Switch-it, automatická zásuvka s meraním prúdu v reálnom čase
Switch-it, automatická zásuvka s meraním prúdu v reálnom čase
Switch-it, automatická zásuvka s meraním prúdu v reálnom čase
Switch-it, automatická zásuvka s meraním prúdu v reálnom čase
Switch-it, automatická zásuvka s meraním prúdu v reálnom čase
Switch-it, automatická zásuvka s meraním prúdu v reálnom čase
Switch-it, automatická zásuvka s meraním prúdu v reálnom čase
Switch-it, automatická zásuvka s meraním prúdu v reálnom čase

Mám veľmi rád automatizáciu, schopnosť ovládať, keď sa niečo musí stať. To je dôvod, prečo som prišiel s týmto nápadom: vlastná, automatická zásuvka. Dá sa použiť na plánovanie, kedy je potrebné zapnúť svetlá, keď je potrebné nabíjať telefóny alebo napájať obrazovku. Okrem toho všetkého máte možnosť vidieť, koľko prúdu preteká zásuvkou.

Komponenty potrebné pre tento projekt sú:

Zásoby

Predtým, ako začneme, sú to veci, ktoré budete určite potrebovať na vybudovanie boxu Switch-IT, ako je ten môj. Tieto zásoby budú stáť okolo 50 až 100 eur v závislosti od vášho regiónu a aktuálnych cien.

Hardvér

Elektronika

  • Malina pi 4
  • 16 GB (alebo viac) Micro SD karta
  • Arduino Uno
  • Radič úrovne 5V-3,3V
  • 5V reléový modul
  • ACS712 20A - prúdový modul
  • 1838 IR prijímač 37,9 kHz modul
  • IR diaľkové ovládanie (používam elegantné)
  • spoločná katóda RGB
  • 3 * 330Ω odpory
  • tlačidlo
  • RFID-RC522
  • LCD 1602A-1
  • Niko zásuvka
  • Potenciometer 10K Ω
  • Napájanie 230 až 5V - 7A

Káble

  • Kábel USB-B na USB-A
  • Napájací kábel USB-C
  • ethernetový kábel

Rôzne

  • Mužsko-ženské prepojovacie drôty
  • Mužsko-mužské prepojovacie drôty
  • Spájkovací cín
  • Zmršťovacia trubica

Špeciálne diely na prípad (VOLITEĽNÉ)

  • 50 * matíc a skrutiek
  • kovové puzdro 40x40x5 cm s vekom
  • obojstranná lepiaca páska
  • Rozperky 6 x 1 cm vysoké
  • led-držiak
  • Páska na suchý zips
  • vedenie káblov

Softvér

  • balenaEtcher:
  • PuTTy
  • rasba
  • Kód Visual Studio
  • Arduino IDE

Krok 1: Nastavte Rasbian

Nastavte Rasbian
Nastavte Rasbian
Nastavte Rasbian
Nastavte Rasbian

Najprv na kartu SD prenesieme Rasbian. Urobíme to pomocou balenaEtcher.

  1. Otvorená balenaEtcher
  2. Vyberte obrázok Rasbian
  3. Vyberte svoju SD kartu
  4. Stlačte tlačidlo Flash a počkajte niekoľko minút, kým nezačne blikať

Pridanie APIPA do zavádzacieho adresára: Na naprogramovanie a konfiguráciu nastavení RPI použijeme adresu APIPA. Robiť to:

  1. Prístup k zavádzaciemu adresáru na SD karte
  2. Otvorte súbor „cmdline.txt“
  3. Na koniec dokumentu pridajte „169.254.10.1“a uložte ho
  4. Pridajte do zavádzacieho adresára súbor s názvom „ssh“(NEPOSKYTUJTE TENTO SÚBOR ROZŠÍRENIE)
  5. Keď to urobíte, môžete kartu SD vysunúť z počítača.

Prístup k RPI pomocou PuTTy

Teraz môžeme kartu SD zapojiť do nášho RPI a pripojiť RPI k počítaču pomocou ethernetového kábla.

Na pripojenie k RPI použijeme PuTTy s našou adresou APIPA.

  1. Otvorte PuTTy
  2. Ako názov hostiteľa zadajte našu adresu APIPA (169.254.10.1)
  3. Uistite sa, že port je 22 a je vybraté SSH
  4. Teraz môžete otvoriť pripojenie
  5. Predvolené používateľské meno je: pi
  6. S predvoleným heslom: malina

nastavenia raspi-config

Otvorte raspi-config pomocou:

sudo raspi-config

  • Zmeňte používateľské heslo
  • V možnostiach lokalizácie vyberte svoje časové pásmo
  • Nastavte WiFi pomocou možností siete a potom možnosti Wi-Fi, kde musíte zadať SSID a heslo.

Nainštalujte Python 3

V tomto projekte používame Python, a preto pomocou nasledujúcich príkazov nastavíme predvolené nastavenie pre Python3 Python2

update-alternatives --install/usr/bin/python python /usr/bin/python2.7 1

update-alternatives --install/usr/bin/python python/usr/bin/python3 2

Balíky Python

Aby všetko fungovalo správne, budeme potrebovať niekoľko balíkov, hlavne balíky Flask a jeden na prepojenie s našou databázou dát. Tieto balíky môžeme nainštalovať pomocou nasledujúcich príkazov:

pip install Flask

pip install Flask_cors pip install Flask_socketio pip install Python-mysql-connecton

Databáza

Ďalej nainštalujeme náš systém správy databáz (MariaDB), urobíme to pomocou:

sudo apt nainštalovať mariadb-server

Pokračujte zadaním „Y“a Enter. Po niekoľkých sekundách je proces inštalácie dokončený a MariaDB je takmer pripravená na použitie.

Ak chcete nastaviť zadanie hesla databáze, použite príkaz:

sudo mysql_secure_installation

Potom stlačte kláves Enter, pretože aktuálne heslo je prázdne. Potom stlačením klávesu „Y“nastavte heslo. Teraz môžete zadať ľubovoľné požadované heslo. Nezabudnite si ho zapamätať, pretože ho potrebujeme na vytvorenie správneho prepojenia medzi zadným a predným rozhraním.

Teraz stlačte trikrát „Y“na: odstránenie anonymných používateľov, zakázanie vzdialeného prihlásenia root a odstránenie testovacej databázy. Nakoniec opätovným stlačením „Y“znova načítajte oprávnenia.

Teraz je MariaDB a všetky potrebné balíky úspešne nainštalované.

Krok 2: Získať kód a nastaviť ho

Chytenie kódu a jeho nastavenie
Chytenie kódu a jeho nastavenie
Chytenie kódu a jeho nastavenie
Chytenie kódu a jeho nastavenie

Teraz, keď máme nainštalované všetky balíky, môžeme kód chytiť.

Kód je k dispozícii na Github, takže ho môžete klonovať pomocou:

klon git

Toto je frontend

klon git

Toto je backend

Inštalácia samotnej databázy

Ak chcete nainštalovať databázu, prejdite do súboru.sql, ktorý je v priečinku typu backend, pomocou nasledujúcich príkazov (uistite sa, že ste ho nastavili na vlastnú cestu.

mysql

vytvoriť databázu switchit ukončiť mysql -u root -p switchit <Your_Path_to_Backend_Repo/switchit.sql

Inštalácia Apache

Teraz, keď máme všetok kód a nastavenie databázy, môžeme nainštalovať Apache a spustiť na ňom náš backend. Urobíme to pomocou:

apt -get nainštalovať apache2 -y

Potom nahraďte súbory v priečinku/var/ww/html tými, ktoré sú v priečinku z frontendového priečinka.

Ak všetko prebehlo dobre, mali by ste sa môcť pripojiť k svojej webovej stránke pomocou adresy APIPA: 169.254.10.1 vo svojom prehliadači.

Krok 3: Komunikácia Arduino

Komunikácia Arduino
Komunikácia Arduino

Na prečítanie nášho aktuálneho senzora a nášho senzora RFID používame arduino, použite na to arduino kód uvedený nižšie. Nahrajte ho pomocou kábla USB-A na USB-B a softvéru arduino IDE. Po nahraní je arduino časť hotová.

Teraz musíme nájsť názov sériového zariadenia na PI. Aby ste to urobili, uistite sa, že v /boot/config.txt je „enable_uart = 1“nastavený správne. Tiež sa uistite, že "konzola = serial0, 115200" je odstránená z cmdline.txt.

Potom skontrolujte porty pomocou

ls -l /dev

Potom by jedným zo sériových názvov malo byť Arduino. Vyplňte tento názov vo funkcii arduinocom v app.py

ser = serial. Serial ('/dev/ttyS0', 9600)

Urobte to iba vtedy, ak sériová komunikácia nefunguje.

Krok 4: Zapojenie Switch-it

Zapojenie Switch-it
Zapojenie Switch-it
Zapojenie Switch-it
Zapojenie Switch-it

Zapojenie všetkého je veľmi jednoduché, aj keď by ste mali mať na pamäti nasledujúce veci:

  • Dávajte si pozor na sieťovú zásuvku, 230 voltov môže byť smrteľných.
  • Na komunikáciu medzi RPI a Arduino určite použite prevodník úrovní.
  • Pred spájkovaním RGB použite červený a zelený kolík. Skúste to vopred!
  • Pred napájaním obvodu vyskúšajte, či nie je nič skratované.

Krok 5: Spustenie kódu

Teraz je všetko správne pripojené, môžeme spustiť náš program.

Aby sa spustil automaticky pri štarte, vytvorte súbor pomocou:

sudo nano myscript.service

Potom prilepte (nezabudnite použiť vlastný adresár app.py:

[Unit] Description = Switchit After = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory = // change to app.py directory // StandardOutput = inherit StandardError = inherit Restart = always User = pi [Inštalovať] WantedBy = multi-user.target

Potom stlačte „ctrl + X“a skopírujte ho do/etc/systemd/system.

Potom nasledujúci príkaz, aby sa spustil automaticky:

sudo systemctl povoliť myscript.service

Viac informácií o tomto nájdete na stránke RaspBerry Pi.

Reštartujte a hotovo

Teraz reštartujte svoje PI pomocou:

sudo reboot -h teraz

Takto urobíte Switch-it!

Ďakujeme za sledovanie, dúfame, že to bolo užitočné. Ak máte nejaké tipy alebo pripomienky, neváhajte zanechať komentár.

Krok 6: (VOLITEĽNÉ) bývanie

(VOLITEĽNÉ) bývanie
(VOLITEĽNÉ) bývanie
(VOLITEĽNÉ) bývanie
(VOLITEĽNÉ) bývanie
(VOLITEĽNÉ) bývanie
(VOLITEĽNÉ) bývanie
(VOLITEĽNÉ) bývanie
(VOLITEĽNÉ) bývanie

Bývanie si môžete postaviť úplne podľa svojich predstáv. Použil som kovové puzdro s vekom 40 x 40 x 5 cm. Keďže som použil kovový, musel som vyvŕtať otvory a pomocou rozperiek dostať všetko zo základovej dosky. Rozhodol som sa použiť centrálny bod, kde je k dispozícii 5V, 3,3V a GND. Každé elektrické pripojenie je spájkované kusom zmršťovacej trubice. Na správu káblov som použil podložky s nosnými popruhmi.

Odporúča: