IoT-0/Praktische opdrachten
Praktische opdrachten
De meeste hoofdstukken/lessen van deze module bevatten praktische opdrachten. Het doel van deze opdrachten is om de concepten te gebruiken in een praktische context - en om voor te bereiden op het IoT-project. Deze opdrachten zijn op verschillende manieren uit te voeren - afhankelijk van de lokale mogelijkheden en ambities.
Het Internet of Things heeft veel verschillende vormen. Afhankelijk van de toepassing en de context maak je andere keuze voor bijvoorbeeld de radio-communicatie. In deze module geven we hiervan 3 voorbeelden:
- WiFi - voor gebruik in een lokaal WiFi-netwerk; voor knopen die niet heel energiezuinig hoeven te zijn;
- LoRa - voor energiezuinige IoT-knopen in een groot gebied (radiobereik enkele km's);
- RFM69 - voor energiezuinige IoT-knopen in kleiner gebied (radiobereik 50-200m).
Je kunt deze voorbeelden uitwerken de Arduino-IDE, met Arduino's en verwante hardware. We geven hier enkele voorbeelden; er zijn meer alternatieven beschikbaar. Bovendien neemt het aantal alternatieven nog steeds toe.
... | WiFi | LoRa | RFM69 |
---|---|---|---|
Arduino | Uno WiFi, MKR 1010 WiFi | Arduino mini met RFM95 (LoRa); MKR WAN 1300 | Arduino met RFM69-module |
Adafruit Feather | HUZZAH ESP8266/ESP32, MO with WiFi | M0 with RFM95 (LoRa) | M0 with RFM69 |
WeMos LoLin | D1 mini (pro), D32 | idem, met RFM95-module (LoRa) | idem, met RFM69-module |
Al deze 3 families hebben ook de nodige opsteekbordjes (shields, wings, enz.) met sensoren, displays, radio's, enz. Je kunt dan kant-en-klare oplossingen eenvoudig in elkaar steken, of je eigen uitbreidingen maken via een breadboard.
Naast deze hardware voor de IoT-knopen heb je nog andere onderdelen nodig:
- Raspberry Pi - voor lokale MQTT-broker, NodeRed
- MQTT-broker in het publieke internet
- NodeRed in het publieke internet
Deze onderdelen kun je met de handleidingen (IoT voor makers) zelf installeren en configureren. Voor-geinstalleerde/geconfigureerde oplossingen zijn ook mogelijk.
WiFi
Latere uitbreidingen: microPython
De eerste uitwerking van het materiaal is gebaseerd op de Arduino IDE; deze kun je combineren met de hierboven genoemde hardware. Een geplande uitbreiding is om microPython (en/of circuitPython) te gebruiken als programmeertaal. Deze kun je met enkele van de bovenstaande hardware-onderdelen combineren. microPython kan voor leerlingen een lagere drempel vormen dan de Arduino IDE; maar deze omgeving is nog wat minder stabiel dan de Arduino IDE.