IoT-1/Hardware: verschil tussen versies
Geen bewerkingssamenvatting |
Geen bewerkingssamenvatting |
||
Regel 11: | Regel 11: | ||
** energievoorziening (meestal een batterij, of een permanente stroomvoorziening) | ** energievoorziening (meestal een batterij, of een permanente stroomvoorziening) | ||
* gateways/bridges naar het internet | * gateways/bridges naar het internet | ||
=== Radio === | |||
Afhankelijk van de "dingen" die in het internet verbonden moeten worden, en de eisen van de toepassing, | Afhankelijk van de "dingen" die in het internet verbonden moeten worden, en de eisen van de toepassing, | ||
zijn er verschillende keuzes voor de radio: | zijn er verschillende keuzes voor de radio: | ||
{| class="wikitable" | |||
! power !! bereik !! bitrate || radio IoT-knoop !! tussenstap !! protocol (**) | |||
|- | |||
| medium power || lokaal bereik (10-50m) || MBytes/s || WiFi || (rechtstreeks) || HTTP | |||
|- | |||
| medium power || lokaal bereik (10-50m) || Mbytes/s || WiFi || (evt. lokale broker/bridge) || MQTT | |||
|- | |||
| low power || lokaal bereik (50-200m) || 50kbits/s (*) || RFM69 || lokale gateway || MQTT | |||
|- | |||
| low power || niet-lokaal (enkele km) || 1 kbit/s (*) || LoRa || publieke gateway || MQTT | |||
|} | |||
(*) voor LoRa is de bitrate nog lager bij een groot bereik. Bovendien mogen RFM69 en Lora-radio's max. 1% van de tijd zenden. | |||
(**) protocol: IoT-knoop <-> NodeRed/web-app | |||
Bovenstaande betekent dat er niet een enkele oplossing is die in alle gevallen voldoet. | |||
=== Microcontroller === | |||
Er komen de laatste jaren veel krachtige en betaalbare microcontroller-bordjes op de markt. | |||
Een aanzienlijk deel hiervan is te programmeren met de Arduino IDE. | |||
Daarnaast wint microPython aan populariteit (o.a. voor de ESP8266/ESP32-serie). | |||
In eerste instantie gebruiken we voor de IoT-toepassingen de Arduino IDE: dit is de meest stabiele omgeving. We gebruiken deze voor het programmeren van de volgende microcontrollers: | |||
* Arduino mini (pro) - voor low-power (en low-cost) toepassingen | |||
* Arduino UNO - voor kortdurende experimenten | |||
* ESP8266 - in het bijzonder voor toepassingen met een grote batterij/permanente stroomvoorziening | |||
* ESP32 - idem | |||
De ESP32 is ook geschikt voor low-power toepassingen, maar de software is daar nu nog niet op ingericht. | |||
=== Sensoren === | |||
Er is een | |||
=== Combinaties === | |||
{| class="wikitable" border="1" | |||
|- | |||
! microcontroller | |||
! radio | |||
! link | |||
|- | |||
| Arduino mini Pro | |||
| LoRa (RFM95) | |||
| https://www.thethingsnetwork.org/labs/story/creating-a-ttn-node | |||
|- | |||
| Arduino mini Pro | |||
| RFM69HCW | |||
| (zelfde bordje, andere radio) | |||
|} |
Versie van 12 jul 2018 14:51
Netwerken |
---|
Zie ook Netwerken-project |
IoT-hardware
Het Internet of Things bestaat aan de randen (bij de "dingen" en één stap verder) uit:
- IoT-knopen; een dergelijke knoop omvat gewoonlijk:
- sensoren
- (soms) actuatoren
- microcontroller
- radio
- energievoorziening (meestal een batterij, of een permanente stroomvoorziening)
- gateways/bridges naar het internet
Radio
Afhankelijk van de "dingen" die in het internet verbonden moeten worden, en de eisen van de toepassing, zijn er verschillende keuzes voor de radio:
power | bereik | bitrate | radio IoT-knoop | tussenstap | protocol (**) |
---|---|---|---|---|---|
medium power | lokaal bereik (10-50m) | MBytes/s | WiFi | (rechtstreeks) | HTTP |
medium power | lokaal bereik (10-50m) | Mbytes/s | WiFi | (evt. lokale broker/bridge) | MQTT |
low power | lokaal bereik (50-200m) | 50kbits/s (*) | RFM69 | lokale gateway | MQTT |
low power | niet-lokaal (enkele km) | 1 kbit/s (*) | LoRa | publieke gateway | MQTT |
(*) voor LoRa is de bitrate nog lager bij een groot bereik. Bovendien mogen RFM69 en Lora-radio's max. 1% van de tijd zenden.
(**) protocol: IoT-knoop <-> NodeRed/web-app
Bovenstaande betekent dat er niet een enkele oplossing is die in alle gevallen voldoet.
Microcontroller
Er komen de laatste jaren veel krachtige en betaalbare microcontroller-bordjes op de markt. Een aanzienlijk deel hiervan is te programmeren met de Arduino IDE. Daarnaast wint microPython aan populariteit (o.a. voor de ESP8266/ESP32-serie).
In eerste instantie gebruiken we voor de IoT-toepassingen de Arduino IDE: dit is de meest stabiele omgeving. We gebruiken deze voor het programmeren van de volgende microcontrollers:
- Arduino mini (pro) - voor low-power (en low-cost) toepassingen
- Arduino UNO - voor kortdurende experimenten
- ESP8266 - in het bijzonder voor toepassingen met een grote batterij/permanente stroomvoorziening
- ESP32 - idem
De ESP32 is ook geschikt voor low-power toepassingen, maar de software is daar nu nog niet op ingericht.
Sensoren
Er is een
Combinaties
microcontroller | radio | link |
---|---|---|
Arduino mini Pro | LoRa (RFM95) | https://www.thethingsnetwork.org/labs/story/creating-a-ttn-node |
Arduino mini Pro | RFM69HCW | (zelfde bordje, andere radio) |