Arduino hemautomatik fjärrkontroll från iOS eller Android
För hemautomatisering, fjärrkontroll eller övervakning av din Arduino, gör Arduino Manager allt. Så här använder du den för att styra din Arduino från en mobil eller surfplatta.
Krav
Idag testar jag med iOS, men Android-appfunktionerna är identiska med undantaget frånvaron av kodgeneratorn.
- ArduinoManager, för iOS eller Android
- Arduino
- Officiell Ethernet- eller WiFi-skärm
- IOSController-biblioteket installerat i bibliotekets mapp (eller Android Controller)
- Exempelkod för Ethernet- eller WiFi-versioner
- En servo, några analoga sensorer och potentiometer, ett brödbräda och några LED-lampor att spela med. Dessa ska alla vara vanliga komponenter som finns i något Arduino startpaket Vad ingår i ett Arduino Starter Kit? [MakeUseOf Förklarar] Vad ingår i ett Arduino Starter Kit? [MakeUseOf Explains] Jag har tidigare introducerat Arduino open source-hårdvaran här på MakeUseOf, men du behöver mer än bara den verkliga Arduino att bygga något ut av det och faktiskt komma igång. Arduino "startpaket" är ... Läs mer .
Introduktion
Android Manager är ett trevligt gränssnitt för att styra din Arduino på distans via WiFi eller Ethernet. Förutom de uppenbara egenskaperna att kunna slå på eller stänga av reläer och servos kan du samla sensordata och skapa trösklar eller larm som reagerar på den data. Appen består av ett rutnät, där varje sektion kan ha en annan kontrollmodul eller widget. När du är nöjd med resultatet kan dessa delas också.
Inte så snabbt men: du behöver några Arduino kodning färdigheter för att få magi hända. Ett exempel finns och fullständig dokumentation finns tillgänglig, men kom ihåg att ett projekt du producerar är en kombination av användargränssnittet som skapats av Arduino Manager plus vissa anpassade kodningar för din Arduino. Om det här släcker du, vet du att iOS-versionen av appen har ett enda köp i app som genererar lämplig kod för dig. Att lära sig att ändra den här koden går inte under dagens handledning, men du kan förvänta mig att täcka den igen för framtida hemautomatiseringsprojekt.
Komma igång
Se till att ArduinoManager-biblioteket är installerat på ditt system först, öppna sedan exemplet och hitta följande rader:
/ * * * IP info * * Med DHCP behövs inte dessa parametrar * / IPAddress ip (192.168,1, 233); IPAddress gateway (192.168,1,1); IPAddress-subnät (255,255,255,0);
Redigera dem för ditt eget hemnätverk. Du borde också kunna använda det här hemifrån om du har port vidarebefordran Vad är port vidarebefordran och hur kan det hjälpa mig? [MakeUseOf Explains] Vad är port vidarebefordran och hur kan det hjälpa mig? [MakeUseOf Explains] Skriker du lite inuti när någon säger att det finns ett portproblem och det är därför att din glänsande nya app inte fungerar? Din Xbox kommer inte låta dig spela spel, dina torrentladdningar vägrar ... Läs mer, men vi kommer inte att täcka det.
Observera att om du kör på en Arduino Uno måste du inaktivera SD-kortets datalogringsstöd för att programmet ska passa in i minnet. Öppna IOSController.h eller AndroidController.h och kommentera den här raden (plats // framför)
#define SD_SUPPORT
Arduino Mega-användare kommer inte att ha detta problem eftersom det har mer minne.
Wire i en testkrets enligt följande diagram (om det är för litet kan du se en större version av sidan 18 i dokumentationen eller läsa instruktionerna nedan, den här temperatursensorn ska gå till A0).
- Anslut en LED till stift 8 med lämpligt motstånd på den negativa sidan (kort ben). Detta kommer att styras från iOS-appen.
- Anslut en annan LED till stift 7, återigen i serie med ett motstånd. Detta aktiveras när appen är ansluten.
- Sätt en potentiometer på A2. Mellanbenet är utmatningsstiftet, bara koppla benen på vardera sidan till + 5v och marken - det spelar ingen roll vilken.
- Sätt en ljussensor på A1. En stift av ljussensorn ska gå till + 5v, den andra ska anslutas till både A1 och till jord via ett 10k ohm motstånd.
- Sätt en TMP36 temperatursensor till A0. Mittbenet är utmatningsstiftet; med den platta sidan mot dig, vänstern är + 5v, den högsta nålen är markerad.
- Slutligen sätta en servo på stift 9. Din kan skilja sig, men i allmänhet är den vita kabeln kontrolllinjen, då är den röda och svarta + 5v respektive jordade.
Här är jag som jag gjorde tidigare.
Unzip och maila de resulterande Widgets.lst till dig själv, och du ska kunna öppna mitt färdiga kontrollpanel. Du måste också klicka på konfigurationsknappen längst ned till höger för att ställa in rätt IP-adress först och tryck sedan på den här ikonen för att ansluta.
Om du föredrar att skapa ditt eget gränssnitt, växla över till redigeringsläget på ett rent kort och dubbelklicka på någon tom kvadrat för att öppna modullistan.
När du har lagt till en modul trycker du på den grå fältet för att märka den. I demokretsen och koden kan följande etiketter ställas in:
- T för temperatursensorn.
- L för ljussensorn.
- L1 för en av lysdioderna. Den andra lysdioden slås på automatiskt för att indikera en lyckad anslutning till din mobila enhet. L1 kan ställas in som både en strömbrytare och en LED-indikator.
- Pott för potentiometern.
- Knopp styr servo (men jag hittade en skjutreglage för att vara bättre - den faktiska knoppmodulen är lite fiddly. Lägg till en skjutreglage och kallade den “Knopp”, det kommer fungera bra)
Om du vill styra olika saker måste du justera Arduino-koden som passar ditt projekt.
alternativ
Jag kollade ut ett antal alternativ när jag undersökte det här ämnet och den mest lönsamma konkurrerande applikationen heter ArduinoCommander, men tyvärr är alla fina funktioner låst bakom en paywall så att det kostar dig $ 50 eller mer för att låsa upp allt. webbplatsen som stöder appen är också offline. Det fungerade för grundläggande funktioner när jag testade det, men jag kommer inte att stödja den appen som inte ens kan hålla den stödja webbplatsen online och väljer mikropayments för allt. Arduino Manager är bara bättre, och har bara ett in-app-köp för en avancerad funktion.
Så nu är vi nu redo att starta ett Arduino Home Automation-projekt! Tror du att du kan använda Arduino Manager?
Utforska mer om: Arduino, datautomatisering, fjärrkontroll.