You are on page 1of 6

2019 International Conference on Computing, Power and Communication Technologies (GUCON)

Galgotias University, Greater Noida, UP, India. Sep 27-28, 2019

Path Planning and Controlling of Omni-Directional


Robot Using Cartesian Odometry and PID
Algorithm
1st Tejas Chaudhari 2nd Mayank Jha
Department of Instrumentation and Control Engineering Department of Instrumentation and Control Engineering
Govt. College of Engineering and Research,Awasari Govt. College of Engineering and Research,Awasari
Pune, India Pune, India
tejaschaudhari1998@gmail.com jha.smayank@gmail.com

3rd Rohit Bangal 4th Ganesh Chincholkar


Department of Instrumentation and Control Engineering Department of Computer Engineering
Govt. College of Engineering and Research,Awasari Govt. College of Engineering and Research,Awasari
Pune, India Pune, India
bangal rohit@rediffmail.com gpc5464kh@gmail.com

Abstract—Omni direction is the concept of existence of motion In this project we focus on three wheeled omni-directional
in every direction. Here, we have controlled the resulting vectors drive that is capable of locomoting in predefined paths with
of individual wheels of a three wheel omni robot that are constant heading. This drive has three degree of freedom
ultimately responsible for a stabilized motion of the robot in any
direction. This phenomenon is termed as ’Holonomic Drive’ and which includes the abscissa, ordinate and the yaw of the
it provides higher efficiency and controllability to non-holonomic system in horizontal plane. The feedback mechanism to the
drives, when used with odometry and PID algorithms. Odometry system includes gyroscopic sensor and quadrature encoders
basically is method of acquiring the real time positional data as mentioned. The feedback from gyroscope is processed
of a system in a world frame and using it for path planning. through a PID control algorithm for the stabilizing the system.
PID algorithm when applied on any system reduces the transient
response and helps to attend steady state conditions with less set- The system and its stability are explained by mathematical
tling time. Here, we have successfully designed and implemented models(Matlab Simulink Model) and vector diagrams.
the algorithms for path planning with the help of quadrature Abbreviations Used:
encoders and heading control of three wheel omni robot using • IMU - Inertial Measurement Unit.
PID, implemented on IMU(Inertial Measurement Unit).
• TWO - Three Wheel Omni
Index Terms—Omni-Direction, Holonomic, PID Tuning,
Odometry, IMU, Encoders, Trajectory, Yaw, Heading, etc. • PPR - Pulses Per Revolution
• DOF - Degree Of Freedom

I. I NTRODUCTION II. O MNI -D IRECTIONAL ROBOT A RCHITECTURE


A. Chassis Specifications
In the study of past few years, robotics is getting popular- The main frame of the robot is an equilateral triangular
ized especially in the field of drive-types. Omni directional laser cut stainless steel sheet. Three planetary gear motors are
robots(Three wheel omni) offer many advantages to other attached to this frame with dual disc omni wheel coupled to
drives which includes ability to turn in any direction with the shaft.
zero turning radius and motion in confined spaces and better
traction in comparison to other drives(Mecanum wheel drive B. Encoder Arrangement
and other differential drive) [1]. This allows their usage in It has two quadrature encoders placed at 90°with respect to
various home and industrial applications such as pick and each other,one representing X-axis and the other representing
place application, holonomic-forklifts, omni wheeled chairs, the Y-axis. Each encoder has a free omni wheel attached
etc. (ref of 3 wheel omni bot). Among this we have used to its shaft for measuring ppr and the complete assembly is
a formation of three omni-wheels attached to three different connected to a suspended spring plate over the ground surface.
Planetary geared motors arranged at 120°from each other.
There is mechanical arrangement of two quadrature hall en- C. IMU Arrangement
coders with angle difference of 90°, used for encoding pulses We used IMU GY-87 having 10 DOF(viz, Accelerom-
in x and y axes. eter:x,y,z; Gyroscope:x,y,z; Magnetometer:x,y,z; Barometer).

978-93-5351-098-5/19/$0.00@2019 Galgotias University 63

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on July 14,2021 at 07:43:42 UTC from IEEE Xplore. Restrictions apply.
For error less measurement of inertial data from the IMU, it B. PID control algorithm
needs to be placed over a damping like arrangement which acts A PID controller is a control loop mechanism used in
like a shock absorber, in terms reducing high frequency noise automation industries for regulating any process. It contin-
signals. So, it is mounted on a damping plate one which is uously monitors and controls the error value e(t) obtained
generally used in drones. It is placed at the geometric centroid from the process [2]. Error value is defined as the difference
of the chassis which is an equilateral triangle. between a desired set point sp and the measured value from
III. K INEMATIC M ODELLING the process. The controlling action is performed by the pro-
A. Raw axis equations portional, integral and derivative controllers independently and
the cumulative effect is responsible for controlling the process.
The generalized block diagram for the PID controller is given
in the Figure 3

