The open source IoT stack is a set of open source software which can be used to develop and scale IoT in a business environment. It is particularly focused towards manufacturing organizations.
Why Open Source?
- No supplier lock in
- High rate of supplier development, incorporation of new technologies as they emerge.
- Low entry costs (no upfront license fees)
- Complete communications security from end to end
- On-premises or cloud installation
This is a liberation for many manufacturers who are used to being locked into proprietary information and control systems (Profibus, SAP, etc) where at best connectors to third parties have a steep price tag, and at worse you are locked into proprietary protocols which oblige you to continue buying from the original supplier, or rip out everything and start again.
What is it used for?
- Monitoring production
- Monitoring quality
- Monitoring maintenance
- Analysis of trends, variations
- Alarms and automatic dashboard generation for operators and managers
- Statistical analysis
- Low cost SCADA
- Analysis and control of operations from mobile devices (smartphones and tablets)
What about some more concrete use cases?
Humidifiers in a paper store are turned on and off manually because the cost of automation was prohibitive. With VS Scada, automation could be carried out at a cost of under 100€ per unit.
Sensors attached to a machine collect data on vibration levels and temperature. Alarms are set to detect abnormal changes or variations in the data. Alarms are automatically prioritized on a quality or maintenance manager’s dashboard
A pharmaceutical company is obliged to records of key process controls for over 15 years. This requires a complex gestion of data backups, from a variety of systems. With the openIoT stack, Data is streamed directly onto a cloud database where the same data is used for production analysis can be stored without limit at low cost.
Legacy measuring systems record measurements onto a local SQL database. This data is streamed to a BigData database and is analysed automatically for changes is standard deviation in the data which may indicate process capability issues.
Machine error logs were ignored by operators, potentially causing significant breakdown and downtime costs. The machine logs are streamed to a bigData database and analysed automatically for errors and automatically prioritised on the maintenance managers dashboard.
What are the Main Elements
The stack is made up of a number of independent specialized elements. Each element is stand alone, and could potentially be replaced by another software if an improved technology becomes available.
Mosquitto MQTT server for receiving data from sensors and controllers and sending data to actuators.
mySQL Device Manager for managing devices, parameters and managing passwords and security
ElasticSearch for storing data in a database capable of managing BigData.
Kibana for analysing big data, creating user dashboards
Logstash for incorporating non MQTT data into our ElasticSearch database from a variety of sources, such as SQL databases, CSV files, and other legacy systems
Logstash for creating alarms about the status of our system
VS Scada (Very simple Scada) for automating tasks and creating automatic process controllers at a fraction of the cost of traditional Scada systems
MQTT Dashboard (free but not open-source) for viewing and controlling elements of our system via Android devices such as smart phones or tablets.
What does it Cost?
All of the software listed above is available free of charge for an unlimited time. Obviously there are other costs to be contemplated, most importantly time spent in planning the implementation, configuration, and hardware costs (sensors and connectivity). However, the lack of license fees means that a pilot installation including hardware can be developed for under 1000€.
For documentation, source code, and applications, find out more on the Zibawa project page.