Webinterface met lokaal AccessPoint op ESP32 voor besturing machine

14-12-2022

In mijn werkzaamheden als onderwijs- en onderzoeksondersteuner en werkplaatsbeheerder AAAd Engineering aan de Avans Hogeschool krijg ik regelmatig vragen hoe ik mijn eigen praktijk bij BotBerg bepaalde prototyping problemen oplos. Deze keer kreeg ik de vraag of het mogelijk is een Arduino aan het web te verbinden en daarmee een web gebaseerd Human Machine Interface (HMI) te realiseren. Een Arduino Uno of Mega zijn prima te gebruiken voor het aansturen van motoren, actuatoren, LED indicators en eindstops. Maar de Arduino Uno en Mega zijn niet de meest voor de hand liggende oplossing voor een web enabled device.

In eerdere projecten heb ik het Espressif ESP32 platform succesvol ingezet als web enabled – embedded computing device. Als voordeel hierbij dat je volledige controle hebt over de GPIO poorten, waarbij de actuele waarden van de poorten in een HTML pagina weergegeven en bediend kunnen worden. Bovendien is de ESP32 voorzien van aanzienlijke rekenkracht, interne memory en daarmee prima in staat om als WiFi Access Point op te treden. Gebruikers kunnen eenvoudig met een mobieltje toegang krijgen tot een interactieve HTML web interface.

Een ESP32 is niet direct te positioneren als vervanger voor een PLC omgeving. Maar schaarste van onderdelen en kostenbewustzijn vraagt vraagt om creatieve oplossingen. Met wat slimme engineering en gebruik makend van opto-couplers en solid state relais zijn er voldoende mogelijkheden om de 24 GPIO inputs en outputs van deze ESP32 WROOM DEV Kit in te zetten als interactief, web enabled HMI device. Het programmeren kan vanuit de Arduino IDE, gebruikmakend van de uitvoerige libraries. Een effectieve oplossing waarmee tegen lage kosten een werkend prototype van een web enabled HMI device gemaakt kan worden.