Fig. 1. Omni-Robot in body frame.

Fig. 3. General block diagram of PID controller

e(t) = Setpoint − M easuredV alue (4)


x(t) = ep(t) + ei(t) + ed(t) (5)
where,
x(t) is output of PID controller
ep(t)=Kp*e(t);
 t Kp is Proportional gain
ei(t)=Ki* 0 e(t) dt; Ki is Integral gain
ed(t)=Kd*de(t)/ dt; Kd is Rate gain
C. Implementation of PID for robot head control
Any 3-dimensional motion is associated with three param-
eters required for its stabilized motion. They are termed as
yaw, pitch and roll angle as in Figure 4.
Gyroscope is one of the IMU components that provides the
signals for angular velocities. The IMU used here is GY-87
Fig. 2. Vector diagram of three wheels. 10 DOF that provides angular velocities along x, y, z axes in
terms of gyro.x, gyro.y, gyro.z.
Yaw angle from the angular velocity along z axis is calcu-
V a = V x ∗ Cos(a1) − V y ∗ Sin(a1) (1) lated as,  t
V b = −V y ∗ Cos(a2) − V x ∗ Sin(a2) (2) ∠ψ = gyro.z ∗ dt (6)
0
V c = V y ∗ Sin(a3) (3)
Where,
According to Figure 1 the value of a1, a2, a3 is equal to 330°, gyro.z is the angular velocity which is perpendicular to X-Y
210°and 90°respectively. plane in deg/sec

64

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on July 14,2021 at 07:43:42 UTC from IEEE Xplore. Restrictions apply.
Fig. 6. Axis change in body frame control

Fig. 4. Yaw, Pitch and Roll component of a body

Fig. 7. Axis change in world frame control

axis which is shown in Figure 8. To convert this new frame


of reference into the original body frame reference, we have
Fig. 5. PID algorithm for head control of Three Wheel Omni derived certain mathematical relations between them. They are
depicted kinematically and mathematically below.
Any deflection in heading of robot will generate an error that
will produce an output in x(t). This value of x(t) will be used
to generate controlled kinematic equations of the robot(TWO).
The Equations (1), (2) and (3) are modified as as follows,
⎛ ⎞ ⎛ ⎞⎛ ⎞
ωa Cos(α) −Sin(α) 1 Vx
⎝ ωb ⎠ = ⎝−Cos(α) −Sin(α) 1⎠ ⎝ V y ⎠ (7)
ωc 0 1 1 x(t)
Using these equations any change in the set point will cor-
respondingly change the direction of X and Y axes of the
robot. This is known as body frame control equations. The
body frame axis change is shown in Figure 6.
D. Body frame to world frame conversion Fig. 8. Axis change in world frame control
In world frame the direction of motion of the robot in x-y
plane remains constant irrespective of any change in yaw. The
  
difference in body frame and world frame is depicted in the V x1 [ei(ψ) + e−i(ψ) ]/2 [eiψ − e−iψ ]/2i
Vx
=
Figure 6 and Figure 7. V y1 [ei(ψ) − e−i(ψ) ]/2i [eiψ + e−iψ ]/2
Vy
In world frame of omni directional robot, we obtain new (8)
cartesian plane with Vx1 and Vy1. Vx subtends an angle of The values of Vx1 and Vy1 obtained from Equation (8), must
yaw with Vx1 and Vy subtends an angle of 90+yaw with Vx1 be substituted in Equation (7) at the place of Vx and Vy to

65

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on July 14,2021 at 07:43:42 UTC from IEEE Xplore. Restrictions apply.
maintain the given direction of trajectory of robot even if the
heading is changed.

IV. S IMULINK MODEL OF THREE WHEEL OMNI ROBOT

Fig. 10. Two point trajectory control

There is predefined error circle around each coordinate which


defines positional tolerance for the desired set point.
Fig. 9. Simulink model of three wheel omni When the resultant from Equation (13) is less than or equal
to the radius of error circle, the set point coordinate is set to
the next desired coordinate. The only purpose of the resultant
V. O DOMETRY AND PATH PLANNING in path planning is to detect the error circle and set the next
A. Odometry desired co-ordinate.
Odometry is the phenomenon of acquisition of data from
The motion of the robot is controlled by theta which is
various motion sensors to estimate change in position over
the function of instantaneous position of the robot and it is
a fixed interval of time. It is generally used in robotics
given by,
applications for predefined path tracking and for efficient
locomotion. We used a pair of 400PPR quadrature encoders θ = tan-1 (Y err/Xerr) (14)
placed at an angle of 90 degree with respect to each other Theta is particularly used to calculate linear velocities Vx and
suspended over a spring plate. Each encoder is associated with Vy defined in the kinematic model shown in Figure 1 of TWO.
a free omni wheel coupled to it’s shaft for acquiring positional Linear velocities Vx and Vy are given by,
data in the form of pulses. One amongst the pair records data
over X axis while other one over Y axis. The radius of the V x = Cos(θ) ∗ Speed (15)
encoder wheel is 29mm each, so the x and y displacements
calculated will be, V y = Sin(θ) ∗ Speed (16)

