der crumble controller · 2020-06-01 · einmal programmiert, merkt sich cramble das programm...

16
1 4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de Der Crumble Controller 1) Einleitung Wenn wir an Mikrocontroller für Schüler denken, fallen uns Boards wie der BBC Micro: bit, der Calliope mini oder der Codebug ein. Aber schon lange vor diesen beliebten und bekannten Microcontrollern gab es einen anderen, der sich direkt an Kinder, besonders eher jüngere, richtete, und das war und ist der Crumble Controller. Der Crumble ist ein kostengünstiger, benutzerfreundlicher Mikrocontroller. Ein paar Krokodilkabel und ein USB-Kabel sind alles, was wir brauchen, um Motoren, LEDs und Sensoren anzuschließen und mit dem Experimentieren zu beginnen. Es sind keine großen Programmiererfahrungen erforderlich, da die Software ein grafisches Drag-and-Drop-System ist, das an Scratch erinnert und von ihm wahrscheinlich inspiriert wurde. Der Crumble-Mikrocontroller wird von einem PIC16F145S-Chip angetrieben, nicht von einem typischen Atmel- oder ARM-Chip. Dieser Chip ist jedoch leicht programmierbar und vor allem billig, das ist ideal für ein in großer Anzahl in Schulen einsatzbares Board. (Das Starter-Kit, bestehend aus dem Crumble Controller, einem Batteriefach, einem USB-Kabel,10 Krokodilkabeln, 2 Sparkels, 1 Schalter, 1 Buzzer und 1 Lichtsensor, kostet ca. € 27,00.-) Der Crumble selbst misst nur 51 mm x 34 mm und verfügt über zwölf GPIOs (General Purpose Input / Outputs) und einen Micro-USB-Anschluss, der für die Stromversorgung und Programmierung der Karte verwendet wird.

Upload: others

Post on 13-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

1

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

Der Crumble Controller

1) Einleitung

Wenn wir an Mikrocontroller für Schüler denken, fallen uns Boards wie der BBC Micro: bit,

der Calliope mini oder der Codebug ein. Aber schon lange vor diesen beliebten und

bekannten Microcontrollern gab es einen anderen, der sich direkt an Kinder, besonders eher

jüngere, richtete, und das war und ist der Crumble Controller.

Der Crumble ist ein kostengünstiger, benutzerfreundlicher Mikrocontroller. Ein paar

Krokodilkabel und ein USB-Kabel sind alles, was wir brauchen, um Motoren, LEDs und

Sensoren anzuschließen und mit dem Experimentieren zu beginnen. Es sind keine großen

Programmiererfahrungen erforderlich, da die Software ein grafisches Drag-and-Drop-System

ist, das an Scratch erinnert und von ihm wahrscheinlich inspiriert wurde.

Der Crumble-Mikrocontroller wird von einem PIC16F145S-Chip angetrieben, nicht von einem

typischen Atmel- oder ARM-Chip. Dieser Chip ist jedoch leicht programmierbar und vor allem

billig, das ist ideal für ein in großer Anzahl in Schulen einsatzbares Board. (Das Starter-Kit,

bestehend aus dem Crumble Controller, einem Batteriefach, einem USB-Kabel,10

Krokodilkabeln, 2 Sparkels, 1 Schalter, 1 Buzzer und 1 Lichtsensor, kostet ca. € 27,00.-)

Der Crumble selbst misst nur 51 mm x 34 mm und verfügt über zwölf GPIOs (General Purpose

Input / Outputs) und einen Micro-USB-Anschluss, der für die Stromversorgung und

Programmierung der Karte verwendet wird.

Page 2: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

2

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

Unter den GPIO-Pins finden wir zwei GPIO-Stromeingänge, die für den Anschluss an eine

externe Stromquelle (zwischen 4,5 V und 5,5 V) verwendet werden. Gegenüber haben wir

zwei Power-Out-GPIOs auf der rechten Seite.

Die nächsten vier GPIOs sind A, B, C, D und diese können als Ein- oder Ausgänge eingestellt

werden und sie können digital oder als analoge Ports arbeiten.

Die letzten vier GPIOs sind für die Verwendung mit Gleichstrommotoren reserviert, da der

Crumble über eine integrierte H-Brückenmotorsteuerung verfügt, mit der wir Motoren sowohl

vorwärts als auch rückwärts steuern können.

