In deze zelfstudie laten we u zien hoe u uw garagedeur automatiseert met niets meer dan een Raspberry Pi en IFTTT.

Hoe uw garagedeur te automatiseren met IFTTT en Raspberry Pi

Advertentie Smart home-gadgets zijn cool maar kunnen duur zijn. Met een Raspberry Pi en een component of twee is het eenvoudig en goedkoop om bestaande apparaten met internet te verbinden. Uw garagedeur bewust maken van internet is een geweldige introductie om te leren hoe u de echte wereld kunt besturen met een Pi

Advertentie

Smart home-gadgets zijn cool maar kunnen duur zijn. Met een Raspberry Pi en een component of twee is het eenvoudig en goedkoop om bestaande apparaten met internet te verbinden.

Uw garagedeur bewust maken van internet is een geweldige introductie om te leren hoe u de echte wereld kunt besturen met een Pi. En laten we eerlijk zijn, wie wil zich niet een beetje als Batman voelen en zijn garage alleen laten openen wanneer ze hun oprit oprijden?

Wat je nodig hebt

Om uw garagedeur te automatiseren, hebt u het volgende nodig:

  • Een garagedeurmotor die een externe trigger kan aannemen.
  • Een Raspberry Pi (elk model) verbonden met internet. In deze zelfstudie wordt ervan uitgegaan dat op uw Pi het Raspbian-besturingssysteem wordt uitgevoerd (als dit niet het geval is, raadpleegt u ons artikel over het installeren van Raspbian op uw Raspberry Pi Een besturingssysteem installeren op een Raspberry Pi Een besturingssysteem installeren op een Raspberry Pi Hier ziet u hoe om een ​​OS op uw Raspberry Pi te installeren en hoe u uw perfecte installatie kunt klonen voor snel noodherstel. Lees meer).
  • Een relay-uitbreidingskaart die u kunt vinden op Amazon.
  • Een 2A-voeding voor de Raspberry Pi. Een lager gewaardeerd model kan problemen hebben met het besturen van het relaisbord en de Pi.
  • Vier startkabels (plus nog een voor elke extra deur die u wilt bedienen).
  • Genoeg tweeaderige kabel om tussen de Pi en de garagedeurmotor te reiken. Goedkope luidsprekerkabel is ideaal, maar telefoon- of Ethernet-kabel kan ook werken.

Als je die componenten eenmaal hebt verzameld, is het tijd om te beginnen.

Hoe deze geautomatiseerde garagedeur werkt

De meeste garagedeurmotoren kunnen worden geactiveerd om te openen of te sluiten via een externe ingang. Fabrikanten nemen deze ingangen op, zodat installateurs een eenvoudige drukknop ergens in huis kunnen aansluiten om de deur te openen of te sluiten zonder de reguliere afstandsbediening te gebruiken. Wanneer een triggerknop wordt ingedrukt en losgelaten, sluit deze tijdelijk een circuit dat de motor vertelt te starten of stoppen.

Je gaat een relais gebruiken in plaats van een externe knop. Door het relais kort te sluiten, wordt het circuit gesloten, precies alsof een triggerknop is ingedrukt. Met een Python-script dat op de Raspberry Pi wordt uitgevoerd, kun je het relais en dus de deur van je thuisnetwerk bedienen.

Stap 1: Verbind de Raspberry Pi met het relais

U maakt minimaal vier verbindingen tussen uw Raspberry Pi en het relaisbord. Als u een Pi Zero gebruikt, moet u de verbindingen rechtstreeks solderen, of een GPIO-header aan de Pi solderen en jumperleidingen gebruiken voor de verbindingen. De laatste optie wordt aanbevolen omdat als u ooit het relaisbord wilt loskoppelen en de Raspberry Pi voor iets anders wilt gebruiken, u uw verbindingen niet hoeft te de-solderen. Het grotere model Pis heeft al koppennen voor het aansluiten van push-on jumper-kabels.

Als u nieuw bent in het gebruik van de GPIO, lees dan ons artikel Alles wat u moet weten over Raspberry Pi GPIO Pins Alles wat u moet weten over Raspberry Pi GPIO Pins Alles wat u moet weten over Raspberry Pi GPIO Pins De Raspberry Pi is een fantastische kleine computer, maar wat doen de GPIO-pinnen (General Purpose Input / Output) precies? Kortom, ze openen een hele wereld van DIY elektronisch knutselen en uitvinden. Lees verder .

Controleer voordat u alles aansluit of uw relaisbord een jumper heeft die de VCC- en JD-VCC-pinnen met elkaar verbindt. Als dit het geval is, verwijdert u deze, omdat u VCC en JD-VCC afzonderlijk moet voeden.

Relaisbord JD-VCC naar VCC jumper

