Tag Archives: Internet of Things

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.

Why Industry 4.0 might stumble

Hardware and Software is getting more and more available and usable for everyone: Both in terms of price and complexity. Thanks to that, a growing crowd of enthusiast is building electronic gizmos. It’s getting even more interesting if you connect sensors and apps through the almost everywhere available Internet.

Classic industries seem to understand that this is important. So, they gave it a name: Industry 4.0! This fourth phase of industrialization is about cyber physical systems (which implies connectivity). Although they understand the importance, they often do not know how to deal with it. Saying that I am not criticizing their business or their competence!

Nevertheless, Industry 4.0, Machine-to-Machine (M2M), Internet of Things (IoT) or whatever you like to call it (indeed, there are differences)… It’s not  just about generating business value, it’s not about saving or earning money in the first place! It’s much more about creativity and finding (or creating) new needs! It’s about innovating. Well, even innovations must proof themselves based on revenue, but if you turn around the motivation, your subject reduces to a replaceable vehicle for sales.

image

EtherNet/IP Sequence for I/O Data Transfer is public, but the protocol details cost a fortune (Source: ODVA – Open DeviceNet Vendor Association, Inc.)

One of the most important aspects about the Internet of Things movement is accessibility (in terms of availability and usability). Exactly that is missing talking about classic industries. For example, I wanted to use a specific sensor for the automation industry but finally gave up. I spend a decent amount of time, to get a specific sensor and even spend more time to use it. Well, it seemed so simple, because it’s just a basic socket connection. Unfortunately, it turned out the protocol itself isn’t that easy. Furthermore, you (in addition to the vendor) have to buy the specification or a library for a significant amount of money, too (which costs more than the sensor).  It’s even worth, because some people did start open source libraries, but according to their websites had to stop for the sake of license issues.

The standards organizations and license owners have their arguments, like compatibility, security etc., but I simply don’t think that’s true: Security is literally a lame excuse for complex and obfuscated legacy systems. I think it’s just because of revenue! These people think, if a system performs just closed and/or complex enough, one might be willing to pay for it – and it’s even better if every party has to pay (the vendor and the customer). This is too shortsighted and only true as long as you do not have alternatives!

Anyway restricting the access to these technologies impedes innovation. If the opportunity costs are just too high, “innovators” will ignore these. Otherwise it takes frustrating long to experience and prove an idea! From my experience, this is even true doing workshops and prototypes together with these industries. This makes me sad, because it would be so easy for them, to implement interfaces for that, instead of remaining in stagnation…

Kommunizieren statt Kommandieren

Computer durchdringen immer mehr Lebensbereiche. Dabei bleibt oft die eigentliche Frage des Nutzens auf der Strecke. Doch wie findet man einen solchen Nutzen? Wie kann eine gemeinsame Diskussionsgrundlage für das Finden und Umsetzung von neuen digitalen Ideen geschaffen werden? Der Austausch von Informationen, also das Kommunizieren, ist aber noch in einer zweiten Hinsicht essentiell für die Entwicklung neuer Anwendungen. Denn auf der einen Seite verlieren klassische Ein- und Ausgabemittel wie Tastatur und Monitor an Bedeutung und auf der anderen Seite nehmen die Vernetzung sowie die sensorische Möglichkeiten der Geräte zu. Damit drängt sich die Frage auf, wie wir als Menschen mit all diesen Maschinen kommunizieren sollen. Wie kann eine natürliche Interaktion für Anwendungen im Internet der Dinge aussehen?

Austausch von Informationen, also das Kommunizieren, ist in zweierlei Hinsicht essentiell für die Entwicklung neuer Anwendungen. Zum einen muss eine gemeinsame Diskussionsgrundlage für das Finden und Umsetzung von neuen digitalen Ideen geschaffen werden und zum anderen erwartet der Nutzer möglichst natürliche Interaktionsformen für den Informationsaustausch innerhalb einer Anwendung.

image

Gemeinsam mit Partnern erarbeiten, erleben und evaluieren wir In Workshops neue Ideen. Als Kommunikationsgrundlage dienen vorgefertigte und einfach zu nutzende APIs (Programmierschnittstellen) z. B. zur Sprachverarbeitung oder Positionsbestimmung kombiniert mit Alltagsgegenständen und interaktiven Spielzeugen von Lego Mindstorms bis zu Microsoft Kinect.

