Sadržaj:

Uključivanje, automatska utičnica sa mjerenjem struje u stvarnom vremenu: 6 koraka
Uključivanje, automatska utičnica sa mjerenjem struje u stvarnom vremenu: 6 koraka

Video: Uključivanje, automatska utičnica sa mjerenjem struje u stvarnom vremenu: 6 koraka

Video: Uključivanje, automatska utičnica sa mjerenjem struje u stvarnom vremenu: 6 koraka
Video: Kako povezati utičnicu za struju 2024, Novembar
Anonim
Prekidač, automatska utičnica sa mjerenjem struje u stvarnom vremenu
Prekidač, automatska utičnica sa mjerenjem struje u stvarnom vremenu
Prekidač, automatska utičnica sa mjerenjem struje u stvarnom vremenu
Prekidač, automatska utičnica sa mjerenjem struje u stvarnom vremenu
Prekidač, automatska utičnica sa mjerenjem struje u stvarnom vremenu
Prekidač, automatska utičnica sa mjerenjem struje u stvarnom vremenu
Prekidač, automatska utičnica sa mjerenjem struje u stvarnom vremenu
Prekidač, automatska utičnica sa mjerenjem struje u stvarnom vremenu

Zaista volim automatizaciju, mogućnost kontrole kada se nešto mora dogoditi. Ovo me je navelo na ideju: samostalno izrađena, automatska utičnica. Može se koristiti za planiranje kada je potrebno uključiti svjetlo, kada je potrebno napuniti telefone ili kada je potrebno napajanje ekrana. Uz sve ovo, imate mogućnost vidjeti koliko struja protiče kroz utičnicu.

Komponente potrebne za ovaj projekat su:

Supplies

Prije nego što počnemo, ovo su stvari koje će vam definitivno trebati da napravite Switch-IT kutiju poput moje. Ove zalihe koštat će oko 50 do 100 eura, ovisno o vašoj regiji i trenutnim cijenama.

Hardver

Elektronika

  • Malina pi 4
  • 16 GB (ili više) mikro SD kartica
  • Arduino Uno
  • 5V-3.3V Mjenjač razine
  • Relejni modul 5V
  • ACS712 20A - trenutni modul
  • 1838 IR-prijemnik modul 37,9 kHz
  • IC daljinski (koristim Elegoo)
  • zajednička katoda RGB
  • 3 * 330Ω otpornici
  • dugme za pritiskanje
  • RFID-RC522
  • LCD 1602A-1
  • Niko zidna utičnica
  • Potmetar od 10K Ω
  • Napajanje 230 do 5V - 7A

Cables

  • Kabel USB-B na USB-A
  • USB-C kabel za napajanje
  • Ethernet kabel

Various

  • Muško-ženske džemper žice
  • Muško-muški džemper žice
  • Lemljeni lim
  • Skupljajuća cijev

Posebni dijelovi kućišta (NEOBVEZNO)

  • 50 * oraha i podebljano
  • metalno kućište 40x40x5 cm s poklopcem
  • dvostrana traka
  • Odstojnici visoki 6 * 1 cm
  • LED-držač
  • Velcro traka
  • vodiči za kablove

Softver

  • balenaEtcher:
  • PuTTy
  • rasbian
  • Kôd Visual Studija
  • Arduino IDE

Korak 1: Postavite Rasbian

Postavljanje Rasbian
Postavljanje Rasbian
Postavljanje Rasbian
Postavljanje Rasbian

Prije svega ćemo prebaciti Rasbian na SD-karticu. To ćemo učiniti koristeći balenaEtcher.

  1. Otvorite balenaEtcher
  2. Odaberite Rasbian Image
  3. Odaberite svoju SD karticu
  4. Pritisnite Flash i pričekajte nekoliko minuta dok ne zatreperi

