Schritt 4: Programmierung
Suchen Sie die angefügten Ino-Datei für die Programmierung der Arduino. / / aktualisierte Firmware hochgeladen wurde mit besseren Empfang und Lösung von Timing-Probleme mit Thingspeak api Server. / / besonderen Dank an Bookwormzero aka Neil für die Suche nach dem Timing Problem. guten Job getan.
Ich bin mit Arduino zu lesen die api und handeln nach den empfangenen Daten. Wir können jedem Internet-fähigen Gerät verwenden, um die Arduino Pins steuern. Hier führte ich bin Brett drehen ein- und Ausschalten durch das H für High und L für Low im Web schreiben api. Dies kann von überall in der Welt mit dem Internet erfolgen.
Der Abschnitt wurde aktualisiert:-
Folgende Befehle werden zur Thingspeak Kanal betreiben.
- Update-Kanal-Feed - GET
Https://api.thingspeak.com/update?api_key=your_api_key&field1=value erhalten
- Update-Kanal-Feed - POST
POST https://api.thingspeak.com/update.json
Api_key = Ihren API-Schlüssel
field1 = Wert, die Sie buchen möchten
- Erhalten Sie einen Kanal-Feed
Https://api.thingspeak.com/channels/your_channel_no/feeds.json?results=1 erhalten
- Erhalten eine Kanal-Feld-Feed
Https://api.thingspeak.com/channels/your_channel_no/fields/1.json?results=1 erhalten
- Status-Updates zu bekommen
Https://api.thingspeak.com/channels/your_channel_no/status.json erhalten
Update-Kanal-Feed-GET-Anforderung kann verwendet werden, zum Schreiben von Daten auf field1, durch Eingabe der URL in einem Browser mit Internetanbindung. Diese fungieren als unsere Fernbedienung d.h. jedem Internet-fähigen Gerät.
Wir müssen nun um die Dinge zu kontrollieren field1 Daten mithilfe unserer Arduino lesen und verwenden Sie es als einen Befehl für vordefinierte Aufgaben. Z.B. ich "H" für die Herstellung Board hoch geführt und "L" dafür niedrige verwendet.
Um den Wert von field1 lesen senden wir "eine Kanal-Bereich Feed-GET-Anforderung mit Arduino und ESP8266 bekommen."
Ich nehme hier an, dass Sie vor mit esp8266 gearbeitet. Wenn wir GET-Anforderung senden, web-api senden einige Daten im Gegenzug im Format string das Uart esp8266 gelesen werden kann. Suchen Sie einfach nach + IPD bei Serien wie es wird übertragen, wenn es etwas gibt, zu lesen.
In zurückgegebene Zeichenfolge erhalten Sie die Daten im Feld 1. Schauen Sie sich die folgende Zeichenfolge:-
{"channel":{"id":85291,"name":"IoT testing","description":"Home Automation cum controller","field1":"test led","field2":"fan","field3":"tv","field4":"light","created_at":"2016-02-07T13:01:17Z","updated_at":"2016-02-23T14:34:38Z","last_entry_id":695},"feeds":[{"created_at":"2016-02-23T14:34:38Z","entry_id":695,"field1":"L"}]}
Fett gehört auch die wichtigsten Daten, die wir nutzen müssen. Um es zu bekommen habe rechts ich einen Trick hier. Da wir nicht die gesamte Zeichenfolge brauchen suchte ich nach "Feeds" Wort als Ausgangspunkt ist es einzigartig in Reihe nur einmal kommt. und die restlichen Zeichenfolge in ein Zeichenarray gespeichert. L ist der 66. Charakter nach Feeds. also sollte Array Speichern dieses Werts Array [65].
Verwenden Sie diesen Wert, jede Funktion auslösen, was, die Sie wollen.
Hinweis: - ändern Sie das Array [65] in Array [i-13] für einen besseren Empfang und Lösung von Problemen im Zusammenhang mit den Wert des Feldes zu identifizieren.
Änderung esp8266 Baudrate auf 57600 oder niedriger vor der Verwendung als Hardware-Baud-Rate ist 115200. serielle Software sollte kleiner als Hardware sein.