In erster Linie werden mobile Nutzungsszenarien diskutiert, bei denen der Anwender mit einem einzelnen Endgerät interagiert. Doch Computer durchdringen zunehmend mehr Lebensbereiche und sind dabei immer weniger offensichtlich als solche erkennbar (Ubiquitous und Pervasive Computing). Häufig existieren nicht einmal die gewohnten Ein- und Ausgabekanäle wie Bildschirm und Tastatur. Dafür sind diese Geräte meist vernetzt wenn nicht sogar gleich über das Internet verbunden (Internet of Things).

Die Herausforderung liegt nun darin, neue Interaktionsformen zu finden, die nicht mehr nur einer 1:1-Beziehung zwischen Mensch und Maschine gerecht werden, sondern sich auch für 1:n-Szenarien eignen, bei denen der Nutzer sich inmitten einer Vielzahl an Geräten bewegt. Diese miteinander vernetzten Geräte bilden eine komplexe Benutzungsschnittstelle aus unterschiedlichsten Sensoren (Ambient Intelligence) und Aktuatoren (z. B. Motoren).

Der Anwender erwartet natürliche Interaktionsformen, die beispielsweise auf angeborene Fähigkeiten wie Gesten und Sprache basieren. Mangels der gelernten und auf Metaphern basierenden grafischen Benutzungsschnittstellen ist hier sowieso ein Umdenken erforderlich. Die Erkennung von Gesten und Sprache (Speech Recognition) funktioniert bereits sehr gut. Technisch ist es dabei mittlerweile sogar möglich nonverbale Signale wie die Gemütslage zu ermitteln und in die Kommunikation zwischen Mensch und Maschine einzubeziehen.

image

Die Erkennung bei Spracheingaben kann durch Grammatiken anstelle einer allgemeinen Transkription verbessert werden. Doch fehlende „Höflichkeitsfloskeln“ machen diese Form der Interaktion schnell zu einem unnatürlichen Kommandieren.

Das eigentliche Verstehen (Natural Language Understanding) ist jedoch noch ganz am Anfang. Noch können wir mit den Geräten nicht natürlich Kommunizieren, denn Maschinen verfügen nur über einen eingeschränkten Kontext und Weltwissen und Intuition fehlen. In vielen Fällen sind nicht einmal Höflichkeitsfloskeln erlaubt, so dass sich die Kommunikation auf das Erkennen von Schlüsselwörtern beschränkt und somit eher einfachen Kommandos entspricht. 1966 entwickelte Joseph Weizenbaum das Computerprogramm ELIZA, bei dem es sich um eine oberflächliche Simulation eines Psychotherapeuten handelt. ELIZA zeigt eindrucksvoll, dass Maschinen natürliche Kommunikation auf einzelne Domänen beschränkt vorgaukeln können, solange auf Weltwissen verzichten werden kann. Auch ein großer Teil der interaktiven Erwachsenenunterhaltung und der ein oder andere Facebook Chatbot (textbasiertes Dialogsystem) machen sich die Eindeutigen Interessen der Anwender zunutze und erkennen so scheinbar natürlich deren Absichten.

Bombe: „Ich denke, also bin ich.“ […] Doolittle: „Aber woher weißt Du, dass außer Dir etwas existiert?“ Bombe: „Meine sensorische Apparatur vermittelt es mir.“ (Quelle: Dark Star, 1974)

Von der philosophisch anmutenden Diskussion mit der „Bombe 20“ aus dem Science-Fiction Klassiker Dark Star von 1974 sind wir jedoch trotz Siri und Co. noch ein ganzes Stück entfernt. Doch genau diese Bombe zeigt, was wir schon heute realisieren können: Interaktionen müssen mit allen zur Verfügung stehenden Informationen (Sensoren) aus dem Kontext kombiniert werden. Eine Spracheingabe in der Form „Licht an“ bei mehreren Leuchten alleine reicht bei weitem nicht aus. Kombiniert mit einer auf die Leuchte deutenden Geste kommt das dem natürlichen Verhalten jedoch schon sehr nah. Aber auch Positionsdaten (wo bin ich) und Blutdruck (wie geht es mir) können helfen, Absichten besser zu „verstehen“.

Und damit schließt sich der Kreis und wir sind wieder bei der ganz am Anfang erwähnten Bedeutung von Kommunikation: Die Vielfalt solcher Interaktionsformen ist so groß und vor allem die Erfahrungswerte sind so gering, dass die Umsetzung nicht einfach Delegiert werden kann, sondern beginnend mit der Ideenfindung Kommunikation essentiell ist.