Dodavanje APIPA -e u direktorij za pokretanje: Koristit ćemo APIPA adresu za programiranje i konfiguriranje postavki na RPI -u. Da biste to učinili:

  1. Pristupa direktoriju za pokretanje na SD-kartici
  2. Otvorite "cmdline.txt"
  3. Dodajte "169.254.10.1" na kraju dokumenta i spremite ga
  4. Dodajte datoteku pod nazivom "ssh" u direktorij za pokretanje (NEMOJTE DODATI OVOJ DATOTEKI PROŠIRENJE)
  5. Nakon što to učinite, možete izvaditi SD karticu iz računara.

Pristupa RPI -u koristeći PuTTy

Sada možemo priključiti SD karticu u naš RPI, povezati RPI na računalo pomoću Ethernet kabela.

Za povezivanje na RPI koristit ćemo PuTTy sa našom APIPA adresom.

  1. Otvorite PuTTy
  2. Unesite našu APIPA adresu kao ime hosta (169.254.10.1)
  3. Provjerite je li port 22 i je li odabran SSH
  4. Sada možete otvoriti vezu
  5. Zadano korisničko ime je: pi
  6. Sa zadanom lozinkom: malina

raspi-config postavke

Otvorite raspi-config pomoću:

sudo raspi-config

  • Promijenite korisničku lozinku
  • U opcijama lokalizacije odaberite svoju vremensku zonu
  • Postavite WiFi koristeći mrežne opcije, zatim opciju Wi-Fi gdje morate popuniti svoj SSID i lozinku.

Instalirajte Python 3

U ovom projektu koristimo Python, stoga ćemo postaviti zadano na Python3 insteat Python2, koristeći sljedeće naredbe

nadogradnje-alternative --install/usr/bin/python python /usr/bin/python2.7 1

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

Python paketi

Trebat će nam nekoliko paketa da bi sve radilo ispravno, uglavnom Flask paketi i jedan za povezivanje s našom DataBase. Te pakete možemo instalirati pomoću sljedećih naredbi:

pip install Flask

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

Baza podataka

Sljedeće ćemo instalirati naš sistem za upravljanje bazama podataka (MariaDB), a to ćemo učiniti koristeći:

sudo apt install mariadb-server

Upišite “Y” i Enter za nastavak. Nakon nekoliko sekundi, proces instalacije je dovršen i MariaDB je gotovo spreman za upotrebu.

Da biste postavili lozinku za bazu podataka, koristite naredbu:

sudo mysql_secure_installation

Zatim pritisnite Enter jer je trenutna lozinka prazna. Zatim pritisnite "Y" za postavljanje lozinke, sada možete unijeti bilo koju lozinku koju želite, pazite da je zapamtite jer nam je potrebna za uspostavu ispravne veze između pozadinskog i prednjeg kraja.

Sada pritisnite “Y” 3 puta za: uklanjanje anonimnih korisnika, daljinsko onemogućavanje root prijave i uklanjanje testne baze podataka. Na kraju, ponovo pritisnite “Y” za ponovno učitavanje privilegija.

Sada su MariaDB i svi potrebni paketi uspješno instalirani.

Korak 2: Uhvatite kôd i postavite ga

Uhvatite kôd i postavite ga
Uhvatite kôd i postavite ga
Uhvatite kôd i postavite ga
Uhvatite kôd i postavite ga

Sada kada smo instalirali sve pakete, možemo uzeti kod.

Kod je dostupan na Githubu pa ga možete klonirati pomoću:

git clone

Ovo je prednja strana

git clone

Ovo je pozadina

Instaliranje same baze podataka

