Innehållsförteckning:
- Tillbehör
- Steg 1: Konfigurera Rasbian
- Steg 2: Ta tag i koden och ställ in den
- Steg 3: Arduino -kommunikation
- Steg 4: Anslutning av switch-it
- Steg 5: Kör koden
- Steg 6: (TILLVAL) Huset
Video: Switch-it, automatiskt uttag med strömmätning i realtid: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:39
Jag gillar verkligen automatisering, förmågan att kontrollera när något måste hända. Det var det som fick mig att komma på denna idé: ett självgjord, automatiskt uttag. Den kan användas för att planera när lampor måste slås på, när telefoner måste laddas eller när en skärm måste drivas. Förutom allt detta har du möjlighet att se hur mycket ström som flödar genom uttaget.
De komponenter som behövs för detta projekt är:
Tillbehör
Innan vi börjar är det här saker du definitivt behöver för att bygga en Switch-IT-låda som min. Dessa leveranser kommer att kosta cirka 50 till 100 euro beroende på din region och aktuella priser.
Hårdvara
Elektronik
- Hallon pi 4
- 16 GB (eller mer) Micro SD-kort
- Arduino Uno
- 5V-3.3V Nivåreglage
- 5V relämodul
- ACS712 20A - strömmodul
- 1838 IR-mottagare 37,9 kHz modul
- IR -fjärrkontroll (jag använder en Elegoo)
- vanlig katod RGB
- 3 * 330Ω motstånd
- tryckknapp
- RFID-RC522
- LCD 1602A-1
- Niko vägguttag
- 10K Ω potmeter
- 230 till 5V - 7A strömförsörjning
Kablar
- USB-B till USB-A-kabel
- USB-C strömkabel
- Ethernet -kabel
Olika
- Man-Kvinna Jumperwires
- Man-man Jumperwires
- Lödtenn
- Krympande rör
Case specifika delar (TILLVAL)
- 50 * nötter och fetstil
- metallhölje 40x40x5 cm med lock
- dubbelsidig tejp
- 6 * 1 cm höga distanser
- led-hållare
- Kardborreband
- kabelstyrningar
programvara
- balenaEtcher:
- Spackel
- rasbisk
- Visual Studio -kod
- Arduino IDE
Steg 1: Konfigurera Rasbian
Först och främst blinkar vi Rasbian på SD-kortet. Vi kommer att göra det med balenaEtcher.
- Öppna balenaEtcher
- Välj Rasbian -bilden
- Välj ditt SD-kort
- Tryck på Flash och vänta några minuter tills den blinkar
Lägga till APIPA i startkatalogen: Vi kommer att använda en APIPA -adress för att programmera och konfigurera inställningar på RPI: n. Att göra detta:
- Återställer startkatalogen på SD-kortet
- Öppna "cmdline.txt"
- Lägg till "169.254.10.1" i slutet av dokumentet och spara det
- Lägg till en fil som heter "ssh" i startkatalogen (ge inte denna fil en förlängning)
- När du har gjort detta kan du mata ut SD -kortet från din dator.
Åtkomst till RPI med PuTTy
Nu kan vi ansluta SD -kortet till vår RPI, ansluta RPI till din dator med en ethernet -kabel.
För att ansluta till RPI använder vi PuTTy med vår APIPA-adress.
- Öppna PuTTy
- Fyll i vår APIPA-adress som värdnamn (169.254.10.1)
- Se till att porten är 22 och SSH är vald
- Nu kan du öppna anslutningen
- Standardnamnet är: pi
- Med standardlösenord: hallon
raspi-config inställningar
Öppna raspi-config med:
sudo raspi-config
- Ändra användarlösenordet
- Välj din tidszon i lokaliseringsalternativen
- Konfigurera WiFi med nätverksalternativ och sedan Wi-Fi-alternativ där du måste fylla i ditt SSID och lösenord.
Installera Python 3
I det här projektet använder vi Python, därför ställer vi in standard till Python3 insteat av Python2, med följande kommandon
uppdateringsalternativ-installera/usr/bin/python python /usr/bin/python2.7 1
uppdateringsalternativ-installera/usr/bin/python python/usr/bin/python3 2
Python -paket
Vi behöver några paket för att allt ska fungera korrekt, främst flaskpaketen och ett för att ansluta till vår databas. Vi kan installera dessa paket med följande kommandon:
pip installera kolv
pip installera Flask_cors pip installera Flask_socketio pip installera Python-mysql-connecton
Databas
Därefter kommer vi att installera vårt databashanteringssystem (MariaDB), vi gör det med:
sudo apt installera mariadb-server
Skriv "Y" och Enter för att fortsätta. Efter några sekunder är installationsprocessen klar och MariaDB är nästan klar att använda.
För att ge databasen ett lösenord, använd kommandot:
sudo mysql_secure_installation
Tryck sedan på Enter eftersom det aktuella lösenordet är tomt. Tryck sedan på "Y" för att ställa in ett lösenord, nu kan du fylla i vilket lösenord du vill, se till att komma ihåg det eftersom vi behöver det för att göra en korrekt anslutning mellan back- och front-end.
Nu trycker du på “Y” 3 gånger för att: ta bort anonyma användare, inte tillåta root -inloggning på distans och ta bort testdatabasen. Slutligen, tryck på "Y" igen för att ladda om privilegierna.
Nu installeras MariaDB och alla nödvändiga paket framgångsrikt.
Steg 2: Ta tag i koden och ställ in den
Nu när vi har alla paket installerade kan vi ta tag i koden.
Koden är tillgänglig på Github så att du kan klona den med:
git-klon
Detta är frontend
git-klon
Detta är backend
Installera själva databasen
För att installera databasen, navigera till.sql -filen som finns i backend -mappen med följande kommandon (se till att ställa in den på din egen sökväg.
mysql
skapa databas switchit avsluta mysql -u root -p switchit <Your_Path_to_Backend_Repo/switchit.sql
Installera Apache
Nu när vi har all kod och databasinställning kan vi installera Apache och köra vår backend på den. Vi gör det med:
apt -get installera apache2 -y
Ersätt sedan filerna i/var/ww/html med de i mappen från frontend -mappen.
Om allt gick bra borde du kunna ansluta till din webbplats med APIPA -adressen: 169.254.10.1 i din webbläsare.
Steg 3: Arduino -kommunikation
För att läsa vår nuvarande sensor och vår RFID -sensor använder vi en arduino, för att göra det använder du arduino -koden som anges nedan. Ladda upp den med en USB-A till USB-B-kabel och arduino IDE-programvaran. När den laddas upp är arduino -delen klar.
Nu måste vi hitta namnet på den seriella enheten på PI: n. Se till att i /boot/config.txt "enable_uart = 1" är rätt. Se också till att "console = serial0, 115200" tas bort från cmdline.txt.
Kontrollera sedan portarna med
ls -l /dev
Då bör ett av serienamnen vara Arduino. Fyll i detta namn på arduinocom -funktionen i app.py
ser = serial. Serial ('/dev/ttyS0', 9600)
Gör det bara om seriekommunikationen inte fungerar.
Steg 4: Anslutning av switch-it
Att koppla upp allt är ganska enkelt, men du bör ha följande saker i åtanke:
- Var försiktig med vägguttaget, 230 volt kan vara dödligt.
- Se till att använda en nivåomvandlare för kommunikation mellan RPI och Arduino.
- Innan du lödar RGB, se till att du använder den röda och gröna stiftet. Testa detta i förväg!
- Testa om inget är kortslutet INNAN du sätter på kretsen.
Steg 5: Kör koden
Nu är allt korrekt anslutet, vi kan köra vårt program.
För att få den att köra automatiskt vid start, skapa en fil med:
sudo nano myscript.service
Klistra sedan in (se till att använda din egen app.py -katalog:
[Enhet] Beskrivning = Switchit After = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory = // ändra till app.py -katalogen // StandardOutput = ärva StandardError = ärva Restart = alltid Användare = pi [Installera] WantedBy = multi-user.target
Tryck sedan på "ctrl + X" och kopiera den till/etc/systemd/system.
Därefter följer kommandot följande för att få det att köra automatiskt:
sudo systemctl aktivera myscript.service
Du kan hitta mer information om detta på RaspBerry Pi -webbplatsen.
Starta om och gjort
Starta nu om din PI med:
sudo reboot -h nu
Så här gör du Switch-it!
Tack för att du följer med, hoppas detta var till hjälp. Om du har några tips eller feedback, tveka inte att lämna en kommentar.
Steg 6: (TILLVAL) Huset
Du kan bygga huset helt efter eget tycke. Jag använde ett metallhölje som är 40x40x5 cm med lock. Eftersom jag använde en metall måste jag borra hål och använda distanser för att få bort allt från markplattan. Jag valde att använda en central punkt där 5V, 3.3V och gnd är tillgänglig. Varje elektrisk anslutning löds med en bit krymprör ovanpå den. För att göra kabelhanteringen använde jag kuddar med bärremmar.
Rekommenderad:
Så här kontrollerar du uttag med en hallon Pi: 6 steg
Så här kontrollerar du uttag med en Raspberry Pi: I denna instruktionsbok kommer jag att visa dig hur du skapar ett webbgränssnitt för att styra uttag i ditt hem med en Raspberry Pi. Jag valde att skriva detta projekt när jag såg Sensors -tävlingen, och eftersom det här projektet innebär att använda en sensor för att läsa
Wifi -uttag: 4 steg (med bilder)
Wifi -uttag: Användning av ESP12E (programmering i Arduino IDE) för att styra ON/OFF -uttag 220V via mobiltelefon (i samma wifi -nätverk hemma) Vad vi behöver är: 1. ESP12E https://amzn.to/2zoD8TU2. Strömmodul 220V till 6VDC https://amzn.to/2OalkEh3. Ett normalt uttag https:
Smart hemautomation med Energenie -uttag - Närhetsuttag: 4 steg
Smart hemautomation med Energenie -uttag - Närhetsuttag: Introduktion Det finns gott om exempel på smart hemautomation där ute, men den här är enkel och har fungerat mycket effektivt i ett år i mitt hus så jag hoppas att du gillar det. När du är klar kommer du att ha en enhet som kan skanna nätet
Type2 Mennekes till 3 230V -uttag: 4 steg (med bilder)
Type2 Mennekes till 3 230V -uttag: I fyra år kör jag med glädje min elektriska motorcykel nu, ZeroS. Och ja, laddningstiden har blivit en viktig del för att bestämma mig för att åka någonstans med motorcykel eller ta bilen eller kollektivtrafiken … Eftersom min modell är för gammal för att lägga till en avgift
Reparera Radio Aux -uttag / Lägg till media Bluetooth -mottagare bakom instrumentpanel: 6 steg (med bilder)
Reparera Radio Aux -uttag / Lägg till media Bluetooth -mottagare bakom instrumentbrädan: Jag märkte nyligen att mitt Silverado aux -uttag 2013 var löst. Det kom inte som en överraskning eftersom jag använder den ofta och bara låter aux -sladden hängande från uttaget. För att fixa det behövde jag bara ta några paneler från instrumentpanelen, ta bort och ta apa