Die Verbindung zum GPIO funktioniert über Krokodilklemmen. Wenn wir eine stabilere

Verbindung haben wollen, können wir ganz einfach M4-Schrauben und Ringcrimps

verwenden.

Der Crumble kann bis zu 32 sogenannte „Sparkles“ (das sind RGB-LEDs) steuern.

Für den Crumble gibt es auch eine eigene Reihe kompatibler Komponenten, sogenannte

„Crumbs“ („Krümel“), die für die Verwendung mit Krokodilklemmen entwickelt wurden. Wir

haben Line Follower Widgets, Motoren, Sensoren und andere gängige Komponenten, die für

die Verwendung mit Crumble an diesen angepasst sind.

2) Programmierung

Dieser Mikrocontroller „merkt“ sich das Programm, das mit der Software programmiert wurde,

wenn er vom Computer getrennt wird. Wir brauchen nur das grüne Dreieck in der

Programmierumgebung anklicken, das Programm wird in den Crumble gesendet und bleibt

dort im Speicher. Ein separates Speichern wie bei anderen Boards ist nicht notwendig. Wir

schließen den Crumble einfach an eine Batterie (zwischen 4,5 V und 5,5 V) an und das

Programm läuft, wenn der On-Schalter am Batteriegehäuse betätigt wird.

Um das Board zu programmieren, müssen wir die Crumble-Software von der Website

herunterladen. Dieser kostenlose Download ist für Windows-, Mac- und Linux-Geräte

verfügbar, einschließlich des Raspberry Pi.

https://redfernelectronics.co.uk/crumble-software/

Die Crumble-Software ist Scratch sehr ähnlich. Aber sie hat ein paar kleine Eigenheiten. Ein

Unterschied besteht z.B. darin, dass bei der Verwaltung von Vergleichsoperatorblöcken keine

Gleitkommawerte verwendet werden können, sondern nur Ganzzahlen verwendet werden.

Crumble kennt eigene WS2811-LEDs, die als "Sparkles" („Funkler“) bezeichnet werden. Diese

können im Menüpunkt "Sparkles" programmiert werden.

Diese LEDs können vom Crumble auf jede Farbe eingestellt werden. Sie werden mit den

"Power Out" - GPIOs und mit "D" verbunden. Jeder Sparkle verfügt über eigene Power-In- und

Out-Anschlüsse, die miteinander verkettet werden können (bis zu 32 LEDs lang). Die Farbe

jedes Sparkles („Funkler“) kann vom Crumble individuell gesteuert werden.

Page 3: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

3

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

3) Erste Schritte

3.1. Motoren anschließen: Wir schließen die Batterien und die Motoren laut

Abbildung an.

Quelle: www.redfernelectronics.co.uk/crumble

Page 4: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

4

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

Die Programmierung der beiden Motoren sieht folgendermaßen aus:

Beide Motoren drehen sich 1 Sekunde mit voller Geschwindigkeit (100%) vorwärts, danach

stoppen sie für 1 Sekunde und danach beginnt die Schleife wieder von vorne. Dies so lange,

bis der Schalter am Batteriefach auf „aus“ gestellt wird.

Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm

erstellt wird. Man kann also mit einem geeigneten Chassis und mit zwei Motoren bereits ein

einfaches Auto bauen und es mit einem einfachen Programm fahren lassen.

Video

Page 5: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

5

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

Unser Beispielprogramm bringt ein selbst gebasteltes Auto dazu, 3 Sekunden vorwärts zu

fahren, sich danach nach rechts zu drehen, wieder 3 Sekunde vorwärts zu fahren und sich

danach nach links zu drehen und dann wieder 3 Sekunde vorwärts zu fahren und so fort. Das

Programm wird auf unbestimmte Zeit wiederholt, wie gesagt, so lange, bis der Schalter am

Batteriefach auf „aus“ gestellt wurde.

Quelle: www.redfernelectronics.co.uk/crumble

Page 6: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

6

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

3.2. Digitale Outputs - Sparkles anschließen: Sparkles werden mit den "Power Out"

- GPIOs und mit "D" des Crumble verbunden.

Quelle: www.redfernelectronics.co.uk/crumble

Diese RGB-LEDs können vom Crumble digital auf jede Farbe eingestellt werden. Die

Programmierung ist recht einfach.

Page 7: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

