Script to represent constant offset in scaling of data
2 次查看(过去 30 天)
显示 更早的评论
Hello,
I have the attached simulink model which appears to be working as I need it to. The idea is to scale my SP input from engineering units to 0-100%, which is how the controller operates. That way, my P/I/D settings are directly identical to those entered into the controller, and I can align the matlab data with the controller data.
How would I enter this into a simple matlab script?
K = 100/(MaxEU-MinEU)
C = 100*MinEU/(MaxEU-MinEU)
It correctly multiplies the SP input value by the gain K, then after the gain block adds an offset which is completely independent of the SP input. I am struggling to deal with this 'extra constant input' in a matlab script.
My goal is to have a SISO transfer function between the step input and the output of the first summing junction, that I can easily integrate into the rest of the model with series/parallel connections.
What does not work (as far as I can tell) is EUSP = tf(100/(MaxEU-MinEU) - 100*MinEU/(MaxEU-MinEU))
since it applies a static gain to the step input, including the offset term. With or without the tf.
Perhaps I need to use sumblk and directly assign inputs/outputs? Still a little confused how to set that constant input for the offset term.
8 个评论
Mathieu NOE
2024-5-14
yes you're right , I read a bit too fast your first post - now it's obvious
I supposed indeed that this was just a small portion from a larger project , so I understand the general use of tf objects as you now describe more what the intention is.
seems to me you're on the right track to achieve your goals , I have no further comment so far
when I started matlab 30+ years ago, there where not so many advanced tools and functions to study open and closed loop systems.
so good luck for the future !
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Classical Control Design 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!