Tag Archives: Smart Home

Programmieren lernen mit Minecraft

Das gemeinsame Ferienprojekt meines 10jährigen Sohnes und mir lautete: Programmieren in Minecraft. Um genau zu sein, ich habe einen Einstieg in Minecraft gesucht und mein Sohn wollte „richtiges“ Programmieren mit Lua lernen. Unser Ziel haben wir erreicht: Nun können wir Schalter in der Minecraft-Welt betätigen und so eine echte Leuchte in unserem Eclipse basierten Smart Home steuern.

Dank des ansprechend gestalteten Video-Training „Let’s code Minecraft!” von Tom Wendel und Patrick Kirsch gelang dieser Einstieg in kurzer Zeit: die beiden erklären aufeinander aufbauend im Wechsel die verschiedenen Themen – und das überwiegend sehr unterhaltsam gleich innerhalb einer Minecraft-Welt. Gut fanden wir auch, wie noch einmal die Grundlagen von Minecraft erläutert, „elektrische Schaltungen“ auf Basis von Redstones (Stromleitungen in Minecraft) eingeführt und die Installation von Erweiterungen (sogenannte Mods) sowie der Aufbau von Ressourcen gezeigt werden. Okay, für meinen Sohn als Minecraft-Experten war das ein Klacks, aber für mich genau der richtige Einstieg, um nicht mehr ganz so hilflos durch die Block-Welt zu irren.

Und dann ging es schon los mit der Programmierung auf Basis der Erweiterung ComputerCraft. Hier haben sich die beiden Autoren dann ab und zu doch ein wenig viel vorgenommen, so dass die Erklärungen einen Programmieranfänger durchaus vor Herausforderungen stellen und ein erfahrener Programmierer sich ein wenig mehr Tempo und weniger Grundlagen wünscht. Vielleicht wäre es besser gewesen, für die jeweilige Zielgruppe eigene Video-Trainings zu produzieren. Mein Sohn hätte sich außerdem eine größere Vielfalt eher einfacherer Programmbeispiele gewünscht und dafür lieber auf die umfangreicheren Beispiele verzichtet. Uns beiden fehlt darüber hinaus so eine Art Referenz der Befehle, die über das englischsprachige und etwas spröde ComputerCraft-Wiki im Internet hinausgeht. Unterschiedlicher Meinung sind wir bei dem letzten Teil, der Minecraft verlässt und die gelernten Konzepte auf die Webprogrammierung mit JavaScript und HTML überträgt. Für mich ist das eine großartige Inspiration für eigene Trainings und Vorlesungen. Für einen jungen Einsteiger ist eine Einführung in die Webprogrammierung in nicht mal 90 Minuten ohne weitere Unterstützung verständlicherweise kaum mehr Nachvollziehbar.

Insgesamt können wir beide das Training für Kinder und Erwachsene ob Programmierneuling oder erfahrener Entwickler empfehlen und hoffen sehr auf weitere Video-Trainings dieser Art. Übrigens: Wer unser Ergebnis sehen und eine Einführung in das Internet der Dinge und die Programmierung mit Minecraft bekommen möchte, der kann uns bei unserem gemeinsamen Vortrag auf der Maker Faire Bodensee treffen.

„Let’s code Minecraft!“ – Programmieren lernen mit Minecraft
Autoren: Tom Wendel, Patrick Kirsch
Preis: ca. Euro 30,-
ISBN: 978-3-8362-4056-7
Erscheinungsdatum: Rheinwerk, 2016
Link: Rheinwerk Verlag

Hack your Home – the easy way

More and more people are interested in turning their home smart. Unfortunately not every demand can be solved with nowadays solutions, couldn’t it? I think there is much more you can achieve today if you start thinking out of the box, if you try to make a toast with a coffeemaker – which, by the way, is according to Wau Holland kind of hacking.

WP_20141029_14_38_10_ProA door contact sensor used to control a drawer’s state.

WP_20141029_11_14_22_ProA door contact sensor used to report a goal.

WP_20150319_18_10_55_ProA magnetic door/window contact sensor consist of the sensor itself and a magnet which just determines the two states open and close.

An affordable and easy “hackable” home automation device is a magnetic door/window contact sensor. Basically feasible for almost every mechanical movement. Well it is intended to be used to check windows and doors, but some people use it for the postbox or drawers. Best of all, there is no coding or hardware knowledge needed to create something new with this simple device.

WP_20150319_18_23_53_ProGetting into the hardware of a door contact sensor: Most important is the reed switch on the left.

I am sure, there are many scenarios where only two states have to be distinguished: On or Off, Open or Close, Hot or Cold, Dark or Light and so forth. And it is easy to get this into your Smart Home using a door/window contact. The only thing you need is to bypass the reed switch inside with your very own button or sensor. I usually use alligator clips to bypasses the reed switch for testing purpose. Now, I can connect whatever I like as long as this closes or opens the electric circuit. Well, it might be better to remove the reed switch and solder the stuff, but for a first prototype this is totally sufficient.

basicclientBasic client of Deutsche Telekom’s Smart Home platform QIVICON.