7

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

Da jeder Sparkle über eigene Power-In-Anschlüsse und Power-Out-Anschlüsse verfügt,

können mehrere Sparkles (bis zu 32) miteinander verbunden werden.

Quelle: www.redfernelectronics.co.uk/crumble

3.3. Digitale Outputs - Eine LED anschließen:

Quelle : www.redfernelectronics.co.uk/crumble

Die Abbildung zeigt den Anschluss der LED ohne externe Stromquelle, also ohne Batterie! Die

Kathode (kürzeres Beinchen) kommt an den "Power In" – GPIO „-“, die Anode kommt an den

Page 8: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

8

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

Ausgang A, der hier als digitaler Ausgang verwendet wird. In der Digitalelektronik bedeutet

„HI(gh)“ „Strom an“. „LO(w)“ bedeutet „Strom aus“. Die LED leuchtet also!

Eine blinkende LED wird also folgendermaßen programmiert: Leuchte eine Sekunde („Strom

an“), Licht aus für eine Sekunde („Strom aus“), wiederhole das Programm auf unbestimmt Zeit!

Schwieriger wird der Anschluss, wenn wir den Crumble vom Computer trennen und mit

Batterien arbeiten, um mobil zu sein.

Die Batterie wird an den Crumble wie bereits bekannt angeschlossen (siehe Motor

anschließen), die Anode kommt an den Ausgang „A“, die Kathode wird am zweiten

Minus-Pin des Batteriegehäuses angeschlossen! Betätigen wir den On-Schalter des

Batteriegehäuses, beginnt die LED zu blinken.

3.4. Analoge Inputs - Einen Lichtsensor anschließen:

Quelle:www.redfernelectronics.co.uk/crumble

Page 9: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

9

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

Der Crumble Controller kann Spannungen zwischen 0 V und der Spannung der

Stromversorgung messen, in unserem Beispiel 4,5 V, wenn er an 3 AA-Batterien

angeschlossen ist. Die Spannung wird in eine Zahl zwischen 0 und 255 umgewandelt. Der

Crumble kann auch ohne zusätzliche Komponenten direkt an analoge Sensoren wie LDRs und

Thermistoren angeschlossen werden.

Wie wir sehen, kommt ein Beinchen des Lichtsensors (Photowiderstand oder LDR) an den

„Power-Out“ – GPIO „-“ und das andere Beinchen an „C“. Der Befehl

Speichert in der Variablen „t“ den analogen Wert, das ist je nach Helligkeit eine Zahl von 0 bis

255, der am Eingang „C“ gemessen wird.

Wenn wir nun eine LED wie bereits gelernt an den Crumble anschließen und gleichzeitig einen

Lichtsensor, dann können wir z.B. folgendes kleine Programm schreiben:

Wenn es dunkler wird, sinkt der analoge Wert von C unter 100. Bei einem gemessenen Wert

von unter 100 schalte die LED ein, ist der Wert größer als 100, dann schalte die LED wieder

aus.

Quelle: www.redfernelectronics.co.uk/crumble

Page 10: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

10

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

3.5. Digitale Inputs - Einen Drucksensor (als Schalter) verwenden:

Quelle: www.redfernelectronics.co.uk/crumble

Bei Batterie-Betrieb wird die Kathode der LED am Minus-Pin des Batteriegehäuses

angeschlossen, der Drucksensor am Plus-Pin des Batteriegehäuses!

Die Programmierung sieht folgendermaßen aus:

Wird also der Drucksensor gedrückt, gilt also

dann schalte die LED ein, sonst schalte die LED aus!

Page 11: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

11

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

3.6. Analoge Inputs – Ein Potentiometer verwenden

Quelle: www.redfernelectronics.co.uk/crumble

3.7. Analoge Inputs – Einen Piezoelectric-Buzzer verwenden

Quelle: www.redfernelectronics.co.uk/crumble

Page 12: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

12

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

4) Kleinere Projekte

4.1. Erweiterte Sparkle-Steuerung

Jeder Sparkle enthält drei LEDs, eine für jede Primärfarbe: Rot, Grün und Blau. Die

scheinbare Farbe jedes Sparkles wird durch Mischen verschiedener Mengen der

Primärfarben gesteuert, genau wie bei einem Pixel auf einem Farbbildschirm.

