Styr dina dioder med en programmerad micro:bit
Vad är en micro:bit?
En micro:bit är en mikrodator som utvecklats av BBC. Med den kan man programmera och styra en mängd olika saker, som till exempel lysdioder. Micro:biten har flera sensorer inbyggda. En sensor kan känna av omgivningen på olika sätt. I micro:biten finns bland annat sensorer för rörelse, ljus och temperatur. Den kan alltså känna av rörelse, mäta ljusstyrka och temperatur. På den finns också en liten LED-matris på 5 gånger 5 pixlar som är små lysdioder på framsidan av micro:biten. Genom att välja vilka av de 25 dioderna som ska vara tända kan man skapa små bilder eller bokstäver. Det finns två knappar som kan användas för att interagera med och styra sitt program. Till exempel kan man programmera så att när jag trycker på knappen A så tänds LED-matrisen i ett visst mönster, kanske ett hjärta som på bilden.
Micro:bit i en mössa
Ett förslag är att sy in blinkande lysdioder och programmera ett blinkande hjärta på micro:bitens display.
Här har tre lysdioder sytts fast med konduktiv tråd samt kopplats ihop med en micro:bit med hjälp av krokodilklämmor. Anoderna på lysdioderna har kopplats in på micro:bitens kontakt som heter “Pin 0” och katoderna på “GND” som betyder Ground, vilket är jord. Micro:biten behöver strömförsörjning i form av ett batteripack med två 1,5V-batterier. Lysdioderna har sytts fast med konduktiv tråd och är parallellkopplade som i lektion 2.
För att kunna styra något med micro:biten behöver man skicka en signal till något som till exempel en lysdiod. Micro:biten kan styra olika saker från sina olika kontakter som kallas för pin 0-4. För att strömmen ska kunna flyta genom saker som ska styras behövs en sluten krets. Utrustning som ska styras behöver alltså anslutas mellan kontakten som styr och GND, ground/jord/nollan.
Testa gärna att koppla innan det är dags att sy fast. Här har vi alltså tre parallellkopplade lysdioder som ska blinka samt LED-matrisen på micro:biten som ska visa ett blinkande hjärta.
Nu är det dags att programmera. Att programmera en micro:bit gör man lättast på webbplatsen makecode.
Så här ser editorn ut där man programmerar:
I denna kurs använder vi blockprogrammering, men här finns även möjligheten att textprogrammera i Java eller Python.
Här finns redan färdiga koder i olika kategorier som man kan dra in på programmeringsytan.
Programmera med micro:bit. Vill man lära mer om micro:bit och programmering med den kan du kolla in Digitekets kurs i ämnet.
- Gå in på makecode.
- Klicka på New project/Nytt projekt.
- Välj språk – klicka på kugghjulet.
- Bygg koden genom att klicka och dra in block på kod-ytan, var noga med att blocken hakar i varandra.
- Koppla in micro:biten med USB-sladden i datorn.
- Ladda över koden till micro:biten genom att klicka på “ladda ned”. Då hamnar koden i hämtade filer. Dra över koden till micro:biten.
- På en dator: öppna utforskaren och ta tag i micro:bit-filen från “hämtade filer” och dra den till micro:biten.
- På en Chromebook: Klicka på “visa i mapp” och dra över micro:bit-filen till micro:biten.
- När det blinkar på micro:biten överförs koden.
- Testa din kod!
Koden för att lamporna ska skrivas ser ut som nedan.
Denna kod gör att det blir signal på Pin 0 i 1000 ms (en sekund) och sedan stängs signalen av i 1000 ms. Denna procedur upprepas för alltid. Detta kallas för en loop på programmeringsspråk. I det här fallet betyder det att alla LED-lamporna blinkar med 1000 ms mellanrum hela tiden.
Koden för blinkande lysdioder kompletterats med koden för ett blinkande hjärta på micro:biten som bygger på samma princip.
Här har koden kompletterats med blocket “show leds” som betyder att micro:bitens LED-matris kommer att lysa så som man klickar i den i matrisen. Här har de lampor som formar ett hjärta klickats i. Sedan följer ett likadant block där inga lampor är markerade vilket betyder att de kommer slockna.
Vill man utnyttja sin micro:bits funktioner än mer kan man använda dess inbyggda ljussensor och göra så att lysdioderna bara tänds när det är mörkt.
Kod till att tända lysdioderna när det blir mörkt:
Visa siffra betyder att ljusnivån kommer skrivas ut på micro:biten. Ljusnivån anges från 0 (inget ljus) till 255 (starkt ljus) på micro:biten. Värdet som behövs på ljusnivån beror på hur ljust det är ute eller i rummet. Här får man testa sig fram till vad som passar. När du skrivit denna kod kan du se vilken ljusnivå du har just nu där du befinner dig och sedan anpassa koden så att den fungerar som du vill.
Denna kod betyder: Om ljusnivån är under 5 så sätts “Pin 0” på, det vill säga att strömmen flödar i kretsen och lamporna lyser. Annars stängs “Pin 0” av och lamporna slocknar.