🛠️ Key Enhancements and Fixes
1. LoopTuner & PID Improvements
- [SB-473]: Now considers whether the previous model fits better than the new one before replacing it. This avoids regressions in model quality.
- [SB-456]: Identified and flagged issues with LoopTuner failing on integrating systems.
- [SB-330]: Tuning methods in LoopTuner are under review for accuracy and stability.
2. Machine Learning & Model Identification
- [SB-450]: Addressed offset issues in ML models caused by early dead-time data.
- [SB-425]: Model Identifier failed to estimate a simple 2×2 system; issue under investigation.
- [SB-468]: Laplace model gain inconsistencies when using “Generate Optimum Laplace Models” were reported and analyzed.
3. MPC Enhancements
- [SB-466]: Clarified how to define constraints in MPC Controller Definitions.
- [SB-469]: Feedforward in MPC now requires array input; documentation and behavior updated.
- [SB-462]: PV limits now act as soft or hard constraints, depending on configuration.
4. User Interface & Usability
- [SB-443]: Auto-scroll behavior on paste was adjusted to be proportional to canvas size and zoom level.
- [SB-227]: Multiple plots in a single plotter window are now supported (e.g., SP, CV, PV).
- [SB-340]: Added a low-priority request to include a description field per block for documentation purposes.
5. DataFrame Creator & Automation
- [SB-418]: Added connectors to automate actions like re-reading files or changing filenames dynamically.
- [SB-235]: Action connectors were also extended to Machine Learner blocks.
6. Bug Fixes & Stability
- [SB-412]: Submodel simulations now maintain time continuity when opened.
- [SB-316]: Plotters no longer overlay incorrectly when simulation is paused.
- [SB-152]: Connector drift issues were addressed with bounding logic.
- [SB-145]: Flipped icons now retain orientation after saving and reloading.