IoT NoT cursus

Uit cursussen steven KOV
Naar navigatie springen Naar zoeken springen

Welkom

Deze cursus is de handleiding bij de opleiding IoT op 12 maart 2024 van Steven Mertens. Ze dient vooral als een leidraad voor een aantal oefeningen.

Afbakening

IoT of Internet of Things is een enorm studiedomein. Alles wat maar enigszins aan het internet hangt en communiceert met een server kan je al als IoT apparaat bekijken.

CHat GPT heeft er het volgende over te zeggen: IoT heeft de potentie om onze huizen, steden, industrieën en zelfs onze gezondheidszorg te transformeren door objecten en apparaten te verbinden en hen in staat te stellen gegevens te verzamelen, te communiceren en te handelen op een manier die voorheen ondenkbaar was.

Ik kan ChatGPT geen ongelijk geven, maar in deze cursus kunnen we niet op alles ingaan. We gaan eerst kort kijken naar welke componenten IoT nodig heeft en daarna maken we zelf een aantal eenvoudige voorbeelden. We een aantal beperkingen toepassen op deze cursus zodat we de bomen door het bos kunnen blijven zien.

NoT heb ik zelf uitgevonden en staat voor Netwerk of Things. IoT zonder internet maar met een eigen local server en local netwerk. Ik vind het niet leuk dat de schakelaars die de verwarming bedienen, geconnecteerd zijn met het internet of dat de host van de server kan zien wanneer je in huis bent.

Waar gaan we niet op ingaan

  • monitoring van een fleet

Tegenwoordig zijn bijvoorbeeld (bijna) alle nieuwe auto's verbonden met de servers van hun constructeurs. Naast de simpele (rit)data voor de chauffeurs wordt er ook heel veel andere data meegestuurd. Constructeurs kunnen zo sneller reageren met terugroepacties en de auto's van de toekomst verbeteren. IoT kan ook het gedrag van de fleet beïnvloeden: Tesla heeft met de orkaan Florence in 2018, de capaciteit van de batterijen vergroot zodat de Teslas sneller konden evacueren (artikel). We kennen ook enkele negatieve voorbeelden waar bepaalde oudere toestellen 'kapot' worden gemaakt zodat er nieuwe toestellen moeten gekocht worden (artikel). Soms kan het ook gebeuren omdat de constructeur (bijna) faliet gaat (artikel). Normaal gaan contructeurs dit niet bewust doen, maar iedereen kent wel de term 'planned obsolescence'.

  • bijhouden van metadata

Metadata speelt een belangrijke rol bij het begrijpen, beheren en gebruiken van de enorme hoeveelheid gegevens die door IoT-apparaten worden gegenereerd. Het biedt een ​​belangrijk kader het gebruik van IoT-gegevens. Zeker als je op de metadata AI kan loslaten. Maar hier gaan we niet op ingaan.

Waar gaan we wel op ingaan

  • de micro-elektronica bied de mogelijkheid om eenvoudig inputs en outputs aan een netwerk te koppelen. Inputs zijn analoge en digitale sensoren, outputs kunnen lampen, verwarmingen of programma's zijn die iets doen.
  • Hoe verloopt de communicatie:
    • We kunnen de micro-elektronica rechtstreeks tegen elkaar laten praten. (P2P)
    • We kunnen gebruik maken van een eigen server om alles te beheren. (NoT)
    • We kunnen een publieke server gebruiken om alles aan elkaar te binden. (IoT)
  • Praktisch een keertje de toestelletjes installeren en iets mee maken.

Theorie

Hoe gaat de communicatie

Zonder een volledige cursus datacommunicatie te schrijven, moeten we wel even stilstaan bij hoe de communicatie verloopt. Hoe je het draait of keert IoT en NoT moet kunnen communiceren. In eerste instantie overlopen we de kanalen die ik ken. Daarna gaan we even kort in op de verschillende protocollen.

draadloos

