Arduino-Client senden von Daten an Java-Server über Sockets
Ich bin dabei ein neues Projekt anzufangen, wo ich brauche zum senden von Daten von einem Arduino zu einem Java-Server. Ich würde gerne mit dem Arduino Wifi shield. Danach wird die java-server sendet die empfangenen Daten an einen web-service über ein 3G-Router.
Ist mit diesem setup möglich? Gibt es eine API zum einrichten einer socket-Verbindung zwischen einem Arduino und einem Java-Server?
Wenn nicht, welche Möglichkeiten habe ich? Danke im erweiterten
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es sicherlich eine Reihe von Möglichkeiten, wie Sie dies tun können. Sie können die Arduino-Ethernet-Bibliothek, um verbindungen zu Ihren Java-server. Hier ist ein nettes kleines Programm namens ClientConnect was nutzt das ethernet-Gerät, um eine Verbindung zu einem server. Dieses kleine Programm sendet eine web-Anfrage an den server mit den folgenden Zeilen:
Auf der server-Seite, es wäre am einfachsten zu verwenden, irgendeine Art von einfaches servlet und verwenden von Java web Frameworks wie Tomcat.
Ihrem Arduino-Transaktionen würden dann genauso Aussehen wie einfache web-Transaktionen:
Dieses schickt eine Reihe von Feld/Wert-Paare, die Ihre Java-webserver, die rufen Sie Ihre servlet. Im Beispiel oben
"q"
ist der Feldname und die"arduino"
ist der Wert.Hoffe, das hilft.
Ähnlich wie die Antwort von @gray was ist ein "push" - Lösung um die java-server-Abfrage, die in der Arduino auf einem Intervall ("pull" - Modell). Um dies zu tun, sehen nur die Web-hosting-Beispiel in der Arduino-ethernet-samnple Bibliothek. Sie können es ändern, um die arduino-Wert von den sensoren als Teil der http-Antwort.