Met alles uitgeschakeld, sluit je het relaisbord als volgt aan op je Pi:

  • Begin met het verbinden van Pi Pin 2 (5V rail) met de JD-VCC op het relaisbord.
  • Sluit Pi Pin 1 of Pin 17 (3, 3 V rail) aan op VCC op de relaiskaart.
  • Sluit Pi Pin 6 (GND) aan op GND op de relaiskaart.
  • Verbind ten slotte Pi Pin 7 (GPIO 4) met IN1 op de relaiskaart. Dit is de verbinding die het relais schakelt.

Als je meer dan één garagedeur hebt of als je controle voor elektrische poorten wilt toevoegen, moet je extra verbindingen toevoegen tussen IN2, IN3, enz. Op de relaiskaart en andere vrije GPIO input / output-pinnen op de Pi.

Raspberry Pi aangesloten op een relaisbord

Stap 2: Installeer afhankelijkheden op de Raspberry Pi

Raspbian wordt geleverd met vooraf geïnstalleerde Python, maar u moet de GPIO-bibliotheek toevoegen. Typ het volgende in het terminalvenster op uw Pi:

 sudo apt-get update sudo apt-get -y install python-rpi.gpio 

Maak nu een nieuwe map in uw basismap, ergens om het Python-script te plaatsen dat de relais gaat besturen:

 mkdir ~/garagedoor cd ~/garagedoor 

Download ten slotte een fles, een lichtgewicht framework dat een eenvoudige webserver op uw Pi maakt:

 wget https://bottlepy.org/bottle.py 

Stap 3: Maak het beheerscript

Hier is een heel eenvoudig Python-script om het relaisbord via HTTP te besturen:

 # Python Script To Control Garage Door # Load libraries import RPi.GPIO as GPIO import time from bottle import route, run, template # Set up the GPIO pins GPIO.setmode(GPIO.BOARD) GPIO.setup(7, GPIO.OUT) GPIO.setup(11, GPIO.OUT) GPIO.output(7, True) GPIO.output(11, True) # Handle http requests to the root address @route('/') def index(): return 'Go away.' # Handle http requests to /garagedoor @route('/garagedoor/:doornum') def garagedoor(doornum=0): if doornum == '0': return 'No door number specified' elif doornum == '1': GPIO.output(7, False) time.sleep(.8) GPIO.output(7, True) return 'Door number 1 cycled.' elif doornum == '2': GPIO.output(11, False) time.sleep(.8) GPIO.output(11, True) return 'Door number 2 cycled' run(host='0.0.0.0', port=1234) 

Maak op uw Raspberry Pi een nieuw Python-bestand met behulp van nano:

 nano door.py 

Kopieer en plak het bovenstaande script in het lege document. Sluit af en sla op met CTRL + X, vervolgens Y en Enter om te bevestigen.

Test nu het script door het uit te voeren:

 python door.py 

Als alles werkt, ziet u een bericht als dit:

Python script actief bericht

Als u foutmeldingen krijgt, controleer dan of alles correct in het bestand is geplakt en of er geen andere webserver zoals Apache op dezelfde poort draait (dit zal de server die het script aanmaakt, verstoren).

Ervan uitgaande dat er geen fouten zijn, gaat u naar een webbrowser op een andere computer op hetzelfde netwerk en typt u in de adresbalk het IP-adres van uw Pi gevolgd door een dubbele punt en 1234. Als het IP-adres van uw Raspberry Pi bijvoorbeeld 11.22.33.44, typ je 11.22.33.44:1234 in je browser.

Als alles werkt, ziet u een bericht met de melding dat u weg moet gaan!

Voeg nu / garagedoor / 1 toe achter het IP-adres en poortnummer, als volgt: 11.22.33.44:1234/garagedoor/1

Druk op Enter en je zou het eerste relais op het bord twee keer moeten horen klikken terwijl het sluit en opnieuw opent. Als u de 1 in een 2 verandert en de pagina opnieuw laadt, hoort u de tweede relaiscyclus.

Stap 4: Verbind het relais met de deurmotor

Raadpleeg de handleiding van uw garagedeurmotor om te zien waar een externe controller kan worden aangesloten. Bevestig de tweeaderige kabel en sluit het andere uiteinde van de kabel aan op de schroefklemmen van het relaisbord.

Relaisbordverbindingen naar deurmotor

Er zijn drie terminals per relais - gebruik het normaal open paar zoals weergegeven in de afbeelding.

Garagedeur motoraansluiting

Test alles opnieuw vanuit de webbrowser (u kunt de pagina gewoon vernieuwen). Als alles goed gaat, klikt het relais een paar keer en moet uw garagedeur beginnen te openen.

