3 ms·
i've been using mango http://mango.serotoninsoftware.com http://mango.serotoninsoftware.com since 2006 to monitor control systems, mostly for small hydro power
by snowwindwaves 14y ago
i've been using mango http://mango.serotoninsoftware.com http://mango.serotoninsoftware.com since 2006 to monitor control systems, mostly for small hydro power plants but also communications networks, smart homes, solar arrays, etc. Unfortunately development on the freely available source has stopped so I no longer get a better product every year.
Bigger projects i've used either citect or wonderware, both of which get the job done but show their age and are at times painful to use, although not as horrible as many of the other legacy control system HMI software out there.
Mostly data is collected by polling modbus slaves, although OPC would be another important protocol to support.
It seems like wonderare or citect is ready to be replaced by a distributed system that uses the web browser as the display client. systems monitoring software such as nagios, openNMS, cacti overlaps with the control system HMI software arena as both
1. display real time data, preferably with some context (eg gauges to indicate how close to maximum or minimum limit, alarm or shutdown thresholds the variable is) and sometimes overlayed on a diagram to assist in visualizing or understanding the process
2. "trend" (log and plot) historical data for analysis and reporting purposes. Better yet would be interactive plotting (zoom etc).
I've been wondering about graphite (which riemann can use) as part of the solution, and people seem to be producing great plots with d3.js.
As an aside I've used kst and veusz for desktop interactive plotting with success.
In summary: if riemann supported the modbus protocol it could be useful for control systems.
- aphyr 14y ago1. The dashboard is in a rough spot right now--I haven't quite finished the transition to the next-gen dash--but it does do "realtime" visualization of events matching arbitrary queries with under 50-ms end-to-end latency. It'll push about a thousand events/sec, depending on size and rendering complexity. The websocket protocol is pretty straightforward, if you wanted to build one-off system diagrams with streaming updates. 2. Yeah, that would be great. The historical event store space is pretty terrible right now, and it's such a big problem that I doubt I could realistically tackle it. Librato Metrics and Hosted Graphite are both approaching this as a service, and there's openTSDB if you have Hadoop people in-staff. Riemann has out-of-the-box integration with librato and graphite, but I haven't set up an openTSDB cluster yet. Modbus: that'd be cool. Implementing a Riemann server (i.e. a thing that accepts events from the wire) is pretty straightforward, though I'd need to understand the protocol. If you're interested in building it, I'm happy to discuss how.