User manual
1.2 | Automatische configuratie
De algemene bevelen kunt u reeds manueel testen. In dit hoofdstuk moet nu de
vraag worden beantwoord, hoe deze bevelen automatisch via de controller kunnen
worden bediend. Bovendien leert u een bijkomend bevel kennen, waarmee u kunt
testen of een pc in het netwerk of een server in het internet bereikbaar is. In dit
voorbeeld wordt namelijk de Google-server aangepingt. In het voorbeeldprogram-
ma P02_GooglePing worden de werkwijzen die u in het eerste voorbeeld manueel
hebt ingetikt, grotendeels geautomatiseerd. De controller stuurt na elkaar bevelen
naar de ESP-module en maakt zo o.m. de verbinding naar de WLAN. De verschil-
lend lange time-outtijden geven de module voldoende tijd om te antwoorden.
Voor het programma echter goed kan werken, moet u uw WLAN-gegevens na #define
SSID en #define PASSWORD onmiddellijk bij het begin van de programma-
broncodes invoeren. De module heeft namelijk toegang tot het internet nodig om zijn
laatste bevel te kunnen uitvoeren. Met het bevel
AT+PING
kunnen andere apparaten in het netwerk worden aangepingd. Pingen betekent dat
men vraagt of een computer in principe bereikbaar is. Hier wordt de Google-server
met AT+PING="www.google.de" aangepingt. Wanneer er een antwoord terug-
komt, verschijnt er een melding in de Serial Monitor en de met D3 aangeduide
LED die op pin D13 aan de boards is aangesloten, wordt geactiveerd. De eerste
communicatie met het internet is dan geslaagd.
Het programma
Hieronder analyseren wij de functies van de programma's stap voor stap. Bij het
begin wordt de communicatie met de module besproken.
1
Seriële communicatie
He geheel werkt via de seriële software-interface die met de SoftwareSerial-
Library beschikbaar wordt gesteld. Bij het initialiseren moeten bovendien de ge-
bruikte pins worden aangegeven, in dit geval pins 11 en 12.
001
#include <SoftwareSerial.h>
002
SoftwareSerial esp8266(11, 12);
Net zoals bij de normale seriële interface kunnen dan bytes of hele regels met de
bevelen esp8266.print of esp8266.println worden overgedragen. Bijzonder prak-
tisch zijn ook de bevelen esp8266.find en esp8266.findUntil waarmee een inko-
mende stream op bepaalde datareeksen kunnen worden getest. Daardoor is het
heel eenvoudig om het passende antwoord van de module te onderscheppen.
Wanneer een verachte datareeks niet opduikt, kan het een hele poos duren tot het