- Door
- Bart Vrancken (BIT)
- geplaatst op
- 12 december 2016 12:00 uur
De afgelopen maanden ben ik in mijn vrije tijd bezig geweest met het opzetten van een LoRaWAN netwerk in en rondom Ede. In dit blog wil ik uitleg geven over de werking van LoRaWAN, over de gateways die ik er voor geplaatst heb en geef ik wat tips als je er zelf mee aan de slag wil.
Het LoRa-protocol is speciaal ontwikkeld voor het Internet of Things (IoT) en maakt het mogelijk om met een gateway data over grote afstanden (ca. 15 kilometer) te versturen. Het record staat op 160 kilometer, maar dan heb je het wel over de meest optimale omstandigheden. In steden is de maximale afstand 4 tot 5 kilometer onder normale omstandigheden. Het stroomverbruik bij het zenden en ontvangen is ook nog eens erg laag. Met een kleine knoopcelbatterij kun je jarenlang gebruikmaken van een apparaat, zonder dat je er naar om hoeft te kijken. Door het grote dekkingsgebied van een enkele gateway en met relatief goedkope sensornodes kun je een heel groot gebied monitoren. Gateways die gebruik maken van ‘The Things Network (TTN)’ creëren een open en voor iedereen gratis toegankelijk internationaal netwerk.
Wienke Giezeman, initiatiefnemer van The Things Network geeft in onderstaande video een introductie (Engels).
Gateways in Ede
Niets is natuurlijk leuker dan uit te zoeken hoe alles werkt. Mijn eerste gateway heb ik dan ook zelf in elkaar geknutseld. Dat gaf wel wat uitdagingen. Na weken troubleshooting en met de hulp van andere LoRa-enthousiastelingen is het uiteindelijk gelukt om de eerste gateway volledig operationeel te krijgen.
Vervolgens ben ik op zoek gegaan naar locaties waar ik op grote hoogte een gateway zou mogen plaatsen. Dat is niet altijd makkelijk. Gelukkig heeft BIT op het dak van één van zijn datacenters de mogelijkheid tot het plaatsen van antennes op een mast. Voor nieuwe technologie is het management van BIT altijd wel te porren, dus al snel was deze eerste gateway geplaatst. Om het dekkingsgebied flink uit te breiden komen er nog zeker vier gateways bij vanuit dit project.
TTN is een tijd geleden een Kickstarter project begonnen waarmee goedkoop, eenvoudig aan te sluiten gateways aangeschaft kunnen worden. De vier extra gateways die ik ga plaatsen, komen uit dit Kickstarter project en zullen komende maand geleverd worden. De kans is groot dat er nog enkele andere deelnemers van het TTN Kickstarter project in Ede wonen en daarmee nog eens extra dekking geven. Dit zal extra redundantie geven aan het dekkingsgebied. Met wat geluk zal ook een deel van Lunteren, Wageningen, Veenendaal en de Ginkelse Heide ook tot het initiële dekkingsgebied behoren.
Om het dekkingsgebied van een gateway goed in kaart te brengen kan er gebruik gemaakt worden van de tool TTNMapper. Met een LoRa node en een GPS applicatie op je telefoon kan je een heel goed beeld krijgen van het dekkingsgebied. Met een aantal collega’s heb ik het dekkingsgebied voor de enkele gateway bij BIT onder weinig ideale omstandigheden in kaart gebracht. Dat levert het volgende beeld op.
Steden als Amsterdam, Den Haag en Utrecht zijn al grotendeels gedekt, maar het netwerk gaat pas echt vorm krijgen zodra de eerste ruim duizend gateways van de TTN Kickstarter worden geplaatst. Overigens heeft ook KPN een landelijk dekkend netwerk op de planning staan, maar het gebruik daarvan is in tegenstelling tot The Things Network niet gratis.
Werking LoRaWAN
Op basis van de afstand tot de gateway wordt automatisch de benodigde zendtijd voor het te verzenden bericht berekend en geoptimaliseerd. Dit is belangrijk, omdat het LoRaWAN-netwerk per node een maximale zendtijd toestaat. Op deze manier kan iedereen eerlijk gebruikmaken van het netwerk. Voor nodes dichter bij een gateway worden er kanalen gebundeld en wordt het bericht sneller verstuurd. Omdat je minder tijd gebruikt bij het wegzenden van het pakketje, kun je dus per dag meer pakketten vanuit deze nodes versturen.
De maximale grootte van een bericht verstuurd over LoRaWAN is 64 bytes. Dat is een payload van maximaal 51 bytes en 13 bytes aan metadata. Dat is weinig, maar LoRaWAN is dan ook geen vervanging van WiFi of Bluetooth. Als je je bericht goed verpakt kun je toch nog best veel informatie kwijt. Zie het bericht hieronder met de payload “wsqDV/8nCidFHLMzFwW+AQQAMgQO”. Dat is 28 bytes, plus 13 bytes metadata en dat is in totaal 41 bytes. De veldnamen staan niet in het bericht, maar zijn ter illustratie erbij gezet.
LoRaWAN bericht
Veldnaam | Waarde |
Timestamp | 1468262185 |
BatteryVoltage | 255 |
BoardTemperature | 12 |
Latitude | 474295094 |
Longitude | 85417334 |
Altitude | 453 |
Speed | 16 |
Course | 192 |
SatelliteCount | 4 |
TimeToFix | 25 |
Uitbreidingen van het LoRaWAN-protocol zijn al aangekondigd. Eén van die uitbreidingen betreft locatiebepaling op basis van drie of meer gateways in plaats van GPS. Dat scheelt weer een GPS chip en vermogen in een node. Dat komt de batterijtijd van een node ten goede.
Beveiliging
IoT-apparaten zijn de laatste tijd vaak negatief in het nieuws, maar IoT-appararaten of -netwerken zijn niet per definitie onveilig. LoRaWAN packets worden zowel op netwerk- als op applicatieniveau versleuteld zodat alleen de eigenaar van de applicatie de data daadwerkelijk kan uitlezen. De apparaten hangen ook niet rechtstreeks aan het internet. ‘Backends’ vormen een brug tussen het publieke internet en het LoRaWAN-netwerk. Ook hier geldt natuurlijk dat men de best-practices zal moeten volgen voor een stabiel en veilig netwerk. Verder is het zelfs mogelijk om alle onderdelen van het netwerk, routers, brokers, handlers en applications in eigen beheer te houden, in plaats van gebruik te maken van het publieke netwerk.
Devices
Er zijn nog volop ontwikkelingen op het LoRaWAN gebied en er lopen dan ook diverse projecten en Kickstarter initiatieven. Een aantal daarvan wil ik specifiek benoemen.
Deze relatief goedkope node heeft niet alleen een LoRa radio, maar ook BlueTooth en WiFi aan boord. Hij is geprogrammeerd met MicroPython en is Arduino compatible. Het programmeren ervan is erg simpel en met een Andriod app kan dit zelfs zonder programmeerkennis. De LoPy kan bovendien als NanoGateway ingezet worden. Ideaal om je IoT-applicatie lokaal te testen of als er nog geen netwerkdekking is. Een groter broertje komt in april 2017 beschikbaar onder de naam FiPy en heeft voor een kleine meerprijs ook nog LTE en SigFox radio’s.
Dit op Arduino gebaseerde bord is uitgebreider dan de LoPy en heeft meer mogelijkheden om externe sensors aan te sluiten. Standaard is het bord voorzien van een zonnelader, accu-aansluiting, magneto- en acceleratiesensor alsmede een actieve GPS. Er zijn open-source libraries beschikbaar die de sensors slim combineren om daarmee de maximale levensduur op een enkele batterij te halen. Denk bijvoorbeeld aan het pas inschakelen van actieve GPS tracking op het moment dat er beweging of verandering in het magnetisch veld is geconstateerd. Voor een goede werking is het wel nodig om de twee overbodige weerstanden van 0 Ohm te verwijderen.
The Things Network Node (EUR 70,00 excl. BTW)
The Things Network UNO (EUR 50,00 excl. BTW)
The Things Network Gateway (EUR 250,00 excl. BTW)
Uiteraard kunnen de devices van TTN zelf niet ontbreken. TTN biedt een drietal producten aan. Met name de gateway is erg interessant, omdat dit één van de goedkoopste kant-en-klare gateways is. Bovendien biedt de gateway veel functionaliteiten. Het zelf installeren van een gateway wordt daarmee toegankelijk gemaakt voor een groot publiek.
Voor al deze producten geldt dat er voldoende documentatie beschikbaar is om van start te gaan. Al vrij simpel kun je in enkele minuten je eerste data versturen. Daarna kun je bijvoorbeeld deze data in een applicatie laten uitkomen of terug laten praten via een eenvoudige API. Inspiratie voor een eigen LoRa-implementatie kan je hier opdoen.
Geschreven door Bart Vrancken (BIT)
Dit ingezonden artikel is geschreven door Bart Vrancken van BIT.
Lees ook de onderstaande artikelen van BIT
Stuur ook uw blog, achtergrond artikel of andere bijdrage in!
Indien u zelf een interessante bijdrage, zoals een blog, how-to of achtergrond heeft, dan plaatsen wij die graag en dat kost u niks. Neem contact op met de ISPam.nl redactie via [email protected] of kijk op deze pagina voor meer informatie over het leveren van een bijdrage aan ISPam.nl.