De nieuwe “Raspberry Pi voor Beginners” ligt op 10 januari in de winkels en in onze webshop. Daarin staat onder andere een nieuwe, uitgebreide workshop voor de Sense Hat. Dat is een uitbreidingskaart voor de Raspberry Pi vol met sensors voor temperatuur, luchtvochtigheid, beweging et cetera. Er zit ook een matrix van 8×8 RGB-leds op.
De Sense Hat is onder meer te koop bij sossolutions.nl voor 40,95 euro. Als je (nog) geen Sense Hat hebt, kun je ook eerst wat experimenteren met de Sense Hat Emulator. Dat kan bij Programming in het menu van Raspbian, het besturingssysteem van de Pi.
Als voorproefje van de “Raspberry Pi voor Beginners” staat hier een klein project voor de Sense Hat. Speciaal voor de kerstdagen hebben we dat snel even in elkaar gezet. Het is een kerstboom, compleet met knipperende lichtjes.
Het kerstboomscript
De code (in totaal 41 regels) hieronder hoef je alleen maar in een txt-bestand te zetten. Geeft het de extensie .py, bijvoorbeeld xmastree.py. Zorg wel dat de regels na while True een paar spaties inspringen.
# Sense HAT Xmas-Tree with blinking lights# Dec. 2016, jmu
from sense_hat import SenseHat
import time
sense = SenseHat()
sense.set_rotation(90)
sense.clear () # clears the matrix, just in case
sense.low_light = True
g = [154,205,50] # green
r = [255, 0, 0] # red
w = [255, 255, 255] # white
z = [0, 0, 0] # zero light
xmas_tree = [
z, z, z, z, w, z, z, z,
z, z, z, z, g, z, z, z,
z, z, z, g, r, g, z, z,
z, z, g, w, g, w, g, z,
z, z, z, r, g, r, z, z,
z, z, w, g, w, g, w, z,
z, g, r, g, g, g, r, g,
z, z, z, z, g, z, z, z,
]
sense.set_pixels(xmas_tree)
# make 3 leds blink in endless loop
while True:
sense.set_pixel(4, 0, [255, 0, 0]) # make white pixel1 red
time.sleep (0.2)
sense.set_pixel(4, 0, [255, 255, 255]) # return pixel1 to original color
time.sleep (0.2)
sense.set_pixel(2, 3, [255, 255, 255]) # make green pixel2 white
time.sleep (0.2)
sense.set_pixel(2, 3, [154,205,50]) # return pixel2 to original color
time.sleep (0.2)
sense.set_pixel(6, 6, [255, 255, 255]) # make red pixel3 white
time.sleep (0.2)
sense.set_pixel(6, 6, [255, 0, 0]) # return pixel3 to original color
time.sleep (0.2)
Start het script
Kopieer het bestandje naar een usb-stick en van daar naar je home-directory van je Raspberry Pi met Sense HAT: /Home/Pi/ . Om het Python-script te draaien, open je een terminal en typ je het volgende commando in.
python3 xmastree.py
Druk op Ctrl+C om Python te stoppen of sluit de terminal. De kerstboom blijft dan op de ledmatrix staan, maar de leds knipperen niet meer. Om de ledmatrix helemaal uit te zetten, kun je de Raspberry Pi herstarten of het onderstaande Python-scriptje draaien. Sla dat op in een txt-bestand dat je bijvoorbeeld senseclear.py noemt:
from sense_hat import SenseHatsense = SenseHat()
sense.clear ()
Experimenteer eens met de vorm en de kleuren van de boom. We hebben in de code (regel 7) de afbeelding op de Sense HAT met 90 graden gedraaid :
sense.set_rotation(90)
omdat onze behuizing dan beter kon staan. Als dat in jouw geval anders is kun je het aanpassen of de regel weglaten. Een andere bijzonderheid is regel 9:
sense.low_light = True
Daarmee wordt het licht van de leds gedimd, zodat ze in het donker niet zo fel zijn. Die regel kun je naar behoefte ook weglaten.
Dat was het. Succes en veel plezier met de Pi en onze nieuwe Pi-special, en hele fijne kerstdagen en oud en nieuw gewenst.