This repository documents the development of a supervisory control and instrumentation system for a pilot-scale column flotation process, implemented as part of my Masterβs thesis in Electrical Engineering (2018).
The project integrates decoupled MIMO control using PID loops, industrial automation, data acquisition, and graphical supervision, representing an applied control solution for mineral processing experimentation.
/App flotation columnβ Main LabVIEW VI implementing the supervisory HMI and decoupled MIMO PID control
β οΈ Note: The repository includes the original LabVIEW VI for reference purposes. Execution requires legacy software, drivers, and hardware.
The system was designed to regulate and supervise two strongly coupled process variables:
- Liquid level (h) inside the flotation column
- Gas holdup (Ξ΅_g)
using a decoupled MIMO control structure, implemented as independent PID control loops after interaction analysis.
Real-time visualization, supervision, and actuation were achieved through industrial communication and laboratory instrumentation.
|
|
The pilot-scale experimental setup corresponds to a column flotation process for copper extraction, providing the physical context for the control architecture shown above.
High-level architecture of the control system:
- Supervisory layer: LabVIEW HMI (control, visualization, logging)
- Control & actuation: PLC Siemens S7-1200
- Communication: OPC server (LabVIEW β PLC)
- Instrumentation: NI USB-6002 DAQ
- Gas injection: Brooks Instrument SLA5850 mass flow controller (actuated by the PLC)
- Process: Pilot-scale flotation column
This architecture enabled real-time interaction between laboratory instrumentation and industrial automation components.
The following variables are used in the control block diagram:
-
$$h$$ : Pulp level inside the flotation column -
$$Q_p$$ : Pulp flow rate (manipulated variable for level control) -
$$Q_g$$ : Gas flow rate (manipulated variable for gas holdup control)$$\varepsilon_g$$ : Gas holdup (gas phase volume fraction)
The manipulated variable Q_g corresponds to the setpoint of the Brooks Instrument SLA5850 mass flow controller.
The system is modeled as a 2Γ2 MIMO process with:
- Inputs:
$$Q_p$$ ;$$Q_g$$ - Outputs:
$$h$$ ;$$\varepsilon_g$$
The gas flow rate (Q_g) is physically manipulated through a Brooks Instrument SLA5850 mass flow controller, commanded by the PLC as part of the decoupled MIMO control structure.
Interaction between the loops motivated the use of a decoupled control structure.
The implemented control strategy consists of:
- Interaction analysis of the MIMO process
- Decoupling of the control structure
- Independent PID controllers for:
- Liquid level
- Gas holdup
- Continuous-time PID tuning implemented in LabVIEW
- Actuation through peristaltic pumps driven by the PLC
The decoupling strategy was guided by the interaction analysis obtained from the preliminary modeling stage.
The LabVIEW-based HMI provides: From a software perspective, the interface is implemented as a graphical user interface (GUI); however, functionally it operates as a process HMI intended for supervision and control.
The LabVIEW-based GUI provides:
- Real-time visualization of process variables
- Manual and automatic (PID) operation modes
- Independent setpoint adjustment for each control loop
- Monitoring of control signals
- Data acquisition and logging
The interface was developed for experimental usability and process supervision rather than commercial HMI deployment.
The control system was validated on a pilot-scale flotation column, allowing:
- Experimental testing of decoupled MIMO control strategies
- Observation of interaction effects and disturbance rejection
- Integration of sensing, control, and supervision in a real process environment
This confirms the applied and experimental nature of the work beyond simulation.
- Siemens S7-1200 PLC
- NI USB-6002 Data Acquisition Card
- Brooks Instrument SLA5850 mass flow controller (air injection)
- Peristaltic pumps
- Level and gas holdup sensors
- Pilot-scale flotation column
- LabVIEW 2013
- OPC server for PLC communication
- Decoupled MIMO PID control and data visualization implemented in LabVIEW
β οΈ Note: Due to legacy software and hardware dependencies, this repository is provided mainly for documentation, reference, and demonstration purposes. The original implementation was developed using LabVIEW 2013. The repository includes the original VI for reference purposes only. Execution requires legacy software, drivers, and compatible hardware.
The following conference publication presents a preliminary dynamic modeling of the flotation column system:
https://ieeexplore.ieee.org/document/8609809/
The publication focuses on:
- Preliminary dynamic modeling of the flotation column
- Qualitative and quantitative analysis of variable interaction
- Identification of the MIMO nature of the process
The model should be understood as a first- and second-order approximation intended to support interaction analysis and control structure selection.
The control strategy and supervisory implementation documented in this repository were developed based on this preliminary modeling and subsequent experimental insight, and are not covered in the paper itself.
This project was developed during my Masterβs thesis (2018) and reflects an applied approach to:
- MIMO process control and decoupling
- Industrial automation
- Instrumentation and data acquisition
- Experimental validation in mineral processing
This repository is shared for educational and documentation purposes only. It represents an experimental system developed in an academic context and is not intended for direct industrial deployment without proper engineering validation, safety analysis, and compliance with applicable standards.
Support my work on Patreon:
https://www.patreon.com/c/CrissCCL
MIT License




