Het Internet of Things (vaak afgekort tot IoT) is een belangrijke
ontwikkeling in de informatietechnologie.
IoT is bedacht omdat het gaat om het aansluiten van apparaten die
zelfstandig data verzamelen via
sensoren of acties uitvoeren met actuatoren.
De verwarming een paar graden warmer of kouder zetten? De lichten in
huis aansturen of de
luchtvochtigheid meten? Al deze taken én meer kunnen worden uitgevoerd
door een Raspberry Pi.
De meest populaire en gangbare programmeertaal voor de Raspberry Pi is
Python.
Dit is een programmeertaal die gemakkelijk te gebruiken, gemakkelijk te
lezen en te schrijven is,
en met Raspberry Pi kun je je project verbinden met de echte wereld.
Het koffertje wat u hierboven ziet heb aangeschaft om python te leren. Er zitten
verschillende componenten in. De Joy-Pi is een experimentele koffer gebaseerd op
de Raspberry Pi 3B/3B+/4B en is ideaal voor de instap in elektrotechniek en
programmeren. Het uitgekiende koffersysteem biedt een perfecte
alles-in-één-omgeving en maakt een einde aan vele onhandige oplossingen voor
kleine onderdelen en kabelchaos op de werktafel. Met het in het deksel een
geïntegreerde 7-inch touchscreen met een resolutie van: 1024x600 pixels. Verder
een lichtsensor, geluidssensor, bewegingssensor, ultrasone sensor, kantelsensor,
infraroodsensor, aanraaksensor, DH11 temperatuur- en vochtigheidssensor en een
RFID-module. Daarnaast een 16x2 LCD-display, 8x8 LED-matrix, 4-cijferig segment
display, programmeerbare matrix met 4x4 knoppen (16), 4 onafhankelijke knoppen,
16 schakelaars, Servobesturing, servomotor, stappenmotor, GPIO LED-indicator,
breadboard, trileenheid, zoemer, relais en een 2MP-camera.
REST staat clients toe om code te downloaden en uitvoeren in de vorm van
applets of scripts.
Dit vereenvoudigt clients door het aantal features dat geïmplementeerd
moet worden
terug te brengen.
Op deze pagina neem ik u mee door mijn code.
We beginnen daarom bij
de
FLASK
app in dit verhaal.
Flask is een micro-webframework geschreven in Python. Het is
geclassificeerd
als een microframework omdat het geen specifieke tools of bibliotheken
vereist.
Flask is een lichtgewicht WSGI-webapplicatieframework.
Het is ontworpen om
snel en eenvoudig aan de slag te gaan, met de mogelijkheid om op te schalen
naar complexe applicaties. Het begon als een eenvoudige verpakking rond
Werkzeug en Jinja en is uitgegroeid tot een van de meest populaire
Python-webapplicatieframeworks.
Flask biedt suggesties, maar dwingt geen afhankelijkheden of projectlay-out
af. Het is aan de ontwikkelaar om de tools en bibliotheken te kiezen die ze
willen gebruiken. Er zijn veel extensies geleverd door de community die het
toevoegen van nieuwe functionaliteit eenvoudig maken.
Op de Joy-Pi heb ik een FLASK app onder Python gebouwd. Met verschillende
beschikbare adafruit code stuur ik van daaruit verschillende componenten aan of
lees ze uit. Natuurlijk gaat dit allemaal over het netwerk. Het geheel (lees ook
het volgende hoofdstuk) draait dus geheel via het netwerk.
Klik hier voor mijn FLASK code
Adafruit
Industries is een Amerikaans opensource
hardwarebedrijf opgericht
door Limor Fried in 2005.
Adafruit is, naar eigen zeggen, 100% in het bezit van vrouwen. Het
bedrijf heeft meer dan 50 medewerkers
en ontwerpt en produceert een aantal elektronische producten, en
verkoopt elektronische componenten,
gereedschappen en toebehoren. Tevens produceert Adafruit een aantal
leermiddelen, waaronder geschreven
tutorials, inleidende video's en de langstlopende live video-elektronica
show die te
zien is op het internet
Als je een sensor, display of led module aansluit op een Raspberry Pi dan
zal je voor het aansturen ervan
in de meeste gevallen gebruik maken van een Python script. Wanneer het
om een simpele schakeling gaat zoals
bijvoorbeeld het in- en uitschakelen van een LED dan kun je ook gebruik
maken van het Bash shell commando
‘gpio'.
(General Purpose Input / Output)
Klik hier voor mijn module code lopend in BOARD modus ( De
daadwerkelijke pinout )
Broadcom heeft de eerste system-on-a-chip op basis van Docsis
3.1
aangekondigd.
De Broadcom SoC (System On Chip) heeft ook wifi en Bluetooth 4.2 aan
boord.
Ook presenteert de fabrikant een referentieontwerp voor een model op
basis van de standaard, die
verder van ondersteuning voor wifi is voorzien.
Klik hier voor mijn module code lopend in BCM modus (
“Broadcom SOC-kanaal” )
De seriële RS-232-interface kan wel als de
‘moeder van alle interfaces’ beschouwd worden. Dit communicatieprotocol
bestaat al sinds
de begintijd van computers en het Internet en, gelukkig, is het ook
beschikbaar op de Raspberry Pi.
De seriële UART (Universal Asynchronous Receiver/Transmitter) is één van
de drie seriële interfaces op
de uitbreidingsconnector van de Raspberry Pi. De andere twee zijn een
I2Cinterface en een SPI-interface.
Klik hier voor mijn module code lopend in serieele modus
(RS232 / UART / SPI / I2C)
Voorbeelden van de RS-232-interface.