Voor huisautomatisering, afstandsbediening of bewaking van uw Arduino, doet Arduino Manager het allemaal. Hier is hoe het te gebruiken om je Arduino te besturen vanaf een mobiel of tablet.
Vereisten
Vandaag test ik met iOS, maar de Android-app-functies zijn identiek met uitzondering van de afwezigheid van de codegenerator.
- ArduinoManager, voor iOS of Android
- Arduino
- Officieel Ethernet- of WiFi-schild
- IOSController-bibliotheek geïnstalleerd in de map van uw bibliotheek (of Android-controller)
- Voorbeeldcode voor Ethernet- of WiFi-versies
- Een servo, enkele analoge sensoren en een potentiometer, een breadboard en enkele LED's om mee te spelen. Dit zouden allemaal gemeenschappelijke componenten moeten zijn die gevonden worden in een Arduino starterkit. Wat zit er in een Arduino Starterkit? [MakeUseOf Explains] Wat zit er in een Arduino Starter Kit? [MakeUseOf Explains] Ik heb eerder de Arduino open-source hardware hier op MakeUseOf geïntroduceerd, maar je zult meer nodig hebben dan alleen de echte Arduino om er iets van te maken en daadwerkelijk aan de slag te gaan. Arduino "starter kits" zijn ... Lees meer.
Invoering
Android Manager is een mooie interface om je Arduino op afstand te besturen via WiFi of Ethernet. Naast de voor de hand liggende kenmerken van het kunnen in- en uitschakelen van relais en servo's, kunt u sensorgegevens verzamelen en drempels of alarmen creëren die op die gegevens reageren. De app bestaat uit een raster waarvan elke sectie een andere controlemodule of widget kan hebben. Als u tevreden bent met het resultaat, kunnen deze ook worden gedeeld.
Maar niet zo snel: je hebt Arduino-codeervaardigheden nodig om de magie te laten gebeuren. Een voorbeeld hiervan is beschikbaar en volledige documentatie is beschikbaar, maar houd er rekening mee dat elk project dat u produceert een combinatie is van de gebruikersinterface gemaakt door Arduino Manager plus enkele aangepaste codering voor uw Arduino. Als dit je afzet, weet dan dat de iOS-versie van de app één in-app-aankoop heeft die geschikte code voor je zal genereren. Leren om deze code te veranderen, valt buiten de reikwijdte van de tutorial van vandaag, maar je mag van mij verwachten dat ik hem opnieuw cover voor toekomstige domotica-projecten.
Ermee beginnen
Zorg ervoor dat de ArduinoManager-bibliotheek eerst op uw systeem is geïnstalleerd, open vervolgens de voorbeeldcode en zoek de volgende regels:
/* * * IP info * * Using DHCP these parameters are not needed */ IPAddress ip(192, 168, 1, 233); IPAddress gateway(192, 168, 1, 1); IPAddress subnet(255, 255, 255, 0);
Bewerk deze voor uw eigen thuisnetwerk. Je zou dit ook van huis moeten kunnen gebruiken als je port forwarding hebt. Wat is port forwarding en hoe kan het mij helpen? [MakeUseOf Explains] Wat is Port Forwarding en hoe kan het mij helpen? [MakeUseOf Explains] Huil je een beetje naar binnen als iemand je vertelt dat er een probleem is met de poortdoorsturing en daarom zal je glanzende nieuwe app niet werken? Je Xbox laat je geen games spelen, je torrent-downloads weigeren ... Lees meer opgezet, maar dat doen we niet.
Merk op dat als u op een Arduino Uno werkt, u de ondersteuningsondersteuning voor SD-kaarten moet uitschakelen om ervoor te zorgen dat het programma in het geheugen past. Open IOSController.h of AndroidController.h en becommentarieer deze regel (plaats // vooraan)
#define SD_SUPPORT
Arduino Mega-gebruikers zullen dit probleem niet hebben, omdat het meer geheugen heeft.
Bedraad een testcircuit volgens het volgende diagram (als deze te klein is, kunt u een grotere versie van pagina 18 van de documentatie bekijken of de onderstaande instructies lezen: die temperatuursensor hoort naar A0 te gaan).
- Sluit een LED aan op pin 8 met een geschikte weerstand aan de negatieve kant (korte poot). Dit kan vanuit de iOS-app worden bestuurd.
- Sluit een andere LED aan op pin 7, opnieuw in serie met een weerstand. Dit gaat aan wanneer de app is verbonden.
- Zet een potentiometer op A2. Het middelste been is de uitgaande pin, verbindt gewoon de benen aan weerszijden met + 5v en aarde - het maakt niet uit welke.
- Zet een lichtsensor op A1. Eén pen van de lichtsensor moet naar + 5v gaan, de andere moet via een weerstand van 10k Ohm op zowel A1 als aarde worden aangesloten.
- Zet een TMP36-temperatuursensor op A0. Het middelste been is de uitvoerpin; met de vlakke zijde naar u toe is de meest linkse pin + 5v, de meest rechtse pen is geaard.
- Plaats tenslotte een servo op pen 9. De jouwe kan verschillen, maar in het algemeen gesproken is de witte kabel de bedieningslijn, dan zijn rood en zwart respectievelijk + 5v en aarde.
Hier is er een die ik eerder heb gemaakt.
Unzip, en email de resulterende Widgets.lst naar jezelf, en je zou in staat moeten zijn om mijn kant-en-klare besturingskaart te openen. U moet ook op de configuratieknop onderaan rechts klikken om eerst het juiste IP-adres in te stellen en vervolgens op dat pictogram tikken om verbinding te maken.
Als u liever uw eigen interface maakt, schakelt u over naar de bewerkmodus op een schoon bord en tikt u dubbel op een leeg vierkant om de lijst met modules te openen.
Nadat u een module hebt toegevoegd, tikt u op de grijze balk om deze te labelen. In het democircuit en de code kunnen de volgende labels worden ingesteld:
- T voor de temperatuursensor.
- L voor de lichtsensor.
- L1 voor een van de LED's. De andere LED gaat automatisch aan om een succesvolle verbinding met uw mobiele apparaat aan te geven. L1 kan zowel als schakelaar als als LED-indicator worden ingesteld.
- Pot voor de potentiometer.
- Knob bestuurt de servo (maar ik vond dat een schuifknop beter was - de eigenlijke knopmodule is een beetje onhandig. Voeg een schuifregelaar toe en noemde deze "knop", het werkt prima)
Als u verschillende dingen wilt besturen, moet u de Arduino-code aanpassen aan uw project.
alternatieven
Ik heb een aantal alternatieven bekeken terwijl ik dit onderwerp onderzocht en de meest haalbare concurrerende applicatie heet ArduinoCommander, maar helaas zijn alle leuke functies achter een betaalmuur vergrendeld zodat het $ 50 of meer kost om alles te ontgrendelen; de site die de app ondersteunt, is ook offline. Het werkte voor basisfuncties toen ik het testte, maar ik ga die app niet ondersteunen die zijn ondersteuningswebsite niet eens online kan houden en kiest voor alles wat met microbetalingen te maken heeft. Arduino Manager is gewoon beter, en heeft slechts één in-app-aankoop voor een geavanceerde functie.
Dus nu zijn we helemaal klaar om een Arduino Home Automation-project te starten! Denk je dat je Arduino Manager kunt gebruiken?