Ich möchte einen Arduino-Mikrocontroller (mit der erforderlichen Abschirmung) verwenden, um LEDs zu steuern. Meine Herausforderung besteht darin, Benutzer dazu zu bringen, mit einer Javascript-gesteuerten Webseite zu interagieren, um ein Signal an den Mikrocontroller zu senden, um eine LED zu blinken.
Die Software könnte die Arduino-Beispiele Blink mit Webserver kombinieren .
Die Hardware zum Ausführen des Webservers auf dem Arduino wäre entweder das Ethernet- oder das WiFi-Schild. Alternativ können Sie den Server auf einem anderen Computer ausführen und die serielle USB-Verbindung von diesem Computer zum Arduino verwenden, um zu steuern, ob die LED eingeschaltet ist.
Der Webserver könnte eine Variable setzen, wenn eine URL gepostet wird, und diese Variable könnte bestimmen, ob das Blinken auftritt oder nicht. Fragen Sie bei Stack Exchange oder Google nach der Javascript-Seite, um Ajax zu verwenden, um einen Wert an eine URL zu senden, wenn der Benutzer etwas tut, oder verwenden Sie zunächst ein einfaches Formular mit Kontrollkästchen.
Javascript-gesteuerte Webseite, um ein Signal an den Mikrocontroller zu senden, um eine LED zu blinken
Angenommen, Sie möchten, dass die Außenseite (Webserver) Ihren Arduino kontaktiert, wenn eine Benutzerinteraktion auftritt - und NICHT nur nach Zustandsänderungen abfragt, wie eine frühere Antwort erklärt.
Sie benötigen Ihr Arduino und ein Ethernet-Schild, das als "Webserver" konfiguriert ist, um eingehende Anfragen zu beantworten und gegebenenfalls Ihre LED zu blinken. Sie müssen auch Ihre lokale NAT/Firewall mit einer DMZ oder Portweiterleitung besiegen (damit der Arduino von der Außenwelt erreicht werden kann).
Auf der Außenseite (Website), auf Ihrer Interaktionsseite (d. h. der Seite, die der Webbenutzer erreicht und die Ihr Arduino zum Blinken bringen sollte) - fügen Sie das einfache IMG-Tag mit Ihrer Arduino-IP- und URL-Zeichenfolge hinzu. Der Browser des Webbenutzers versucht, das IMG abzurufen und Ihren Arduino zu kitzeln, der dann blinkt. Dito mit Javascript, das bei Bedarf Inline document.write eines IMG-Tags hinzufügt.
Es ist weitaus effizienter, die Webseite einfach auf dem Ardiuno zu hosten, da es sowieso eingehenden Datenverkehr akzeptiert.
Ich würde es mit Xively versuchen
https://xively.com/dev/tutorials/arduino_wi-fi/
Sie könnten den Arduino als Server laufen lassen, aber das würde eine statische IP und eine Portweiterleitung erfordern, um den Arduino ins Web zu bringen, damit Ihre Webseite darauf POSTEN könnte. (Übrigens finde ich, dass die Verwendung von GET für kleine Datenmengen einfacher ist als POST.)
Xively basiert auf Abfragen, sodass sich Ihr Arduino hinter einer Firewall befinden kann.
Olin Lathrop
Phil Frost
Anindo Ghosh
Jippie
Leon Heller
Olin Lathrop
Olin Lathrop
Anindo Ghosh
Manisherde
Anindo Ghosh
Olin Lathrop
Manisherde
Manisherde