#BBCmicro:bit
Explore tagged Tumblr posts
draegerit · 1 year ago
Text
Einfache Anleitung: Sensordaten als Scrolltext auf dem BBC micro:bit
Tumblr media
Auf dem BBC micro:bit findest du einen Temperatursensor, in diesem Beitrag möchte ich nun zeigen wie du die Sensordaten als Scrolltext auf der LED-Matrix anzeigen lassen kannst.
Tumblr media
Die Idee zu diesem Beitrag habe ich vom Leser U.E. erhalten welchen ich hiermit danken möchte, denn ich bin immer dankbar für Ideen.
Benötigte Ressourcen für den Nachbau
Wenn du das nachfolgende Programm nachbauen möchtest, dann benötigst du: - einen BBC micro:bit, - ein Micro-USB-Datenkabel, - Breadboardkabel, - einen Adapter, - ein 400 Pin / 170 Pin Breadboard Der BBC micro:bit verfügt über einen internen Temperatursensor, welchen wir auslesen können. Jedoch möchte ich dir zeigen, wie du die Sensordaten eines DHT22 Sensors auslesen. Dieser Sensor liefert die Temperatur sowie die rel. Luftfeuchtigkeit.
Aufbau der Schaltung - BBC micro:bit mit DHT22 Sensor
Nachfolgend die kleine Schaltung am BBC micro:bit mit einem DHT22 Sensor.
Tumblr media
Schaltung - DHT22 Sensor am BBC micro:bit für Scrolltext Den DHT22 Sensor bekommst du in zwei Varianten, zum einen als einfachen Baustein wie in der Zeichnung zu sehen und auf einer Platine.
Tumblr media
Varianten des DHT22 Sensors In meinem Fall habe ich den fertigen Sensor inkl. Widerstand in meiner Schaltung verwendet und somit benötigte ich lediglich 3 Breadboardkabel um diesen an den BBC micro:bit anzuschließen.
Tumblr media
Schaltung - BBC micro:bit mit DHT22 Sensor
Programmieren in MakeCode
Den Code hierzu können wir in Micropython oder auch MakeCode erstellen, in diesem Beitrag möchte ich letzteres verwenden. Wie du den Code in MakeCode erstellst, habe ich dir in nachfolgendem kurzen YouTube-Video erläutert. https://youtu.be/iQUi8dc6yyk MakeCode Programm zum auslesen & anzeigen der Sensordaten eines DHT22 Sensors auf der LED-Matrix des BBC micro:bitHerunterladen
Fazit & Ausblick
In diesem Beitrag habe ich dir nun gezeigt wie einfach es ist mit MakeCode am BBC micro:bit einen Scrolltext mit Sensordaten anzeigen zu lassen. Im nächsten Beitrag werde ich dir zeigen wie du ein Display an diesen anschließen kannst um so die Texte noch besser lesen zu können. Read the full article
0 notes
made-from-galaxies · 5 years ago
Text
Placa de programação desperta invenções com automação e robótica – Blog do Armindo
Com o propósito de despertar o interesse por tecnologia, inovação e empreendedorismo, além de formar uma nova geração de inovadores, o BBCmicro:bit está disponível no varejo para os entusiastas da programação. A solução consiste em um mini-processador que inspira acriatividade digital, ensina o fundamental da programação e possibilita infinitas ideias e criações. É compacto, fácil de programar e … Continuar a ler "Placa de programação desperta invenções com automação e robótica – Blog do Armindo" Source: https://opengeekhouse.com.br/2020/06/06/placa-de-programacao-desperta-invencoes-com-automacao-e-robotica-blog-do-armindo/
0 notes
draegerit · 1 year ago
Text
Schritt-für-Schritt-Anleitung: Programmierung des EDU:BIT
Tumblr media
In meinem vorherigen Artikel über das EDU:BIT-Set von Cytron habe ich bereits eine Einführung in dieses gegeben. Jetzt werden wir uns darauf konzentrieren, wie du es mithilfe von Microsoft MakeCode programmieren kannst. Ich gehe davon aus, dass du keinerlei Vorkenntnisse in der Programmierung hast, daher ist dieser Artikel perfekt für Anfänger geeignet. Selbst wenn du bereits Erfahrung in der Programmierung von Mikrocontrollern hast, wirst du hier sicherlich einige nützliche Tipps und Tricks finden, die dir bisher vielleicht unbekannt waren.
Tumblr media
Hinweis: Ich möchte darauf hinweisen, dass ich das EDU:BIT-Set von Cytron kostenfrei erhalten habe, um darüber auf meinem Blog zu schreiben. Meine Meinung zu diesem Produkt ist jedoch unabhängig und basiert auf meinen eigenen Erfahrungen. Jegliche Unterstützung von Cytron beeinflusst meine objektive Bewertung nicht. Mein Blog bleibt ein Ort der Ehrlichkeit und Transparenz gegenüber meinen Lesern.
Welche Entwicklungsumgebung sollte ich nutzen?
Klären wir zunächst die Frage, welche Entwicklungsumgebung (kurz IDE) man nutzen sollte. Das hängt von deinen Skills ab. Wenn du Anfänger bist oder noch nicht so viel Erfahrung mit der Programmierung des BBC micro:bit hast, dann empfehle ich dir MakeCode von Microsoft. Solltest du jedoch einiges an Erfahrung gesammelt haben, so kannst du deinen Mikrocontroller auch in Python oder C++ programmieren. MakeCode von Microsoft Selbst ich, der schon einige Jahre Erfahrung hat, nutzt das Onlinetool MakeCode von Microsoft, denn dieses hat so einige Vorteile. Zum einen ist die Unterstützung der Community für den BBC micro:bit deutlich stark vertreten und zum anderen ist diese Art der Programmierung zwischendrin mal was anderes.
Tumblr media
Online Python Editor Im Beitrag Der Einstieg in die Python-Programmierung mit dem BBC micro:bit habe ich dir bereits gezeigt, wie du deinen BBC micro:bit auch in Python programmieren kannst.
Tumblr media
Online Python Editor für den BBC micro:bit Diesen einfachen Editor findest du unter https://python.microbit.org/v/3.
Überblick der Funktionen des EDU:BIT - Set
Schauen wir uns einmal die Funktionen bzw. Sensoren & Aktoren des EDU:BIT - Set genauer an.
Tumblr media
EDU:BIT im Überblick Wir haben nachfolgende Sensoren & Aktoren zur Verfügung: ModulFunktionenMusic Bit Modul3,5 mm Klinkenbuchse und Piezo-BuzzerSound Bit ModulGeräuschdetektorPotentio Bit ModulDrehpotentiometerIR Bit ModulInfrarot Abstandssensor (einstellbar über Drehpotentiometer)RGB Bit Modulvier NeoPixel-LEDs (für farbige Lichteffekte)TrafficLight Bit Moduldrei LEDs (rot, gelb, grün, wie bei einer Verkehrsampel)Button Bit Modulzwei Taster für die Eingabe von BefehlenWeitere SchnittstellenI2C-Kommunikation - UART-Kommunikation Anschlüsse für Motoren und Servomotoren Sowie noch am BBC micro:bit selber noch 2 frei programmierbare Taster, einen kapazitiven Touch-Sensor und eine 5x5 LED Matrix. Sowie noch einen Beschleunigungssensor, Temperatursensor und Piezo Buzzer. Den Beschleunigungssensor können wir in diesem Fall nur bedingt verwenden, daher werde ich diesen bei meinen Beispielen hier ausklammern.
Programmieren des EDU:BIT in MakeCode von Microsoft
Für das EDU:BIT gibt es eine Erweiterung für MakeCode somit wird die Programmierung deutlich einfacher, da man für jedes Modul spezielle Blöcke hat.
Tumblr media
Beispiele mit den Modulen Kommen wir nun dazu und programmieren die Module des EDU:BIT. Ich möchte dir jedoch nachfolgend ein paar Verbindungen der Module zeigen und somit lernst du Stück-für-Stück das Programmieren des EDU:BIT kennen. Ampelschaltung programmieren Mit den drei 10 mm LEDs (rot, gelb und grün) lässt sich super eine kleine Ampelschaltung realisieren. Eine Ampelschaltung hat vier Phasen, wie nachfolgend angezeigt.
Tumblr media
Wechsellichtzeichen nach §37 Abs.2 StVO Im nachfolgenden Code wird dauerhaft die Funktion "ledLichAN" ausgeführt, jedoch ändern sich die Werte der Parameter für die LEDs. Damit können wir sehr einfach eine kleine Ampelschaltung realisieren und dabei noch doppelten Code reduzieren.
Tumblr media
Im nachfolgenden Video siehst du die vier Phasen einer Ampelschaltung. Ampelschaltung am EDU:BIT für BBC micro:bitHerunterladen NeoPixel steuern Auf dem EDU:BIT sind 4 NeoPixel verbaut, welche sich über den Pin P13 steuern lassen. Wenn wir jetzt die Helligkeit der NeoPixel mithilfe des Drehpotentiometers steuern wollen, benötigen wir eine kleine mathematische Formel. Die Fakten: - der Drehpotentiometer hat eine Range von 0..1023, - die Helligkeit hat eine Range von 0..255 Diese beiden Werte müssen wir nun "irgendwie" miteinander mappen. Dazu teilen wir den größtmöglichen Wert beider Ranges durcheinander, 1023/255, das Ergebnis von 4,01 (gerundet) ist jetzt unser Faktor durch welchen wir den Wert des Potentiometers teilen.
Tumblr media
Im nachfolgenden Video erkennst du, je nach Stellung des Drehpotentiometers sind die NeoPixel heller oder dunkler. steuern der Helligkeit der NeoPixel am EDU:BIT mit einem DrehpotentiometerHerunterladen Lüftersteuerung Dem Set EDU:BIT liegt ein kleiner Motor sowie ein Lüfterrad bei, über diesen und dem Temperatursensor vom BBC micro:bit können wir eine Temperaturgesteuerte Lüftersteuerung realisieren.
Tumblr media
Wenn nun die Temperatur größer als 20 Grad Celsius ist, dann wird der Lüfter aktiviert und dieser dreht sich umso schneller je wärmer es ist. Temperaturgesteuerte Lüftersteuerung am EDU:BITHerunterladen
Abschluss & Fazit zur Programmierung des EDU:BIT
Wir nähern uns jetzt dem Ende und meinem Abschluss. Die Anwendung von MakeCode für das EDU:BIT-Set gestaltet sich äußerst unkompliziert, und dank der Erweiterung sind alle benötigten Programmierbausteine leicht zugänglich. Das im Lieferumfang enthaltene Buch bietet zahlreiche Beispiele und verspricht daher stundenlangen Spaß mit diesem Set. Read the full article
0 notes
draegerit · 2 years ago
Text
Fortgeschrittene Python-Programmierung mit dem BBC micro:bit
Tumblr media
In diesem Beitrag möchte ich an meinen letzten Beitrag Der Einstieg in die Python-Programmierung mit dem BBC micro:bit anknüpfen und dir zeigen, wie du die Sensoren & Aktoren deines BBC micro:bit in Python programmieren kannst.
Tumblr media
Das Tool zur Python-Programmierung für den BBC micro:bit ist sehr gut auf Englisch dokumentiert und theoretisch könnte der Beitrag jetzt hier mit einem Verweis auf diese enden. Jedoch möchte ich dir hier Schritt-für-Schritt zeigen, wie du die Sensoren & Aktoren des BBC micro:bit programmierst.
Features des BBC micro:bit
Zunächst möchte ich dir die Features des BBC micro:bit auflisten: - einen Temperatursensor, - einen Lagesensor, - einen Kompass (Magnetometer), - einen "Lichtsensor", - ein Mikrofon, - ein Piezo Buzzer, - ein Touch Sensor, - eine drahtlose Schnittstelle
Verwenden der Dokumentation / Reference zum Programmieren des BBC micro:bit
Wie erwähnt findest du unter dem Punkt "Reference" eine Dokumentation zu den Features vom BBC micro:bit und der Python-Programmierung.
Tumblr media Tumblr media
Hier kannst du die Codeschnipsel per Drag'n Drop in den Editor ziehen und so ähnlich wie mit den Blöcken in MakeCode den Quellcode erstellen.
Sensoren auslesen
Lesen wir zunächst die Werte vom Temperatursensor sowie vom Lichtsensor aus und zeigen diese auf der 5x5 LED Matrix an. Das gute ist, wir brauchen für langen Text keinen extra Code schreiben, denn hier brauchen wir lediglich die Funktion "scroll" aufrufen. Temperatursensors auslesen und Anzeigen der Werte auf der 5x5 LED Matrix Der Prozessor nRF52 verfügt über einen Temperatursensor, welcher nachfolgende technische Daten hat: EigenschaftWertMessbereich-40 °C bis 105 °CAuflösungSchritte von 0,25 °CGenauigkeit+/- 5 °C (nicht kalibriert) In der Referenz kannst du hier recht einfach den passenden Codeschnipsel in deinen Code einfügen und mit dem Taster "A" verknüpfen. from microbit import * # starten der Endlosschleife while True: # Wenn der Taster A gedrückt wurde, dann... if button_a.was_pressed(): # ausgeben der Temperatur auf der LED Matrix display.scroll(temperature()) Lichtintensität auslesen Der Mikrocontroller hat jetzt keinen extra Lichtsensor, sondern man kann die LEDs der 5x5 Matrix als Lichtsensor verwenden. Wie du das am Arduino machst, habe ich dir bereits im Beitrag Arduino Lektion #101: LED als Lichtsensor erläutert. Du brauchst hier zusätzlich eine kleine Taschenlampe, um die LEDs der Matrix anzustrahlen! from microbit import * # starten der Endlosschleife while True: # Wenn der Taster A gedrückt wurde, dann... if button_a.was_pressed(): # Wenn die Matrix mit einer Taschenlampe bestrahlt wird, # dann ist der Wert > 0 ansonsten ist dieser gleich 0 display.scroll(display.read_light_level())
Aktoren ansteuern
Der BBC micro:bit hat als Aktor eine 5x5 LED Matrix sowie einen Piezo Buzzer verbaut. Die LED Matrix habe ich dir ja bereits gezeigt, nun soll es um den Piezo Buzzer gehen. Über diesen kleinen Buzzer kannst du Töne und sogar kleine Lieder abspielen. Piezo Buzzer & Lichtsensor Nachfolgend möchte ich dir jetzt zeigen, wie du die Lichtintensität nutzen kannst, um die Frequenz des Piezo Buzzers zu manipulieren. from microbit import * import music # starten der Endlosschleife while True: # auf dem Piezo Buzzer einen Ton wiedergeben, # der Wert des Lichtsensors wird mit 3 multipliziert damit der Ton höher wird music.pitch(display.read_light_level()*3) Read the full article
0 notes
draegerit · 2 years ago
Text
Der Einstieg in die Python-Programmierung mit dem BBC micro:bit
Tumblr media
In vorherigen Artikeln habe ich ausführlich über den BBC micro:bit berichtet und verschiedene kreative Projekte damit vorgestellt. In diesem Beitrag liegt der Fokus darauf, wie du diesen Mikrocontroller mithilfe der Python-Programmiersprache nutzen und spannende Anwendungen entwickeln kannst.
Tumblr media
Ich werde dir nachfolgend Schritt-für-Schritt zeigen, wie du diesen Mikrocontroller und deinen PC für die Programmierung in Python einrichtest und kleine Schaltung programmierst. Der BBC micro:bit verfügt bereits über einige Sensoren & Aktoren, womit wir schon ohne zusätzliche Komponenten starten können. Der BBC micro:bit ist derzeit in der Version 2.21 erhältlich, du kannst die Beispiele jedoch auch mit dem Vorgängermodell der Version 1.5 nachbauen, da sich diese im Grunde nur marginal unterscheiden.
Tumblr media
BBC micro:bit v2.2
Tumblr media
BBC micro:bit v1.5 Den hier verwendeten Mikrocontroller habe ich dir bereits im Beitrag BBC micro:bit V2.2 vorgestellt. Ich empfehle dir jedoch noch ein Set, welches dir gleich eine Vielzahl von Sensoren & Aktoren liefert, welches ich dir ebenso bereits in einem gleichnamigen Beitrag Vorstellung Microbit Starter Kit für den BBC micro:bit präsentiert habe.
Technische Daten & Features des BBC micro:bit
Schauen wir uns zunächst die technischen Daten und Feature des BBC micro:bit v2.2 an: FeatureBBC micro:bit V2.2Prozessor32-bit Arm® Cortex-M4 mit FPUGeschwindigkeit64 MHzFlash ROM512 KBRAM128 KBBluetoothBluetooth Low Energy (BLE) 5.0SensorenBewegungssensor ST LSM 303, Temperatursensor nRF51, 3 Achsen Lagesensor, MagnetometerAktorenkapazitiver Touch Sensor (Logo), Mikrofon, Speaker, Power On LED, 5x5 LED Matrix, Pushbuttons (A & B, Vorderseite)Abmaße (Breite x Höhe)5 cm x 4 cmTechnische Daten des BBC micro:bit V2
Programmierung des BBC micro:bit in Python
Starten wir nun mit der Programmierung des BBC micro:bit in Python, in dem wir den Editor unter https://python.microbit.org/v/3 öffnen. Es wird hier auch gleich ein Beispiel angezeigt, wo auf der 5x5 LED Matrix ein Herz und das englische Wort "Hello" ausgegeben wird.
Tumblr media
Um diesen Code auf den BBC micro:bit zu übertragen, stehen uns zwei Optionen zur Verfügung. Erstens können wir ihn direkt aus dem Browser an den Mikrocontroller senden. Zweitens können wir eine HEX-Datei speichern und diese über den Dateimanager auf das Laufwerk des BBC micro:bit kopieren. Option 1 - übertragen des Codes via Browser Zuerst müssen wir die Verbindung zum Mikrocontroller herstellen, dazu klicken wir unten links auf die Schaltfläche "Send to micro:bit". Es öffnet sich nun ein Wizard, welcher uns durch diesen Prozess begleitet.
Tumblr media Tumblr media Tumblr media
Im letzten Schritt müssen wir den Mikrocontroller aus dem Dialog wählen und dieses mit der Schaltfläche "Verbinden". Bei jeden weiteren klick auf die Schaltfläche "Send to micro:bit" wird das Programm direkt auf den Mikrocontroller kopiert und somit sparen wir uns sehr viel Zeit. Option 2 - übertragen des Codes über den Dateimanager Wenn wir den BBC micro:bit mit dem Computer verbunden haben, dann sollten wir das Laufwerk "MICROBIT" im Dateimanager sehen. Im Browser wählen wir die Schaltfläche "Save" und vergeben dem Projekt einen Namen. Danach wird die HEX-Datei heruntergeladen und die kopieren wir dann auf das genannte Laufwerk.
Tumblr media Tumblr media Tumblr media Tumblr media
Codesnippets aus der Referenz verwenden
Wie erwähnt ist der BBC micro:bit für Anfänger bestens geeignet, dieses spiegelt sich auch in diesem Editor wider. Wenn wir links auf "References" klicken, dann finden wir verschiedene Kategorien, welche die Funktionen des Microbit widerspiegeln. Hier finden wir dann wiederum einzelne Codeschnipsel (auch Snippets genannt) welche wir per Drag'n Drop in unseren Quellcode ziehen können.
Hinweise zum Programmieren in Python
Bevor wir mit dem Programmieren einzelner Beispiele kommen, möchte ich zur Syntax von Python kommen. Hier gibt es einige Hinweise, welche du beachten solltest und manchmal auch musst. Einrücken von Code Der Code muss immer eingerückt werden, hier kannst du entweder 3 Leerzeichen oder einen Tab benutzen. Das siehst du am bereits vorgeladenen Beispiel sehr deutlich, der Beginn der While-Schleife ist auf Ebene 0 und der Code innerhalb der Schleife eine Ebene tiefer. Wenn wir nun das Codesnippet zum Taster in diese Schleife einfügen, dann wird wiederum dieser Code der If-Bedingung ebenso eine Ebene tiefer gesetzt. while True: if button_a.is_pressed(): display.scroll('A') display.show(Image.HEART) sleep(1000) display.scroll('Hello') Sprechende Variablennamen verwenden Damit du jederzeit in deinem Code weißt, welche Variable für welche Funktion steht, solltest du sprechende Namen verwenden. Wenn du einfache mathematische Operationen durchführen möchtest, dann möge das vielleicht wie im nachfolgenden Beispiel noch gehen: if button_a.is_pressed(): a = 1 b = 2 c = a + b display.show(c) Jedoch für komplexe Anwendungen solltest du sprechende Bezeichnungen verwenden. message = "" while True: if button_a.is_pressed(): message = "Hallo Welt!" if button_b.is_pressed(): message = "Test 123" display.scroll(message) Quellcode Dokumentation Im Code selber kannst du Text schreiben, welcher zu keiner Ausführung kommt, dieses nennt man Dokumentation. Hier solltest du besonders am Anfang gebrauch von machen, denn so kannst du deinen Code beschreiben und weißt auch noch am nächsten Tag oder Woche was diese Zeile Code macht. Mit einer Raute "#" startest du einen einzeiligen Kommentar und mit drei einfache Anführungszeichen einen mehrzeiligen Kommentar. while True: #Hier steht ein einzeiliger Kommentar ''' Ein mehrzeiliger Kommentar wird mit drei einfachen Anführungszeichen gestartet und beendet. '''
Beispiel - Taster abfragen
Der Microbit verfügt über zwei Taster und einen kapazitiven Touch-Sensor, welcher sich auf der Vorderseite hinter dem Logo versteckt. Diese können wir nun abfragen und auf den jeweiligen Status reagieren. Wenn wir prüfen möchten ob der Taster gedrückt ist, prüfen wir dieses mit "is_pressed" ab und erhalten ein TRUE wenn dieses so ist oder ein FALSE wenn nicht. from microbit import * while True: #Taster A gedrückt? if button_a.is_pressed(): display.show(Image.ANGRY) #Taster B gedrückt? if button_b.is_pressed(): display.show(Image.HAPPY) #kapazitiver Taster gedrückt? if pin_logo.is_touched(): display.show(Image.SAD) Wenn wir diesen Code jetzt ausführen und einen der drei Taster betätigen, dann wird auf der 5x5 LED Matrix ein Smiley angezeigt. Read the full article
0 notes
draegerit · 2 years ago
Text
Programmieren leicht gemacht: Das EDU:BIT-Set für Bildung und Spaß
Tumblr media
Hey du! Bist du bereit, in die spannende Welt des Programmierens einzutauchen? Egal, ob du ein absoluter Anfänger oder schon ein kleiner Code-Künstler bist, ich habe heute etwas ganz Besonderes für dich. Ich möchte dir das "EDU:BIT-Set" von Cytron vorstellen, ein echtes Schatzkästchen, das dir die Türen zur Programmierung öffnet und dabei jede Menge Spaß macht!
Tumblr media
Programmieren leicht gemacht: Das EDU:BIT-Set für Bildung und Spaß Stell dir vor, du könntest deine eigenen Lichtshows entwerfen, Musik komponieren, Geräusche erkennen oder Roboter zum Leben erwecken – und das alles ganz einfach mit einem Mikrocontroller namens "BBC micro:bit v2.21" und einigen cleveren Modulen. Klingt cool, oder? In diesem Beitrag werde ich dir alles über das EDU:BIT-Set erzählen, wie es funktioniert und wie es dir helfen kann, Programmieren spielend zu lernen. Also schnall dich an und lass uns loslegen! Disclaimer: Bevor wir in die aufregende Welt des EDU:BIT-Sets eintauchen, möchte ich transparent sein und erwähnen, dass ich dieses Set freundlicherweise von der Firma Cytron erhalten habe. Es ist wichtig zu betonen, dass ich für diesen Beitrag keinerlei Vorgaben oder Anweisungen von Cytron erhalten habe und meine folgenden Aussagen und Meinungen ausschließlich auf meiner eigenen Erfahrung und Meinung basieren. Mein Ziel ist es, dir eine ehrliche und unvoreingenommene Einschätzung dieses Produkts zu präsentieren. Das bedeutet, dass ich sowohl die positiven als auch die eventuellen negativen Aspekte des EDU:BIT-Sets beleuchten werde, damit du eine fundierte Entscheidung treffen kannst, ob es das richtige Werkzeug für deine Programmierabenteuer ist. Also lasst uns gemeinsam in die Welt des EDU:BIT-Programmierens eintauchen und herausfinden, was dieses Set wirklich draufhat!
Warum sollte ich programmieren lernen?
Das EDU:BIT-Set ist wirklich cool, und hier ist der Grund, warum du es ausprobieren solltest: - Spaß und Kreativität: Mit dem Set kannst du deine eigenen Spiele erstellen, Musik machen, Lichtshows gestalten und sogar Roboter zum Leben erwecken! Das bedeutet, du kannst wirklich kreativ sein und Dinge erschaffen, die du dir ausdenkst. - Verstehen, wie Dinge funktionieren: Es hilft dir zu verstehen, wie Computer und Technologie um dich herum funktionieren. Du wirst nicht nur ein Nutzer sein, sondern verstehen, wie die Dinge im Hintergrund arbeiten. - Lösen von echten Problemen: Mit dem Programmieren kannst du echte Probleme lösen. Zum Beispiel könntest du eine App entwickeln, die dir hilft, deine Hausaufgaben zu organisieren, oder eine Erfindung machen, die das Leben einfacher macht. - Spaß mit Freunden: Du kannst mit deinen Freunden zusammenarbeiten und gemeinsam coole Projekte erstellen. Es ist eine großartige Möglichkeit, Zeit miteinander zu verbringen und etwas Neues zu lernen. - Karrieremöglichkeiten: Wenn du programmieren lernst, öffnest du dir auch Türen für zukünftige Jobs. Es gibt viele spannende Berufe in der Technologie, die sehr gut bezahlt werden. Denk daran, du musst nicht sofort alles wissen. Das EDU:BIT-Set ist perfekt für Anfänger, und du kannst in deinem eigenen Tempo lernen. Es ist wie ein Abenteuer, bei dem du entdeckst, wie man Computer dazu bringt, das zu tun, was du möchtest. Viel Spaß dabei!
Unboxing und erster Überblick über das EDU:BIT Set
Packen wir erstmal das Set aus und schauen uns im Detail an, was alles enthalten ist, an. Zunächst ist etwas Bastelmaterial und eine sehr ausführliche, farbig bebilderte Anleitung dabei.
Tumblr media
Verpackung EDU:BIT
Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media Tumblr media
Platine EDU:BIT & Kabel
Tumblr media Tumblr media
Was mich aber besonders interessiert hat, ist das Board zum EDU:BIT Set denn dieses bietet durch seine Vielzahl an Anschlüssen viele Ideen zu Projekten rund um den BBC micro:bit. Übrigens, was den BBC micro:bit betrifft, im EDU:BIT-Set ist die aktuellste Version 2.21 dieses Mikrocontrollers enthalten. Das bedeutet, dass du direkt mit der neuesten Version arbeiten kannst.
Tumblr media
BBC micro:bit Version 2.21
Tumblr media
BBC micro:bit eingesteckt im EDU:BIT
Technische Daten und Features des BBC micro:bit V2.21
Lassen Sie uns zuerst einen Blick auf die technischen Daten des BBC micro:bit werfen. Dieser äußerst kompakte Mikrocontroller ist trotz seiner geringen Größe mit einer beeindruckenden Vielzahl von nützlichen Funktionen ausgestattet. - Mikrocontroller: Nordic nRF52833 ARM Cortex-M4 mit Bluetooth 5.0 - Flash-Speicher: 512 KB - RAM: 128 KB - Bluetooth: Integriertes Bluetooth LE zur drahtlosen Kommunikation - Beschleunigungsmesser: Integrierter Beschleunigungssensor (3-Achsen) - Magnetometer: Integrierter Magnetometer (Kompass) - Temperatursensor: Integrierter Temperatursensor - Lichtsensor: Integrierter Helligkeitssensor (Lichtstärke) - Energieversorgung: Betrieb mit 2 AAA-Batterien oder über USB Features des BBC micro:bit V2.21 - Programmierung in Python, JavaScript (MakeCode), oder über die Mikro:bit-Entwicklungsumgebung - 25 programmierbare LEDs in einer 5x5-Matrix zur Anzeige von Text, Symbolen und Animationen - Touch-fähige Pins zur Interaktion mit der physischen Welt - Mehrere GPIO-Pins für den Anschluss von Sensoren und Aktoren - Integrierter Eingang/Ausgang für Krokodilklemmen (Alligator Clips) - Kompatibel mit Zubehör und Erweiterungsmodulen - Robustes und haltbares Design, ideal für den Schulgebrauch - Breite Unterstützung in der Maker-Community und Bildungsbereich
Wie programmiere ich das EDU:BIT Set?
Jetzt fragst du dich bestimmt wie du dieses Set mit seiner vielzahl an Sensoren und Aktoren programmieren kannst. Die Antwort hier lautet Microsoft MakeCode. Dieses Tool benutzt du online und kannst dort Blöcke zusammen schieben und so deinen Code Schritt-für-Schritt aufbauen, ohne eine einzige Zeile Quellcode zu schreiben.
Tumblr media
Microsoft MakeCode Du kannst aber auch wenn du etwas fortgeschrittener bist in diesem Editor zwischen der Blockansicht und JavaScript wechseln. Jedoch bedenke, dass deine selbst geschriebenen Zeilen in JavaScript derzeit noch nicht interpretiert werden können.
Vorteile von MakeCode
Ein großer Vorteil ist, dass du schnell zu einem Ergebnis kommst, da du über diese Art der Programmierung recht wenig falsch machen kannst, denn die Blöcke passen immer nur in bestimmten Bedingungen zueinander. Des Weiteren kannst du schon einiges online testen. online testen eines Codes von MakeCode
Nachteil beim Programmieren mit MakeCode
Wo Vorteile sind, sind leider auch manchmal Nachteile. Mit den Grundfunktionen dieser Entwicklungsumgebung kannst du schon einiges machen, wenn du jedoch Sensoren / Aktoren steuern oder lesen möchtest, dann benötigst du zusätzliche Bibliotheken, welche du nachladen musst. Hier gibt es eine große Community, welche bereits Projekte veröffentlicht hat, welche du laden kannst und so diese Bibliothek bekommst.
Tumblr media
öffentliche Projekte zum Nachbauen der Community von MakeCode Überblick der Funktionen der EDU:BIT Platine Schauen wir uns einmal an, was die Platine zum EDU:BIT bietet. Wenn du den Beitrag Automatische Bewässerung mit dem BBC micro:bit von mir bereits kennst, dann wird dir dieser Aufbau etwas bekannt vorkommen, denn diese Platine ist recht ähnlich, hat jedoch einige Module mit Sensoren und Aktoren verbunden.
Tumblr media
EDU:BIT im Überblick ModulFunktionenMusic Bit Modul3,5 mm Klinkenbuchse und Piezo-BuzzerSound Bit ModulGeräuschdetektorPotentio Bit ModulDrehpotentiometerIR Bit ModulInfrarot Abstandssensor (einstellbar über Drehpotentiometer)RGB Bit Modulvier NeoPixel-LEDs (für farbige Lichteffekte)TrafficLight Bit Moduldrei LEDs (rot, gelb, grün, wie bei einer Verkehrsampel)Button Bit Modulzwei Taster für die Eingabe von BefehlenWeitere SchnittstellenI2C-Kommunikation - UART-Kommunikation Anschlüsse für Motoren und Servomotoren Die Module kannst du mit einem scharfen Seitenschneider von der Platine trennen und später mit den beigelegten Grove Verbindungskabel wieder mit der Platine verbinden. Jedoch würde ich dir zunächst empfehlen diese an der Platine zu belassen, da so dein Schreibtisch sehr übersichtlich bleibt. (Die Grove Kabel sind der unflexibel und somit fliegen die Sensoren / Aktoren ungeordnet umher.)
Verbinden des Sets mit dem Computer
Dem Set ist ein Kabel beigelegt, welches über einen Micro-USB-Stecker sowie einen Jack-Adapter verfügt. Da in dem Set viele Aktoren verbaut sind, welche viel Strom aufnehmen und der Mikrocontroller hier an seine Grenzen stoßen würde, gibt es eine externe Stromquelle über die USB Schnittstelle.
Tumblr media
Stecker zum Verbinden des EDU:BIT mit dem Computer Bedenke jedoch, wenn du mit Motoren und Servos's arbeitest, deine USB-Schnittstelle vom PC nicht zu überlasten! Dem Set beigelegtem Servo und Motor sind unbedenklich. Links oben findest du im Bereich "Power Supply" einen kleinen Schalter um die externe Stromquelle AN & AUS zu schalten.
Tumblr media
Schalter zum aktivieren / deaktivieren der externen Stromquelle Zusätzlich hast du hier noch drei LEDs für die Indikation von: - Strom AN/AUS, - Batteriespannung niedrig, - Stromaufnahme zu hoch
Beispielprogramm auf dem Mikrocontroller
Wenn du das Set mit dem Computer verbunden hast, dann wird auch gleich ein ausführliches Programm abgespielt. Solltest du dieses nicht sehen so hast du wahrscheinlich den Schalter oben links nicht auf die Stellung AN gestellt.
Tumblr media
Beispielprogramm auf dem EDU:BIT Es werden so ziemlich alle Aktoren in diesem Programm eingebunden. Wenn du einfach mal Musik per PC, Radio, Handy startest, dann solltest du auf der LED Matrix einen Ausschlag sehen. Diesen kannst du mit dem Drehpotentiometer (Modul "Sound Bit" & "Potentio Bit") steuern.
Abschluss & Ausblick
In diesem Beitrag habe ich dir nun gezeigt, was das Set EDU:BIT zu bieten hat, im nächsten Beitrag werde ich dir damit ein paar coole Projekte vorstellen und aufzeigen wie du diese mit Microsoft MakeCode programmierst zeigen. Read the full article
0 notes
draegerit · 2 years ago
Text
Automatische Bewässerung mit dem BBC micro:bit
Tumblr media
Eine automatische Bewässerung im Garten ist nicht nur praktisch, sondern auch sinnvoll. Denn sie ermöglicht eine gleichmäßige Bewässerung der Pflanzen, die notwendig ist, um ein gesundes Wachstum zu fördern. Zudem spart sie Zeit und Mühe, da man nicht ständig manuell gießen muss. Auch können durch eine automatische Bewässerung Wassermengen und Kosten gespart werden. https://youtu.be/ng9RiCTlWNM In diesem Beitrag möchte ich dir gerne zeigen, wie du das Kit von der Firma Cytron Technologies aufbaust und einsetzen kannst. Der Vorteil von diesem Kit ist, dass alles enthalten ist, was du für deine automatische Bewässerung benötigst. Okay, einzig der BBC micro:bit ist nicht enthalten, aber dieser kann ebenso über den Shop erworben werden.
Lieferumfang des Kits zum Aufbau einer automatischen Bewässerung mit einem Mikrocontroller
Das Kit enthält wie erwähnt alles, was du für den Aufbau benötigst, dazu zählt: - eine Anleitung (auf Englisch), - ein kapazitiver Bodenfeuchtesensor, - eine kleine Pumpe mit Schläuchen, - ein Mikro-Servo Typ 9g mit Anschlusskabel, - diverse Kleinteile zum Aufbau (Schrauben, Kabelbinder etc.)
Tumblr media
Zusätzlich benötigen wir noch ein Gefäß für die Pumpe, hier habe ich mir einmal eine 2-Liter-Flasche aus dem örtlichen Baumarkt mit einem breiten Hals besorgt. Des Weiteren empfehle ich dir noch ein Gehäuse für die Schaltung, hier reicht auch schon eine Brotdose welche du im Sonderposten Markt wie Thomas Philips, Zimmermann oder auch bei Kik, T€di etc. finden kannst.
Benötigtes Werkzeug für den Aufbau
In dem Kit ist bereits ein kleiner Schraubendreher enthalten, zusätzlich benötigst du noch: - einen Seitenschneider, - eine Bohrmaschine, inkl. 14er Bohrer
Aufbau der automatischen Bewässerung mit dem BBC micro:bit
Der Aufbau mit einem Kit wie dem von Cytronic ist recht einfach, denn du hast nun alles für deine automatische Bewässerung da und musst dir theoretische keine Sorgen darum machen, wie diese Komponenten zusammenarbeiten müssen. Das Herzstück der Schaltung ist die Hauptplatine mit der Bezeichnung "REKA:BIT" auf welche wir die einzelnen Komponenten anschließen werden.
Tumblr media
Schritt 1 - Anschluss des kapazitiven Bodenfeuchtesensors Als erstes schließen wir den Bodenfeuchtesensor an den Pin an den Pin P2:P12 am REKA:BIT Board an.
Tumblr media Tumblr media Tumblr media
Aufbau des kapazitiven Bodenfeuchesensors Der Bodenfeuchtesensor von Cytronic verfügt über drei LEDs, welche den aktuellen Zustand anzeigen. - DRY - trocken, - MOIST - feucht, - WET - nass https://youtu.be/qkTMT7CV2VE Schritt 2 - Anschluss des Servomotors Bevor der Servomotor an das Board angeschlossen wird, muss dieser mit zwei doppelseitigen Klebepunkte an ebenso zwei Holzspicker verbunden werden. https://youtu.be/llz2XEaxYvI Wenn dieses geschehen ist, dann wird der Servo mit der Verlängerung (war bei mir bereits angeschlossen) an das REKA:BIT Board an den Pin S1 angeschlossen. Beim Anschluss der Verlängerung musst du ebenso Acht geben, dass du beim Einstecken auch Schwarz mit Braun, Rot mit Rot und Gelb mit Weiß verbindest. Schritt 3 - Anschluss der Pumpe an das REKA:BIT Board Die kleine Pumpe hat zwei Adern, eine Rote und eine Schwarze.
Tumblr media Tumblr media
Diese beiden werden wie folgt mit dem Board verbunden: - Rot - M2A - Schwarz - M2B Zum Abschluss wird dann der Schlauch mit der Pumpe verbunden. Dieser sitzt sehr stramm auf der Öffnung, daher muss man ziemlich stark drücken. Es kann auch helfen, wenn man den Schlauch bei Draufdrücken etwas hin und her dreht. Wichtig Laut Anleitung würdest du noch das andere Ende des Schlauches mit dem Ruderhorn am Servomotor verbinden, das machen wir jedoch zunächst NICHT. Der Hintergrund ist dabei, dass wir zunächst den Servomotor ausrichten müssen. Das machen wir mit einem kleinen Programm, welcher ich dir in dem Abschnitt zur Programmierung zeigen werde.
Varianten des BBC micro:bit
Es gibt den BBC micro:bit in derzeit zwei Varianten. Zum einen den alten in der Version 1.5 und den neuen mit der Version 2.2. Beide haben jedoch das gleiche Pinout, somit kannst du auch das alte und günstige Model für deine automatische Bewässerung nutzen.
Tumblr media Tumblr media
Der neue BBC micro:bit V2.2 hat zusätzlich noch eine Bluetoothschnittstelle und somit kannst du diesen auch aus der Ferne steuern.
Vorsicht beim Wiederverwenden eines BBC micro:bit
Ich verwende die Mikrocontroller in diversen Projekten, daher kann und wird auf dem Mikrocontroller bereits ein Programm laufen welches diverse Pins aktiviert / deaktiviert. Um hier nicht irgendwas zu zerstören, werde ich zunächst ein leeres Programm auf den BBC micro:bit aufspielen und danach mit der eigentlichen Programmierung beginnen. Hier bekommst du ein leeres Programm als HEX-Datei zum Download. leeres Projekt für den BBC micro:bitHerunterladen
Einstecken des BBC micro:bit in die REKA:BIT Platine
Den Mikrocontroller steckst du in die Platine so ein, dass die 5x5 LED Matrix nach oben zeigt.
Tumblr media
Da die Schneidklemmen sehr stramm sitzen, bedarf es etwas Kraft, aber nur etwas!
Programmieren der automatischen Bewässerung mit MakeCode
Die Programmierung erfolgt in MakeCode von Microsoft welches du in einem beliebigen Browser aufrufen kannst.
Tumblr media
Oberfläche von MakeCode von Microsoft Erstellen wir also zunächst ein neues Projekt, indem wir auf die Schaltfläche "Neues Projekt" (1) klicken. Im neuen Dialog vergeben wir dem Projekt einen Namen (2) und bestätigen dieses mit der Schaltfläche (3).
Tumblr media Tumblr media
Erweiterung für das Board REKA:BIT hinzufügen Bevor wir die Schnittstellen des REKA:BIT Boards aus MakeCode heraus ansteuern können, müssen wir die Erweiterung REKA:BIT hinzufügen. Dazu klicken wir zunächst auf den Eintrag "Erweiterungen" (1), um danach nach "REKA:BIT" (2) zu suchen. In den Suchergebnissen wählen wir den Eintrag "reka:bit" (3) aus. Wenn die Einrichtung abgeschlossen ist, dann solltest du nun einen neuen Menüpunkt "REKA:BIT" (4) mit zusätzlichen Elementen finden.
Tumblr media Tumblr media Tumblr media
Damit haben wir jetzt Zugriff auf die Schnittstellen und können die Pumpe, den kapazitiven Bodenfeuchtesensor und den Servomotor ansteuern bzw. auslesen. Wichtig Wenn du dein Programm, also die HEX-Datei auf den BBC micro:bit überspielst, dann darf das REKA:BIT Board nicht aktiv sein. Das heißt, du muss den Schalter oben links auf die Stellung OFF (oben) setzen. Wenn der Upload erfolgt ist, dann kannst du das Board wieder aktivieren (Stellung ON / unten).
Tumblr media
Schritt 1 - Ausrichten des Servomotors Zunächst beenden wir den Aufbau und richten den Servomotor aus, um dann den Schlauch anzuschließen. In meinem Fall waren die Winkel
Tumblr media
Hier jedoch der Code als HEX-Datei zum Download. Diesen kannst du wieder per Drag'n Drop auf das Laufwerk deines BBC micro:bit ziehen. Servomotor ausrichtenHerunterladen Schritt 2 - Funktion für die Bewegung des Servomotors Der Servomotor kann einen Winkel zwischen 0 und 90 Grad anfahren, dafür benötigt dieser eine Zeit X. In meinem Fall möchte ich das, dass Wasser um die Pflanze verteilt wird, daher steuere ich den 90° Winkel in drei Schritten, mit jeweils 0,5 Sekunden Pause an. Da der Code in MakeCode immer sehr lang wird, lagere ich diese Funktion aus.
Tumblr media
MakeCode - ausgelagerte Funktion zum drehen des Servos Schritt 3 - Auslesen des Bodenfeuchtesensors Den Bodenfeuchtesensor haben wir an den Pin P2 angeschlossen, zunächst wollen wir den Wert auf Knopfdruck auslesen und auf der 5x5 LED Matrix anzeigen.
Tumblr media
Den Bodenfeuchtesensor habe ich zunächst in ein Glas Wasser gestellt, dieses sorgt für die Anzeige der Grenzen (minimal & maximal). https://youtu.be/Rf1P5xYesCY Der maximale Wert für den Bodenfeuchtesensor liegt in meinem Fall bei 648 und der minimale Wert bei 480. Wobei der kleinste Wert von 480 ermittelt wurde, wo der Bodenfeuchtesensor im Glas Wasser stand und 648, wo dieser trocken war. Unsere Pflanze möchten wir natürlich gar nicht erst an die Grenze bringen und daher wähle ich im Code den Wert von 550. Schritt 4 - Bewässerung starten bei trockenem Boden Die beiden ermittelten Grenzen wollen wir nun nutzen, um die Pumpe zu aktivieren bzw. zu deaktivieren. Wenn du den BBC micro:bit in der Version 2.20 verwendest, dann kannst du auch zusätzlich noch einen Ton über den Piezo Buzzer ausgeben, wenn die Bewässerung gestartet wird.
Tumblr media
Finales Programm
Mit dem letzten Schritt haben wir jetzt das Projekt abgeschlossen und unsere automatische Bewässerung fertiggestellt.
Tumblr media
Hier nun das fertige Programm zum download. MakeCode Programm für die automatische Bewässerung mit dem BBC micro:bitHerunterladen
Fazit
Der Aufbau des Kits ist sehr einfach und es ist alles dabei, was man für den Aufbau einer automatischen Bewässerung benötigt. Leider musste ich feststellen, dass die Wasserpumpe das Gefäß leer saugt. Hier werde ich mir eine andere Lösung mit einem Relais und einer kleinen Solarpumpe einfallen lassen, damit dieses nicht geschieht. Auch musste ich den Schlauch kürzen, damit die Pumpe es überhaupt schafft das Wasser so weit zu fördern. Read the full article
0 notes
draegerit · 5 years ago
Text
BBC micro:bit Starter Set #1: Infrarot Modul
Tumblr media
In diesem Beitrag möchte ich dir zeigen wie du das Infrarot Modul an dem BBC micro:bit betreiben kannst.  Ein sehr ähnliches Infrarot Modul habe ich bereits für den Arduino in dem Beitrag Arduino Lektion 20: IR Fernbedienung auslesen ausgiebig vorgestellt, jedoch unterscheidet sich die Programmierung am BBC micro:bit deutlich vom Arduino. Bezug des Infrarot Modules Wie bereits erwähnt ist das Infrarot Modul Bestandteil des Microbit Starter Kit welches du im Shop von digitspace.com für knapp 31$ findest. Aufbau des Infrarot Modules Das Infrarot Modul hat eine Abmaße (L x B x H) von 3,5cm x 2,5cm x 1,5cm. Auf der linken Seite verfügt das Modul über eine 3 polige JST Buchse und auf der rechten Seite über die Infrarot Diode. Aufbau der Schaltung Für die Schaltung verwende ich neben dem IR Modul noch zusätzlich einen Piezo Buzzer und natürlich die mitgelieferte Infrarot Fernbedienung. Der Vorteil bei dem Microbit Starter Kit ist das alle benötigten Kabel beiliegen. (Jedoch ist kein BBC micro:bit und Datenkabel dabei.) Der Microcontroller wird in das Expansionboard gesteckt so das die Schrift "micro:bit" in Richtung der Pins zeigt.  Der Piezo Buzzer wird an den Pin P0, das IR Modul an den Pin P8 angeschlossen. Programmieren Zum programmieren verwende ich die Entwicklungsumgebung MakeCode. Dieses Tool ist kostenfrei unter https://makecode.microbit.org erhältlich und kommt mit sehr vielen Erweiterungsmodulen daher. einrichten Read the full article
0 notes
draegerit · 5 years ago
Text
Vorstellung Microbit Starter Kit für den BBC micro:bit
Tumblr media
In diesem Beitrag möchte ich das "Microbit Starter Kit" für den BBC micro:bit von der Firma digitspace.com vorstellen. Ich habe dieses Set kostenfrei für ein Review zur Verfügung gestellt bekommen und möchte dir nun zunächst in diesem Beitrag die Bestandteile des Sets vorstellen. Obwohl ich dieses Set kostenfrei von digitspace.com erhalten habe möchte ich meine pers. Meinung abgeben und lasse mich nicht beeinflussen. Bezug des Microbit Starter Kit Dieses Set erhältst du über den Shop von digitspace.com für 31 oder knapp 27€ (je nach Kurs). Das ist für die Masse an Sensoren & Aktoren wirklich knapp kalkuliert und wie ich finde ein guter Preis. Bei der Bestellung muss man jedoch darauf achten das die Pakete aus dem asiatischen Raum geliefert werden und somit mit höheren Versandkosten und eine längere Lieferdauer rechnen muss. Wenn man jedoch die Bauteile schnell haben möchte so sollte man auf FedEx Express zurückgreifen und dann dauert es nur ca. 10 Werktage bis das Paket eintrifft.  enthaltene Sensoren & Aktoren Hier nun ein Überblick über die im Set enthaltenen Sensoren & Aktoren im Microbit Starter Set. Das Modul mit dem Reedkontakt habe ich extra gelegt denn der kleine, dünne Glasmantel ist sehr sensibel und kann leicht kaputt gehen. Einige der Sensoren & Aktoren habe ich bereits für den Arduino vorgestellt. Jedoch werde ich jedem Bauteil aus diesem Set ein extra Beitrag widmen. Verbinden Read the full article
0 notes
draegerit · 6 years ago
Text
BBC micro:bit #4: Piano Erweiterungskarte
Tumblr media
27In diesem Beitrag möchte ich die Piano Erweiterungskarte für den BBC micro:bit vorstellen.
Tumblr media
Piano Erweiterungskarte für den BBC micro:bit
Aufbau
Diese Karte verfügt über 4 NeoPixel, 8 Piano Tasten (Beschriftet mit C,D,E,F,G,A,B,C) einem Piezo Buzzer sowie ein Slot in welcher der BBC micro:bit gesteckt wird. 
Tumblr media
BBC micro:bit mit aufgesteckter Piano Erweiterungskarte Mit diesem kleinen Piano kann man leicht einpaar eigene Lieder komponieren oder wenn man die Noten (in Form von Buchstaben) zu einem bekannten Lied hat diese auch nachspielen. Des Weiteren verfügt das Board über Lötpunkte (oben rechts & links) über welche man verschiedene I/O Pins abgreifen kann. (Diese Lötunkte sind auf der Rückseite beschriftet.)
Tumblr media
Piano Erweiterungskarte für den BBC micro:bit (Rückseite) Pinout Symbol Bezeichnung VCC Eingangsspannung 3.3V GND Ground P0 Piezo Buzzer P1 LEDs SCL Piano Tasten, I2C Clock SDA Piano Tasten, I2C Data
Technische Daten
Touch controller: TTP229 LED: WS2812B LED Farbtiefe: 16777216 Farben Abmaße: 85mm x 56mm Betriebsspannung: 3.3V
Programmieren
Installieren & Konfigurieren Für die Erweiterungskarte gibt es von der Firma Waveshare ein passendes Plugin für den Visuellen Editor "MakeCode".  Diese Erweiterung installiert man, indem man über den Menüpunkt "Mehr..." (graues Zahnrad, oben rechts) aus dem Hauptmenü zum Unterpunkt "Erweiterungen" navigiert und dort dann die Adresse https://github.com/waveshare/touchpiano eingibt. Danach muss man die Auswahl entweder mit der Entertaster oder aber mit einem klick auf die Lupe bestätigen. Es wird nun nach der Erweiterung gesucht und nach kurzer Zeit wird diese auch angezeigt. Nun kann man ganz einfach draufklicken und diese Erweiterung wird temporär dem visuellen Editor hinzugefügt. Installierte Erweiterungen für den visuellen Editor MakeCode "verschwinden" wieder wenn man seinen Browserverlauf und die Cookies löscht.  Nachdem die Erweiterung installiert ist kann aus dem Reiter "WSTouchPiano" das Modul "Play Piano" (letzter Eintrag) per Drag'n Drop der Schleife "dauerhaft" hinzugefügt werden. Nun ist die Programmierung abgeschlossen und wir können nun unserem Code einen Namen geben und herunterladen. (Das war wirklich einfach!) Danach wird diese *.hex Datei mit einem Dateiexplorer auf den BBC micro:bit kopiert und wir können unser erstes Lied spielen. Das kleine Projekt ist unter https://makecode.microbit.org/_CLkKJHb7fc65 zu finden. Beispiel "Alle meine Entchen" Hier nun die Noten für das Kinderlied "Alle meine Entchen". C D E F G G A A A A G A A A A G F F F F E E D D D D C steuern der NeoPixel Die NeoPixel werden im einfachsten Fall über das betätigen einer Taste am Piano gesteuert, dieses übernimmt der Baustein "Play Piano" selbständig. In diesem Abschnitt möchte ich erläutern wie man die NeoPixel selber steuern kann und somit die Lichteffekte selber gestalten kann. Das Board verfügt über 4 NeoPixel, diese können jeweils eine 8bit Farbtiefe (16777216 Farben) annehmen, d.h. es sind die "normalen" RGB Farben möglich. (Wobei diese nicht immer korrekt dargestellt werden.)
Tumblr media
Module zum steuern der 4 NeoPixel am Piano Board Es kann entweder ein Modul gewählt werden wo aus einer Liste vordefinierte Farben ausgesucht werden oder aber ein Modul wo der RGB Wert eingetragen wird. Was jedoch fehlt ist eine Möglichkeit die Helligkeit zu regulieren.
Tumblr media
MakeCode: darstellen der Farben orange & blau auf dem Piano Board https://makecode.microbit.org/_ceufa20xtAtw Das Eregebnis sieht dann wiefolgt aus:
Tumblr media
aktive farbige NeoPixel am Piano Board Das Fotografieren von NeoPixel ist immer etwas schwierig, da diese für den Sensor der Kamera zu hell sind. Normalerweise ändere ich dann immer die Helligkeit, so das die Aufnahme gut wird, jedoch kann bei diesem Board wie bereits erwähnt die Helligkeit der NeoPixel nicht geändert werden. (Außer man wählt eine dunkle Farbe.) Nun kann man mit etwas Programmieren und einer Schleife auch kleine Lichteffekte erstellen. https://makecode.microbit.org/_AVqgxehCyXrb
Bezug
Diese Erweiterungskarte kann man bei zbsp. ebay.de für knapp 10€ inkl. Versandkosten per Sofortkauf erwerben. Hier muss man aber auch etwas aufpassen denn einige bieten das gleiche Modul für den doppelten Preis an.
Fazit
Es mach viel Spass dieses Board zu betreiben und einpaar kleine Lieder zu spielen. Jedoch bietet das Board für den Preis nur eine kurzweilige Beschäftigung denn viel mehr als den Controller drauf stecken und einpaar Sketche programmieren ist nicht dabei.  Ich werde mir mal als nächstes einpaar andere Boards für den BBC micro:bit anschauen und vielleicht ist da ja dann was besseres dabei. Read the full article
0 notes
draegerit · 6 years ago
Text
BBC micro:bit #3: einfaches Würfelspiel
Tumblr media
Wie man ein einfaches Würfelspiel auf dem BBC micro:bit programmiert, möchte ich in diesem Tutorial beschreiben.
Tumblr media
BBC micro:bit Würfelspiel Der BBC micro:bit verfügt über eine 5x5 LED Matrix und neben 2 Tastern noch einem Geestensensor (und noch einiges zusätzlich was wir aber für das Würfelspiel nicht benötigen). Das Spiel "programmieren" wir zunächst mit dem Editor MakeCode. Dieser Editor ist für Anfänger bestens geeignet da dieser mit visuellen Komponenten daherkommt welche per Drag'n Drop zusammengefügt werden. Ein weiterer Vorteil von diesem Editor ist es, das der Code in einem emulierten BBC micro:bit online getestet werden kann. Die Standard funktionen wie Tastenbetätigen, Schütteln und die LED Matrix sind in dieser Ansicht emuliert und somit muss man nicht umständlich den Code herunterladen und auf dem micro:bit aufspielen (obwohl dieses auch relativ schnell geht).
Spielablauf
Bevor wir etwas programmieren, müssen wir den Spielablauf definieren. Dieser Ablaufplan soll uns später dabei behilflich sein alle UseCases zu beachten und vorallem nichts zu vergessen.  So ein Ablaufplan kann in einer Beschreibungssprache wie UML oder aber auch rein Textuell dargestellt werden. Für unser Beispiel reicht es aus wenn wir dieses kurz niederschreiben. Wenn der Benutzer den micro:bit geschüttelt, so soll eine neue Zufallszahl zwischen 1 und 6 erzeugt und die LED Matrix gelöscht werden. Wenn die Zufallszahl gleich 1 ist dann soll die LED an Position (X2, Y2) aktiviert werden. Wenn die Zufallszahl gleich 2 ist dann sollen die LEDs an Position (X0, Y0) und (X4, Y4) aktiviert werden. Wenn die Zufallszahl gleich 3 ist dann sollen die LEDs an Position (X0, Y0), (X2, Y2) und  (X4, Y4) aktiviert werden. Wenn die Zufallszahl gleich 4 ist dann sollen die LEDs an Position (X0, Y0), (X0,Y4), (X4, Y0) und (X4, Y4) aktiviert werden. Wenn die Zufallszahl gleich 5 ist dann sollen die LEDs an Position (X0, Y0), (X0,Y4), (X2, Y2), (X4, Y0) und (X4, Y4) aktiviert werden. Wenn die Zufallszahl gleich 6 ist dann sollen die LEDs an Position (X0, Y0), (X2,Y0), (X4, Y0), (X0, Y4), (X2, Y4) und (X4, Y4) aktiviert werden.
Tumblr media
X & Y Koordinaten der LED Matrix
Erstellen des Quellcodes
Öffnen wir also zunächst den Editor indem wir im Webbrowser (ich verwende Google Chrome) die Adresse https://makecode.microbit.org/#editor öffnen. Den Editor habe ich bereits im Tutorial zum BBC micro:bit unter Vorstellung #1 2019: BBC micro:bit vorgestellt. Wir haben in der Standardansicht des Editors "MakeCode" einmal einen Block "dauerhaft" sowie "am Start". Für unser Würfelspiel benötigen wir diese nicht. Denn der Code soll ja nur ausgeführt werden wenn der Microcontroller geschüttelt wird. Zunächst benötigen wir also einen Rahmen in welchem unser Spiel ablaufen soll. Da der Microcontroller erst etwas machen soll wenn dieser geschüttelt wurde benötigen wir hier den nachfolgenden Block.
Tumblr media
MakeCode Komponenten "Shakesensor" In diesem Block werden alle weiteren Anweisungen per Drag'n Drop hineingezogen. Damit wir unsere Zufallszahl später auswerten können müssen wir diese "irgendwo" zwischenspeichern, beim programmieren nutzt man dafür Variablen. Also erzeugen wir uns eine neue Variable "zahl". Navigieren wir dazu über das Menü "Variablen" und wählen dort die Schaltfläche "Make a Variable..." in dem neuen Fenster geben wir nun den Namen für diese Variable ein. Ich habe mich für den Namen "zahl" entschieden. Als nächstes generieren wir eine Zufallszahl zwischen 1 und 6 und weisen unserer Variable "zahl" diesen Wert zu.
Tumblr media
Erzeugen einer Zufallszahl und zuweisen zu einer Variable "zahl" Nun müssen wir die LED Matrix einmal leeren, denn ggf. haben wir vorher ja schon einen Wert angezeigt.
Tumblr media
leeren der LED Matrix mit dem Editor MakeCode Als nächstes müssen wir nun unsere zwischengespeicherte Zufallszahl in der Variable "zahl" auswerten. Dieses erfolgt in einer Abfrage. Navigieren wir also nun dazu über das Menü "Logik" und wählen dort den nachfolgenden markierten Block aus.
Tumblr media
MakeCode erstellen einer Abfrage Jetzt haben wir jedoch erst den Rahmen für die Abfrage erstellt nun müssen wir noch eine Bedingung einfügen. Unsere erste Bedingung lautet wie folgt: "Wenn die Zufallszahl gleich 1 ist dann soll die LED an Position (X2, Y2) aktiviert werden." D.h. wir prüfen unsere Variable "zahl" auf den Inhalt und wenn dieser einen definierten Wert angenommen hat soll eine oder mehrere LEDs aufleuchten. Unter dem Menüpunkt "Logik" finden wir zusätzlich einen Vergleichsoperator.
Tumblr media
MakeCode - Vergleichsoperator Mit diesem können wir nun unsere Bedingte Abfrage so ausbauen das die Variable "zahl" auf den Wert "1" geprüft wird.
Tumblr media
MakeCode - Bedingteabfrage Nun können wir in diesem Block die Anweisung für die LED Matrix einsetzen. Wir können dazu zwei Wege wählen einmal in dem wir den Block nutzen um eine X/Y Koordinate einzugeben oder aber wir nutzen den Block wo wir eine LED per Mausklick aktivieren können. Beide Blöcke werden zum Ziel führen. Wenn wir nun den Block gewählt haben und die LED aktiviert, bzw. die X/Y Koordinate eingetragen haben sollte unsere Bedingte Anweisung wie folgt aussehen.
Tumblr media
MakeCode - bedingte Abfrage für die Augenzahl "1" Nun müssen wir das ganze für die Augenzahlen 2 bis 6 wiederholen. Dann ist unser Würfelspiel schon fertig.  Ich habe das Projekt unter https://makecode.microbit.org/_XW3fzr6v0ao7 veröffentlicht.
Video
Download
Die kompilierte *.hex Datei kannst du unter folgendem Link herunterladen.       Read the full article
0 notes
draegerit · 6 years ago
Text
BBC micro:bit #2: Sprachausgabe
Tumblr media
Der BBC micro:bit hebt sich vom Arduino und deren Clones in der Programmierung deutlich ab. Wir können zbsp. auch ganz einfach Sprachausgaben an diesem Microcontroller generieren. Dabei ist die Sprachqualität natürlich etwas eingeschränkt aber es funktioniert schon recht gut.
Was wird benötigt?
Wir benötigen dazu folgende Bauelemente: 1x BBC micro:bit 1x Erweiterungskarte (für den BBC micro:bit) 2x Breadboardkabel, 10cm, männlich - weiblich Nun gibt es zwei Arten wie wir die Sprachausgabe uns anhören können, einmal mit einem einfachen Piezo Buzzer oder mit einer aktiv Box. Aufbau mit dem Piezo Buzzer Möchte man die Schaltung mit einem Piezo Buzzer aufbauen so benötigt man neben die oben genannten Bauteile nur noch zusätzlich einen Piezo Buzzer (im nachfolgenden nur als Buzzer bezeichnet).
Tumblr media
Piezo Buzzer Einen Buzzer kann man bei ebay.de schon für ca. 3€ erwerben. (Eine große Preisersparnis kann man mit 5er oder 10er Packungen erhalten.)
Tumblr media
Schaltung - Erweiterungskarte für den BBC micro:bit mit Piezo Buzzer Der Nachteil bei einem Piezo Buzzer ist das dieser sehr leise ist jedoch ist dieser deutlich günstiger und kleiner. 
Tumblr media
Aufbau - BBC micro:bit mit Piezo Buzzer Video In diesem kurzen Video möchte ich aufzeigen wie die Sprachausgabe auf einem Piezo Buzzer klingt.   Aufbau mit einer aktiv Box Wer etwas mehr Qualität haben möchte der nutzt eine aktiv Box. Diese gibt es schon für wenige Euros im Discounter. Ich nutze für dieses Tutorial die Computerboxen "Logitech  Z213 2.1". Um an dem 3,5 Klinkenstecker die Pins 1 und 2 anzuschließen benötigen wir zusätzlich noch 2 Krokodilklemmen, diese gibt es für ca. 6€ in einer 10er Packung auf ebay.de zu kaufen.
Tumblr media
Krokodilklemmen Mit diesen "Klammern" können wir nun die beiden Pins 0 & 1 an den 3,5 Klinkenstecker anschließen. Dazu greifen wir zunächst die Pins von der Erweiterungskarte mit Breadboardkabeln ab und klemmen an diese ein Ende von unseren Krokodilklemmen. Das andere Ende der Krokodilklemmen, klemmen wir an den 3,5 Klinkenstecker hier müssen wir die Spitze und das Ende verbinden.
Tumblr media
Anschluss - Krokodilklemmen am 3,5 Klinkenstecker Wenn wir alles angeschlossen haben dann sollte unserer Aufbau ungefähr so aussehen:
Tumblr media
Anschluss - BBC micro:bit an aktiv Boxen Video Man hört in dem Video einen deutlichen Unterschied zum einfachen Piezo Buzzer.
Quellcode
Nachdem ich nun gezeigt habe welche 2 Möglichkeiten es gibt die Schaltung aufzubauen. Müssen wir natürlich zunächst einmal dem BBC micro:bit programmieren.  Neben der Bibliothek "microbit", welche die Basisfunktionen für den Microcontroller liefert benötigen wir zusätzlich für unsere Sprachausgabe die Bibliothek "speech". Nun können wir in unserer Endlosschleife mit der Funktion "speech.say" einen einfachen englischen Text ausgeben. Es werden bisher nur englische Wörter / Sätze unterstützt. Nach der Sprachausgabe habe ich eine kleine Pause von 2sek. eingefügt. # Bibliothek mit den Funktionen für den BBC micro:bit from microbit import * # Bibliothek mit den Funktionen für die Sprachausgabe import speech while True: # den Text ausgeben speech.say("This is a simple Test.") # eine kleine Pause von 2 sek. sleep(2000)
manipulieren der Sprachausgabe
Die Sprachausgabe erfolgt wie bereits erwähnt in englischer Sprache, was man jedoch manipulieren kann ist die Geschwindigkeit, die Höhe und die sowie wie diese klingt. Die Klangfarbe lässt sich mit zwei Parametern beeinflussen, jeweils ob man mehr dumpf spricht (wie eine Bauchrednerpuppe) oder sehr aufgeregt. speed Die Geschwindigkeit mit welcher der Text wiedergegeben wird. Der minimale Wert von "0" ist die schnellste Geschwindigkeit und der maximale Wert von "255" ist der schnellste. Bei einer Wahl von der Geschwindigkeit hört man nur ein kleines piepen somit bewegt sich meine Auswahl irgendwo in der Mitte. pitch Die Höhe der Stimme bestimmt man mit dem Parameter "pitch". Der minimale Wert von "0" ist sehr hoch und der maximale Wert von "255" sehr tief. throat Mit dem Parameter "throat" wird bestimmt wie relaxed oder angespannt die Stimme klingen soll. Der minimale Wert von "0" klingt sehr entspannt und der maximale Wert von "255" klingt sehr angespannt. mouth Der Parameter "mouth" manipuliert die Stimme in der Form das beim minimalen Wert von "0" diese sehr dumpf klingt und beim maximalen Wert von "255" sehr offen. Beispiel Hier nun ein kleines Beispiel mit dem allseits  bekannten Text "Hello World!". Wenn der Benutzer auf den Button "A" klickt dann wird die Funktion "saySomething" aufgerufen. In dieser Funktion wird nun unser Text als Sprache ausgegeben. # Bibliothek mit den den Funktionen für den micro:bit from microbit import * # Bibliothek für die Sprachausgabe import speech # Funktion um einen Text als Sprache auszugeben. def saySomething(): speech.say("Hello World!", speed=85, pitch=120, throat=125, mouth=150) # Endlosschleife while True: # Wenn der Button "A" gedrückt wird dann mache... if button_a.is_pressed(): # Funktion aufrufen saySomething() Für dieses Beispiel wurde am Ende der Endlosschleife kein "sleep" eingebaut, da diese Funktion eine kleine Pause bewirkt könnte der Microcontroller sonst den Status (Button gedrückt) des Buttons "A" verpassen bzw. erst etwas später anfangen den Text auszugeben.
Fazit
Mit der Bibliothek "speech" und einem Aktivlautsprecher kann man sich einfache Texte ausgeben und dem BBC micro:bit etwas "leben" einhauchen. Eine ausführliche Dokumentation zu dieser Bibliothek findest du unter https://microbit-micropython.readthedocs.io/en/latest/tutorials/speech.html. Auf der Webseite wird jedoch hervorgehoben das die Bibliothek "speech" sich z.Zt. (stand 03.032019) sich im AlphaCode Status befindet, d.h. es wird weiter an dieser Entwickelt aber der aktuelle Stand ist "gut genug" um veröffentlicht zu werden.  Read the full article
0 notes
draegerit · 6 years ago
Text
BBC micro:bit #1: LED blinken & fade
Tumblr media
In diesem Tutorial möchte ich erläutern wie man LED's mit dem BBC micro:bit zum blinken und zum faden bringt.
Tumblr media
micro:bit mit LEDs Den Microcontroller micro:bit habe ich bereits im Tutorial Vorstellung #1 2019: BBC micro:bit vorgestellt. Der Microcontroller micro:bit verfügt über 20 Ein/Ausgänge von denen kann man 6 als analoge verwenden.
Aufbau der Schaltung
Schließen wir also zunächst an drei dieser Ausgänge jeweils eine LED an. Wie man eine LED zum blinken bringt habe ich bereits zum Microcontroller Arduino UNO unter Arduino Lektion 1: Blinkende LED erläutert. Der micro:bit wird jedoch in MicroPython bzw. mit dem visuellen Editor MakeCode etwas anders programmiert, daher möchte ich nun einige kleine Tutorials zu diesem Microcontroller bereitstellen. Für das nachfolgende Beispiel benötigst du: 1x micro:bit, 1x Erweiterungskarte, 3x 220 Ohm Widerstand, 1x LED, 5mm, rot, 1x LED, 5mm, gelb, 1x LED, 5mm, grün, 4x Breadboardkabel, 10cm, männlich - weiblich Da wie erwähnt das Abgreifen der Pins an der Schnittstelle des micro:bit sehr schwierig ist habe ich mir eine Erweiterungskarte besorgt. Man kann jedoch auch mit Bananenstecker die Pins 0,1,2 abgreifen,dafür sind die großen Löcher in der Platine vorgesehen und entsprechend Beschriftet.
Tumblr media
Schaltung - micro:bit mit 3 LEDs und Expansionboard
LED blinken
Zu nächst wollen wir die 3 LEDs gleichzeitig blinken lassen. Quellcode MicroPython # Bibliothek importieren um den Befehlssatz für den micro:bit zu verwenden from microbit import * # speichern des aktuellen Status der LEDs # 0 = aus # 1 = an ledState = 0 while True: # wenn der Wert 0 ist dann... if ledState == 0: # setze den Wert für die LEDs auf 1 ledState = 1 elif ledState == 1: # setze den Wert für die LEDs auf 0 ledState = 0 # aktivieren / deaktivieren der LEDs pin0.write_digital(ledState) pin1.write_digital(ledState) pin2.write_digital(ledState) # eine kleine Pause von 750ms. sleep(750) MakeCode
Tumblr media
"Code" zum LED blinken lassen Video Download
  LED fade Effekt
Die Pins des micro:bit fungieren gleichzeit allesamt als PWM Pins dieses finde ich als deutlichen Vorteil gegenüber dem Arduino denn hier sind diese meist mangelware. Quellcode MicroPython # Bibliothek importieren um den Befehlssatz für den micro:bit zu verwenden from microbit import * while True: # eine Schleife über die Zahlen von 0 bis 255 for i in range(0,255): # setzen des aktuellen Zählers als PWM Signal pin0.write_analog(i) pin1.write_analog(i) pin2.write_analog(i) # eine kleine Pause von 5ms. sleep(5) sleep(600) MakeCode
Tumblr media
MakeCode - LED fade Effekt Video Download   Read the full article
0 notes