Dieser Block steuert die Helligkeit jeder der Primärfarben: Ein Wert von Null

bedeutet deaktiviert und ein Wert von 255 bedeutet die maximale Helligkeit.

Zum Beispiel setzt dieser Block die erste LED, also Rot, auf etwa die halbe

Helligkeit.

Dieser Block setzt sowohl die rote als auch die blaue LED auf die halbe Helligkeit,

um ein violettes Licht zu erzeugen.

4.2. Farbenspiel

Variablen können verwendet werden, um die Farbe von Sparkles zu steuern.

Dieses Programm verändert die Farbe der RGB-LED von blau über violett nach rot.

Video

Page 13: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

13

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

4.3. Flackerndes Licht

In diesem Beispiel wird ein flackernder Kerzeneffekt mit Zufallszahlen erzeugt.

Eine grüne Farbe wird durch Mischen einer zufälligen Menge von Rot und Gelb

erzeugt.

Das Warten auf eine zufällige Verzögerung wiederholt den Flackereffekt.

Video

4.4. Drehschalter

Die vier GPIOs A, B, C und D können als Ein- oder Ausgänge eingestellt werden und sie

können digital oder als analoge Ports arbeiten.

Page 14: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

14

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

Ein Schalter ist wohl die einfachste Art der Eingabe und ermöglicht uns einen digitalen Eingang für den Crumble. Wir wissen bereits: In der Digitalelektronik bedeutet „HI(gh)“ „Strom an“ und „LO(w)“ bedeutet „Strom aus“. Strom fließt nur, wenn ein freier Weg von positiv (+) nach negativ (-) vorhanden ist. Wenn wir den Stromkreis (die Verbindung) unterbrechen, fließt der Strom nicht mehr. Wir können dies tun, indem wir einen Schalter verwenden, eine Vorrichtung, mit der wir den Stromfluss steuern. Es gibt alle möglichen Arten von Schaltern. Aber manchmal gibt es einfach nicht den, den wir für ein bestimmtes Projekt brauchen. Eine gute Möglichkeit, ein bestimmtes Problem zu lösen und darüber nachzudenken, wie Schalter funktionieren, besteht darin, eigene zu basteln, etwas herzustellen, das einen Stromkreis schließt.

Unser Drehschalter verwendet drei separate Eingänge unseres Crumbles (A, B und C). Der

Drehschalter selbst hat drei Ausgänge. Der Pfeil unseres Drehschalters kann auf einen dieser

drei Ausgänge ausgerichtet werden. Jeder Ausgang verbindet sich mit einem Eingang auf dem

Crumble. Wenn ein Eingang den Zustand HI(gh) aufweist, soll die RGB-LED, je nach Eingang,

rot, grün oder blau aufleuchten.

Page 15: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

15

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

Unser Programm dafür sieht folgendermaßen aus:

Video

4.5. Leiter oder Nichtleiter?

Auch bei der folgenden Bastelei können wir von einem Schalter sprechen, es könnte aber auch ein Messgerät sein, das feststellt, ob ein Körper elektrischen Strom leitet oder nicht. Da z.B. Wasser den Strom leitet, könnte man auch von einem Feuchtigkeitssensor sprechen. Unser „Schalter“ besteht aus zwei Streifen selbstklebendem Kupferband, die nahe beieinander liegen. Wenn wir z.B. einen Finger nass machen und ihn über die beiden Streifen legen, überbrückt die Feuchtigkeit die beiden Kupferstreifen, wodurch der Schalter den Stromkreis schließt und unsere RGB-LED leuchtet. Legen wir verschiedene Gegenstände auf die beiden Streifen, können wir sie in „Leiter“ und „Nichtleiter“ einteilen (Münze, Radiergummi, Korken, Kaffeelöffel, Glas, Schere etc.) Unsere RGB-LED soll grün aufleuchten, wenn es sich bei dem zu testenden Gegenstand um einen Leiter handelt.

Page 16: Der Crumble Controller · 2020-06-01 · Einmal programmiert, merkt sich Cramble das Programm solange, bis ein neues Programm erstellt wird. Man kann also mit einem geeigneten Chassis

16

4.0 2020, CC - BY - 4.0 Heerdegen-Leitner Maria

NTS 4 – GTNMS / 1040 Wien,Schäffergasse 3 https://creativecommons.org/licenses/by/4.0/legalcode.de

Video