Projecten vol spanning
eindproduct
arduino
software

Check-in systeem via RFID

Voor een bijlesinstituut kreeg ik de opdracht een check-in systeem te maken.

Het ‘probleem’ was dat uren wel geregistreerd werden, maar vaak achteraf en niet nauwkeurig. Hiervoor moest een oplossing komen dat personeel zelf makkelijk kan bijdragen aan een accurate registratie van de uren.

Het idee: medewerkers (en later ook leerlingen) melden zich eenvoudig aan en af met een RFID-druppel of -kaart. Zo wordt bijgehouden wie wanneer binnenkomt en vertrekt, en maandelijks rolt er netjes een urenrapport uit de administratiesoftware.

De module die ik hiervoor bouwde is volledig zelfstandig. Hij draait op wifi, leest de vooraf geprogrammeerde druppels, en roept via een beveiligde https-call de API van de administratie aan. Zo wordt elke in- en uitlog direct geregistreerd.

De functionaliteit is overzichtelijk en bestaat uit drie onderdelen:

  • Druppels scannen → via wifi koppelen met de website-API.

  • Internet instellen → via een Access Point configuratie.

  • Druppels programmeren → met een Websocket connectie en een webinterface op het ip-adres van de module.

De hardware is relatief simpel. Het hart van het geheel is een ESP32 (Wemos D1 Mini), gecombineerd met een RFID-lezer, een klein OLED-schermpje, een mini-speakertje en 14 RGB-ledjes voor de visuele feedback. De behuizing is eigenlijk bedoeld voor zelfbouw handheld meetapparatuur. Door de transparante behuizing zijn de leds en het display zichtbaar van binnenuit. De websocket interface maakte het mogelijk dat er geen gaatjes voor bedienende elementen nodig zijn, en was 1 gat voor de adapterplug voldoende.

De software omvat classes voor: RFID, Accespoint, WebSocket, Leddriver, Display, API-toegang, alles gebaseerd op de basis Arduino.h en zo min mogelijk libraries van derden.

Voorlopig draait alles als prototype op gaatjesprint. In de komende maanden werk ik de schakeling in KiCad uit tot een vaste printplaat waarin alle losse breakout-modules netjes worden samengebracht.

Zoeken in de website

Gevonden: