PGLU ist eine prozessorgesteuerte Lernumgebung für das Klassenzimmer. Mit dieser graphischen Entwicklungsumgebung können die Schüler einer Schulklasse im Gruppenverband an einem Werk-und Programmier-Projekt (beispielsweise einem Roboter) arbeiten.

Diese Lernumgebung wurde von Rolf Beck aus Wettingen (Schweiz)  entwickelt und wird von etlichen Firmen unterstützt. Das Zielpublikum dieser Lernumgebung sind Schulklassen mit Schüler der 6. bis 9. Klasse, die im Werkunterricht die Programmierung und das Zusammenspiel mit Hardware erlernen möchten.

Der Projektleiter Rolf Beck hat mir freundlicherweise ein Set mit der Hardware der PGLU zum Test und Review zur Verfügung gestellt.

Elemente der PGLU

Die Entwicklungsumgebung PGLU besteht aus aus einer Prozessorplatine, PGLU-Platine genannt, und einer sogenannten App.

PGLU-Platine:
Die PGLU-Platine ist eine Schnittstellen-Platine mit Eingängen und Ausgängen, an die man Schalter, Sensoren, Motoren und Leuchtdioden anschliessen kann. Über einen USB-Anschluss wird die Platine mit der Teacher’s Box oder einem PC verbunden.

Das „Gehirn“ der Platine ist ein Arduino Nano. 4 Analoge Eingänge und 6 Ausgänge des Arduino Nano sind auf stabile Schraubklemmen herausgeführt und ermöglichen den stabilen Anschluss von Aktoren und Sensoren.

Wie die Sensoren an der PGLU-Platine angeschlossen werden und welche Pins des Arduino Nano verwendet werden, sind in der Anleitung in farbigen Bildern gut verständlich erklärt.

Das Programm im Arduino-Board auf der PGLU-Platine wird im Normalfall über die App erstellt und via der Teacher’s Box auf die PGLU-Platine verteilt.

App:
Die graphische Oberfläche, die PGLU-App, läuft auf jedem Computer oder Tablet und erfordert keine Installation. Die App ist in 2 Versionen verfügbar, Der Teacher’s Box-Version und einer eingeschränkten Webversion.

Teacher’s Box:

Als Zentrale der Lernumgebung und zur Projektverwaltung-und Überwachung steht der Lernperson eine Teacher’s Box zur Verfügung. Die Teacher’s Box ist ein Minicomputer in Form eines Raspberry Pi auf dem die einzelnen Programme während der Entwicklung gespeichert werden.

Mit der Teacher’s Box sind verschiedene Arbeitsweisen im Klassenzimmer möglich, je nachdem wieviele Teilnehmer und Platinen vorhanden sind. Die einzelnen Szenarien sind auf der Website beschrieben.

Inbetriebnahme

Das Vorgehen beim Anschluss und der Inbetriebnahme der Teacher’s Box ist ausführlich und gut verständlich beschrieben. Nach dem Verbinden mit dem WLAN von PGLU und der Eingabe der Startadresse im Browser auf dem Tablet wird die Startseite der PGLU IDE dargestellt.

Nun kann ein neues Projekt erstellt oder ein bestehendes Projekt geladen werden.

Falls es mal nicht funktionieren sollte, findet man auf der Support-Seite Unterstützung bei der Problembeseitigung.

Programmierung

Mit Teacher’s Box:
Die Programmierung erfolgt über den graphischen Editor, die PGLU-IDE. Alle Programme werden über die Teacher’s Box verwaltet und zentral gespeichert. Über die Programme-Liste werden alle Programme aufgelistet.

Mittels einer Status-Anzeige in Form eines farbigen Punktes sieht man jeweils wie der Stand des Programmes ist.

Der blaue Punkt gibt an, dass das Programm Blink geladen ist.

Nachdem das geladen Programm verändert wurde, zeigt ein roter Punkt an, dass das Programm noch gespeichert werden muss.

Die Programmierung selbst, erfolgt im graphischen Editor. Dazu können die verfügbaren Blöcke aus der linken Spalte in die Arbeitsfläche gezogen werden.

Im Beispiel wird im Hauptprogramm die LED 1 eingeschaltet, danach erfolgt eine Pause von 1000 Millisekunden. Anschliessend wird die LED 1 ausgeschaltet und nach einer weiteren Pause beginnt das Hauptprogramm wieder am Anfang.

