RGB LED aansturen via GPIO interface

LED’s zijn in vele soorten en maten beschikbaar op de electronica markt. Het aansturen van LED met behulp van een Raspberry Pi is vrij eenvoudig. In dit stappen plan gebruiken we een (Keyes) RGB LED module die we gaan aansturen met behulp van de standaard GPIO interface.

De LED module is zeer goedkoop verkrijgbaar en is voorzien van de nodige weerstanden, hierdoor we deze direct kunnen aansluiten op pins van de GPIO interface. Een RGB LED kun je gebruiken om een bepaalde status weer te geven, bijvoorbeeld groen bij een lage CPU temperatuur en rood bij te hoge temperatuur.

Gebruikte componenten

KEYES KY-016 RGB LED Module
4x Dupont verbindingskabel (female/female)

Raspberry Pi 3 model B
Raspbian Jessie (2016-05-27 kernel 4.4.13)

Aansluitschema

Het aansluiten van de LED module is eenvoudig, volg hiervoor het onderstaande schema. Ter verduidelijking vind het onder het schema de GPIO pin layout terug.

RGB pin RPI pin Functie
ROOD 11 GPIO 17
GROEN 13 GPIO 27
BLAUW 15 GPIO 22
GND(-) 14 GND

Raspberry Pi GPIO Layout

RGB LED Python script

Om te kunnen communiceren met het Python script maken we gebruik van de standaard GPIO lPython library die standaard is geïnstalleerd op de Rapsberry Pi met Raspbian Jessie.

#! /usr/bin/env python
# https://www.raspberrytips.nl

import RPi.GPIO as GPIO
import sys

rood  = 17
groen = 27
blauw = 22

GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)

GPIO.setup(rood, GPIO.OUT)
GPIO.setup(groen, GPIO.OUT)
GPIO.setup(blauw, GPIO.OUT)

GPIO.output(blauw, 0)
GPIO.output(groen, 0)
GPIO.output(rood, 0)

if len(sys.argv) > 1:
  cmd = sys.argv[1]

if cmd == "rood":
  GPIO.output(rood, 1)

if cmd == "groen":
  GPIO.output(groen, 1)

if cmd == "blauw":
  GPIO.output(blauw, 1)

Kopieer het Python script of download deze met behulp van het wget commando:

wget https://raspberrytips.nl/files/rgbled.py

Activeer het script, dit kan kan zonder root rechten, als parameter kun je de gewenste kleur opgeven (rood, groen, blauw). Met behulp van het onderstaande voorbeeld zal dus de rode led worden geactiveerd:

python rgbled.py rood

Plaats een reactie