We bespreken niet alle protocollen, maar dit zijn denk ik de belangrijkste

  • WIFI: recentelijk zijn er verschillende apparaten op de markt gekomen die verbonden worden met Wifi. Voordeel is dat WIFI een gekend en open protocol is. Je moet meestal ook geen extra infrastructuur voorzien, meestal kan je je de eigen AP's gebruiken. Je moet wel opletten voor de verschillende WIFI snelheden. Niet elk apparaat ondersteund bijvoorbeeld de 5G band.
  • Zigbee: (van wikipedie) Zigbee is een open standaard voor draadloze verbindingen tussen apparaten op korte afstand. Het is bedoeld als aanvulling op Bluetooth en Wi-Fi. Het wordt gebruikt voor het doorsturen van sensorgegevens bijvoorbeeld betreffende de gezondheid van een patiënt, of beweging/aanwezigheid van mensen in een ruimte en voor besturing van apparaten. Een Zigbee-verbinding is zeer robuust maar de bandbreedte en de transmissiesnelheid zijn in vergelijking met Bluetooth-, Wi-Fi- en andere draadloze verbindingen, gering. Zigbee is ontworpen voor toepassingen in de domotica, bijvoorbeeld om in een woning of een gebouw met minimale middelen op afstand de dimmers en de aan/uit-schakelaars van de verlichting te bedienen.
  • Z-wave: (van wikipedie) Z-Wave is een protocol voor draadloze communicatie dat voornamelijk wordt gebruikt voor domotica. Het is een energiezuinig mesh-netwerk dat gebruik maakt van radiogolven om van apparaat naar apparaat te communiceren waardoor draadloze bediening van huishoudelijke apparaten en andere apparaten mogelijk is, zoals lichtregeling, beveiligingssystemen, thermostaten, ramen, sloten en garagedeuropeners. Net als andere protocollen en systemen die zijn gericht op de markt voor huis- en kantoorautomatisering, kan een Z-Wave-systeem worden bediend via internet vanaf een smartphone, tablet of computer, en lokaal via een slimme luidspreker, draadloze sleutelhanger of een wandschakelaar met een Z-Wave gateway of centraal besturingsapparaat dat zowel als hubcontroller en als portaal naar buiten dient.
  • GSM (3G, 4G, 5G): Tegenwoordig kan je redelijk goedkoop een SIM kaart krijgen (zoek op google naar iot SIM card). Een SIM card ondersteund meerdere protocollen, zo kan je eenvoudig sms'en versturen of je kan gebruik maken van de data om een netwerkverdinding te krijgen.

bedraad

  • ethernet: Het goed betrouwbare UTP cat5e en hoger kabeltje, natuurlijk moet deze dan aan een netwerk hangen.
  • twisted pair bus kabel: hier kunnen verschillende protocolen doorgaan: KNX, RS486, I²C, ISA, Profibus, ...
  • PLC: Power line communicatie (en niet programmable logical controller). We kennen het van en gemakkelijke manier om internet over je huis te verspreiden. Maar het kan ook bestaan zonder dat er een IP protocol doorgaat.

protocollen

  • MQTT: (van wikipedie) (Message Queuing Telemetry Transport) is een lichtgewicht netwerkprotocol dat berichten tussen apparaten transporteert. Het is gebaseerd op het "publiceer-abonneer" concept. Het protocol werkt meestal via TCP/IP, maar elk netwerkprotocol dat geordende, verliesvrije, bidirectionele verbindingen biedt, kan MQTT ondersteunen. het belangrijkste van MQTT is dat het een soort van postkantoor is. ALs de server een opdracht heeft gegeven en de ontvanger kon niet luisteren, houdt het postkantoor het bericht vast tot de ontvanger het wel leest. Ver in de cursus proberen we erop in te gaan
  • HTTP: Een heel gemakkelijk protocol om een status pagina weer te geven
  • Websocket/API: Een heel gemakkelijke manier om boodschappen uit te wisselen tussen client en server
  • SMS: Heel gemakkelijk om boodschappen te versturen over een GSM netwerk. Heeft ook een groter bereik in vergelijking met dataverkeer.
  • OCPP: (van wikipedie) The Open Charge Point Protocol (OCPP) is an application protocol for communication between Electric vehicle (EV) charging stations and a central management system, also known as a charging station network, similar to cell phones and cell phone networks. The original version was written by Joury de Reuver and Franc Buve.