Die Testfunktion Simulator erlaubt das Testen und prüfen eines erstellten Programmes und hilft im Falle eines Logikfehlers.

Nach dem Aufbau des Programmes und dem Test wurde das erstellte Blinkprogramm auf das angeschlossene Gerät hochgeladen und das Programm wurde durch Ein-und Ausschalten der LED 1 (auf der Platine mit L1 bezeichnet) ausgeführt.

Neben der graphischen Ansicht des Programmes kann der eigentliche Programmcode über die Codeansicht betrachtet werden. Das ist der bekannte Arduino-Code, der in der PGLU-IDE aber nur angeschaut und nicht verändert werden kann.

Eigene Codeschnippsel oder neue Funktionen können nicht importiert werden. Bestehende Beispiele aus dem Internet, die Bibliotheken verwenden, können mit der aktuellen Version der PGLU-IDE nicht eingesetzt werden.

Nach dem Programmupload kann die PGLU-Platine von der Teacher’s Box entfernt und durch eine eigene Stromversorgung über eine Batterie oder ein USB-Netzteil versorgt werden.

Ohne Teacher’s Box:
Schüler können auch Zuhause am Projekt arbeiten. Da dann keine Teacher’s Box vorhanden ist, muss die webbasierte Programmierumgebung unter http://mach.pglu.ch aufgerufen werden. Über die graphische Oberfläche kann nun wie gewohnt der Programmcode erstellt werden. Der Upload des Programmes auf die Prozessorplatine erfolgt in diesem Fall über die Arduino IDE, die lokal installiert sein muss. Mit copy/paste kann der Code aus der PGLU-IDE in die Arduino-IDE kopiert werden. Die PGLU-Platine wird dabei direkt mit dem PC verbunden.

Zu beachten ist, dass zwischen der Teacher’s Box und der webbasierten PGLU-IDE keine Verbindung besteht. Bereits erstellte Programme müssen manuell transferiert werden.

Programmierung ohne Teacher’s Box (Quelle pglu.ch)

Projekte und Einsatz im Klassenzimmer

Auf der Website von PGLU stehen der Lehrperson einige Projekte, Arbeitsblätter und Aufgabenbeispiele zur Verfügung. Diese können im Klassenzimmer direkt eingesetzt werden und sind eine gute Startbasis für weitere Projekte.

Zwischenfazit

Ich habe einen guten Eindruck von der PGLU-Lernumgebung. Die Entwickler haben sich viel Gedanken gemacht und ein lauffähiges Projekt mit einer sehr ausführlichen Dokumentation realisiert.

Die Inbetriebnahme ist sehr einfach und es müssen keine Programme oder Treiber installiert werden. Das WLAN der Teacher’s Box wurde von meinem PC, wie auch einem Tablet und einem Smartphone, sofort erkannt.

Dank dem verwendeten Arduino Nano kann die Lernumgebung auch ohne Teacher’s Box.

In Teil 2 dieses Testberichtes werde ich den selbstfahrenden Roboter mit dem Kit aus dem Shop aufbauen und austesten.

Mein neues Buch Sensoren im Einsatz mit Arduino ist ab sofort im Handel verfügbar.

Link zu Amazon
Link zum Verlag mitp

 

Testbericht – Controllino (Teil 2)

Der CONTROLLINO hat auf den Modellen MAXI und MEGA eine Ethernet-Schnittstelle integriert, die über einen standardmässigen RJ45-Anschluss mit dem internen Netzwerk verbunden werden kann.

Mit einer Ethernet-Schnittstelle bieten sich dem Anwender viele zusätzliche Möglichkeiten für den Einsatz des CONTROLLINO als webbasierte Steuerungseinheit. Der CONTROLLINO eignet sich somit ideal als Schnittstelle für Internet of Things (IoT)-Anwendungen und als Schaltzentrale für MQTT-Anwendungen.

Auf einen handelsüblichen Arduino-Board muss für einen Ethernet-Anschluss ein entsprechendes Ethernet-Shield und eine Ethernet-Library verwendet werden.

Auch auf dem CONTROLLINO kann die bekannte Ethernet-Library verwendet werden. Mit wenigen Schritten kann der CONTROLLINO mit dem Beispiel webclient zu einem Sensormodul, das Sensordaten ins Internet sendet, eingesetzt werden.

Als einfaches Sensormodul ist der CONTROLLINO aber eher unterfordert. Der CONTROLLINO eignet sich optimaler als webbasiertes Schaltelement, bei dem die Ausgangssignale und Relaisausgänge verwendet werden.

MQTT-Subscriber
Das MQTT-Protokoll, das zur Kommunikation zwischen Geräten oder Maschinen verwendet wird, ist momentan in aller Munde. Laufend werden Anwendungen und Beispiele für Arduino und Raspberry Pi publiziert und vorgestellt.

Arduino-Anwendungen mit MQTT nutzen oft die bekannte PubSubClient-Bibliothek. Diese Bibliothek erweitert das Arduino-Board, und somit auch einen CONTROLLINO, zu einem MQTT-Client, der Daten an einen MQTT-Topic sendet oder einen Topic abonniert.

MQTT-Subscriber für Aquarium-Lichtsteuerung
In diesem konkreten Anwendungsbeispiel wird der CONTROLLINO als MQTT-Subscriber verwendet. Der CONTROLLINO hat ein Topic Aqualight abonniert und wertet laufend die Meldungen aus. Als Meldungen werden die Werte 0 (Lampe Aus) und 1 (Lampe 1) gesendet.

Bei einem 0 wird der Relais-Ausgang R3 ausgeschaltet, bei einem 1 eingeschaltet.

Im seriellen Monitor können die empfangenen Daten überprüft werden.

Die MQTT-Meldungen werden in diesem Beispiel von einem lokalen MQTT-Broker, der auf einem Raspberry Pi läuft, geliefert. Zusätzlich wird auf diesem Raspberry Pi die Anwendung Node-Red betrieben, die die Verarbeitung der MQTT-Meldungen erlaubt.

Ich verwende bei meinen Raspberry Pi gerne das Paket The ThingBox, das sowohl Node-Red, wie auch einen MQTT-Broker integriert hat.

Die Ein-und Ausschaltzeiten des Aquarium-Lichtes werden über einen Scheduler in Node-Red gesteuert. Der Scheduler heisst Big Timer und kann als Node in die eigene Node-Red-Installation integriert werden.

Die Ein-und Ausschaltzeiten können nun über den Browser in der Node-Red-Anwendung eingetragen werden.

Im Beispiel für das Aquarium ist das Licht zwischen 8 und 21 Uhr eingeschaltet.

Die gesamte Lichtsteuerung des Aquariums inklusive Stromversorgung für den CONTROLLINO wird nun in ein stabiles und berührungssicheres Gehäuse verpackt. Über den Browser kann nun die Lichtsteuerung verwaltet werden.

Fazit
Der CONTROLLINO MAXI ist eine kompakte und stabile Kleinsteuerung für viele Anwendungen. Dank dem integrierten Arduino-Board eignet sich der CONTROLLINO auch sehr gut für die Ausbildung von Schülern und Studenten. Die vielen Ein-und Ausgänge, die Relais-Ausgänge, die stabile Anschlusstechnik und die Ethernet-Schnittstelle sind positive Punkte die es zu erwähnen gibt. Erweitungsmodule wie Bluetooth, RF-Module können zwar nicht direkt auf die Steuerung gesteckt werden. Der Hersteller hat aber fast alle Signale des Microcontrollers auf Stiftleisten geführt, über die externe Module angeschlossen werden können.

 

CONTROLLINO ist eine elektronische Steuereinheit oder SPS Steuerung (PLC), die auf der Basis des Arduino aufgebaut ist. Diese Ministeuerung kann zur Steuerung von Anwendungen in Industrie, Hausautomation oder für die Ausbildung von Lehrlingen oder Studenten eingesetzt werden.

Der Hersteller von CONTROLLINO, die Firma CONELCOM GmbH aus Innsbruck (Oesterreich) hat mir freundlicherweise ein CONTROLLINO MAXI zum Test zur Verfügung gestellt.

CONTROLLINO MAXI

(Bild Quelle: controllino.biz)

Allgemein
Die CONTROLLINO-Reihe besteht momentan aus 3 verschiedenen Modellen, dem CONTROLLINO Mini für kleinere Steuerungsaufgaben, dem CONTROLLINO MAXI für Anwendungen mit Ethernet-Connectivity und dem CONTROLLINO MEGA für grössere Steuerungsaufgaben und Ethernet-Connectivity.

Die einzelnen Module unterscheiden sich durch die Anzahl der Eingänge und Ausgänge und die Anzahl der verschiedenen Schnittstellen. Der CONTROLLINO MINI ist quasi ein Arduino Uno und basiert auch auf einem ATmega328 Microcontroller von Atmel. Der CONTROLLINO MAXI und der CONTROLLINO MEGA haben zusätzliche Schnittstellen wie Ethernet und RS485. Beide Module arbeiten mit einem ATmega2560 Microcontroller.

Die CONTROLLINO-Module sind in ein stabiles Gehäuse für die Hutschienenmontage (EN50022) integriert.  Für eine sichere Anschlusstechnik sind die Ein-und Ausgänge auf Schraubklemmen geführt.

 

Alle weiteren Inhalte in diesem Testbericht beziehen sich auf das CONTROLLINO-Model MAXI.

Eingänge und Ausgänge
Die Ministeuerung CONTROLLINO MAXI bietet dem Anwender eine grosse Anzahl an Eingängen und Ausgängen.

Alle Eingänge und Ausgänge sind auf Schraubklemmen geführt und ermöglichen eine sichere und berührungsgeschützte Anschusstechnik. Zusätzlich sind die einzelnen Signale parallel auf 2 Stifleisten geführt.

Für den Praxiseinsatz stehen folgende Signale zur Verfügung:

12 Eingänge (Digital oder Analog)
12 Ausgänge Digital
10 Ausgänge mit Relais

Die 12 Eingangssignale können als digitale oder als analoge Eingänge verwendet werden. Je nach Spannungsversorgung (12 oder 24 V) unterscheiden sich die digitalen High-und Low-Pegel. Alle elektrischen Daten sind im Datenblatt des MAXI aufgeführt.

Auf einem nützlichen Pinout-Sheet sind alle Ein-und Ausgänge gut verständlich dargestellt. Auf diesem farbigen Ausdruck ist auch dargestellt, wie die internen Signale des ATmega-Microcontrollers mit der Aussenwelt verbunden sind.

Je nach Anwendungsfall kann man die Signale über die Schraubklemmen oder direkt an den Stiftleisten (Pin Header) anschliessen. Dabei ist zu beachten, dass an den Schraubklemmen jeweils eine Spannungsteiler-Schaltung für den 12V/24V-Einsatz integriert ist. Signale mit 5V können direkt über die Stiftleisten zugeführt werden.

Anschlusstechnik – analoge/digitale Eingänge

Werden die Eingänge als analoge Eingänge verwendet, können analoge Spannungen von 0 bis 13.2V (12V Versorgung) oder 0 bis 26.4V (24V Versorgung) gemessen werden.

Die digitalen Ausgänge sind als HIGH CURRENT-Variante realisiert und jeder Ausgang kann einen Laststrom von maximal 2A schalten. Kleinere Verbraucher wie Motoren oder Lampen können also direkt angesteuert werden, ohne dass zusätzliche, externe Schaltelemente oder Verstärker erforderlich sind.

Für grössere Lasten oder Anwendungen mit 230VAC-Verbrauchern eignen sich die 10 galvanisch getrennten Relais-Ausgänge.

Schnittstellen
Der CONTROLLINO MAXI besitzt verschiedene Schnittstellen zur Kommunikation mit der Umwelt und externen Systemen.

2 serielle Schnittstellen (UART)
1 serielle Schnittstelle RS485
1 I2C
1 SPI
1 Ethernet-Schnittstelle

Der Ethernet-Anschluss eignet sich ideal für webbasierte Anwendungen wie Sensor-Webclient, Webserver, MQTT-Client etc. Im 2. Teil dieses Testberichtes wird die Ethernet-Schnittstelle praktisch eingesetzt.

Alle Schnittstellen können über die bekannten Arduino-Bibliotheken angesteuert werden.

Funktionen
Neben den vielen Ein-und Ausgängen und den Schnittstellen bietet der CONTROLLINO MAXI eine integrierte Uhr (Real Time Clock RTC) die mittels der Controllino-Bibliothek angesprochen und in eigene Anwendungen integriert werden kann.

Programmierung
Dank dem internen ATmega-Microcontroller mit Arduino-Bootloader kann der Anwender die CONTROLLINO-Boards über die Arduino-Entwicklungsumgebung (IDE) programmieren. Auch können die vielen bekannten Bibliotheken für Arduino-Boards eingesetzt werden. Bereits erstelle Arduino-Programme können direkt auf dem CONTROLLINO verwendet werden.

Die Entwickler der CONTROLLINO-Module stellen eine Controllino-Bibliothek sowie Board-Daten zur Verfügung, die in die Arduino IDE integriert werden können. Für die Installation steht ein ausführlicher Installation Guide zur Verfügung.

Neben der Arduino-IDE können auch andere Entwicklungsumgebungen wie logi.CAD3, VISUINO, EMBRIO etc. verwendet werden. Die gesamte Liste der möglichen Programme ist auf der CONTROLLINO-Website aufgelistet.

Testbericht (Teil 2)
Im 2. Teil des Testberichts wird der CONTROLLINO MAXI in einer konkreten Anwendung eingesetzt.

 

 

Testbericht – KosmoBits

Kosmos, der bekannte Hersteller von hochwertigen und lehrreichen Experimentierkästen, hat kürzlich KosmoBits, einen Elektronikbaukasten für Kinder von 10 bis 15 Jahre, vorgestellt.

KosmoBits ist für junge Tüftler gedacht, die die ersten Schritte in der Programmierung erlernen möchten.

Bild 143

Kosmos hat mir freundlicherweise ein KosmoBits-Set zum Test zur Verfügung gestellt.

Konzept
KosmoBits besteht aus einem Elektronik-Board in Form eines Gamepads. Das „Gehirn“ dieses Gamepads ist ein kleiner Minicomputer, der die Kommunikation mit einem Smartphone oder Tablet regelt. Über die App auf dem Smartphone kann der junge Tüftler in verschiedenen Spiel-Leveln die Programmierung des Minicomputers erlernen. Der Minicomputer ist ein Microcontroller-Board, KosmoDuino genannt, das auf dem bekannten Arduino basiert. Der KosmoDuino ist ein sogenannter Arduino-Clone, ein von Kosmos entwickeltes Arduino-Board, das mit der kostenlosen Arduino-Entwicklungsumgebung programmiert werden kann.

kosmobits-gamepad-small

Arduino
Das Arduino-Projekt wurde in Italien speziell für Schüler und Studenten entwickelt, um ihnen einen einfachen Einstieg in die Programmierung und die Elektronik zu ermöglichen. Mittlerweile hat sich das Arduino-Board zu einem weltweit verbreiteten, günstigen Elektronik-Board für Hobby-Anwender und Bastler entwickelt. Die Entwickler von Arduino haben das Projekt offen gelegt und so können erfahrene Bastler und Entwickler eigene Arduino-Board entwickeln. Diesen Umstand hat auch Kosmos genutzt und den KosmoDuino realisiert, der nun die Zentraleinheit und das Gehirn des KosmoBits-Baukastens ist.

Auspacken
Der KosmoBits-Experimentierkasten wir in einer stabilen Kartonbox ausgeliefert und enthält verschiedene Komponenten und Elektronik-Bauteile.

Zum Inhalt gehören:

  • ein Gamepad-Gehäuse
  • eine Grundplatine (Interaction Board)
  • ein KosmoDuino
  • ein Lipo-Akku
  • 4 Sensoren (die sogenannten Bots)
  • ein Steckbrett für Elektronik-Experimente
  • ein USB-Kabel
  • verschiedene elektronische Bauelemente
  • Anleitungsheft mit über 60 Seiten

kosmobits-box-small

Nach dem Auspacken kann man anhand der Checkliste in der Anleitung die gelieferten Teile kennenlernen und gleichzeitig überprüfen ob das Set komplett ist.

Inbetriebnahme
Dank der ausführlichen Anleitung, die jeden Schritt des Zusammenbaus in Text und Bild erklärt, kann das KosmoBits-Gamepad auch von einem unerfahrenen Tüftler zusammengebaut werden. In einem zusätzlichem Quickstart-Guide werden alle nötigen Schritte in Stichworten aufgelistet. Ein zusätzliches Faltblatt mit Updates informiert den Anwender über Fehler und Änderungen, die nach dem Druck der Anleitung festgestellt beziehungsweise gemacht wurden. Die beiden grauen Gummi-Stempel, die an der Unterseite der Knöpfe aufgesteckt werden, sind in Materialliste im Anleitungsheft nämlich noch nicht aufgelistet.

