How to Model a DC Motor in State-Space with Load Torque Disturbance Rejection?
8 views (last 30 days)
Show older comments
I’m working on a DC motor control system and need to implement a state-space model that accounts for load torque disturbances. The motor is armature-controlled with parameters:
Inertia (J), damping (B), torque constant (Kt), back-EMF (Ke).
States: Angular velocity (ω) and armature current (iₐ).
Problem:
State-Space Setup: How to properly structure the state-space matrices to include both control input (Va) and disturbance input (Tl)?
Disturbance Rejection:
If using a PID controller, how to ensure the integral term compensates for Tl?
Is a disturbance observer (DOB) better for this case?
Simulation:
In MATLAB, how to simulate the system with lsim when there are two inputs (Va and Tl)?
Should I manually inject Tl into the derivative equations?
Request:
Theoretical guidance on state-space disturbance modeling.
MATLAB/Simulink implementation tips.
0 Comments
Accepted Answer
Sabin
on 5 Aug 2025
The state-space can be constructed as xdot=A.x+B.u+w, where w is the disturbance. If the disturbance is known a coordinate transformation can be derived to cast the state-space system as zdot=F.z+G.s. The integral term will ensure zero steady-state error. An alternative is to use a disturbance observer. Perhaps you can try the Active Disturbance Rejection Control instead of PID. There are also many relevant examples on mathworks.com:
0 Comments
More Answers (0)
See Also
Categories
Find more on Motor Drives in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!