项目作者: riclolsen
项目描述 :
A portable and scalable SCADA/IIoT-I4.0 platform centered on the MongoDB database server.
高级语言: JavaScript
项目地址: git://github.com/riclolsen/json-scada.git

{json:scada}
A portable and scalable SCADA/IIoT-I4.0 platform centered on the MongoDB database server.























Mission Statement
To provide an easy to use, fully-featured, scalable, and portable SCADA/IIoT-I4.0 platform built by leveraging mainstream open-source IT tools.
Screenshots

Major features
- 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.
- Event-based realtime async data processing with MongoDB Change Streams.
- Portability and modular interoperability over Linux, Windows, Mac OSX, x86/64, ARM.
- Windows installer available in the releases section.
- Unlimited tags, servers, and users.
- Horizontal scalability, from a single computer to big clusters (MongoDB-sharding), Docker containers, VMs, Kubernetes, cloud, or hybrid deployments.
- 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.
- Extensibility of the core data model (MongoDB: NoSQL/schema-less).
- HTML5 Web interface. UTF-8/I18N. Mobile access. Web-based configuration management.
- Role-based access control (RBAC).
- Various high-quality protocol drivers.
- Integration with MQTT brokers (compatibility with Sparkplug B).
- Live point configuration updates.
- Inkscape-based SVG synoptic display editor.
- PostgreSQL/TimescaleDB historian integrated with Grafana for easy creation of dashboards.
- Easy development of custom applications with modern stacks like MEAN/MERN, etc. Extensive use of JSON from bottom up.
- Leverage a huge ecosystem of MongoDB/PostgreSQL tools, community, services, etc.
- Easy AI-helped custom app development using templates/API for tools like WindSurf/Cline/Cursor/Copilot/etc.
Use cases
- Protocol Gateway.
- Secure Protocol Gateway with 1-way air gapped replication (via data diode or tap device).
- Power/Oil/Gas/Manufacturing/etc Local Station HMI.
- SCADA for Control Centers.
- SCADA/IIoT Historian.
- Intranet/Internet HTTPS Gateway - Visualization Server.
- Multilevel Systems Integration (SCADA/IIoT/ERP/MES/PLC).
- Global-Level/Cloud SCADA Systems Integration.
- Edge processing.
- Data concentrator for Big Data / ML processing.
- Digital Transformation, Industry 4.0 enabler.
Real-world usage
- 5+ years of usage in 2 big control centers scanning data from 80+ substations, 90k tags.
- 5+ years of usage as HMI for local operation of circa 40 substations up to 230kV level.
Architecture

Documentation
Protocols Roadmap
Features Roadmap
Spin up a free private instance on Google’s Project IDX
With just a Google account, you can spin up a free private instance for test/dev on Google’s Project IDX. This is a great way to get started with the project. This will build the code from the Github repo and deploy it to a private Linux VM on the cloud running protocols and providing a web UI for you to interact with. There will be a web-based code editor available for you to develop new apps and view/change the code on the VM. You can also get help from Google’s Gemini AI for coding and other tasks. This is free and there no need to install any software on your local machine.
See details here.
Online Demo (substations simulation)
This demo provides a public IEC 60870-5-104 server port on IP address 150.230.171.172:2404 (common address = 1) for testing.
The demo data is published as regular MQTT topics to the public broker mqtt://test.mosquitto.org:1883 (about 8600 topics in JsonScadaDemoVPS/# and ACME_Utility/#).
Data is also published as Sparkplug-B to mqtt://test.mosquitto.org:1883 (about 4300 device metrics in spBv1.0/Sparkplug B Devices/+/JSON-SCADA Server/#). Data/birth messages are compressed by Eclipse Tahu Javascript libs.