Neben dem Zusammenbau des Gamepads und der Sensor-Bots muss auf dem Smartphone oder Tablet die KosmoBits-App installiert werden. Die App kann über den Google Play Store oder den Apple App Store kostenlos bezogen werden.

kosmobits-monster-bots-2-small  kosmobits-monster-bots-1-small

Erste Schritte
Nach dem Zusammenbau kann die App gestartet und das Gamepad eingeschaltet werden. Über Bluetooth verbindet sich das Gamepad mit dem Smartphone oder Tablet. Der junge Bastler kann nun in verschiedenen Leveln kleine Code-Monster sammeln. Die Code-Monster sind stellvertretend für kleine Code-Schnippsel, die du in einem Computerterminals in der App in die Lücken einfüllen musst.

kosmobits-gamepad-small

Durch das Ergänzen der Code-Lücken lernt man die einzelnen Befehle und den Programmaufbau kennen.

kosmobit-juinor-play-small
kosmobits-app-small

Programmierung
Die eigentliche Programmierung des KosmoDuino erfolgt über die Standard-Entwicklungsumgebung des Arduino-Projektes. Diese einfache Entwicklungsumgebung kann auch für andere Arduino-Boards verwendet werden. In der Entwicklungsumgebung wird der Programmcode geschrieben und anschliessend über ein USB-Kabeln in den KosmoDuino geladen.

Die Installation und die Erstellung der einzelnen Arduino-Programme ist im Anleitungsheft sehr ausführlich und gut verständlich beschrieben. Dank den verschiedenen Elektronik-Bauteilen wie Leuchtdiode, Tasten und   Lautsprecher (Buzzer), die direkt auf dem Grundboard (Interaction Board) platziert sind, kann man sofort mit der Programmierung der einzelnen Beispiele beginnen.

Das erste Programmbeispiel bei der Programmierung eines Arduino-Boards ist das Programm BLINK, das eine kleine Leuchtdiode zum Blinken bringt.

Das erste eigene Arduino-Programm ist ein Programmier-Highlight für den jungen Programmierer.

Dank den schrittweisen Erklärungen der einzelnen Beispiel-Programme versteht auch ein junger Tüftler ohne Programmierkenntnisse recht schnell die Zusammenhänge im Programmcode. Alle Beispiele und die notwendigen Software-Bibliotheken aus dem Anleitungsheft können von der KosmoBits-Website runtergeladen und in die Arduino-Entwicklungsumgebung kopiert werden.

Anwendungen
Nach dem ersten Hochladen von BLINK werden nun die einzelnen Elemente auf dem Interaction-Board und die Sensoren in einzelnen Programme, Sketche genannt, in Betrieb genommen. Der Temperatur-Sensor ist ein praktisches Modul für die Realisierung eines Thermometers.

Somit muss das Gamepad nach dem Durcharbeiten der einzelnen Beispiel-Programme nicht in die Ecke gelegt werden. Es kann für deine praktische Anwendung genutzt werden.

kosmobits-temp-bot-small

Mit etwas Phantasie kann man die Beispielprojekte nach eigenen Wünschen erweitern und kombinieren.

Der Temperatursensor und die Neopixel-LED auf dem Board können beispielsweise zu einem Temperatur-Monitor ausgebaut werden, der die aktuelle Umgebungstemperatur in Form einer Farbe darstellt – von Blau für kalt bis Rot für heiss.

Mit dem im Set erhaltenen Steckbrett können grössere Schaltungen ohne Löten zusammengesteckt werden. Dazu kann der Tüftler weitere Bauteile und Komponenten im Elektronik-Fachhandel kaufen und einsetzen. Da bei KosmoBits handelsübliche Elektronik-Komponenten verwendet werden, die nicht auf spezielle Vorrichtungen oder Platten gelötet werden müssen, kann der Experimentierkasten auch für zukünftige Bastelprojekte des jungen Tüftlers weitergenutzt werden. Den KosmoDuino kann man auch direkt auf das Steckbrett stecken und für sein Projekt nutzen. Die Verbindung zu den zusätzlichen externen Bauteilen erfolgt mittels den mitgelieferten Jumperkabeln.

kosmobits-kosmoduino-steckbrett-small

Mit dem Sketch KosmoBits_App kann man jederzeit wieder in den Spielmodus umschalten und das KosmoBits-Game auf dem Tablet weiterspielen. Auch kann man mit diesem Programm die Aktionen auf dem Gamepad überprüfen.
Im seriellen Monitor werden Statusinformationen der Bedienelemente sowie Infos vom aufgesteckten Bot dargestellt. Das ist sehr nützlich wenn man einen Fehler sucht oder etwas neues austesten will.

Im Beispiel ist der Bewegungssensor aufgesteckt.

kosmobits-sermon-sensoren-werte-small

Fazit
Der KosmoBits-Experimentierkasten ist ein modernes Hilfsmittel für die ersten Schritte in die Programmierung und die Elektronik. Dank dem Einsatz einer App für Smartphone oder Tablet kann man die jungen Tüftler auf einfache Weise animieren neben dem Spiel etwas zu lernen.

Für die ersten Schritte mit KosmoBits sollte ein Erwachsener das Kind begleiten und mit ihm gemeinsam die Erklärungen und Beispiele durcharbeiten. Mit den ersten Programmen kommen dann die Erfolge und der junge Bastler kann die nächsten Schritte und Projekte selber weiterführen.

Nach der Spielphase auf dem Tablet werden dann die richtigen Programme für den KosmoDuino am Rechner erstellt und die Komponenten auf dem Interaction Board oder auf dem Steckbrett aufgebaut. Kosmos warnt in der Anleitung, dass bei Kurzschlüssen Bauteile warm werden können. Darum lohnt es sich, dass ein Erwachsener zu Beginn die Verdrahtung prüft.

Leider hat bei meinem Testboard nach kurzer Spielzeit die Bluetooth-Kommunikation gestreikt. Der begleitende Junior hat das KosmoBits-Spiel darum direkt über das Tablet bedient. Hier wäre es ideal wenn in der App eine Testfunktion die korrekte Verbindung anzeigen würde. Auch ein Test-Sketch für den KosmoDuino würde in diesem Fall helfen.

Mechanisch machen das Gamepad und die Monsterbots einen guten und stabilen Eindruck. Die Mechanik des Encoders ist aber recht fest und für die Bedienung muss etwas Kraft angewendet werden.

Die Verbindung vom KosmoDuino und Interaction Board zum Rechner erfolgt über das mitgelieferte USB-Kabel. Durch die abgewinkelte Position des KosmoDuino auf dem Board kann das USB-Kabel nicht korrekt eingesteckt werden, wenn die Gamepad-Oberteile aufgesteckt sind.

Der Tester und sein Junior können den KosmoBits-Experimentierkasten jedem interessierten Tüftler ab 10 Jahren empfehlen. Dank der verwendeten Standardkomponenten bietet das Set eine gute Basis für den erfolgreichen Einstieg in die Programmierung und Elektronik.

 

 

LDR mit I2C-Anschluss

Der erste Prototyp von meinem neuen Sensorboard, ein LDR (Photowiderstand) mit I2C-Anschluss und Grove-Stecker ist aufgebaut und getestet.

i2c-ldr-breakout-board

Vorankündigung

Mein neuestes Werk Sensoren im Einsatz mit Arduino beschreibt den praktischen Einsatz von verschiedenen Sensoren mit Arduino.

In praktische Projekten werden Lichtmesser, Infrarot-Empfänger, Bewegungsalarm, Strommesser, Candy-Schrankwächter, Wettermonitor und weitere Projekte beschrieben und erklärt.

sensoren-im-einsatz-arduino

chirp! – the plant watering alarm

Work in progress

Testing the Chirp the I2C soil moisture sensor

Das Dragino LoRa Shield ist ein Transceiver-Board für Langstreckenanwendungen im 868 MHz-Bereich. In der Praxis wird die Technologie mit dem Begriff LoRa (Long Range) verwenden.

Freundlicherweise hat mir Christoph Schneeberger von der Firma Boxtec ein Testexemplar zur Verfügung gestellt. Vielen Dank dafür.

Das LoRa Shield des chinesischen Hersteller Dragino ist eine Erweiterungsplatine für Arduino. Das Shield hat den Standard-Arduino-Footprint und lässt sich auf den Arduino Uno, Leonardo und Mega aufstecken. Die aktuelle Boardversion ist Version 1.3.

