How rapidscada/scada-v6 works
Rapid SCADA is a distributed industrial automation platform for monitoring and control. The main operator workflow is field-device data acquisition, server-side processing, and delivery of current, historical, and event data through web APIs; commands travel back toward devices. Administrators configure projects and communication, server, and web modules, and can deploy configurations to instances. The README also describes multi-node operation and real-time external database interaction. Sampled code confirms API calls, OPC UA command dispatch, and storage behavior; other subsystem links are based on the documented product workflow and tree.
Main entry points: ScadaServerEngine SCADA server · FrmMain.cs SCADA Admin · MainApiController.cs Web data API · StorageLogic.cs Storage abstraction
Components 20
Administration
- SCADA Admin
ScadaAdmin/ScadaAdmin/ScadaAdmin/Forms/FrmMain.cs - Project configuration
ScadaAdmin/ScadaAdmin/ScadaAdminCommon/Project/ScadaProject.cs - Admin extensions
ScadaAdmin/OpenExtensions - Instance deployment
ScadaAdmin/ScadaAdmin/ScadaAdmin/Forms/Deployment
Data acquisition
- Communication drivers
ScadaComm/OpenDrivers - Communication engine
ScadaComm/ScadaComm/ScadaCommEngine - OPC UA server
ScadaComm/OpenDrivers/DrvDsOpcUaServer.Logic/NodeManager.cs
Server processing
- SCADA server
ScadaServer/ScadaServer/ScadaServerEngine - Channel calculations
ScadaServer/ScadaServer/ScadaServerEngine/CalcEngine.cs
Web access
- Web data API
ScadaWeb/OpenPlugins/PlgMain/Controllers/MainApiController.cs - Mimic editor
ScadaWeb/Mimics/PlgMimicEditor/Code/EditorManager.cs - Scheme components
ScadaWeb/OpenPlugins/PlgScheme.Common/CompManager.cs
Platform services
- Scada Agent
ScadaAgent/ScadaAgent/ScadaAgentEngine/CoreLogic.cs - Storage abstraction
ScadaCommon/ScadaCommon/Storages/StorageLogic.cs - File storage
ScadaCommon/FileStorage/FileStorageLogic.cs - PostgreSQL storage
ScadaCommon/PostgreSqlStorage/PostgreSqlStorageLogic.cs
Other components
- Administrator
- Field devices
- Web user
- External databases
Connections 22
- Administrator → SCADA Admin: configures
- SCADA Admin → Project configuration: edits project
- SCADA Admin → Admin extensions: opens tools
- SCADA Admin → Instance deployment: deploys config
- Instance deployment → Scada Agent: transfers config
- Field devices → Communication drivers: supply data
- Communication engine → Communication drivers: runs drivers
- Communication drivers → SCADA server: send channel data
- SCADA server → Channel calculations: processes channels
- OPC UA server → Communication engine: reads data
- OPC UA server → Communication engine: sends commands
- SCADA server → Storage abstraction: uses storage
- Storage abstraction → File storage: file backend
- Storage abstraction → PostgreSQL storage: database backend
- Web user → Web data API: requests data
- Web data API → SCADA server: requests data
- Web data API → SCADA server: sends commands
- Web data API → Storage abstraction: loads views
- Web user → Mimic editor: edits mimics
- Mimic editor → Scheme components: loads components
- Scada Agent → SCADA server: exchanges node data
- SCADA server → External databases: exchanges data