Da biste instalirali bazu podataka, idite do.sql datoteke koja se nalazi u pozadinskoj mapi koristeći sljedeće naredbe (obavezno je postavite na svoju putanju.

mysql

kreiraj switchit bazu podataka quit mysql -u root -p switchit <Your_Path_to_Backend_Repo/switchit.sql

Instaliranje Apache -a

Sada kada imamo sav kôd i postavku baze podataka, možemo instalirati Apache i na njemu pokrenuti pozadinu. To ćemo učiniti koristeći:

apt -get install apache2 -y

Zatim zamijenite datoteke u/var/ww/html onima u mapi iz prednje mape.

Ako je sve prošlo u redu, trebali biste se moći povezati sa svojom web lokacijom koristeći APIPA adresu: 169.254.10.1 u svom pregledniku.

Korak 3: Arduino komunikacija

Arduino komunikacija
Arduino komunikacija

Za čitanje našeg trenutnog senzora i našeg RFID senzora koristimo arduino, kako bismo to učinili, upotrijebite arduino kôd dat u nastavku. Prenesite ga pomoću USB-A na USB-B kabela i arduino IDE softvera. Kada se učita, arduino dio je gotov.

Sada moramo pronaći naziv serijskog uređaja na PI. Da biste to učinili, provjerite je li u /boot/config.txt "enable_uart = 1" postavljeno ispravno. Također provjerite je li "console = serial0, 115200" uklonjena iz cmdline.txt.

Zatim provjerite portove pomoću

ls -l /dev

Tada bi jedno od serijskih imena trebalo biti Arduino. Unesite ovo ime na funkciji arduinocom u app.py

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

Učinite to samo ako serijska komunikacija ne funkcionira.

Korak 4: Ožičenje Prebacite ga

Ožičenje Switch-it
Ožičenje Switch-it
Ožičenje Switch-it
Ožičenje Switch-it

Ožičenje je prilično jednostavno, ali morate imati na umu sljedeće:

  • Budite oprezni sa zidnom utičnicom, 230 volti može biti smrtonosno.
  • Za komunikaciju između RPI -a i Arduina koristite pretvarač nivoa.
  • Prije lemljenja RGB -a, provjerite koristite li crvenu i zelenu iglu. Testirajte ovo unapred!
  • Prije napajanja strujnog kruga provjerite nema li kratkog spoja.

Korak 5: Pokretanje koda

Sada je sve ispravno povezano i možemo pokrenuti naš program.

Da biste ga pokrenuli automatski pri pokretanju, stvorite datoteku koristeći:

sudo nano myscript.service

Zatim zalijepite (svakako upotrijebite vlastiti direktorij app.py:

[Jedinica] Opis = Switchit After = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory = // promjena u app.py direktorij // StandardOutput = nasljeđivanje StandardError = nasljeđivanje Restart = uvijek Korisnik = pi [Instaliraj] WantedBy = višekorisnički cilj

Zatim pritisnite "ctrl + X" i kopirajte ga u/etc/systemd/system.

Zatim naredba follwing za automatsko pokretanje:

sudo systemctl omogućuje myscript.service

Više informacija o ovome možete pronaći na web stranici RaspBerry Pi.

Ponovo pokrenite sistem i gotovo

Sada ponovo pokrenite PI pomoću:

sudo reboot -h sada

Ovako ćete napraviti Switch-it!

Hvala na praćenju, nadam se da je ovo bilo korisno. Ako imate bilo kakve savjete ili povratne informacije, ne ustručavajte se ostaviti komentar.

Korak 6: (NEOBVEZNO) stanovanje

(NEOBVEZNO) kućište
(NEOBVEZNO) kućište
(NEOBVEZNO) kućište
(NEOBVEZNO) kućište
(NEOBVEZNO) kućište
(NEOBVEZNO) kućište
(NEOBVEZNO) kućište
(NEOBVEZNO) kućište

Kućište možete izgraditi u potpunosti po vlastitom nahođenju. Koristio sam metalno kućište dimenzija 40x40x5 cm s poklopcem. Budući da sam koristio metalnu, morao sam izbušiti rupe i pomoću odstojnika skinuti sve sa ploče. Odlučio sam se za centralnu točku na kojoj su dostupni 5V, 3.3V i gnd. Svaka električna veza lemljena je komadom skupljajuće cijevi na vrhu. Za upravljanje kablovima koristio sam jastučiće sa trakama za nošenje.

Preporučuje se: