Montag, 5. Oktober 2015

Websiten über ESP8266 abrufen

In diesem Post geht es darum, wie man einen Arduino Sketch für den ESP 8266 schreiben kann, mithilfe dessen man eine Internetseite abrufen kann.


Der Arduino Sketch für den ESP 8266

Um eine Website abzurufen muss man ein Objekt der Klasse client erstellen. Dieses kann Websiten abrufen. Praktischerweise gibt is der WiFi Bibliothek für das offizielle Wlan Shield des Arduino einen Beispielsketch, welchen man nur leicht an den ESP 8266 anpassen muss.

In diesem Sketch musst du nur noch den Namen deines Wlan Netzwerkes und das Passwort angeben, und schon verbindet sich der ESP 8266 automatisch mit dem Internet und ruft diesen Blog auf.

Wie man einen Arduino Sketch auf den ESP 8266 hoch lädt, erfährst du hier.

Um das Ergebnis zu sehen, musst du nach dem Neustart des ESP die serielle Konsole öffnen. Nun siehst du, wie sich der ESP 8266 mit deinem Wlan Netzwerk verbindet. Nach kurzer Zeit, läuft ganz viel Text (wirklich sehr viel) über deinen Bildschirm.

Das ist der HTML Code dieses Blogs. Dieser wird normalerweise durch den Browser übersetzt, wodurch du diesen Blog als ansprechende Seite mit Bildern und Farben siehst. Um die Zielseite zu ändern, musst du einfach an der markierten Stelle einen anderen Server und eine andere Unterseite angeben.

Um aus der Website eine bestimmte Information herauszulesen, kannst du die Funktion indexOf() auf den HTML Code String loslassen. Diese Funktion sucht eine angegebene Zeichenkette im String und gibt dir die erste Stelle als Zahl im Text an. Dadurch kannst du die dortigen Zeichen in eine extra Variable speichern, wodurch du die gesuchte Information "extrahiert" hast.

Fazit

Über den ESP 8266 (hier bei AZDelivery) lassen sich leicht Websiten abrufen, wodurch man sich Informationen aus dem Internet besorgen kann. Beispiele für Anwendungsfälle gäbe es viele: Wetterinformationen, Sportergebnisse, aktuelle Daten(Statistiken) ...

Kommentare:

  1. Mittels REST-Schnittstelle sollte es somit auch problemlos möglich sein, Sensorwerte an andere Systeme zu übermitteln.

    AntwortenLöschen
    Antworten
    1. Zum Thema Sensorwerte weiterleiten könnte für dich auch dieser Post interessant sein: http://michaelsarduino.blogspot.de/2015/10/daten-uber-esp-8266-in-cloud-laden.html

      Löschen