Das Dragino LoRa Shield verwendet den RFM95W-Transceiver von HopeRF der in vielen LoRa-Anwendungen verwendet wird. Dieses Transceivermodul beinhaltet die komplette Sende-und Empfangslogik. Auf dem Shields selbst sind, ausser zwei Buffer-Bausteinen vom Typ 74HC125, keine weiteren Halbleiter notwendig. Die Buffer-Bausteine sind nötig, da der RFM95W nur mit maximal 3.7 V betrieben werden darf. Die interne Logik arbeitet mit 3.3V, die aus der internen 3.3V-Versorgung des Arduino-Board bezogen wird.

Neben dem Transceiver-Baustein ist der Antennen-Anschluss die zweite wichtige Komponente auf dem Shield.

Ab Version 1.2 besitzt das Dragino-Shield einen SMA-Antennenanschluss an welchen direkt eine SMA-Antenne angesteckt werden kann.

Der RFM95W Transceiver wird via SPI-Interface angesteuert. Dazu sind die Signale MOSI, MISO, SCK und SS nötig. Auf dem Dragino Shield werden die SPI-Signale von den Pins D10 bis D13 und über den 6-poligen ICSP-Anschluss auf dem Board geliefert. Mittels den Jumpern  mit der Bezeichnung SV2-SV4 kann zwischen den beiden Signalquellen umgeschaltet werden. In der Standardkonfiguration kommen die SPI-Signale vom ICSP-Stecker, der via Buchse auf der Unterseite mit dem untenliegenden Arduino-Board verbunden ist. Die Konfiguration dieser Jumper ist in der Shield-Dokumentation des Herstellers leider nicht erwähnt. Um diese Information zu bekommen, muss man einen Blick in den Stromlaufplan werfen, der auf der Wiki-Seite des Produkts zur Verfügung steht. Zusätzlich kann der Stromlaufplan, inkl. Boarddaten im Eagle-Format vom Github-Account von Dragino geladen werden.

Neben den SPI-Signalen besitzt der RFM95W digitale Signalleitungen (DIO0 bis DIO5) die auf eine Stifleiste herausgeführt sind. Zusätzlich sind die Signale DIO0, DIO1, DIO2 und DIO5 auf digitale Pins des Arduino-Boards geführt. DIO0 ist fix mit D2 verbunden. Die restlichen Signale können über die Jumper JP1-JP3 auf die Signale D6-D8 geführt werden.

Betrieb des LoRa Shields

Für den Betrieb benötigt man mindestens 2 Module, ein Sender und ein Empfänger. Für beide Module kann jeweils ein LoRa Shield auf ein Arduino Uno gesteckt werden.

In der Praxis verwendet man für den Sender oftmals ein kleineres Board mit einem RFM95W. Für meine eigenen Sensortests habe ich ein eigenes Sensor Board mit einem ATmega328 und einen RFM95W realisiert.

Im Bild ist das Sensor Board als batteriebetriebener Sensor Node in eine Plastik-Box für den Ausseinsatz verpackt.

Software

Für LoRa-Anwendungen mit dem RFM95W und dem LoRa Shield eigenet sich die Radiohead Library. Anwendungen mit LoRaWAN verwenden meist die LMIC-Library.

Ein praktische Beispiel zeigt der Aufbau eines Gateway für das LoRaWAN.

Testversuch

In einem Testversuch mit dem oben erwähnten Sensor Board als Sender, und dem LoRa Shield mit Arduino Uno als Empfänger, konnte ich in der Ortschaft über mehrere 100 Meter Sensordaten senden und empfangen.

Die Versuchsreihe ist noch nicht abgeschlossen. Versuche mit anderen Antennen und unterschiedlicher Positionierung des Empfängers folgen noch.

Fazit

Das LoRa Shield von Dragino ist ein praktisches Shield für Versuche mit der LoRa-Technologie. Mit einem Arduino Mega oder einem Raspberry Pi als Microcontroller-Board kann das LoRa Shield einfach als Single Channel LoRaWAN Gateway für das The Things Network eingesetzt werden.

Das LoRa Shield eigenet sich ideal für stationäre Empfänger oder Gateways. Bei Anwendungen als Sensor Node ist das Shield meist zu gross. Auch ist ein LoRa Shield mit einem Arduino Uno nicht optimal für Batteriebetrieb ausgelegt.

Dank der bereits verfügbaren Software ist der Einstieg in die LoRa-Technik mit dem LoRa Shield recht einfach und kostengünstig.




Kategorien