MATLAB Answers

Trying to create a controller to maintain a certain speed

조회 수: 2(최근 30일)
oliver shelley
oliver shelley 2021년 4월 1일
댓글: Jonas 2021년 4월 1일
Hi guys, I've created a model to emulate a BMW R1200gs motorbike and my end goal is to run a simulation where the motorbike drives at full power to untl it reaches a speed of 60mph and then stays at 60mph over a period of 60 seconds. The acceleration is all working perfectly but I can't figure out how to make a controller that will keep the motorbike at 60mph once it reaches this target. I don't want to use a saturation limiter that just caps the speed I want to make it something that is controlled. I've inserted some images of the model so far bellow. Any suggestions would be much appreciated. :)
Overall model
MPH vs Time

채택된 답변

Jonas 2021년 4월 1일
Use a PI-controller which receives 60MPH as setpoint and receives the actual speed, which controls the engine torque.
  댓글 수: 3
Jonas 2021년 4월 1일
The 60MPH setpoint is coming from a Constant block.
When tuning the PI controller, start with gain of the integator of zero, and find a suitable value for the proportional gain. When the proportional controller can regulate the speed despite a steady-state offset, start adding integrator gain.
Please search online for basics on PI controllers.

댓글을 달려면 로그인하십시오.

추가 답변(0개)

Community Treasure Hunt

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

Start Hunting!

Translated by