terug naar het overzicht   

Technische kennisbank

Externe componenten

Meer technische kennis over externe componenten die je op de micro:bit kunt aansluiten:

LED en RGB LED

LED.pngRGB led.pngEen LED is een zogenaamde Light Emitting Diode, een licht uitstralende diode. Daarbij is een diode een elektronisch component dat stroom maar in één richting doorlaat, een soort elektrisch ventiel. De stroom loopt van de anode naar de cathode, en een stroom in de andere richting wordt door de diode tegengehouden. Een led straalt licht uit als er een stroom loopt in de doorlaatrichting en wordt met het volgende symbool weergegeven:

led symbool.png       anode cathode aanduiding.png

Om aan te geven welke aansluiting de anode en welke de cathode is zijn 2 manieren bedacht, zie de afbeelding:

  • Een afplatting van de behuizing aan de cathode kantLED aansturing voorbeeldcode.png
  • Een langere aansluitdraad voor de anode

Een led kan worden aangestuurd door de cathode te verbinden met de GND pin en de anode aan te sluiten op een van de pinnen van de micro:bit. Met het “schrijf analoog pin” en waarden tussen 0 en 1023 kan de helderheid van de led bestuurd worden.

 

uitroepteken.pngLET OP: sluit een led nooit zomaar aan op een voedingsbron (batterij of adapter) want dan gaat de led kapot. In serie met de led zou dan een weerstand moeten worden opgenomen om de hoeveelheid stroom te beperken die door de led gaat lopen. Typisch wordt bij een voedingsspanning van 5V een weerstand van 220 Ohm gebruikt. Eigenlijk zou je een led ook niet rechtstreeks mogen aansluiten op een uitgangspin van de micro:bit (max. 3V), maar omdat de pinnen van de micro:bit niet zo veel stroom kunnen leveren, gaat het in de praktijk meestal goed. Bovendien bestaan er ook led’s met een ingebouwde weerstand, maar weet dus wat je doet.


Een RGB led bestaat uit 3 led’s, één die rood licht geeft, één voor groen en één voor blauw licht. Door de verhouding van Rood, Groen en Blauw te regelen kun je een groot aantal verschillende kleuren maken. Zo levert een combinatie van rood en blauw een magenta resultaat. Combineer je rood met groen, dan levert dat geel op. Ook alle tussenliggende kleuren zijn mogelijk door een beetje meer of minder van een kleur aan te sturen.

