Step response for a DC motor with a transient load

4 次查看(过去 30 天)
I'm attempting to find the step response for a DC motor with a position-dependent load.
i.e., the motor is driving an arm, there is no load until the position reaches a critical value (arm hits a wall), and then the motor is prevented from spinning.
I have tried opening up the step function in MatLab, but it seems to work by calling itself.
Does anyone have any possible advice about how to do this? Ideally I would write my own step function in a loop where the torque was updated.
Thanks in advance,

采纳的回答

Sebastian Castro
Sebastian Castro 2016-3-2
编辑:Sebastian Castro 2016-3-2
Depends on how you want to model this system. Assuming you want to stay in MATLAB and are not looking at Simulink,
If you want your inputs to a time-invariant linear system to change over time, you can use the lsim function and provide your own input time history. [ documentation link ]
If you additionally want the DC motor model to have parameters/dynamics that change over time, you can take a more involved approach using linear parameter-varying (LPV) systems.
- Sebastian
  2 个评论
Tom
Tom 2016-3-4
编辑:Tom 2016-3-4
Thanks! The second link you provided helped me figure out a solution.
As a side note, if I solve this system in it's state space form, is there anyway of modelling a PID controller without converting to a transfer function?
Sebastian Castro
Sebastian Castro 2016-3-4
Yes -- there is a pid function in MATLAB. You can connect the result of this with any other linear system representation (state-space, transfer function, etc.)

请先登录,再进行评论。

更多回答(0 个)

社区

更多回答在  Power Electronics Control

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by