Xpos = circumf erence ∗ pulsesX/ppr (9) ’Speed’ is the scalar constant used to define the velocity of the
Y pos = circumf erence ∗ pulsesY /ppr (10) robot. By using Vx and Vy we can directly calculate wheel
velocities(ωa, ωb, ωc) given by,
B. Path planning
⎛ ⎞ ⎛ i(θ+α) ⎞
In the Figure 10 (Xpos,Ypos) specify the instantaneous ωa [e + e−i(θ+α) ]/2 ei2π 
position of the robot. ⎝ ωb ⎠ = ⎝[e−i(θ+α) − ei(θ+α) ]/2i i2π ⎠ speed
e
x(t)
(Xsp,Ysp) are the desired coordinates the robot must attain. ωc [eiθ − e−iθ ]/2i ei2π
As per Figure 10, (17)
1) Discrete point path planning: This includes tracing a
Xerr = Xsp − Xpos (11) path with fixed number of set points. These paths usually don’t
have any continuous curves and have multiple apexes which
and, are considered to be the reference points during path planning.
Figure 11 depicts a three point path following robot.The entire
Y err = Y sp − Y pos (12) path is tracked in discritized manner, i.e path between two set
Therefore the net displacement of the system is given by, points is considered as one single segment of the entire path.

Here, (Xpos,Ypos) indicates the instantaneous position of the
Resultant = Xerr2 + Y err2 (13) robot where as (Xfinal,Yfinal) indicated the destination of the

66

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on July 14,2021 at 07:43:42 UTC from IEEE Xplore. Restrictions apply.
Fig. 11. 3 point path tracing
Fig. 12. Results of heading without PID

robot.The set points are only used to ensure the definite path
tracking of the robot. The position matrix is given as,
⎛ ⎞
Xsp1 Y sp1 Speed1
⎝ Xsp2 Y sp2 Speed2⎠ (18)
Xf inal Y f inal Speed3
The error equations are given as,
Xerr1 = Xsp1 − Xpos (19)
Y err1 = Y sp1 − Y pos (20)
Xerr2 = Xsp2 − Xpos (21)
Y err2 = Y sp2 − Y pos (22)
Xerr3 = Xf inal − Xpos (23)
Y err3 = Y f inal − Y pos (24)
Here the error circle concept is used to increment the row Fig. 13. Results of heading with PID
number of matrix (18) which ultimately sets the desired set
point and speed of the robot.
VI. R ESULTS
All the above mentioned logics were well simulated on
a virtual software Simulink and tested on micro controller
Arduino-Mega 2560. Smart Sabertooth 12A dual channel mo-
tor drivers were used to drive dc planetary gear motors IG-42.
The head locking of the robot was performed using IMU GY-
87 which provides 10 DOF and the odometry was performed
using quadrature hall encoders having 400 ppr resolution from
Orange ltd. These sensors are highly sensitive to vibrations,
voltage fluctuations and noise interference. Proper mechanical
and electronic shielding needs to be provided to overcome
this and provide significant data to the control circuitry. The
odometry sensor is efficient at slow and moderate speeds and
inaccurately encode the distances at high speeds in turns im-
pose speed limitations. The path tracked by us using odometry
sensors are nearly accurate to the desired paths. The desired Fig. 14. Performance characteristics of odometry
and traced positions for a given path is shown in Figure 14.

