digitalhhz / DigitalHHZ2

4 stars 2 forks source link

Digital HHZ 2.0

As a research center for digital transformation, the Herman Hollerith Center (HHZ) is also intended to be a positive example of digitization in terms of infrastructure. Therefore, smart environments are to be created in which digital services, by means of data generated by sensors and actuators, promote the interaction of users with the building or the learning and working environment and support users in their everyday lives.

The goal of the Digital HHZ 2.0 is to provide a robust IoT environment/infrastructure as an enabler for IoT projects, hackathons and theses. This repository serves as a starting point for the sub-projects and subsequent projects. It is designed as an overview of all activities in the project. Implemented a smart lab based on the low-code platform Node-RED and MQTT, with sample appliances and functionalities such as.

The project documentation describes the individual components (software and hardware components), as well as other technologies and their installation and configuration.

The project planning and requirements and task management was done via Trello. Our Trello board can be accessed at the following URL: https://trello.com/b/O8KbgCGB/digital-hhz-20

Since version management of Node-RED dashboard flows uses Node-RED's project feature, two separate, private repositories were created and forked using this account:

To give a quick overview of our architecture, here is a summary of the architecture chapter of our project documentation:

Figure 1 Digital HHZ architecture

The figure shows an overall picture of the technologies used and how the components interact with each other. The left side represents the current implementation in room 125. Here, the sensors (M5Sticks) and actuators (Tasmota lamp) are installed. The sensors and actuators communicate via MQTT with the local MQTT broker based on Mosquitto, which was installed in room 121 on a physical server (Raspberry Pi). The data from the sensors and actuators are mirrored to additional Mosquitto brokers (bridging). A second Mosquitto broker is hosted in SmartLab on a virtual machine (broker VM).

The Digital HHZ website (external dashboard), which is accessible from outside the Digital HHZ network (external) via http://digital.hhz.de, is hosted on a Strato server. This page lists the current measured sensor values per room and briefly introduces the project. The Digital HHZ website and the internal dashboard were developed using the low-code platform Node-RED. The internal dashboard is hosted on the Nodered-VM. The internal dashboard can only be accessed when logged into the Digital HHZ network.

QR codes are placed on the sensors and actuators. With the help of these, device data, as well as their affiliation, can be traced by a QR code scanner, e.g. smartphone, which is logged into the Digital HHZ network, scanning this QR code. The user is then automatically redirected to a device-specific page within the internal dashboard and receives all necessary information about the device itself and its affiliation. The data for this comes from the device management software ThingsBoard, which has also been installed on the Nodered-VM. The data is retrieved from the internal dashboard via the ThingsBoard API.

The DB VM hosts the Backup Service, which consists of the time series database management system InfluxDB, as well as the other components of the TICK stack (Telegraph, Kapacitor, and Chronograf). This service fetches all values from the Broker-VM via Telegraf and stores them in a database. At the beginning of each month, a backup of the database is created and automatically uploaded to Dropbox. However, backups can also be created manually. Dashboards have been created via Chronograf for analysis and csv export of the data and can be intuitively expanded via the Chronograf web interface.

Each VM as well as each Raspberry Pi (whether appliance or broker Pi) must publish its offered services via mDNS/DNS-SD (e.g. Avahi). Avahi is required to make the devices/services accessible in the Digital HHZ without the IP address being known.