SCADA visualization

Hi there,

In the past I’ve been developing SCADA visualization and I find this a really useful way to show data.
In my work I’d like to use this to monitor our systems end to end.
I’d like to have an SCADA visualization for the request/responses with some insights like calculations, timing on different steps, errors, alarms, …

Does SCADA visualizations fit on the aim of Grafana?



1 Like


i work in industrial automation, using grafana for historical and real-time data visualization from our machines. While a great tool to link up single machines or simple set-ups, I do not believe that grafana could be a full-fledged SCADA system in its current state. It is open-loop, still in active development, and has poor support for SQL timeseries databases, which appear to be industrial de-facto standard. Although afaik, the dev team is actively working on that.

bottom line. I believe, grafana has great use in process control/supervision, but would never be certified “as is” and as a main tool, that is without without massive changes, for large industrial projects.

out of curiousity, where are you thinking of using it?

Hi @gbrian - assuming you’re only talking about visualization, I’ve got some experience with doing part of what you’re suggesting. My company developed an Open Source tier-2 historian data sync service (look for citilogics/rtx-link on docker hub) that copies scada data via ODBC or OPC and into a remote InfluxDB. There are also other ways to do this, like with a node app. Once the data is there in Influx, it’s very straightforward to use grafana panels and plugins to visualize the time series. We are working on tools to incorporate GIS data as well since the systems we deal with are geographically distributed.

Calculations, resampling, and alerts can also be handled by InfluxDB as continuous queries or using Kapacitor.

If you’re looking for something like a plant schematic viz, probably one direction you could go is the Diagram Panel plugin - although the library of shapes is fairly limited, it may be a starting point for you. The Mermaid syntax it uses looks pretty flexible.

Hope this helps - feel free to contact me if you have questions or ideas!


Hi @bbi,
You could help me with that, now I’m trying to use Grafana, but without success, I can not find the way to send the data from the PLC (allen Bradley).
I have used Labview, Indusoft, but this is different, we just want to monitor a machine at its critical points.

In order to display Process Diagrams such as in a SCADA, you could use this also

@samhatchett @gbrian

1 Like

Since C in SCADA means control you can also use the grafana-svg-panel to have a measure of control.

Following example has no Data-API-Access bound to it but this could easily be added in your click function:

Example SVG

<svg xmlns="" width="100%" height="100%" viewBox="0 0 1000 1000" >
  <circle cx="200" cy="200" r="100" fill="blue"
          onclick="window.changeCol(evt)" />

Example onInit function

window.changeCol = (evt) => {
   var redVal = Math.round(Math.random() * 255);
   var greenVal = Math.round(Math.random() * 255);
   var blueVal = Math.round(Math.random() * 255);"fill",
         "rgb(" + redVal + "," + greenVal + "," + blueVal + ")");