Stap 5: Stel het script in op Autoload

Als uw Raspberry Pi om welke reden dan ook opnieuw opstart, zoals een stroomstoring, wordt uw Python-script niet meer uitgevoerd. Om het bij het opstarten te laden, voeg je de volgende regel toe aan je /etc/sc.local bestand (als je bent ingelogd op je Pi als een andere gebruiker, verander je Pi in je gebruikersnaam):

 nohup python /home/pi/garagedoor/door.py & 

Doe dit met uw gebruikelijke teksteditor en sla het bestand op als u klaar bent.

Veiligheidsoverwegingen om in gedachten te houden

Er is geen enkele vorm van beveiliging in dit voorbeeld Python-script - iedereen die via het IP-adres toegang heeft tot uw Raspberry Pi, kan uw garagedeur openen en sluiten. Het is verleidelijk om te denken dat alleen omdat niemand weet dat je script er is, niemand het zal vinden, maar beveiliging door duisternis is keer op keer een slecht idee gebleken.

Een volledig authenticatiesysteem valt buiten het bestek van deze tutorial, maar een eenvoudige oplossing voor beveiliging is om uw Pi niet toegankelijk te maken buiten uw thuisnetwerk.

Hier zijn nog enkele tips voor het beveiligen van uw Raspberry Pi Uw Raspberry Pi beveiligen: van wachtwoorden tot firewalls Uw Raspberry Pi beveiligen: van wachtwoorden tot firewalls Iedereen kan Google gebruiken om de standaardgebruikersnaam en het wachtwoord van uw Raspberry Pi te vinden. Geef indringers die kans niet! Lees verder .

Uw garagedeur bedienen met IFTTT of Siri

Als je ervoor kiest om je Pi toegankelijk te maken via het open internet, kun je je garagedeur bedienen via services zoals If This Then That (IFTTT). U kunt bijvoorbeeld de IFTTT-services Alexa en Webhooks combineren om uw garagedeur te openen wanneer u een triggerzin tegen een Amazon Echo zegt.

IFTTT Alexa en webhook-applet

Als u een auto bestuurt met een via IFTTT verbonden service, kunt u een applet maken. Gebruik IFTTT-applets met geavanceerde filters om uw taken te versterken Hoe IFTTT-applets met geavanceerde filters te gebruiken om uw taken te versterken IFTTT-applets kunnen vrijwel alles automatiseren. Maar wist u dat u ook geavanceerde applets met speciale IFTTT-filters kunt maken? Lees meer om de deur te openen wanneer uw auto uw eigendom nadert, in Batman-stijl.

Wil meer weten? Zie onze downloadbare gids voor het gebruik van IFTTT als een pro De ultieme IFTTT-gids: gebruik de krachtigste tool van het web als een pro De ultieme IFTTT-gids: gebruik de krachtigste tool van het web als een pro Als dit dan is dat, ook bekend als IFTTT, gratis webgebaseerde service om uw apps en apparaten samen te laten werken. Weet u niet zeker hoe u uw applet moet bouwen? Volg samen met deze gids. Lees verder .

Een andere manier om uw nieuwe internetbewuste garagedeur te activeren, is met een Siri-snelkoppeling. Door een heel eenvoudige snelkoppeling in je widgets te plaatsen, kun je vergeten vervelende sleutels te dragen en in plaats daarvan je garage openen met een veeg en tik op je iPhone.

Siri-snelkoppeling om garagedeur-script te bellen

Voorbij de garage: meer doe-het-zelf Smart Home-projecten

Relaisborden kunnen de netspanning schakelen en kunnen dus de meeste huishoudelijke apparaten bedienen. Dit project kan dienen als basis voor het toevoegen van smarts aan bijna alles met een stroomvoorziening. Koffiemachines, verlichting, airconditioners - ze zijn allemaal rijp voor automatisering met een Raspberry Pi en sommige relais.

Geïnteresseerd in manieren om uw plafondventilator te automatiseren 7 Eenvoudige manieren om uw plafondventilator te automatiseren 7 Eenvoudige manieren om uw plafondventilator te automatiseren Houd uzelf tijdens warme zomermaanden koel met deze slimme plafondventilatoren en afstandsbedieningen voor maximaal comfort. Meer lezen ook? En vergeet niet deze andere slimme domotica-projecten te bekijken 9 DIY Smart Home Automation-projecten voor een Shoestring Budget 9 DIY Smart Home Automation-projecten voor een Shoestring Budget DIY slimme home-apparaten kunnen goedkoop zijn met de juiste projecten en instructies. Deze negen voorbeelden laten zien hoe. Lees meer voor meer ideeën.

Ontdek meer over: doe-het-zelfstudielessen, domotica, IFTTT, Raspberry Pi.