A portable and scalable SCADA/IoT platform centered on the MongoDB database server.
To provide an easy to use, fully-featured, flexible, scalable, and portable SCADA/IoT system built by leveraging mainstream open-source IT tools.
- Standard IT tools applied to SCADA/IoT (MongoDB, PostgreSQL/TimescaleDB,Node.js, C#, Golang, Grafana, etc.).
- MongoDB as the real-time core database, persistence layer, config store, SOE historian.
- Portability and interoperability over Linux, Windows, Mac OSX, x86/64, ARM.
- Windows installer available in the releases section.
- Horizontal scalability, from a single computer to big clusters (MongoDB-sharding), Docker containers, VMs, Kubernetes, cloud, or hybrid deployments.
- Unlimited tags, servers, and users.
- Modular distributed architecture. Lightweight redundant data acquisition nodes can connect securely over TLS to the database server. E.g. a Raspberry PI can be a data acquisition node.
- MongoDB Change Streams for realtime async database events processing.
- HTML5 Web interface. UTF-8/I18N. Mobile access.
- Inkscape-based SVG synoptic display editor.
- PostgreSQL/TimescaleDB historian integrated with Grafana for easy creation of dashboards.
- Extensibility of data model (MongoDB: NoSQL/schema-less).
- Development of custom applications with modern stacks like MEAN/MERN, etc.
- Big data / ML capabilities through MongoDB Spark connector.
- Access to the huge MongoDB and PostgreSQL ecosystem of tools, community, services, etc.
- Easy to understand system with small code footprint for each independent module. Extensive use of JSON from bottom up.
- Possibility of easy integration of new and custom protocol drivers developed with modern programming languages (just read/write to MongoDB).
- Future-proof, vendor independence, flexibility, extensibility.
- Reduced human costs for maintenance and development thanks to the employment of widely-used open-source IT technologies.
- Live point configuration updates.
- Role-based access control (RBAC).
- Web-based configuration management (now under development).
- Power/Oil/Gas/etc Local Station HMI.
- Manufacturing Local HMI.
- SCADA Protocol Gateway.
- SCADA Control Center Full System.
- SCADA/IoT Historian. MS Power BI integration.
- Intranet/Internet HTTPS Gateway - Visualization Server.
- Multilevel Systems Integrator (SCADA/IoT/ERP/MES/PLC).
- Global-Level SCADA Systems Integration/Centralization.
- Edge data processor.
- Extensible Development Platform For Data Acquisition And Processing.
- Data concentrator for Big Data / ML processing.
- Screenshots
- Docker Demo
- Config File
- Calculations
- IEC60870-5-104 Server Driver
- IEC60870-5-104 Client Driver
- IEC60870-5-101 Server Driver
- IEC60870-5-101 Client Driver
- DNP3 Client Driver
- CIP Ethernet/IP PLCTags Client Driver
- I104M Client Driver
- Change Stream Data Processor
- Realtime Data Server
- SVG Synoptic Display Editor
- OSHMI2JSON Tool
- Schema Documentation
- Install Guide
- IEC 60870-5-104 Server TCP
- IEC 60870-5-104 Server TLS
- IEC 60870-5-104 Client TCP/TLS
- IEC 60870-5-101 Server (Serial, TCP)
- IEC 60870-5-101 Client (Serial, TCP)
- DNP3 Client (TCP, UDP, TLS, Serial)
- DNP3 Server (TCP, UDP, TLS, Serial)
- I104M (adapter for OSHMI driver)
- ICCP Client (via I104M)
- Secure ICCP Client
- OPC UA Client
- OPC UA Server
- OPC DA Client
- OPC DA Server
- Modbus Client
- MQTT
- IEC 61850 MMS
- IEC 61850 GOOSE
- CIP Ethernet/IP (libplctag)
- Siemens S7
- BACNET
- IEC 60870-5-103 Client
- OPC UA Historical Data Server
- Web-based Viewers
- Inkscape-based SVG Synoptic Editor
- Compiled Calculations Engine
- Basic Alarms Processor
- Advanced Alarms Processor
- PostgreSQL/TimescaleDB Historian
- Grafana Integration
- Grafana Alerting Integration (Events Viewer)
- Docker Demo
- Windows Installer
- Linux Image / VM / Container
- User auth/RBAC with web-based config tool
- Supervisor (Linux process manager) examples
- Web-based Configuration Manager (now under development)
- Low-latency calculations
- InfluxDB Integration
- Telegraf Integration
- Kafka Integration
- PowerBI Integration (through PostgreSQL connector)
- PowerBI Direct Integration
- NodeRed Integration
- Metabase Integration (through PostgreSQL connector)
- Alerta Integration (https://alerta.io/)
- Command Line Manager