Professional Documents
Culture Documents
10 - Application of Control System in Differential Drive Robot
10 - Application of Control System in Differential Drive Robot
It is desired to move the robot in a certain direction θ and with constant velocity V
From these parameters, the velocity for left wheel (Vl) and right wheel (Vr) and are
sent to the kinematic equations to calculate the linear and angular velocities of the
robot
After integrating the angular velocity, resultant orientation is then fed back as input
to make the system a closed loop system, increasing its stability
Closed Loop System
Eg:
To move straight, both the motors must rotate at same speed
To achieve same RPM same voltages are applied
But due to mechanical constraints of the motors, they may spin at different speeds thus
the robot may not move in the desired straight path
By means of this closed loop system, deviation in the heading can be determined so that
by suitable actuation the robot can be made to go in the desired direction
Orientation Error Calculation
• By keeping the orientation error to minimum, the robot can be made to move in
the planned track
• In this block, the error in the orientation is calculated and then this error is fed to
the next block to calculate the individual wheel velocities Vl and Vr
• Normal mathematical subtraction of the angles produce a result which may not
be desired in terms of its sign and value
• For precise calculation and to avoid erroneous orientation, the function of atan2
is used
• The atan2 function is a four-quadrant function, which produces the angle within
the four quadrants of the plane
• It helps to determine the sign and the right quadrant placement of the resultant
angle, within the range of (−π, π]
Individual wheel velocity calculation
• The inputs required for the motion of a mobile robot are the linear
velocity V and the orientation θ
• The rate of change of position of robot in x-direction is 𝑥ሶ and that in
y-direction is 𝑦ሶ are given by
Vector components of V
• The angular velocity of the robot is given by
Derivation of wheel speed from V
• The inputs required for the motion of a mobile robot are the linear
velocity V and the orientation θ
• The rate of change of position of robot in x-direction is 𝑥ሶ and that in
y-direction is 𝑦ሶ are given by
Vector components of V
• The angular velocity of the robot is given by
Derivation of wheel speed from V
• The inputs required for the motion of a mobile robot are the linear
velocity V and the orientation θ
• The rate of change of position of robot in x-direction is 𝑥ሶ and that in
y-direction is 𝑦ሶ are given by
Vector components of V
• The angular velocity of the robot is given by
These equations compute the individual wheel velocity based on the robot’s linear
velocity V and robot’s heading θ
𝑑𝜃
ω= = 𝜃ሶ
𝑑𝑡
Estimation of Robot translation and Heading to
correct the orientation error
New values of
𝑥ሶ
𝑦ሶ
𝜃ሶ
To correct the error
in heading angle /
orientation
Actuation
• Result of the previous computation can be used for next iteration of
closed loop
• Whereas the values Vr and Vl that were computed can be used for
actuating the right and left wheels of the robot
• Suitable equation can be framed to convert the velocity computed
into duty ratio of PWM signal needed to control the motor
Controller Gain
Laplace transform
𝑠. 𝜃 𝑠 = 𝜔(𝑠)
Controller Gain
The transfer function G(s) is a type-1 system; therefore, the closed loop system will
have zero steady-state error with proportional gain
Controller Gain
The transfer function G(s) is a type-1 system; therefore, the closed loop system will
have zero steady-state error with proportional gain
Actual θ
This behavior of the robot can be observed from the figure where the velocities Vr and Vl are initially
constant with max velocity denoting motion is same place
Later they tend to a value 50 as soon as the robot orientation is near the desired angle
After reaching the desired direction, the robot moves straight in that direction (Differential speed = 0)
Reference
Kothandaraman, K. (1970) Motion planning and control of Differential
Drive Robot: Semantic scholar, undefined. Available at:
https://www.semanticscholar.org/paper/Motion-Planning-and-Control-
of-Differential-Drive-
Kothandaraman/eddefa921e26efbbfd6c65ad1e13af0bbbc1b946
(Accessed: November 16, 2022).