Hur man gör IOT Smart Garage Opener med Raspberry Pi?

I den här eran där den senaste tekniken gör att vi invaderar dag för dag internet (IoT), har det nyligen framkommit som en toppmodern metod för att automatisera elektroniska enheter och därmed minska mänsklig störning i stor utsträckning. Många tekniker stöder trådlös kontroll av enheter som Radiofrekvensidentifikation (RFID), Bluetooth, Wifi, etc. I det här projektet kommer vi att göra en Smart Garage Door Opener med Raspberry Pi. Raspberry pi webserver skapas för att öppna och stänga garageporten med din smartphone.

Hur ställer jag in Raspberry Pi och andra hårdvarukomponenter?

Som vi har förstått det grundläggande syftet med detta projekt, låt oss nu gå ett steg längre mot att samla in komponenterna och montera dem.

Steg 1: Komponenter krävs

Steg 2: Välja Raspberry Pi-modellen

Flera modeller av hallon pi finns på marknaden. Förutom hallon pi zero kan vilken modell som helst föredras. Det beror på att det på Pi noll är att skapa ett nätverk ett mycket tröttsamt jobb. De senaste modellerna som 3A +, 3B + eller 4 kan köpas. Den nya Raspberry Pi 3 är den snabbaste och mest dominerande gadgeten Raspberry Pi Foundation har släppt hittills. Så i det här projektet kommer vi att använda Raspberry Pi 3B +.

Steg 3: Välja operativsystem

För det första behöver vi ett SD-kort med ett lämpligt operativsystem. När man väljer operativsystemet finns det idag olika alternativ, från "konventionell" Raspbian till hängivna ramar för mediearbete, och till och med Windows 10 IoT. Raspbian är att föredra eftersom det kommer med över 35000 paket. Raspbian är ett samhällsprojekt under aktiv utveckling, med tonvikt på att förbättra stabiliteten och prestandan för så många Debian-paket som möjligt.

Steg 4: Gränssnitt hallon med bärbar dator

Extern bildskärm eller LCD med HDMI-kabel kan användas som en skärm för att ansluta till Raspberry Pi. Om någon inte har LCD kan han / hon använda en bärbar dator för att ansluta Pi men vissa konfigurationer måste göras för anslutning. Vi kommer att använda en Säkert skal (SSH) klient känd som Spackel för att ansluta Pi med en bärbar dator. Gränssnitt förklaras i stegen som nämns nedan:

  1. Installera avancerad IP-skanner: Advanced IP Scanner är ett verktyg som används för att upptäcka IP-adresser som tilldelas enheterna av din Wifi-router. Vi installerar denna programvara genom att klicka här
  2. Upptäcka IP tilldelad Raspberry Pi: Nu kommer vi att kontrollera den statiska IP-adressen som tilldelas vår Raspberry Pi.

    IP-adressen tilldelad vår Raspberry Pi är 192.168.1.16. Observera denna IP-adress eftersom den kommer att behövas i ytterligare konfigurationer. Notera: Varje person tilldelas en annan IP-adress beroende på Wifi-routern.

  3. Ladda ner kitt och ange IP-adress i den: Putty är en SSH-klient och det är programvara med öppen källkod som är tillgänglig med källkod. Den kan laddas ner härifrån. Efter nedladdning av Putty öppnar du den och anger den statiska IP-adressen "192.168.1.16" för att ansluta till den bärbara datorn.
  4. Loggar in:När du har angett IP-adressen kommer skärmen att visas och den kommer att fråga efter användarnamn och lösenord. Standardanvändarnamnet är “pi”Och lösenord är”hallon“. Vi kan också ändra inloggningsuppgifter om vi vill.

Steg 5: Kretsschema

Nu när vi vet hur komponenterna fungerar, går vi vidare och monterar dessa komponenter och skapar en krets enligt bilden nedan.

Reläet drivs av 5 V Raspberry Pi och Ingångsutgång för allmänt ändamål (GPIO-14), är ansluten till I av reläet. Det kommer att berätta för reläet när man ska växla och AV. Vi har anslutit 12V AC-lampa till reläets utgång så att när garageporten öppnas vrids lampan och när garageporten är stängd vrids lampan AV.

Steg 6: Kolvinställning i Pi för styrning av garageport

Vi kommer att skapa en webbserver med hjälp av Flask som banar väg för att skicka kommandon från webbsidan till Raspberry Pi för att styra vår prototyp över nätverket. Flask gör det möjligt för oss att köra vårt pythoninnehåll via en webbplats och vi kan skicka och få information från Raspberry Pi till webbläsaren och tvärtom. Det är en mikroram för Pytonorm. Detta verktyg är Unicode-baserat med inbyggd utvecklingsserver och felsökare, integrerad enhetstestning, stöd för säkra kakor och dess enkla att använda, dessa saker gör det värdefullt för specialisten. För installation Flaska skriv följande kommandon på din Raspberry Pi:

