Testing FUXA, open source SCADA software with: Modbus communications, HMI drawing, SQLite database and trend charts, Alarm tracking; testing on two PLCs

TAGS: electronics; soldering; automation; industrial; PLC; OpenPLC; Arduino Uno and Nano; Canaduino PLC 100; raspberry pi; Modbus; SCADA; FUXA; HMI; alarms; historian; charts; SQLite

Why I Did This

In my pursuit of industrial automation knowledge, I wanted to see what open source SCADA software was suitable for learning, practicing, and using with my previous automation setups (PLCs). SCADA is 'Supervisory Control And Data Acquisition', and it's software that acts to oversee multiple PLCs, DCSs, RTUs, by: giving visual representations of the plants (Human Machine Interface, HMI) that can also be used to send control commands, collect alarms, capture all tag data into databases (like SQLite) and retrieve that data into a time-series chart (historian), and creating scripts for producing new conditions and actions from combined PLC conditions (like PLC1 can affect PLC2, or, PLC1 and PLC2 at specific conditions can together cause a new state); this all together increases the overall power a user can have with multiple automation systems, therefore, it is a valuable tool to learn.

The generic SCADA experience is at a supervisory level above the PLCs and field devices (sensors, actuators), many companies will describe it as even higher {just Google 'SCADA hierarchy'}; I may explore these higher levels later, but for now my goal is to explore HMI's, alarm pages, databases and charts, scripting, for these small PLCs setups.

Experience Rundown

In this video, I demo the FUXA SCADA software on a server, showcasing the connections, tags, HMI, alarms, data charts, and custom scripts, for an interaction between two PLC setups each on different servers. They are both OpenPLC runtimes, with one being on a Raspberry Pi and the other on a Windows Laptop. The Raspberry Pi is connected to an Arduino Uno with a few sensors, but Laptop is connected to the previously demoed Canaduino PLC 100 'water heater and humidifier' setup (see the previous article "Testing a PLC attachment (Canaduino PLC 100) for the Arduino Nano, and programming with OpenPLC" for detailed demo of that PLC alone).
*This is a long video (~21 minutes), so if you feel I'm demoing slow, then feel free to speed up the youtube playback speed.
*Also, this was a long project to make, dictate, and capture with two cameras, so I apologize if I miss anything to be explained; I will try to append this article with extra pieces to explain anything I may have missed in the video.

References

FUXA on GitHub: https://github.com/frangoteam/FUXA
OpenPLC Modbus addressing setup: https://autonomylogic.com/docs/2-5-modbus-addressing/
OpenPLC Runtime: https://autonomylogic.com/docs/2-1-openplc-runtime-overview/

Home Page

Let's go to the start page.

Featured Articles

Let's see what I've experienced lately.

Archived Articles

Let's see ALL of what I've experienced.