-
Notifications
You must be signed in to change notification settings - Fork 448
Description
I am currently working on some exercises from a textbook. Apart from working them out by hand, I also like to test my work with the control library. I noticed that the library does not condense the outcome. The order is 5 using the control library. If working out the problem by hand, there is a cancellation bringing the order to 3. I have a attached screenshot of the block diagram as well as the output from test script and the general solution. You'll notice that there is a 'K' parameter. For simplicity, I set K = 3 so that I could run the test script. When I worked out the problem, I got the same outcome as that provided by the book:
Numerator: 6 - 3s
Denominator: s^3 + 5s^2 + s + 6
Here is how the block diagram is set up:
Here is the test script:
import control as ct
num_a1 = [3]
den_a1 = [1, 1]
num_a3 = [3]
den_a3 = [1, 4, 0]
sys1 = ct.TransferFunction(num_a1, den_a1)
sys2 = ct.TransferFunction(num_a3, den_a3)
sys3 = ct.series(sys1, sys2)
sys_combined = sys3 - sys2 # feedforward with negative sign hence subtraction
sys_total = ct.feedback(sys_combined, 1)
print(sys_total)
Did I miss something when setting up the problem with the control library? I used superpostion to add the two paths and then I combined the result with the unity feedback.
Please advise.
Thank you for any feedback that you may provide.