Thanks to the used eQ-3 door/window contact this modification does work directly within the Smart Home platform QIVICON and can now be combined with rules and other devices and home appliances. So, what will you build? Just curious…

Reversibles Hacken

Wie kommt man schnell zu neuen Ideen und wie prüft man diese frühzeitig auf deren Nutzen und Umsetzbarkeit? Gerade im Rahmen des digitalen Wandels (Digitale Transformation) im Zusammenhang mit dem Internet der Dinge ist dies eine essentielle Frage.

Bei vielen Projekten hat es sich bewährt, für erste Prototypen auf vorhandene Produkte zurückzugreifen und diese „nur“ anzupassen. Das ist gerade in frühen Projektphasen effizienter und günstiger, als etwas ganz von vorne zu bauen. Es geht darum, die Funktionsweise zu verstehen und für eigene Vorstellungen zu verändern. Oder wie es CCC-Gründer Wau Holland formulierte: „Ein Hacker ist jemand, der versucht einen Weg zu finden, wie man mit einer Kaffeemaschine Toast zubereiten kann“.

disassembling

Meist die größte Herausforderung und ein Garantiekiller: Das eigentliche Auseinandernehmen (hier am Beispiel einer Nespresso Pixie). Und nicht vergessen, Strom ist lebensgefährlich und ein Personenschutz-Adapter die mindeste Investition, ist einem sein Leben lieb.

Angenommen die Aufgabe besteht darin, dass eine Kaffeemaschine zum Beispiel intelligent und vernetzt sein soll (Stichwort Smart Home). Dann gibt es verschieden Wege, Ideen zu entwickleln und erlebbar zu machen. Diese unterscheiden sich jedoch ganz erheblich in den dafür notwendigen Fähigkeiten und Kosten. Zum Beispiel könnte ein Roboter die Maschine stellvertretend steuern. Es gibt zahlreiche Beispiele, wo dies erfolgreich jedoch meist nicht ganz günstig praktiziert wird. Es wäre auch einen Versuch wert, direkt in die Steuerung der Maschine über deren Programmierung einzugreifen. Einige Hersteller wie z. B. der Staubsaugerroboterhersteller iRobot oder der Dronenhersteller Parrot bieten dafür extra Programmierschnittstellen. Doch sollten diese fehlen, dann muss viel Aufwand betrieben werden wie z. B. Reverse Engineering. Oder man könnte auch die Hardware des Gerätes mit eigenen Komponenten zur Steuerung modifizieren, doch dies ist meist mit erheblichen Kosten und Risiken verbunden.

electronic_contacts

Ob man nun die Sensoren und Schalter direkt am Bauteil oder an der Platine abgreift, ist eher eine praktische Frage. Bei der Nespresso Pixie lässt sich das glücklicherweise alles schön zentral machen. A und B sind die Tasten, C ist ist die Status LED und D für die Erdung.

Eine effiziente und kostengünstige Vorgehensweise ist das „Reversible Hacken“. Diese einfache Form des „Hacken“ nutze ich erfolgreich im Rahmen von Value Innovation Workshops bei denen neben der Ideenfindung auch Geschäftsmodelle entwickelt und mögliche Innovationen und deren technische Umsetzbarkeit überprüft werden (ein Artikel ist geplant).

Beim Reversible Hacken hier wird zwar auch in die Hardware des Gerätes eingegriffen, doch dies beschränkt sich auf das Abgreifen der vorhandenen Sensoren und Überbrücken der Aktoren wie Schalter. Die Funktionsweise der Sensoren und Schalter lässt sich in der Regel einfach ermitteln und die meist kostengünstigen Bauteile wie Optokoppler und Relais lassen sich normalerweise leicht wieder entfernen – zumal die grundsätzliche Funktionsweise des Gerätes ja eh weiterhin erhalten bleibt und zusätzliche Möglichkeiten nur drangeflanscht werden.

arduino

Sieht schlimmer aus, als es ist: Die hinzugefügten Bauteile müssen nur noch mit einem Rechner verbunden und programmiert werden. Hier kommt das Arduino kompatible „Platinchen“ von blueIOT auf einem Steckbrett zur fliegenden Verdrahtung zum Einsatz.

Die zusätzlichen Bauteile müssen nun nur noch mit einem Einplatinenrechner wie Raspberry Pi und/oder Arduino verbunden werden. Schon stehen einem alle Möglichkeiten in Software zur Verfügung. Das geht in der Regel zügig von der Hand, wenn man einen Baukasten aus den notwendigen Bibliotheken und Codemustern parat hat. Meist ist es ja nicht mehr als ein paar REST-Aufrufe kombiniert mit Sensorwert/Ereignis lesen, Bedingung prüfen und Wert setzen. Zumindest für einen Prototypen reicht das häufig.

Falls Sie nun selber loslegen und eigene Ideen probieren möchten, dann sind Spielzeuge ein guter Startpunkt für eigene Experimente. Selbst vermeintlich defekte Geräte können so zu neuem Leben erweckt werden.