Node.js Raspberry Pi - GPIO-introductie


Wat is GPIO?

GPIO staat voor General Purpose Input Output.

De Raspberry Pi heeft twee rijen GPIO-pinnen, die verbindingen zijn tussen de Raspberry Pi en de echte wereld.

Uitgangspinnen zijn als schakelaars die de Raspberry Pi kan in- of uitschakelen (zoals het in- of uitschakelen van een LED-lampje). Maar het kan ook een signaal naar een ander apparaat sturen.

Ingangspinnen zijn als schakelaars die je van de buitenwereld aan of uit kunt zetten (zoals een aan/uit-lichtschakelaar). Maar het kan ook een data van een sensor zijn, of een signaal van een ander apparaat.

Dat betekent dat u kunt communiceren met de echte wereld en apparaten en elektronica kunt bedienen met behulp van de Raspberry PI en zijn GPIO-pinnen!


De GPIO-pinnen van dichterbij bekijken

Raspberry Pi 3 met GPIO

Dit is een illustratie van de Raspberry Pi 3.

De GPIO-pinnen zijn de kleine rode vierkantjes in twee rijen aan de rechterkant van de Raspberry Pi, op de eigenlijke Raspberry Pi zijn het kleine metalen pinnen.

De Raspberry Pi 3 heeft 26 GPIO-pinnen, de rest van de pinnen zijn power, ground of "other".

De pinplaatsingen komen overeen met onderstaande tabel.

Raspberry Pi B+, 2, 3 & Zero

3V3 1 2 5V
GPIO 2 3 4 5V
GPIO 3 5 6 GND
GPIO 4 7 8 GPIO 14
GND 9 10 GPIO 15
GPIO 17 11 12 GPIO 18
GPIO 27 13 14 GND
GPIO 22 15 16 GPIO 23
3V3 17 18 GPIO 24
GPIO 10 19 20 GND
GPIO 9 21 22 GPIO 25
GPIO 11 23 24 GPIO 8
GND 25 26 GPIO 7
DNC 27 28 DNC
GPIO 5 29 30 GND
GPIO 6 31 32 GPIO 12
GPIO 13 33 34 GND
GPIO 19 35 36 GPIO 16
GPIO 26 37 38 GPIO 20
GND 39 40 GPIO 21

Legende

Fysiek pinnummer
Vermogen +
Grond
UART
I2C
SPI
GPIO
Niet verbinden


De Breadboard van dichterbij bekijken

Een breadboard wordt gebruikt voor het maken van prototypes van elektronica, hiermee kun je circuits maken zonder te solderen. Het is eigenlijk een plastic bord, met een raster van verbindingspunten (gaten). Aan de binnenkant van het bord bevinden zich metalen strips die de verschillende verbindingspunten op specifieke manieren met elkaar verbinden.

In de onderstaande afbeelding hebben we enkele secties gemarkeerd met verschillende kleuren. Dit is om u te laten zien hoe het net is aangesloten.

Breadboard met verbindingen gemarkeerd

De verschillende secties van het breadboard:

  • Aan de linker- en rechterzijde bevinden zich 2 kolommen met verbindingspunten. Alle verbindingspunten in elk van deze kolommen zijn verbonden.
  • De Power Bus - De kolommen rood gemarkeerd. Er worden meestal gebruikt om stroom op de Breadboard aan te sluiten. Omdat de hele kolom is aangesloten, kunt u stroom aansluiten op elk van de verbindingspunten in de kolom.
  • The Ground Bus - De kolommen gemarkeerd met blauw. Er worden meestal gebruikt om Ground te verbinden met de Breadboard. Omdat de hele kolom is verbonden, kunt u aarde verbinden met elk van de verbindingspunten in de kolom.
  • Rijen verbonden Tie-Points - De rijen gemarkeerd met groen. De verbindingspunten van elk van deze rijen zijn verbonden, maar niet de hele rij! De verbindingspunten aan de linkerkant zijn verbonden (ABCDE) en de verbindingspunten aan de rechterkant zijn verbonden (FGHIJ).
  • In het midden van de Breadboard bevindt zich een Trench, deze scheidt de linker en rechter rij. De breedte van de greppel is zo ontworpen dat er veel geïntegreerde schakelingen overheen passen.

Installeer de aan-uit-module

Om te communiceren met de GPIO op de Raspberry Pi met behulp van Node.js, gebruiken we een module genaamd "onoff".

Install the onoff module using npm:

pi@w3demopi:~ $ npm install onoff

Now onoff should be installed and we can interact with the GPIO of the Raspberry Pi.