sudo apt-get uppdatering sudo apt-get installera python-pip python-kolv

Kör nu pip-kommandot för att installera Flask och dess beroenden:

sudo pip installera kolven

Steg 7: Skapa ett Python-skript för dörröppnare

Detta skript kommer att samarbeta med våra Raspberry Pi GPIO och ställa in webbservern. Det är huvudskriptet för vårt projekt. Python-skript kommer att förklaras i delarna nedan:

För det första skapar vi en mapp. Alla andra mappar som krävs måste endast finnas i den här mappen. Kör nedanför kommandon för att skapa en mapp och skapa sedan en pythonfil med namnet app.pyinuti den här mappen:

mkdir garage_door cd garage_door nano app.py

Ovanstående kommandon öppnar Nano-redigeraren där man skriver manuset nedan. Inkludera viktiga bibliotek:

importera RPi.GPIO som GPIO från kolv importera kolv, render_template, begär app = kolv (__ name__, static_url_path = '/ static')

Skapa nu en ordbok somstiftför att lagra PIN-kod, namn och PIN-kod. Du kan använda mer än en stift enligt dina behov:

pins = {14: {'name': 'Garage Door', 'state': GPIO.LOW}}

Ställ sedan in stiften på utgång och ställ in den till lågt initialt:

för stift i stift: GPIO.setup (stift, GPIO.OUT) GPIO.output (stift, GPIO.LOW)

Vi kommer att göra funktionen att läsa stiftstatus och lagra detta tillstånd i en variabel:

@ app.route ("/") def main (): för pin in pins: pins [pin] ['state'] = GPIO.input (pin) ..

Vi skickar dessa uppgifter till våra HTML sidan så att vi kan styra ingångsknappens tillstånd:

 returnera render_template ('main.html', ** templateData)

För hantering av förfrågningar från URL göra en funktion med PIN och handling i den:

@ app.route ("//", metoder = ['GET', 'POST']) def-åtgärd (changePin, action):

Därefter konverterar stift från URL till ett heltal;

changePin = int (changePin)

Om åtgärdsdelen av webbadressen är “öppna, ”Gör då följande:

if action == "open": GPIO.output (changePin, GPIO.HIGH) if action == "close": GPIO.output (changePin, GPIO.LOW)

Jag kommer att bifoga hela skriptet i slutet och om någon vill kopiera kan han / hon göra det genom att trycka på ctrl + x och sedan på Stiga på. Nu är vi klara med python-skriptet och vi kommer att göra ett HTML sida för att interagera med python-skriptet.

Steg 8: Skapa HTML-sida för Raspberry Pi Server

Vi kommer att göra ändringar i mappen garage_door som vi skapade tidigare. Vi skapar en annan mapp med namnet mallar och inuti den här mappen skapar du en .html-fil med följande kommandon:

mkdir mallar cd mallar nano main.html

Öppna nu nano-textredigeraren och skriv HTML koda. Vi kan redigera del av sidan och ändra den enligt vårt eget val. Vi har använt det tredje partens CSS-schema med hjälp av länktaggen. Den fullständiga koden ges nedan:

Klicka här för att ladda ner HTML-koden för att skapa en webbsida.

Steg 9: Skapa en knapp för att öppna och stänga dörren

Vi måste tilldela ett tillstånd för att öppna och stänga knappen. Den knappen skickar och hämtar GPIO-tillståndet från python-skriptet. Eftersom vi har slutfört ovanstående HTML-kod kan vi nu använda den i redigeraren och spara den och äntligen är vår webbserver redo att starta. Öppna terminalen och navigera tillgarageport mappen och kör nedanstående kommando:

sudo python app.py

Öppna webbläsaren och ange IP-adressen till Raspberry Pi och tryck på Enter. Denna typ av sida visas:

Steg 10: Konfigurera hårdvaran

När vi är klara med programvaruinstallationen, låt oss nu gå ett steg framåt och montera hårdvaran. se till att relämodulen är ansluten till Raspberry Pi. För att testa tryck på öppna knappen för att växla relä- och stäng-knappen för att växla AV reläet. Så snart reläet slås på tänds AC-lampan och vi vet att grinden är öppen och när lampan är avstängd kommer vi att veta att grinden är stängd. För att stoppa servern, tryck på ctrl + c.

Klicka här för att ladda ner koden för att installera hårdvara.

Facebook Twitter Google Plus Pinterest