Stuur opdrachten naar Arduino vanuit het web

Ik moet Arduino wat instructies van het web sturen. Eigenlijk zou ik een webapp hebben met een paar knoppen, en als ik erop druk, sturen ze een instructie naar Arduino om bijvoorbeeld een motor te verplaatsen of een lamp te laten draaien. Dit moet op afstand functioneren, dus niet lokaal.

Ik gebruik een Arduino Yùn.

Hoe moet ik dit doen? WebSocket? Hoe? Bedankt!

0
Je zou commando's via een socket moeten sturen, ja. U kunt uw eigen poort maken of u kunt alleen HTTP-verzoeken doen (bijvoorbeeld GET-verzoeken). Zoek gewoon naar een zelfstudie die laat zien hoe u het doet met een webpagina, gooi vervolgens alle webpagina's weg en voer alleen de get-pagina's in. Bel vanuit deze externe web-app deze pagina's. Of maak gewoon uw eigen protocol
toegevoegd de auteur Tom Collins, de bron

3 antwoord

Het wordt een stuk eenvoudiger als je de yun ziet als een linux-computer met een arduino verbonden via seriële.
Dan wordt de vraag: wat is de beste manier om commando's over het internet naar een (linux) computer te sturen.
Antwoord: er zijn zoveel manieren omdat er geen beste manier is.
Wat zijn de belangrijkste belangrijkste drivers: Uw Linux-computer moet bereikbaar zijn vanaf internet. Dat betekent dat je je lokale netwerk (firewall) moet openen. De firewall is er niet voor niets. Heb je de vaardigheden om je firewall te openen en toch veilig te zijn? Als dat zo is, kun je een dienst (veel opties) uitvoeren en je yun overal op internet bereiken. Net zoals je lokaal doet.

Als dat niet het geval is, moet u naar een polling-systeem gaan. U gebruikt een server die op het internet staat en stuurt u een verzoek naar die server. Je yun peilt die server om de berichten te ontvangen die je verzendt.

Er is een derde optie: als u uw firewall vanaf internet kunt openen en u bent de enige gebruiker van de service en u heeft zelden de service nodig, dan kunt u de firewall tijdelijk openen wanneer u die nodig hebt .

1
toegevoegd

Een andere optie, als u zich kunt beperken tot het bedienen van uw apparaat vanuit een mobiele app, is blynk.cc . Ze bieden mobiele apps voor Android en iOS, waarmee je een configuratiescherm kunt bouwen via slepen-en-neerzetten en ingebouwde platformbibliotheken voor Arduino, stand-alone ESP8266, RPi en anderen, die beide kanten op kunnen spreken tussen de app en je ingesloten apparaat, evenals tussen apparaten.

De ingesloten apparaten en de mobiele apps communiceren als clients naar hun servers (of naar uw server, als u ervoor kiest om de open-source servercode te hosten), zodat u geen poorten op uw router of firewall hoeft te openen.

Je zult niet de volledige vrijheid (of vereiste!) Hebben om aangepaste webpagina's te ontwerpen; maar OTOH, je kunt binnen enkele minuten met hun voorbeeldcode aan de slag gaan.

Ik heb een paar monitortemperatuurmonitors op mijn bureau die de temperatuur (plus geschiedenis) overal kunnen melden waar ik een webverbinding kan krijgen. Ik heb twee knoppen op mijn paneel geplaatst om twee LED's op het bord aan te zetten of te laten knipperen. Met mijn voeten omhoog in de haard bedien ik de LED's. Er zijn schuifregelaars die ook met de PWM-poorten kunnen praten. Alle mogelijkheden die je nodig hebt, zijn er, ten minste om te beginnen.

0
toegevoegd

De eenvoudigste manier om dit te doen is om een ​​webpagina te hosten met de knoppen op de Yùn zelf, zoals bijvoorbeeld dit hier . Er zijn heel veel voorbeelden voor dingen zoals deze die er zijn.

Om het "op afstand" te benaderen - ik veronderstel dat je ergens vanaf internet bedoelt - zou je een poort van je thuisrouter naar de Yùn moeten doorsturen, zoals dit . Dit maakt de Yùn toegankelijk vanaf internet. U hoeft alleen uw externe adres te kennen (Google: "Find my IP") en vervolgens heeft u toegang tot uw Arduino van over de hele wereld.

0
toegevoegd