Project Overview

My first internship was in the Industry Lab, which is part of the IBM Watson IoT Center in Munich. In the lab existed more than 100 sensors and actors from different manufacturers. The sensors and actors were already part of the local network and sent their data to the IBM Watson IoT Platform (IoT F). The basic idea was to use the exiting data and do something nice with it, which can be later presented to customers and visitors of the Industry Lab.

The resulting project can be divided into seven major sections:

  • Data Exploration
  • Get the data into openHAB
  • Sensor/actor structuring and visualization
  • Automated structuring
  • Persisting the data
  • Controlling the actors via openHAB
  • Data visualization using charts and time series

As data exploration doesn't need any further information, I will describe how the architecture was built and what openHAB has to do with this.

Control and Data Flow

The open Home Automation Bus (openHAB, pronounced ˈəʊpənˈhæb) is an open source, technology agnostic home automation platform which runs as the center of your smart home!

As openHAB is an open source tool, it was the perfect solution for the project, which was basically more a Proof of Concept (PoC). Normally, you have your sensors and actors located somewhere in your home area. openHAB provides so called bindings, which let you integrate those devices into the openHAB platform. Additionally, the openHAB platform provides you a dashboard where you can arrange your sensors and actors as well as control the actors from.

I've created a NodeRED flow grabbing the data from the IoT F. If the data belonged to a sensor, which was not already integrated into the platform, the sensor got an unique name and was added to the corresponding Item file. Furthermore, the sensor was added to the groups it belonged to, e.g. a new light bulb was added to the light group. That said, the sensors and actors were arranged on the dashboard based on their functionalities, category and location. This enables users of the tool to see all data related to the room they are staying in. It also enables users to see, which meeting rooms are free or occupied based on the last motion (a meeting room was considered free if the last motion was more than two minutes ago). To be able to analyse the data later, it was persisted into a PostgreSQL database. For example you are able to see how the air condition changes over time.

Before leaving the project I added a calendar and a trello integration to openHAB. Furthermore, you were able to control the light bulbs in the different rooms and floors. I defined rules for the light bulbs, so they changed the color of their light based on the air conditions in the room or floor. The last feature I was working on was to integrate room reservations into openHAB. The idea was that you can not only see the free meeting rooms through openHAB, but also trigger a slider and mark the room as reserved. The light bulb in the meeting room changes the light to deep pink to signal other people, that someone has reserved the room. The reservation was only active for two minutes, so that you have time to enter the room.

It was a very interesting project and a great experience to work with so many different IoT devices. Furthermore, it has awakened my interest of workflow automation.