LET OP: dit is niet hetzelfde als het mengen van verf waarmee je ook mengkleuren kunt maken. Het verschilt omdat je met led’s kleur maakt met licht en de kleuren bij elkaar optellen (additieve kleurmenging) terwijl je bij verf kleur produceert door kleur van het opvallende licht te absorberen (niet te weerkaatsen) en  bij menging de kleuren van elkaar aftrekken (subtractieve kleurmenging. Voor meer informatie hierover zie WikiPedia

kleur mengen.png

Hier hebben we dus te maken met additieve menging. De afbeelding laat zien wat er gebeurt als je kleuren mengt. 

Er zijn 2 soorten RBG led’s die we aan kunnen sluiten op de micro:bit:

  • Common anode/cathode type
  • Single pin control type

Common anode/cathode RGB led

In deze led zijn 3 led’s voor de verschillende kleuren gecombineerd in één behuizing, waarbij hetzij de 3 anode’s aan elkaar zijn verbonden, hetzij de 3 cathode’s. Zo’n led heeft dus 4 aansluitingen, zie de figuur. Als voorbeeld hier een aansluitschema voor het besturen van een common cathode led door een micro:bit.

common anode cathode.png         aansluitschema RGB led.png

Single pin control RGB led

Ook bij deze led zijn de 3 led’s voor de verschillende kleuren in één behuizing gecombineerd. Echter in de led zit ook een stukje elektronica dat een seriële code kan omzetten naar stuursignalen voor de 3 verschillende kleuren led’s. Een seriële code is een treintje van positieve en negatieve pulsen waarmee informatie kan worden verzonden via 1 pin. Ook een common single pin control RGB led heeft 4 aansluitingen:

  • Data in
  • +5V
  • GND
  • Data out

+5V en GND zijn nodig om de led van voedingsstroom te voorzien. De seriële code wordt aangeboden op ‘data in’ en eventueel doorgegeven naar een volgende RGB led via ‘data out’, zie het aansluitschema. Door meerdere led’s aan elkaar te koppelen, kun je een rijtje RGB led’s maken die elk een andere kleur kunnen hebben. In de code zit namelijk ook informatie over de kleur die elke afzonderlijke led moet schijnen, dus er is een RGB waarde (kleur) voor led 1, een RGB waarde voor led 2, etc. Hiermee zijn ook led-strips of led-cirkels aan te sturen.

Om deze led’s aan te sturen moet je een uitbreiding toevoegen in de MakeCode editor. Klik op “uitbreidingen” onderaan de blokkenmenu’s en selecteer de NeoPixel uitbreiding. Je zult zien dat er nu een blokkenmenu bij is gekomen: NeoPixel. Laat de micro:bit eerst weten hoeveel led’s je wilt aansturen, en met welk ‘type’ seriëel format: GRB, RGB+W of RGB (zie de documentatie bij de led’s die jij hebt, of probeer het gewoon om erachter te komen welke format goed werkt)

Onderstaande aansluitschema en voorbeeldcode laten zien hoe je een strip of rijtje van 8 led’s kunt aansturen.

aansluitschema single pin RGB leds.png  aansluiting ledstrip.png  

LED strip aansturing voorbeeldcode.png

terug naar boven

Servo motor SG-90

servo SG90.jpegDe servo motor SG-90 is een zogenaamde hoek-servo. Deze gaat in een bepaalde hoek (in graden) staan afhankelijk van het signaal dat aangeboden wordt. De servo kan hoeken aannemen tussen de 0 en 180 graden. Op de ronddraaiende witte (kartel)as van de servo kun je 3 verschillende soorten armpjes vastmaken waarmee je iets kunt laten bewegen. Het aansluiten van een servo SG-90 is redelijk eenvoudig. Volg het aansluitschema hieronder:

servo aansluitschema.png

De aansluitingen op GND (bruin) en 3V (rood) zorgen voor de voedingsspanning die de servo nodig heeft, terwijl de aansluiting op P0 (oranje draad) dient om met een PWM signaal de hoek aan te geven. Zie hiervoor de uitleg bij het blokje "schrijf servo pin" in de kennisbank pinnen.

Met deze voorbeeldcode laat je de servo afwisslend naar 180, 90 en 0 graden bewegen:

voorbeeldcode.png

Let wel dat de SG-90 eigenlijk bedoelt is om op een 5V voedingsspanning te werken, terwijl we dat hier dus met 3V doen. De servo doet het dan wel, maar heeft minder kracht dan wanneer deze gevoed wordt met 5V. Je kunt het schema hieronder gebruiken om met micro:bit toch te werken met een voedingsspanning van 4,5V of 5V. Je gebruikt dan een batterijhouder met 3 AA of 3 AAA batterijen voor 4,5V of een voedingsadapter voor 5V. Haal de rode aansluitdraad los van de 3V pin van de micro:bit en sluit die aan op de + kant van de batterijhouder of de adapter. Vergeet niet de - van de batterijhouder of de adapter ook aan de GND van de micro:bit aan te sluiten.

servo aansluiting v2.png+batterijhouder 3xAA.jpgofadapter.jpgwordt:servo aansluitschema 5V.png

terug naar boven

Afstand meten met de ultrasone transducer HC-SR04

Ultrasonic-Sensor-Module-HC-SR04 cropped.pngBij sommige projecten is het nodig om de afstand tot een object te meten. Denk hier bij voorbeeld aan robotprojecten. Vaak wordt hiervoor de ultrasone transducer HC-SR04 gebruikt. Deze meet de afstand tot een object met behulp van ultrasoon geluid (= hoge, niet hoorbare frequentie, 40kHz) zoals ook vleermuizen dat doen.

De transducer heeft 4 aanluitingen. Zie ook de figuur met het aansluitschema hieronder. Sluit de HC-SR04 aan op de micro:bit volgens onderstaand schema: 

HC-SR04 micro:bit (figuur)
VCC 3V (!!! zie opmerking onder de tabel) rood
trigger P0 geel
echo P1 groen
Gnd GND zwart

 

uitroepteken.pngNB !!! De HC-SR04 krijgt zijn voeding vanuit de micro:bit, 3,3V als deze op usb is aangesloten. Als de micro:bit met batterijen gevoed wordt, kan het zijn dat de voedingsspanning te laag wordt (minder dan 3V) afhankelijk van het type en de conditie van de batterijen. Het kan zijn dat dan de voedingsspanning voor de HC-SR04 te laag wordt en dan werkt deze niet.

De meting start door op P0 een puls (van minimaal 10 microseconden) aan te bieden op de 'trigger' input van de HC-SR04. Deze zendt hierbij een treintje van 8 geluidspulsen uit door middel van de transmitter (T). Dat treintje wordt in slechts 200 micro-seconden verzonden. Als het geluid gereflecteerd wordt door een voorwerp dan meet de receiver (R) een echo van het geluid. De transmitter, ofwel zender is dus eigenlijk een luidspreker, maar dan voor onhoorbaar geluid, en de receiver, ofwel ontvanger een microfoon. De tijd die het geluid er over doet om heen en weer te gaan tussen de transducer en het voorwerp is een maat voor de afstand. Op de 'echo' uitgang van de transducer wordt een puls gegeven ter lengte van de reistijd van de geluidsgolf.

HC-SR04 schema_0.png

Geluid gaat door lucht met een snelheid van ongeveer 340m/s, dus de formule om de afstand te berekenen uit de puls-lengte is als volgt:

afstand (m)  =  pulsduur (s)  x  snelheid geluid (= 340m/s)  /  2   De deling door 2 is nodig omdat het geluid 2x de afstand aflegt, heen en weer.

Het blokje "puls in pin pulseerde" uit het menu 'pinnen' meet de tijd in micro-seconden, en je wilt de afstand waarschijnlijk graag in centimeters hebben. De formule is dan als volgt te herschrijven:

afstand (cm)  =  pulsduur (micro-seconden) / 59

uitroepteken.pngLET OP: het blokje "puls in pin pulseerde" geeft geen correcte waarde van de werkelijke pulslengte maar slechts 2/3 van de waarde. Deze fout is gemeld en wordt misschien opgelost, maar tot die tijd moet je de formule hierop aanpassen:

afstand (in cm)  =  pulsduur (puls in pin) / 39

Je mag in plaats van P0 en P1 ook andere pinnen gebruiken, maar dan moet je uiteraard wel de puls op de betreffende pin geven, en op de juiste pin de echo-puls meting doen.


Hieronder is weergegeven hoe de signalen er uit zien op een oscilloscoop (apparaat waarmee je kunt zien hoe signalen verander in de tijd).

afstand = 5 cm afstand = 10 cm afstand = 20 cm afstand = 30 cm
HC-SR04 object op 05cm.png HC-SR04 object op 10cm.png HC-SR04 object op 20cm.png HC-SR04 object op 30cm.png

 

Het gele signaal start de meting, het paarse signaal laat het treintje van 8 geluidspulsen zien, het blauwe signaal is de geluids-echo, en het groene signaal is de puls die je kunt meten, de 'echo' uitgang van de transducer. Je ziet dat naarmate de afstand groter wordt het echo signaal (blauw) ook in sterkte afneemt, maar toch wordt alleen de tijd gebruikt om de afstand te meten (pulsduur van groen).


Voorbeeld-code: Met behulp van het volgende programma wordt de afstand, afgerond op gehele centimeters, elke 5 seconden op het display vertoond.

HC-SR04 voorbeeldcode 1.png


Verdere specificaties van de HC-SR04

voedingsspanning

5 V
bij 3,3V doet hij het nog wel
maar onder de 3V niet meer

stroomverbruik 15 mA
geluidsfrequentie 40 kHz
minimale afstand 2 cm
maximale afstand 400 cm
meethoek 15 graden
afmetingen 45 x 20 x 15 mm

terug naar boven