Servers

  • Home Assistant: (van wikipedie) een open source platform voor centrale aansturing van slimme apparaten en domotica, met focus op vrijheid en privacy. De software kan zowel als losse software, binnen een container of met een bijbehorend besturingssysteem gebruikt worden.
  • IFTTT: (van wikipedie) IFTTT is een website (en app) die verschillende webapplicaties en websites koppelt met elkaar met het doel bepaalde acties te automatiseren. IFTTT werd gelanceerd in 2010 door Linden Tibbets. De letters IFTTT staan voor If this, then that, wat Engels is voor Als dit, dan dat.
  • openHAB: OpenHab is het meest vergelijkbare alternatief voor Home Assistant. OpenHab is ook een gratis en open-source domotica-oplossing. De releases van OpenHab zijn minder frequent en richten zich op stabiliteit. Het nadeel is dat ze niet altijd de nieuwste producten of moderne UI hebben (bron).
  • Google Home: Dit is Google's oplossing voor domotica waarbij de cast-apparaten zoals Chromecast en Google Home-speakers de centrale component zijn. Je kunt veel van de belangrijkste smart home-producten aansluiten en ze bedienen met je stem of hun app. Google Home heeft ook een aantal mogelijkheden om automatiseringen of routines in te stellen. Hun ecosysteem groeit langzaam en werkt over het algemeen erg goed. Het enige nadeel is de privacy en de afhankelijkheid van hun cloudservice. Google Home is nauw geïntegreerd met hun stemassistent Google Assistant, wat redelijk goed is. Hierdoor kun je bijna alles bedienen met alleen je stem. (bron).
  • Homekit: HomeKit is het domotica-initiatief van Apple. HomeKit is een standaard voor communicatie tussen apparaten die worden ondersteund door de grotere producenten van "slimme producten". Om de domotica-installatie met HomeKit te laten werken, moet je een Apple TV of iPad in huis hebben die als hub kan fungeren. Een van de kenmerken van HomeKit is dat het lokaal werkt. Hierdoor kunnen apparaten met HomeKit rechtstreeks communiceren met een HomeKit-hub op het lokale netwerk.

Om een HomeKit-hub te krijgen, kun je thuis ook de HomeBridge-software op een computer installeren. HomeBridge is ook beschikbaar als add-on voor Home Assistant waarmee Home Assistant kan functioneren als een lokale HomeKit-hub die apparaten rechtstreeks bedient. (bron)

  • Homebridge: (van chatGPT) Homebridge is een open-source project dat het mogelijk maakt om slimme apparaten die niet standaard compatibel zijn met het HomeKit-ecosysteem van Apple, toch te integreren en te bedienen via de HomeKit-app op iOS-apparaten zoals iPhones, iPads, en via Siri-spraakopdrachten. HomeKit is het smart home-framework van Apple, maar niet alle slimme apparaten ondersteunen het protocol van HomeKit rechtstreeks. Homebridge fungeert als een brug tussen deze niet-compatibele apparaten en het HomeKit-ecosysteem. Het draait op een computer of Raspberry Pi binnen je thuisnetwerk en biedt een interface waarmee externe plugins kunnen worden toegevoegd om communicatie met verschillende slimme apparaten mogelijk te maken.
  • Homey: (van chatGPT) Homey is een smart home-hub die wordt ontwikkeld door het Nederlandse bedrijf Athom. Het is een apparaat dat fungeert als een centrale hub voor het beheren en automatiseren van verschillende slimme apparaten en systemen binnen je huis. Homey integreert draadloze technologieën zoals Z-Wave, Zigbee, Bluetooth, Wi-Fi en Infrarood, waardoor het compatibel is met een breed scala aan slimme apparaten, waaronder verlichting, thermostaten, beveiligingscamera's, deursloten, sensoren en meer.

Node Red

Wat is het

Oefeningen

  • Verbind de shelly's met je netwerk
  • zorg ervoor dat de ene shelly de andere doet aan en uitgaan
  • laat een lamp aangaan als de temperatuur hoger dan 22 graden wordt
  • installeer je Home Assistant server
  • maak een knop die de lamp laat branden