67

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on July 14,2021 at 07:43:42 UTC from IEEE Xplore. Restrictions apply.
Results obtained: The mechanical design of the chassis and [6] H. Kim B. Kim ”Minimum-energy trajectory planning and control on
weight distribution also influences the action of the sensors a straight line with rotation for three-wheeled omni-directional mobile
robot” Proc. of IEEE Int. conf on Intelligent Robots and Systems pp.
and controller. More mechanically stable mechanisms assures 3119-3124 October 2012.
more probability of desired output from the sensors and [7] Y. Jia X. Song S. S.-D. Xu ”Modeling and motion analysis of four-
controllers. Gyroscopic sensors are prone to vibrations which mecanum wheel omni-directional mobile platform” Proc. of Int. Auto-
matic Control Conference pp. 328-333 December 2013.
cause drifting in the heading of robot. The drifting is directly [8] H.R. Moballegh P. Amini Y. Pakzad M. Hashemi M. Narmiani ”An
proportional to sensitivity of the sensor and the algorithm used. improvement of self-localization for omni-directional mobile robots
This problem was completely over come by us by using PID using a new odometry sensor and omni-directional vision” Proc. of
Canadian conf. on Electrical and Computer Engineering pp. 2337-2340
algorithms on IMU GY-87. May 2004.
[9] J. Wu Dynamic Path Planning of an Omni-directional Robot in a
VII. C ONCLUSIONS Dynamic Environment March 2005.
[10] Kim Dong-Sung Wook Hyun Kwon Hong Sung Park ”Geometric
Implementation of PID algorithm on three wheel omni Kinematics and Applications of a Mobile Robot” International Journal
reduced the settling time and the cycling period of the heading of Control Automation and Systems vol. 1 no. 3 pp. 376-384 Sept. 2003.
response to a set point. This is verified as in Figure 13, and [11] Gallacher, B. J., Burdess, J. S., & Harris, A. J. (2001). Principles of
a three-axis vibrating gyroscope. IEEE Transactions on Aerospace and
is compared with Figure 14 which gives heading response Electronic Systems, 37(4), 13331343.
without PID algorithm. This PID algorithm efficiently works [12] Doicin, B., Popescu, M., & Patrascioiu, C. (2016). PID Controller
at higher speeds. Above path planning algorithm resulted optimal tuning. 2016 8th International Conference on Electronics, Com-
puters and Artificial Intelligence (ECAI).
in better positional accuracy as plotted Figure 14. The path [13] M.K. Arun U. Biju N.N. Rajagopal V. Bagyaveereswaran ”Optimal tun-
tracked by robot was affected by it’s body dynamics [4]. The ing of fractional-order PID controller” Advances in Intelligent Systems
above algorithms with little extensions can be applied to other and Computing vol. 397 pp. 401-408 2015.
[14] J.A. Hernndez-Riveros J.-H. Urrea-Quintero C.-V. Carmona-Cadavid
drives including four wheel mecanum, four wheel omni driven ”Evolutionary tuning of optimal PID controllers for second order sys-
robots, etc. tems plus time delay” Studies in Computational Intelligence vol. 620
pp. 3-20 2016.
VIII. F UTURE SCOPE [15] B. Chandra Mohan R. Baskaran ”A survey: Ant Colony Optimization
based recent research and implementation on several engineering do-
Continuous path tracking using generalized equations needs main” Expert Systems with Applications vol. 39 no. 4 pp. 4618-4627
2012.
special attention in the field of odometry. Odometry is field [16] Huang, S., Chen, D., & Gong, H. (2012). Research on the Impact of
of subjects which can be explored to depths including au- the Number of Wheels and Layouts to the Performances of Omni-
tonomous path planning, vision odometry, etc. Exploration and Directional Chassis. Lecture Notes in Computer Science, 258267.
[17] Ashmore, M., Barnes, N.: Omni-drive robot motion on curved paths: the
research in the area of robotics and automation will lead to a fastest path between two points is not a straight-line. In: Proc. Australian
stress free and comfortable life. Joint Conference on Artificial Intelligence, Canberra, Australia (2002)

IX. ACKNOWLEDGEMENT
The entire project work was planned and carried out at the
Robotics Research Lab, Government College of Engineering
and Research, Awasari, Pune, India. We thank all our seniors
from Robotics Research Lab for their support and co-operation
during the entire process. We would also like to thank Dr. A.
S. Pant, principal, Dr. R. M. Warkhedkar, for their constant
support for the research activities and projects works. We also
thank to Dr. M. R. Bongulwar, Head of Department, Instru-
mentation and Control Engineering, and Dr. S. U. Ghumbre,
Head of Department, Computer Engineering for their constant
support.

R EFERENCES
[1] http://www.robotplatform.com/knowledge/Classification of Robots/
Holonomic and Non-Holonomic drive.html
[2] Paz, Robert. (2001). The Design of the PID Controller.
[3] P. Jain, ”Odometry and motion planning for omni drive robots,” 2014
Innovative Applications of Computational Intelligence on Power, Energy
and Controls with their impact on Humanity (CIPECH), Ghaziabad,
2014, pp. 164-168.
[4] Oliveira, Helder & Sousa, Armando & Moreira, A & Costa, Paulo.
(2008). Dynamical Models for Omni-directional Robots with 3 and 4
Wheels. ICINCO 2008 - Proceedings of the 5th International Conference
on Informatics in Control, Automation and Robotics. 1.
[5] W. Wang D.J. Balkcom ”Analytical time-optimal trajectories for an
omni-directional vehicle” Proc. of IEEE Int. conf on Robotics and
Automation pp. 4519-4524 May 2012.

68

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on July 14,2021 at 07:43:42 UTC from IEEE Xplore. Restrictions apply.

You might also like