Archiv des Autors: ckuehnel

Über ckuehnel

Mein aktuelles Profil ist unter https://www.linkedin.com/in/ckuehnel zu finden.

Vermittlung digitaler Inhalte in der Schule

Schon heute setzen wir uns mit zunehmender Tendenz mit automatisierten Abläufen, Algorithmen und vernetzten Gegenständen im Alltag auseinander. Künstliche Intelligenz wird Prozesse unterstützen und möglicherweise auch irgendwann autonom übernehmen.

Auf diese Entwicklungen vorbereitet zu sein, um sie zu beherrschen, zu gestalten und weiter zu entwickeln bedarf es mehr als einen IT-Grundkurs im Gymnasium oder Studium. Wichtig ist es, die Chance zu haben, in diese Welt und das damit verbundene Denken hineinzuwachsen.

In einigen Ländern wurde das frühzeitig erkannt und durch entsprechende Initiativen gefördert. Die Idee ist, jedes Kind zu inspirieren, seine digitale Zukunft zu gestalten und die Maker-Bewegung in den Unterricht zu bringen.

Im Schweizer Lehrplan 21 wird der heutigen Lebenswelt von Kindern und Jugendlichen entsprochen, die „durchdrungen (ist) von traditionellen und digitalen Medien sowie von Werkzeugen und Geräten, die auf Informations- und Kommunikationstechnologien basieren und die durch ihre Omnipräsenz neue Handlungsmöglichkeiten und neue soziale Realitäten schaffen“ (https://v-fe.lehrplan.ch/index.php?code=e|10|2). Abgestimmt mit dem Lehrplan 21 steht mit der Oxocard ein mit WiFi ausgestatteter Computer zur Verfügung, der auch bereits über den Browser programmiert werden kann. Auch in Deutschland und Grossbritannien werden solche Aktivitäten durch Hard- und Software für den Einsatz in der Schule unterstützt.

„Unser Anspruch ist, dass jeder Schüler und jede Schülerin in der dritten Klasse in Deutschland so ein Ding in die Hände bekommt“, sagt Stephan Noller, einer der Gesellschafter von Calliope. „Es soll nicht irgendein Leuchtturmprojekt in Berlin-Wedding werden, sondern wir wollen in die Fläche – und zwar jedes Jahr von Neuem.“

Ob man mit dem Calliope mini die vielleicht größtmögliche Umwälzung des deutschen Schulsystems in der Hand hält, wie Patrick Beuth in der Zeit im Beitrag „Dieser Computer kann unser Schulsystem revolutionieren“(http://www.zeit.de/digital/internet/2016-10/calliope-mikrocontroller-grundschule-dritte-klasse) schreibt, kann ich nicht beurteilen.

So unterschiedlich die Angebote sind, eines haben sie gemeinsam: Sie werden von Menschen organisiert, die mit großer Begeisterung ihr Wissen rund um Programmierung und digitale Themen an Kinder und Jugendliche weitergeben. Bei den Machern um BBC micro:bit, Calliope mini und Oxocard ist diese Begeisterung zu spüren.

Dass solche Projekte, wie so oft, nicht widerstandsarm umsetzbar sind, zeigen Diskussionen wie sie im Interview „An Calliope scheiden sich die Geister“ (https://www.deutschlandfunk.de/minicomputer-im-klassenzimmer-an-calliope-scheiden-sich-die.680.de.html?dram:article_id=399302) aufgeworfen werden.

Ich möchte mich hier auf den technischen Bereich beschränken. Für ideologische Auseinandersetzungen sind andere besser geeignet.

Die folgende Tabelle zeigt eine Gegenüberstellung der technischen Merkmale der drei hier betrachteten Mikrocontrollerboards.

Mikrocontroller
Board
BBC micro:bitCalliope miniOxocard
HerkunftUKDCH
HauptmerkmaleNordic nRF52833, BLE, Radio
Motion Sensor (ST LSM303AGR)
5×5 LED Matrix Display (rot)
2 Taster
19 GPIO
Piezo-Lautsprecher
MEMS Mikrofon
USB Micro B Anschluss
(Programmierung und Stromversorgung)
JST Batterieanschluss (3.3V)
Temperatursensor (on-chip NRF52)
Nordic nRF51822, BLE, Radio
Motion Sensor (Bosch BMX055)
5×5 LED Matrix Display (rot)
DC Motortreiber (TI DRV8837)
Piezo-Lautsprecher
MEMS Mikrofon
Neopixel (WS2812b)
2 Taster
8-11 GPIOs, PWM, 4 x analog
UART + SPI + I2C
USB Micro B Anschluss
(Programmierung und Stromversorgung)
JST Batterieanschluss (3.3V)
2 Grove Stecker (I2C + Seriell/Analog)
Espressif ESP32, BLE, WiFi
Motion Sensor (ST LIS3DE)
8×8 Neopixel Matrix
Kopfhörerbuchse für 8bit-Audioausgabe (mono)
Mikrofon (PDM)
NeoPixel Data-Out
6 Taster
6 GPIOs
UART + SPI + I2C
USB Micro B Anschluss
(Programmierung und Stromversorgung)
LiPo-Akku
Anschluss für Grove I2C-Hub
Temperatursensor (on-chip LIS3DE)

Programmier-
umgebungen
MakeCode, MicroPython,
JavaScript
MakeCode, Swift,
abbozza! Calliope (basiert auf Blockly),
C/C++ (Segger), MicropPython
Blockly, Oxoscript,
Arduino (C/C++), MicroPython. 
BBC micro:bit, Calliope mini, Oxocard – im Vergleich

Wie aus den Hauptmerkmalen abzuleiten ist, stellen alle drei Boards eine vergleichbare Infrastruktur bereit. Auf markante Unterschiede will ich im Folgenden eingehen. Eine Betrachtung der Ausgangsversionen von BBC micro:bit und Calliope mini hatte ich in einer früheren Veröffentlichung (https://www.elektroniknet.de/embedded/hardware/mikrocontroller-nicht-nur-fuer-die-schule.150415.html) bereits vorgenommen.

Herausstechendes Merkmal beim BBC micro:bit ist seine an der Unterkante des Boards befindliche als Goldfinger bezeichnete Anschlussleiste. Hier können zahlreiche Erweiterungsboard direkt angeschlossen werden. Einen guten Überblick zu diesen Erweiterungen finden Sie unter https://shop.pimoroni.com/collections/micro-bit-uk.

BBC mirco:bit v2

Beim Calliope mini wollte man den Goldfinger nicht übernehmen, da wegen der viel zu eng liegenden Kontakte im Schuleinsatz mit ständigen Kurzschlüssen durch die Schüler gerechnet werden müsste. Es wurden auf dem Board Erweiterungen, wie RGB-LED (Neopixel) und Motortreiber (H-Brücke) u.a., vorgesehen. Zusätzlich stellen die beiden Grove-Connectoren einen I2C-Bus, einen UART-Anschluss sowie einen analogen Eingang zur Kontaktierung von Sensoren oder Aktoren des umfangreichen Grove-Systems zur Verfügung. Eine gute Übersicht zum Grove-System bietet ein Grove Wiki von Seeedstudio (https://wiki.seeedstudio.com/Grove_System/).

Calliope mini v2

Die Oxocard geht einen etwas anderen Weg. Die elektronischen Interna sind gut verpackt in einem Kartongehäuse. Durch den Einsatz eines ESP-32 steht neben BLE auch WiFi zur Verfügung, wodurch Internet-Konnektivität gegeben ist. Durch diese Option ist es möglich IoT-Projekte zu realisieren. Der LiPo-Akku sorgt dann für einen gewissen Zeitraum sogar für autonome Einsatzmöglichkeiten ohne externe Spannungsversorgung.

Nach aussen hin stehen die sechs Taster und die 8×8 Neopixel Matrix für Experimente zur Verfügung. Durch die Verwendung der internen Sensoren kommt der Anwender erstmal vollkommen ohne elektrische Verbindungen nach aussen aus.

Kommuniziere Meldungen zwischen Oxocards, hol dir Daten aus dem Internet oder stelle dein Karte als Sensor anderen zur Verfügung. All das ist ohne Erweiterungen möglich.

Oxocard mit Kartongehäuse

Für den Maker von Interesse sind natürlich die Erweiterungsmöglichkeiten. Ergänzend zum Lieferumfang der Oxocard ist der OXOCARD i2C-Hub-Erweiterungsport verfügbar.

Lieferumfang Oxocard

Der Oxocard I2C Hub ist ein kleiner Bausatz, um der Oxocard relativ einfach das Anschliessen von beliebigen I2C-Grove- Komponenten zu ermöglichen. Mit diesen I2C-Hub können Sie die Oxocard mit zusätzlichen GROVE-kompatiblen Sensoren und Aktoren erweitern. Ausserdem kann über eine Buchsenleiste der SPI-Port nach aussen geführt werden.

SPI- und I2C-Bus an der Oxocard

Mit diesen Erweiterungsmöglichkeiten ist die Oxocard ein für den Schulbetrieb geeigneter, komplett ausgestatteter und erweiterbarer Mikrocontroller, der als einziger Internet-Zugriff aufweist.

Allen drei vorgestellten Boards gemeinsam ist neben der grafischen Programmierung in MakeCode resp. Blockly die Programmierung in MicroPython.

In meinem MicroPython Blog https://ckmicropython.wordpress.com sind MicroPython Programmbeispiele für die Oxocard zu finden.


2021-04-05/ck

Open-Source-Prozessoren – Für wen RISC-V eine Alternative ist

In der fünften Generation sorgt RISC für Aufsehen – auf Grund des Open-Source-Ansatzes. In kurzer Zeit wuchs mit RISC-V eine Community, die auf Basis des neuen Befehlssatzes Prozessorkerne entwickelt hat.

Einen Blick auf RISC-V und die ersten RISC-V SoCs finden Sie in ELEKTRONIK 18/2020 auf den Seiten 40 bis 44.

2020-10-03: Nun auch zitiert @ https://riscv.org/2020/09/for-whom-risc-v-is-an-alternative-dr-claus-kuhnel-elektronik-german/

LPWAN im Vergleich zu SubGHz Meshnet

Für die Datenübertragung über Funknetze steht mit SubGHz Meshnet eine interessante Alternative zum verbreiteten LPWAN bereit.

Wo liegen Unterschiede und mögliche Vorteile? Harald Naumann nimmt im gleichnamigen Beitrag einen direkten Vergleich vor und hilft mit einem detaillierten Blick hinter die Funktionsweise Ihrem Fachwissen auf die Sprünge.

Link zum Beitrag:
https://www.industry-of-things.de/lpwan-im-vergleich-zu-subghz-meshnet-a-955306/

Mehr zum Thema LPWAN und SubGHz Meshnet können Sie zum Seminar mit dem Titel „LPWAN und energiearme Alternativen“ am 24.09.2020 in Reichwalde bei Berlin erfahren. Die Seminaragenda fin den sie hier.

Longan Nano ADC & DAC

Der Longan Nano von Sipeed baut auf dem 32-Bit-RISC-V-Mikrocontroller GD32VF103CBT6 von GigaDevice auf und weist dadurch ein 12-Bit-ADC & DAC-Subsystem auf (2 x ADC, 2 x DAC).

Die Angaben im Datenblatt des GD32VF103CBT6 beschränken sich auf Kennwerte der DACs, die als „(1) Based on characterization, not tested in production“ gekennzeichnet sind. Für den ADC fehlen diese Daten ganz.

SymbolParameterConditionsValue (max.)
DNL(1)Differential non-linearity errorDAC in 12-bit mode±3 LSB
INL(1)Integral non-linearityDAC in 12-bit mode±4 LSB
Offset(1)Offset errorDAC in 12-bit mode±12 LSB
GE(1)Gain errorDAC in 12-bit mode±0.5 %
DAC Charakteristik – Auszug GD32VF103 Datasheet

Grund genug die Charakterestik des ADC & DAC-Subsystem etwas genauer zu betrachten. Die Vorgehensweise ist vergleichbar zum Test beim ESP32 (https://ckblog2016.net/2018/03/03/esp32-adc-dac/).

Vom DAC0 (PA4) wird eine analoge Ausgangsspannung bereitgestellt, die dann vom ADC0 (PA3) gemessen und zur Anzeige gebracht wird. Es genügt also eine Verbindung der beiden Anschlüsse PA3 und PA4 am Longan Nano.

Longan Nano

Mit einfachen Messmittel gestaltet sich eine Aussage über die Genauigkeit des DAC nicht ganz einfach, wie das folgende Bild zeigt.

Longan Nano DAC-Charakteristik

Aufgetragen ist die Abweichung der gemessenen Ausgangsspannung von der Idealkennlinie. Bei einem Spannungswert von 0.8 mV für das LSB ist ein hochauflösendes Digitalvoltmeter erforderlich. Mit einem üblichen Multimeter sind alle Messwerte über 2.2 V wegen zu geringer Auflösung unbrauchbar. Im Bereich unterhalb diese Wertes zeigt die DAC-Charakteristik aber Werte der Ausgangsspannung die allesamt im Bereich von +/- 2 LSB liegen. Die Angaben im Datenblatt können damit (zumindest in diesem Bereich) als messtechnisch bestätigt betrachtet werden.

Durch die Verbindung der beiden Anschlüsse PA3 und PA4 am Longan Nano kann nun der ADC0 die Spannungen des DAC0 erfassen. Das Programm LonganNano_ADC_DAC dient dem Erzeugen der Daten, die die DAC-ADC-Charakterstik beschreiben.

Ausgabe des Programms LonganNano_ADC_DAC

Die Abweichungen vom erwarteten Idealverhalten liegen bei maximal 10 mV.

Das DAC-ADC-Subsystem des Longan Nano (GD32VF103) zeigt damit wesentlich bessere Eigenschaften, als das des ESP32, wodurch bei weniger kritischen Anwendungen auf den Einsatz eines externen ADCs verzichtet werden kann.

Sipeed Longan Nano

Longan Nano von Sipeed ist ein kleines Evaluationboard auf Basis eines 32-Bit-RISC-V-Mikrocontrollers GD32VF103CBT6 von GigaDevice. Für Studenten, Ingenieure, Geeks und Enthusiasten ist das eine Möglichkeit, um auf die neueste Generation von RISC-V-Prozessoren zuzugreifen.

Sipeed Longan Nano wird aktuell nicht durch die Arduino IDE, wohl aber durch PlatformIO unterstützt.

Auf die Installation selbst gehe ich an dieser Stelle nicht ein. Hierzu gibt es einen sehr guten Beitrag von Michel Deslierres.

Der Sipeed Longan Nano bietet zwei Möglichkeiten für den Programm-Upload. Auf der rechten Seite befindet sich ein USB-C-Anschluss über den kann mit dem Tool DFU-Util das compilierte Programm zum Controller geladen werden. Die andere Möglichkeit ist die an der linken Seite herausgeführte serielle Schnittstelle (UART0).

Ich habe diese Möglichkeit verwendet, da ich die seriellen Ausgaben über dieses Port vorgenommen habe. Wie im Bild unten gezeigt bedarf es eines USB-TTL-Konverters, der Tx und Rx sowie 3.3 V und GND zur Verfügung stellt.

Ich habe drei Programme ausprobiert, die unter https://github.com/ckuehnel/GD32 zum Download zur Verfügung stehen.

Das Programm LonganNano_HelloWorld dient dem Test der Inbetriebnahme von PlatformIO IDE und erstem Programm. LonganNano_LCD zeigt die Ausgaben auf dem Onboard-LCD und LonganNano_Dhrystone liefert die Ergebnisse des Dgrystone-Benchmarks.

Serielle Kommunikation & Programm-Upload
Anzeige des Sipeed-Logos
Serielle Ausgabe Programm LonganNano_HelloWorld

Serielle Ausgaben des Dhrystone Benchmarks

Mit einem VAX MIPS Rating von 91 liegt der hier eingesetzte RISC-V Controller deutlich oberhalb der Cortex-M3 von ARM. Vergleichen Sie die Benchmark-Resultate für verschiedene Mikrocontroller von 8-Bit bis 64-Bit unter https://ckarduino.wordpress.com/benchmarks/.

Seeeduino XIAO

Seeeduino XIAO ist das kleinste Arduino-kompatible Board in der Seeeduino-Familie. Basis des XIAO ist ein Microchip-SAMD21 (ARM Cortex-M0+ CPU (SAMD21G18)). Der Controller weist 256 KB Flash Memory und 32 KB RAM auf und wird mit 48 MHz getaktet.

Aus dem Pinout des Seeeduino XIAO ist die Ausstattung des kleinen Boards mit Schnittstellen ersichtlich. Durch den mit 48 MHz getakteten Cortex-M0+ weist das kleine Board eine gute Performance auf. Der Dhrystone Benchmark liefert einen Wert von 41589 Dhrystone/sec und das VAX MIPS Rating beträgt 23.67. Für raumsparende Aufbauten und Wearables ist das Board sehr geeignet, wenn auch die On-Board LEDs und die Stromaufnahme von ca. 350 uA im Sleep Mode weniger optimal sind.

Pinout Seeeduino XIAO
Dhrystone Benchmark Resultate Seeeduino XIAO

Weiterführende Informationen: http://wiki.seeedstudio.com/Seeeduino-XIAO/

M5Stack Atom Matrix & Atom Lite

ATOM Matrix und ATOM Lite sind ESP32-Entwicklungsboards mit einer Größe von nur 24 * 24 mm. Zum Einsatz kommt ein ESP32-PICO-Chip, der WiFi und Bluetooth für die Kommunikation bietet und über 4 MB integrierten SPI-Flash-Speicher verfügt. Für die IO-Erweiterung steht ein Grove-Port zur Verfügung. Über 6 GPIOs können beide Boards mit externen Sensoren und Aktoren verbunden werden. Die integrierte Typ-C-USB-Schnittstelle ermöglicht das schnelle Hochladen und Ausführen von Programmen

ATOM-Lite bietet eine Infrarot-LED, eine RGB-LED, Tasten und eine PH2.0-Schnittstelle.

ATOM-Matrix verfügt über einen integrierten IMU-Sensor (MPU6886) und eine 5 * 5 RGB-LED-Matrix, die sich sehr gut zu farbigen Signalisationszwecken eignet.

Signalisation über RGB-LED-Matrix

Eine Arduino Library ist unter https://github.com/m5stack/M5Atom zu finden.

Neustart mit RISC-V

Nach langer Wartezeit, aber doch noch vor der Embedded World 2020 ist mein Beitrag „Neustart mit RISC-V“ in der Zeitschrift Design & Elektronik 1/2020 S.29-35 erschienen.

Entwicklungsboard SiFive HiFive 1 Rev. B im Arduino Uno-Formfaktor

Damit sich eine neue Befehlssatzarchitektur für Controller oder Prozessoren durchsetzt, ist viel Aufwand erforderlich. Hardware-Hersteller müssen überzeugt, Entwicklungswerkzeuge angepasst und Entwickler eingearbeitet werden. Entsprechend selten kommt ein neuer Befehlssatz auf den Markt. Aber RISC-V hat die Anfangshürden genommen und ist auf dem Weg zum Erfolg.

RISC-V FOUNDATION

Die RISC-V FOUNDATION finden Sie auf der Embedded World 2020 in Halle 3A Stand 536.

Calista Redmond (CEO, RISC-V Foundation) spricht über Neuigkeiten bei RISC-V:

Das ist neu bei RISC-V Vortragssprache Deutsch
Datum: 26.02.2020 Uhrzeit: 16:10 – 16:30 Uhr
Ort: Markt&Technik VIP-Bühne, Halle 3A, 3A-502

Event merken
Termin merken
Event teilen

Massgeschneidert für IoT Anwendungen

Espressif’s ESP32 ist aus IoT Anwendungen kaum noch wegzudenken. Geringe Stromaufnahme, eine leistungsfähige CPU und WiFi- bzw. BLE-Connectivity sind der Schlüssel für den Erfolg in diesem Bereich.

Eine Vielzahl dieser Anwendungen setzt das ESP-WROOM-32x-Modul von Espressiff ein.

Die ESP32-WROVER Serie besticht durch einige Modifikationen der ESP32-WROOM-32x-Module, die unter anderem ein zusätzliches 8-MB-SPI-PSRAM (Pseudo Static RAM) enthalten.

Das zusätzliche PSRAM kann für Geräte mit einem Display sehr nützlich sein. Wenn der Grafiktreiber einen Framebuffer verwendet, können so mehr Farben unterstützt werden.

Für das maschinelle Lernen bietet TensorFlow Lite alle Tools, die Sie zum Konvertieren und Ausführen von TensorFlow-Modellen auf Mobil-, Embedded- und IoT-Geräten benötigen. Genügend Speicher sollte aber vorhanden sein und den kann ein ESP32-Wrover nun bieten (siehe Tabelle).

Zu Tensorflow Lite auf dem ESP32 finden Sie weitere Informationen unter https://towardsdatascience.com/tensorflow-meet-the-esp32-3ac36d7f32c7

ModuleChipFlash, MBPSRAM, MBAnt.Dimensions, mm
ESP32-WROOM-32ESP32-D0WDQ64MIFA18 × 25.5 × 3.1
ESP32-WROOM-32DESP32-D0WD4, 8, or 16MIFA18 × 25.5 × 3.1
ESP32-WROOM-32UESP32-D0WD4, 8, or 16U.FL18 × 19.2 × 3.1
ESP32-SOLO-1ESP32-S0WD4MIFA18 × 25.5 × 3.1
ESP32-WROVER (PCB)ESP32-D0WDQ648MIFA18 × 31.4 × 3.3
ESP32-WROVER (IPEX)ESP32-D0WDQ648U.FL18 × 31.4 × 3.3
ESP32-WROVER-BESP32-D0WD4, 8, or 168MIFA18 × 31.4 × 3.3
ESP32-WROVER-IBESP32-D0WD4, 8, or 168U.FL18 × 31.4 × 3.3
Key characteristics of ESP32 Modules (https://docs.espressif.com/projects/esp-idf/en/latest/hw-reference/modules-and-boards.html)

Aus Fernost werden mittlerweile unterschiedlich ausgestattet Module mit ESP32-WROVER-B angeboten.

Ein gerade für IoT-Anwendungen optimal angepasstes Board wird mit dem ESP32 ePulse Dev Board von der Schweizer Firma Thingpulse angeboten.

Das Board ist für geringen Stromverbrauch und einen breiten Eingangsspannungsbereich optimiert. Weitere technische Aspekte finden Sie im Beitrag Designing the ESP32 Dev Board I always wanted.

Der VIN-Pin akzeptiert Spannungen zwischen 3.3 V und 12 V DC. Wenn sich das Board im Tiefschlaf befindet, verbraucht es nur zwischen 25 uA (bei 3.3 V) und 35 uA (bei 12 V). Die meisten ESP32-Boards verbrauchen etwa 100 – 130 uA.

Thingpulse bietet das Board für $ 16.90 an https://thingpulse.com/product/epulse-thingpulse-esp32-devboard/. Early Birds bekommen es noch für $ 12.70.

M5StickC Handheld Thermometer

Der M5StickC hat einen internen LiPo-Akku mit einer Kapazität von 80 mAh, der dem mobilen Einsatz dann doch gewisse Grenzen setzt. Bei meinen Experimenten zur Messung der Wassertemperatur hatte ich das zu berücksichtigen.

Kurz vor dem Jahresende 2019 kam Post aus Shenzen mit dem 18650C HAT, einem Batterieteil für den M5SticKC mit integriertem wiederaufladbaren LiPo-Akku 18650 mit einer Kapazität von 2000 mAh.

Das Batterieteil ist mit den Steckern der HAT-Serie ausgestattet, mit denen eine zuverlässige Verbindung zum M5StickC hergestellt werden kann. Die Unterseite ist mit einer USB-Ladeschnittstelle ausgestattet. Der USB-C-Anschluss des Batterieteils wird nur als Ladeschnittstelle verwendet und hat keine UART-Funktion. Auf der Rückseite des Batterieteils befinden sich zahlreiche Befestigungslöcher, die eine einfache Befestigung des gesamten Devices ermöglicht.

Handheld-Thermometer

Ich habe mit dem ENV Hat und dem M5StickC ein Handheld-Thermometer aufgebaut.

Über den BMP280 im ENV Hat werden Temperatur, relative Luftfeuchte und barometrischer Druck gemessen und im Sekundentakt auf dem M5StickC Display zur Anzeige gebracht.

Ich werde die Laufzeit einer Batterieladung in der Folge testen und hier berichten.

Überwachungsmassnahmen für den Batteriezustand sind nicht implementiert.