Two-Tank Water System Dataset for RLS-Based Identification and Adaptive PID Control Under Diverse Operating Conditions
Description
This dataset contains 25 long-duration time-series experiments collected from a laboratory two-tank water pumping plant. The experiments were performed under three operating conditions:
-
Steady-State Baseline (Minimal Outflow)
-
Steady-State With Constant Passive Outflow
-
Dynamic Disturbance Rejection (High and Low Outflow Transients)
Each experiment lasts approximately 8.5 hours, sampled at 1 Hz, and is provided as an individual CSV file. The dataset includes raw process measurements, control signals, reference setpoints, adaptive PID controller gains, and real-time model parameters estimated using a Recursive Least Squares (RLS) algorithm. Disturbance experiments include an additional binary flag indicating externally induced outflow changes.
This dataset serves as a real world benchmark for system identification, adaptive control, disturbance rejection, and anomaly detection, capturing essential nonlinearities such as turbulence, actuator saturation, and abrupt hydraulic transitions.
Associated article: Gómez-González, P.-P. et al. Multi-scenario datasets for system identification and adaptive control of a nonlinear two tank system. Scientific Data 13, 1465 (2026). https://doi.org/10.1038/s41597-026-07686-2. Code: https://github.com/pedropgg/TwoTank-Dataset-Code.
What's new in version 2.0
Version 2.0 was verified against the acquisition code and the raw data. All measured signals, the RLS parameters (b1, a1, a2) and Kp are identical to version 1.0. Full details are in CHANGELOG.md inside the archive.
- Ki and Kd corrected. In v1 the logged gains had Ti and Td swapped (Ki = Kp/Td, Kd = Kp·Ti). The control action applied to the plant was not affected. The correct gains are recovered exactly from the v1 values.
- Valve metadata. New column Valve_Opening_pct (= 100 − Valve_Closure_pct). The closure of the HighOutflow runs is restored to the originally logged values. In every file name, X in *_Xpct.csv is now the electrovalve opening.
- New columns appended after the v1 columns: Time_s (elapsed seconds) and Sensor_Dropout (ultrasonic sensor dropouts).
- ISO 8601 timestamps, trailing empty rows removed, file-name typo fixed and README completed.
Differences from the published article
- Eq. (1): the implemented RLS model uses a two-sample input delay, y(k) = −a1·y(k−1) − a2·y(k−2) + b1·u(k−2).
- Ki/Kd statistics in the article (Tables 4, 6, 8, 10; section “Negative Gain Values”) were computed with the v1 columns. With the corrected gains, Ki is positive; Kd remains mostly slightly negative.
- The article reports electrovalve values as closure minus 10. The HighOutflow runs described as “80% and 90%” have openings of 10% and 100%. The LowOutflow runs described as “50% and 60%” have openings of 50% and 40%.
- The anomaly detection test run (Table 11, Fig. 16) is Disturbance_LowOutflow_40pct (40% opening). The reported result is reproduced on it with the code in the repository.
Acknowledgement
Files
Dataset_v2.zip
Additional details
Related works
- Is described by
- Data paper: 10.1038/s41597-026-07686-2 (DOI)
- Is supplemented by
- Software: https://github.com/pedropgg/TwoTank-Dataset-Code (URL)
Funding
- Agencia Estatal de Investigación
- PID2022-137152NB-I00
- Xunta de Galicia
- Consolidation and structuring of competitive research units (GPC) ED431B 2023/49
- Xunta de Galicia
- CITIC, research center accredited within the Galician University System (CIGUS), co-financed by FEDER Galicia 2021-2027 ED431G 2023/01
- National Cybersecurity Institute of Spain
- Critical infrastructures cybersecure through intelligent modeling of attacks, vulnerabilities and increased security of their IoT devices for the water supply sector C061/23