Lec6 MobileRobotControl
Lec6 MobileRobotControl
Processor
Sensors
Actuators
14
At t=0, suppose that the setpoint =100 and actual position=0. Then
e(0)=100, so the motor turns at 100% power, driving the wheel toward the Oscillations:
desired position. As it moves, the error becomes progressively smaller. After an overshoot, error becomes –ve, thus, proportional controller drives
When it’s halfway at position=50, the error is only 50, and the motor goes at the motor in the opposite direction. In the subsequent motion, motor might
50% power. When it arrives at the intended position of 100, the error is zero, “undershoot” as well. This overshoot and undershoot phenomena repeats
and the motor turns off momentarily. for while, and gradually, the oscillation is expected to die out.
Proportional Gain (ratio between error and power): Instead of a one-to- Controller Design:
one ratio between error and motor %power, modify the controller so it Design to minimize both overshoot and oscillation, but let little overshoot to
multiplies the error value by 5. The wheel should reach the set-point faster, improve system response to reach the set-point as quickly as possible.
and it should resist being turned away from it much more aggressively. 15 16
Proportional Gain Kp Proportional Gain Kp
Kp =10: Full-power is delivered Kp =30
to motor as long as error>10.
When position falls below 10, power Kp =10 Causes predominant oscillation Kp =30
command began to fall off. System
overshot the zero point, and shows
little oscillation Kp =50
Steady State Error (Offset): Oscillation behavior has taken over.
System does not stabilize at the
set-point, but at 1. This System is too sensitive (responsive). A
generates a power command of slight error causes huge power delivered
10%, which is too small to Kp =50
activate the motor through the motor. Subsequent slight
Kp =20 errors in +ve and –ve directions causes
Kp =20: should ameliorate the swing sustainable swing around the set
offset problem, since the same point . While the position error is small
static error will result in a higher
power command on the graph, the power command
Offset has been eliminated, but swings are quite evident.
at cost of oscillations before 17 18
settling
Kp=10, KD=5:
• Solution: Use derivative control
Observe this phenomena: At larger errors, velocity is small, and at KD is too large. Controller puts on the
Kp=10, KD=5
smaller errors velocity is large (as motor swings around set point) brakes too aggressively and the
system stops too early before reaching
• What if we reduce motor power by a quantity ∝ speed.
the set-point. When the velocity hits
• No effect at larger errors
zero, the proportional gain kicks in
• Reduce power near set point (reduce oscillations)
again and the system corrects
This looks like what we need to improve response while reducing
19 20
overshoot