Autonomous Three-Wheeled Robot Design
VerifiedAdded on 2020/05/16
|26
|3301
|2504
AI Summary
This assignment delves into the design of an autonomous three-wheeled mobile robot featuring front-wheel steering. It presents a system model and control design approach, highlighting the advantages of this configuration for navigation and localization in autonomous vehicles. The authors discuss ongoing challenges in controlling such robots and propose future research avenues, including robust and optimal control techniques as well as adaptive PID controllers to enhance performance under varying environmental conditions.
Contribute Materials
Your contribution can guide someone’s learning journey. Share your
documents today.
university or college
Department or faculty
Date of submission
Students name student Id contribution to assignment
Department or faculty
Date of submission
Students name student Id contribution to assignment
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
EXECUTIVE SUMMARY
This paper seeks to perform kinematic modelling of a tricycle robot’s movement. Some of the
main control factors are the speed of motion of the tricycle as well as the steering angle. The
paper seeks to derive the kinematic modelling equations in two states where the front wheel does
the steering and the rear wheel roll over and where the front wheels do both the steering and
driving. The software used for this tests and simulations is the MATLAB R2017a. the MATLAB
scripts are appended alongside the report for testing purposes. The paper seeks to build and
simulate the kinematic model of the robot. It also seeks to determine the localization using a
particle filter. The discussion section highlights the main assumptions made in regards to this
report and it analyses the results and observations made in meeting the aims of the tests. The
paper seeks to determine the trajectory or the path the tricycle takes within a given period of time
when different parameters are altered to that effect. The derived system model has been
completely defined to use experimental results obtained for the robot tricycle design.
Page 1 of 26
This paper seeks to perform kinematic modelling of a tricycle robot’s movement. Some of the
main control factors are the speed of motion of the tricycle as well as the steering angle. The
paper seeks to derive the kinematic modelling equations in two states where the front wheel does
the steering and the rear wheel roll over and where the front wheels do both the steering and
driving. The software used for this tests and simulations is the MATLAB R2017a. the MATLAB
scripts are appended alongside the report for testing purposes. The paper seeks to build and
simulate the kinematic model of the robot. It also seeks to determine the localization using a
particle filter. The discussion section highlights the main assumptions made in regards to this
report and it analyses the results and observations made in meeting the aims of the tests. The
paper seeks to determine the trajectory or the path the tricycle takes within a given period of time
when different parameters are altered to that effect. The derived system model has been
completely defined to use experimental results obtained for the robot tricycle design.
Page 1 of 26
TABLE OF CONTENTS
EXECUTIVE SUMMARY.........................................................................................................................1
BASIC OVERVIEW...................................................................................................................................3
RESULTS & OBSERVATIONS.................................................................................................................6
DISCUSSION...........................................................................................................................................21
CONCLUSION.........................................................................................................................................24
RECOMMENDATIONS AND FUTURE WORK....................................................................................24
REFERENCES..........................................................................................................................................25
Page 2 of 26
EXECUTIVE SUMMARY.........................................................................................................................1
BASIC OVERVIEW...................................................................................................................................3
RESULTS & OBSERVATIONS.................................................................................................................6
DISCUSSION...........................................................................................................................................21
CONCLUSION.........................................................................................................................................24
RECOMMENDATIONS AND FUTURE WORK....................................................................................24
REFERENCES..........................................................................................................................................25
Page 2 of 26
BASIC OVERVIEW
There has been a great development in the artificial intelligence and robotics field. The focus
now is on enabling better control strategies to achieve robust and optimal performance. The three
wheeled vehicles are mainly used in the local public transport globally but they tend to lag
behind in terms of speed and steering angles although they have merits in localization and
navigation. In most systems in the industry, the PID is used to ensure control of the system.
Some other applications are such as the self-driving car which was designed by google and has
now been built by other car companies globally (Folsom, 2013). The car is already commuting in
various states and roads nationwide and they are strict in the aerodynamic design features as
those could affect the motion. The aerodynamic considerations are basically involved in the
dynamic modelling of a system as opposed to the kinematic modelling as is the focus in this
report (Mercedes-Benz, 2016). For instance, currently the Mercedes Benz company is working
on an electric vehicle in relation with a mechanical design. One of the key challenges faced by
many vehicle companies is in the monitoring of the control and stability of a vehicle after design.
The dynamic modelling seeks to discuss the stability factor of the three-wheeled vehicle as
designed but the control and speed variations are focused on in the kinematic modelling. It is
crucial to note that the highest number of robot locomotives are based on the differential drive
model. The model states that the two powered wheels are used to drive the robot as well as
change its direction, hence they are used for both driving and steering. The control strategies for
the differential drive model of the robot are completely different and do not apply to other robot
designs such as the Ackerman drive robots or the omnidirectional mobile robots. Another model
of locomotion for the three-wheeled robot tricycle is where the steering and powering is done at
the front wheels (Miyazaki, et al., n.d.). The advantage of the steering geometry has several
advantages for the purpose of localization and motion planning.
Kinematic steering refers to steering where a robot tries to follow a desired heading by yawing or
turning a wheel relative to the vehicle body. The tricycle is considered the single axle vehicle
with a front steering wheel and rolling rear wheels (Sindha, et al., 2015). A wheeled vehicle is
said to have kinematic steering when a wheel is actually given a steer angle as illustrated in the
equations below. A kinematic model for the steering basic vehicle in the inertial frame is given
by the equation,
˙X =v cos ψ=Rw ωcosψ
˙Y =vsinψ=Rw ω sin ψ
ψ= v
L tanδ
In this case, the input control variables are the velocity and the steering angle. These are used in
the experiment and the results are observed as shown in the results section below. The center of
gravity is located in the rear axle for a tricycle. The kinematic equations can be easily simulated
using the MATLAB software,
Page 3 of 26
There has been a great development in the artificial intelligence and robotics field. The focus
now is on enabling better control strategies to achieve robust and optimal performance. The three
wheeled vehicles are mainly used in the local public transport globally but they tend to lag
behind in terms of speed and steering angles although they have merits in localization and
navigation. In most systems in the industry, the PID is used to ensure control of the system.
Some other applications are such as the self-driving car which was designed by google and has
now been built by other car companies globally (Folsom, 2013). The car is already commuting in
various states and roads nationwide and they are strict in the aerodynamic design features as
those could affect the motion. The aerodynamic considerations are basically involved in the
dynamic modelling of a system as opposed to the kinematic modelling as is the focus in this
report (Mercedes-Benz, 2016). For instance, currently the Mercedes Benz company is working
on an electric vehicle in relation with a mechanical design. One of the key challenges faced by
many vehicle companies is in the monitoring of the control and stability of a vehicle after design.
The dynamic modelling seeks to discuss the stability factor of the three-wheeled vehicle as
designed but the control and speed variations are focused on in the kinematic modelling. It is
crucial to note that the highest number of robot locomotives are based on the differential drive
model. The model states that the two powered wheels are used to drive the robot as well as
change its direction, hence they are used for both driving and steering. The control strategies for
the differential drive model of the robot are completely different and do not apply to other robot
designs such as the Ackerman drive robots or the omnidirectional mobile robots. Another model
of locomotion for the three-wheeled robot tricycle is where the steering and powering is done at
the front wheels (Miyazaki, et al., n.d.). The advantage of the steering geometry has several
advantages for the purpose of localization and motion planning.
Kinematic steering refers to steering where a robot tries to follow a desired heading by yawing or
turning a wheel relative to the vehicle body. The tricycle is considered the single axle vehicle
with a front steering wheel and rolling rear wheels (Sindha, et al., 2015). A wheeled vehicle is
said to have kinematic steering when a wheel is actually given a steer angle as illustrated in the
equations below. A kinematic model for the steering basic vehicle in the inertial frame is given
by the equation,
˙X =v cos ψ=Rw ωcosψ
˙Y =vsinψ=Rw ω sin ψ
ψ= v
L tanδ
In this case, the input control variables are the velocity and the steering angle. These are used in
the experiment and the results are observed as shown in the results section below. The center of
gravity is located in the rear axle for a tricycle. The kinematic equations can be easily simulated
using the MATLAB software,
Page 3 of 26
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
A tricycle like mobile robot is as shown in the figure below. There are usually two different
types of mechanisms used to maneuver a tricycle (Zhao & Bement, n.d.). The first type uses the
front wheel for both the steering and driving actions while the second type uses the front wheel
as the steering and the back wheels as driving wheels.
ωz = ˙ψ= vt
L
tan δ= vt
L
The forward velocity at the front wheel is simply, v, but because of the kinematic steering the
velocity along the path of the wheel must be,
vδ= v
cosδ
The lateral velocity at the front steered wheel must be,
vt=vδ sinδ =vtanδ
To obtain the angular velocity about the center of gravity which is located at the rear axle is,
ωz = v
L tanδ
The time continuous tricycle model using theta is obtained as,
˙x=v cosθ
˙y=v sinθ
˙θ=ω
The time continuous vehicle model while the vs is the velocity of the steering wheel (Alvin,
n.d.).
Page 4 of 26
types of mechanisms used to maneuver a tricycle (Zhao & Bement, n.d.). The first type uses the
front wheel for both the steering and driving actions while the second type uses the front wheel
as the steering and the back wheels as driving wheels.
ωz = ˙ψ= vt
L
tan δ= vt
L
The forward velocity at the front wheel is simply, v, but because of the kinematic steering the
velocity along the path of the wheel must be,
vδ= v
cosδ
The lateral velocity at the front steered wheel must be,
vt=vδ sinδ =vtanδ
To obtain the angular velocity about the center of gravity which is located at the rear axle is,
ωz = v
L tanδ
The time continuous tricycle model using theta is obtained as,
˙x=v cosθ
˙y=v sinθ
˙θ=ω
The time continuous vehicle model while the vs is the velocity of the steering wheel (Alvin,
n.d.).
Page 4 of 26
In as much as we are keen on defining the trajectory of the locomotive, there is need to
determine the center of curvature on the path the robot traverse. The curvature of the path is the
inverse of the instantaneous radius of curvature. It is centered about the supposed center of a
circle. It is known as the ICC and is the center of a circle which passes through the path a given
point which has the same tangent and curvature at that point on the path. The absence of
actuators in the wheels gives way to precise localization which in turn helps in better trajectory
following and navigation of the vehicle. The modified mechanical design has its merits in the
navigation, in as much as it poses huge drawbacks in the modeling and control strategies
(Murray, 2010). The control strategy used in the velocity control is as illustrated in system block
diagram below,
The plant is a continuous time system as the data from the set data points and inputs to the plant
are discrete in time and use the sampling rate as set in the simulation of the model blocks. An
instrumental variable system identification approach is used to estimate the control of the system.
Trajectories become particularly important in autonomous robotics because the target path to be
traversed keeps changing dynamically with time. Hence, the trajectory controller for an
autonomous robot has to be more robust and dynamic than that for a manually controlled robot.
For the robot design considered in this paper, the trajectory control faces even more challenges
because of high level planning issues for an autonomous drive. The trajectory control interacts
with the steering control. In this work our objective was to design the trajectory control strategy
which feeds the steering control loop (Watanabe, n.d.). The steering control loop has its own
controller whose design is also considered in the paper. For the velocity control system, as
mentioned above, we assumed that the robot dynamics are primarily due to the BLDC motor
which is responsible for the translation. For response to a step input in velocity control, we
designed a controller based on the model identified. A fast rise time is often the most desirable
performance characteristic for any autonomous mobile robot. Other than the high bandwidth, the
control design should be such that the closed loop system is insensitive to external disturbances
which arise due to undulations in the road terrain and other environmental disturbances. To
achieve both the design objectives a lead-lag compensator is needed. There are certain distinct
advantages that can be had with a three-wheeled robot design (Springer, 2002). The steer using
the front wheel is quite close in working to the design of cars. However, the localization and
navigation of such three wheeled vehicles is completely different. If the drive actuation to the
vehicle is also provided in the front wheel, as is the case for our robot design, the two rear
wheels are free. These two wheels can be very effectively used for accurate localization, which
would have been otherwise impossible in a rear wheel-drive vehicle.
Page 5 of 26
determine the center of curvature on the path the robot traverse. The curvature of the path is the
inverse of the instantaneous radius of curvature. It is centered about the supposed center of a
circle. It is known as the ICC and is the center of a circle which passes through the path a given
point which has the same tangent and curvature at that point on the path. The absence of
actuators in the wheels gives way to precise localization which in turn helps in better trajectory
following and navigation of the vehicle. The modified mechanical design has its merits in the
navigation, in as much as it poses huge drawbacks in the modeling and control strategies
(Murray, 2010). The control strategy used in the velocity control is as illustrated in system block
diagram below,
The plant is a continuous time system as the data from the set data points and inputs to the plant
are discrete in time and use the sampling rate as set in the simulation of the model blocks. An
instrumental variable system identification approach is used to estimate the control of the system.
Trajectories become particularly important in autonomous robotics because the target path to be
traversed keeps changing dynamically with time. Hence, the trajectory controller for an
autonomous robot has to be more robust and dynamic than that for a manually controlled robot.
For the robot design considered in this paper, the trajectory control faces even more challenges
because of high level planning issues for an autonomous drive. The trajectory control interacts
with the steering control. In this work our objective was to design the trajectory control strategy
which feeds the steering control loop (Watanabe, n.d.). The steering control loop has its own
controller whose design is also considered in the paper. For the velocity control system, as
mentioned above, we assumed that the robot dynamics are primarily due to the BLDC motor
which is responsible for the translation. For response to a step input in velocity control, we
designed a controller based on the model identified. A fast rise time is often the most desirable
performance characteristic for any autonomous mobile robot. Other than the high bandwidth, the
control design should be such that the closed loop system is insensitive to external disturbances
which arise due to undulations in the road terrain and other environmental disturbances. To
achieve both the design objectives a lead-lag compensator is needed. There are certain distinct
advantages that can be had with a three-wheeled robot design (Springer, 2002). The steer using
the front wheel is quite close in working to the design of cars. However, the localization and
navigation of such three wheeled vehicles is completely different. If the drive actuation to the
vehicle is also provided in the front wheel, as is the case for our robot design, the two rear
wheels are free. These two wheels can be very effectively used for accurate localization, which
would have been otherwise impossible in a rear wheel-drive vehicle.
Page 5 of 26
RESULTS & OBSERVATIONS
The axial distance is
d= √ 0.5+ 0.01G
Where G=6
d= √0.5+0.06 m
d=0.74833 m
Part 1: Build and simulate the kinematic model of this robot
The aim is to build the kinematic models of the robots and simulate and demonstrate the
behavior of the vehicle subject to:
(i) Constant driving velocity and a constant steering angle
run initialize2i.m;
sim model_rwd_task2;
sim model_fwd_task2;
run plot_outputs2i.m;
0 1 2 3 4 5 6 7 8 9 10
Time
0.33
0.34
0.35
0.36
Velocity
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-1
0
1
2
Alpha
RWD
FWD
Page 6 of 26
The axial distance is
d= √ 0.5+ 0.01G
Where G=6
d= √0.5+0.06 m
d=0.74833 m
Part 1: Build and simulate the kinematic model of this robot
The aim is to build the kinematic models of the robots and simulate and demonstrate the
behavior of the vehicle subject to:
(i) Constant driving velocity and a constant steering angle
run initialize2i.m;
sim model_rwd_task2;
sim model_fwd_task2;
run plot_outputs2i.m;
0 1 2 3 4 5 6 7 8 9 10
Time
0.33
0.34
0.35
0.36
Velocity
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-1
0
1
2
Alpha
RWD
FWD
Page 6 of 26
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
0 1 2 3 4 5 6 7 8 9 10
Time
0
1
2
Theta RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
2
4
Position Y
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
1
2
Position X
RWD
FWD
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
X
0
0.5
1
1.5
2
2.5
3
Y
RWD
FWD
(ii) Constant driving velocity and a linearly changing steering angle
Page 7 of 26
Time
0
1
2
Theta RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
2
4
Position Y
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
1
2
Position X
RWD
FWD
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
X
0
0.5
1
1.5
2
2.5
3
Y
RWD
FWD
(ii) Constant driving velocity and a linearly changing steering angle
Page 7 of 26
The following Matlab script was run to obtain the results,
run initialize2ii.m;
sim model_rwd_task2;
sim model_fwd_task2;
run plot_outputs2ii.m;
0 1 2 3 4 5 6 7 8 9 10
Time
0.25
0.3
0.35
0.4
Velocity
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-1
-0.5
0
0.5
1
Alpha
RWD
FWD
Page 8 of 26
run initialize2ii.m;
sim model_rwd_task2;
sim model_fwd_task2;
run plot_outputs2ii.m;
0 1 2 3 4 5 6 7 8 9 10
Time
0.25
0.3
0.35
0.4
Velocity
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-1
-0.5
0
0.5
1
Alpha
RWD
FWD
Page 8 of 26
0 1 2 3 4 5 6 7 8 9 10
Time
-2
-1
0
Theta RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-4
-2
0
Position Y
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
2
4
Position X
RWD
FWD
0 0.5 1 1.5 2 2.5 3
X
-2.5
-2
-1.5
-1
-0.5
0
Y
RWD
FWD
Page 9 of 26
Time
-2
-1
0
Theta RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-4
-2
0
Position Y
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
2
4
Position X
RWD
FWD
0 0.5 1 1.5 2 2.5 3
X
-2.5
-2
-1.5
-1
-0.5
0
Y
RWD
FWD
Page 9 of 26
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
(iii) Linearly changing driving velocity and linearly changing steering angle
run initialize2iii.m;
sim model_rwd_task2;
sim model_fwd_task2;
run plot_outputs2iii.m;
0 1 2 3 4 5 6 7 8 9 10
Time
0
0.5
1
1.5
2
Velocity
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-1
-0.5
0
0.5
1
Alpha
RWD
FWD
Page 10 of 26
run initialize2iii.m;
sim model_rwd_task2;
sim model_fwd_task2;
run plot_outputs2iii.m;
0 1 2 3 4 5 6 7 8 9 10
Time
0
0.5
1
1.5
2
Velocity
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-1
-0.5
0
0.5
1
Alpha
RWD
FWD
Page 10 of 26
0 1 2 3 4 5 6 7 8 9 10
Time
-5
0
5
Theta RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-4
-2
0
Position Y
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
5
10
Position X
RWD
FWD
0 1 2 3 4 5 6
X
-3
-2.5
-2
-1.5
-1
-0.5
0
Y
RWD
FWD
Page 11 of 26
Time
-5
0
5
Theta RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-4
-2
0
Position Y
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
5
10
Position X
RWD
FWD
0 1 2 3 4 5 6
X
-3
-2.5
-2
-1.5
-1
-0.5
0
Y
RWD
FWD
Page 11 of 26
Consider that the three-wheeled mobile robot is traversing on a path with a curvature κ. The
curvature of the path is defined as the inverse of the instantaneous radius of curvature, centered
around a hypothetical center of a circle. The center of curvature is similarly defined as the center
of a circle which passes through the path at a given point which has the same tangent and
curvature at that point on the path. We can calculate the curvature for the robot design in
consideration in this paper as shown below,
V L=rx ωL
V R=rx ωR
Where r is the radius of a wheel, ωL is the left wheel angular velocity and ωR is the right wheel
angular velocity. The rear wheels follow differential drive kinematics as they are both free to
move in both clockwise and anticlockwise directions. It is prudent to have the tricycle follow a
trajectory as shown in the illustration below. The aim is to plan the driving acceleration and
steering velocity profiles for the front wheel steering and back wheel driving robot so that the
robot will follow the path. Apply the same control profile to the front wheel steering and front
wheel driving robot. A similar model was also identified by running the BLDC motor without
load. The BLDC model without load was obtained to be consistent with the robot model for
velocity control justifying our previous assumption that for velocity control, the system
dynamics are majorly governed by the BLDC motor alone, which provides the translation torque
to the robot. The open loop performance of the robot was compared to the model response for
other test input signals as well such as a ramp input signal to validate the model obtained,
Page 12 of 26
curvature of the path is defined as the inverse of the instantaneous radius of curvature, centered
around a hypothetical center of a circle. The center of curvature is similarly defined as the center
of a circle which passes through the path at a given point which has the same tangent and
curvature at that point on the path. We can calculate the curvature for the robot design in
consideration in this paper as shown below,
V L=rx ωL
V R=rx ωR
Where r is the radius of a wheel, ωL is the left wheel angular velocity and ωR is the right wheel
angular velocity. The rear wheels follow differential drive kinematics as they are both free to
move in both clockwise and anticlockwise directions. It is prudent to have the tricycle follow a
trajectory as shown in the illustration below. The aim is to plan the driving acceleration and
steering velocity profiles for the front wheel steering and back wheel driving robot so that the
robot will follow the path. Apply the same control profile to the front wheel steering and front
wheel driving robot. A similar model was also identified by running the BLDC motor without
load. The BLDC model without load was obtained to be consistent with the robot model for
velocity control justifying our previous assumption that for velocity control, the system
dynamics are majorly governed by the BLDC motor alone, which provides the translation torque
to the robot. The open loop performance of the robot was compared to the model response for
other test input signals as well such as a ramp input signal to validate the model obtained,
Page 12 of 26
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
0 5 10 15 20 25 30
Time
0
0.5
1
1.5
2
Velocity
RWD
FWD
0 5 10 15 20 25 30
Time
-0.3
-0.2
-0.1
0
0.1
Alpha
RWD
FWD
Page 13 of 26
Time
0
0.5
1
1.5
2
Velocity
RWD
FWD
0 5 10 15 20 25 30
Time
-0.3
-0.2
-0.1
0
0.1
Alpha
RWD
FWD
Page 13 of 26
0 5 10 15 20 25 30
Time
-5
0
5
Theta RWD
FWD
0 5 10 15 20 25 30
Time
-10
-5
0
Position Y
RWD
FWD
0 5 10 15 20 25 30
Time
0
10
20
Position X
RWD
FWD
Page 14 of 26
Time
-5
0
5
Theta RWD
FWD
0 5 10 15 20 25 30
Time
-10
-5
0
Position Y
RWD
FWD
0 5 10 15 20 25 30
Time
0
10
20
Position X
RWD
FWD
Page 14 of 26
0 2 4 6 8 10 12 14
X
-7
-6
-5
-4
-3
-2
-1
0
Y
RWD
FWD
There are Simulink models designed to observe the kinematic model of the robot. The
simulations were done and the results obtained from the two models compared. To validate the
robot model obtained for velocity control system, we compared the open loop performance of the
robot using experimental results and the response as calculated from the model. The robots are
set to move along the predefined path,
run initialize4.m;
sim model_rwd_task2;
sim model_fwd_task2;
run plot_outputs4.m;
minimum_radius = d * tan(pi / 2 - maximum_alpha)
Page 15 of 26
X
-7
-6
-5
-4
-3
-2
-1
0
Y
RWD
FWD
There are Simulink models designed to observe the kinematic model of the robot. The
simulations were done and the results obtained from the two models compared. To validate the
robot model obtained for velocity control system, we compared the open loop performance of the
robot using experimental results and the response as calculated from the model. The robots are
set to move along the predefined path,
run initialize4.m;
sim model_rwd_task2;
sim model_fwd_task2;
run plot_outputs4.m;
minimum_radius = d * tan(pi / 2 - maximum_alpha)
Page 15 of 26
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
0 1 2 3 4 5 6 7 8 9 10
Time
1.2
1.4
1.6
1.8
Velocity
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-1
0
1
2
Alpha
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
20
40
Theta RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
1
2
Position Y
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-1
0
1
Position X
RWD
FWD
Page 16 of 26
Time
1.2
1.4
1.6
1.8
Velocity
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-1
0
1
2
Alpha
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
20
40
Theta RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
0
1
2
Position Y
RWD
FWD
0 1 2 3 4 5 6 7 8 9 10
Time
-1
0
1
Position X
RWD
FWD
Page 16 of 26
-0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8
X
0
0.5
1
1.5
Y
RWD
FWD
The discrete time controller equation was obtained by using bilinear transformation from the
transform domain to z-domain for the integrator and the backward difference method for the
differentiator to incorporate the finite bandwidth differentiator in the controller. The sampling
time for the implemented controller was 0.05 seconds. Using the PID parameter values and the
sampling time, the controller was implemented on a computer (Intel 64-bit microprocessor) in
the discrete-time domain. The control input was given to a DAC which provides the input to the
BLDC motor in terms of the duty cycle according to the given control input. For system analysis,
the effect of this DAC was incorporated by obtaining a zero-order hold equivalent of the
continuous-time plant. The closed loop performance was then analyzed in discrete-time domain.
The minimum radius of curvature of the circle is computed so as to confirm the results,
From Matlab,
minimum_radius = d * tan(pi / 2 - maximum_alpha)
minimum_radius =0.7483
Page 17 of 26
X
0
0.5
1
1.5
Y
RWD
FWD
The discrete time controller equation was obtained by using bilinear transformation from the
transform domain to z-domain for the integrator and the backward difference method for the
differentiator to incorporate the finite bandwidth differentiator in the controller. The sampling
time for the implemented controller was 0.05 seconds. Using the PID parameter values and the
sampling time, the controller was implemented on a computer (Intel 64-bit microprocessor) in
the discrete-time domain. The control input was given to a DAC which provides the input to the
BLDC motor in terms of the duty cycle according to the given control input. For system analysis,
the effect of this DAC was incorporated by obtaining a zero-order hold equivalent of the
continuous-time plant. The closed loop performance was then analyzed in discrete-time domain.
The minimum radius of curvature of the circle is computed so as to confirm the results,
From Matlab,
minimum_radius = d * tan(pi / 2 - maximum_alpha)
minimum_radius =0.7483
Page 17 of 26
Part 2: Localization using a particle filter
1.5 1.6 1.7 1.8 1.9 2 2.1 2.2
X (m)
1
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
Y (m)
Actual trajectory
Estimated trajectory
Page 18 of 26
1.5 1.6 1.7 1.8 1.9 2 2.1 2.2
X (m)
1
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
Y (m)
Actual trajectory
Estimated trajectory
Page 18 of 26
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
0 1 2 3 4 5 6 7 8 9 10
Time in s
-4
-3.5
-3
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
X error in m
10-3
Page 19 of 26
Time in s
-4
-3.5
-3
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
X error in m
10-3
Page 19 of 26
0 1 2 3 4 5 6 7 8 9 10
Time in s
-3
-2
-1
0
1
2
3
4
5
6
Y error in m
10-3
0 1 2 3 4 5 6 7 8 9 10
Time in s
-2
-1
0
1
2
3
4
5
6
7
Theta error in m
10-3
Page 20 of 26
Time in s
-3
-2
-1
0
1
2
3
4
5
6
Y error in m
10-3
0 1 2 3 4 5 6 7 8 9 10
Time in s
-2
-1
0
1
2
3
4
5
6
7
Theta error in m
10-3
Page 20 of 26
DISCUSSION
Some of the assumptions made are such as:
(i) Wheels do not slip so that there is controlled rotational speed. The result of this is that
the velocity at each wheel ground contact is also controlled.
If the steering wheel is set to an angle α (t) from the straight-line direction, the tricycle will rotate
with angular velocity ω (t) about a point lying a distance R along the line perpendicular to and
passing through the rear wheels.
r =steering wheel radius
V s ( t )=ws ( t ) r … linear velocity of steeringwheel
R ( t )=dtg ( π
2 −α ( t ) )
w ( t ) = ws ( t ) r
√ d2 + R ( t ) 2 … angular velocity of the moving frame relative ¿ base frame
It implies that,
w ( t )= V s ( t )
d sin α ( t )
In a situation where there is no slippage,
vx ( t )=vs ( t ) cos α ( t )
V y ( t ) =0
Page 21 of 26
Some of the assumptions made are such as:
(i) Wheels do not slip so that there is controlled rotational speed. The result of this is that
the velocity at each wheel ground contact is also controlled.
If the steering wheel is set to an angle α (t) from the straight-line direction, the tricycle will rotate
with angular velocity ω (t) about a point lying a distance R along the line perpendicular to and
passing through the rear wheels.
r =steering wheel radius
V s ( t )=ws ( t ) r … linear velocity of steeringwheel
R ( t )=dtg ( π
2 −α ( t ) )
w ( t ) = ws ( t ) r
√ d2 + R ( t ) 2 … angular velocity of the moving frame relative ¿ base frame
It implies that,
w ( t )= V s ( t )
d sin α ( t )
In a situation where there is no slippage,
vx ( t )=vs ( t ) cos α ( t )
V y ( t ) =0
Page 21 of 26
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
˙θ ( t )= V s ( t )
d sin α ( t )
˙x ( t ) =vS ( t ) cos α ( t ) cos θ ( t )
˙y ( t ) =v S ( t ) cos α ( t ) sinθ ( t )
˙θ ( t )= vS ( t )
d sin α ( t )
This can be represented in the state equations below,
[ ˙x ( t )
˙y ( t )
˙θ ( t ) ]=
[cos θ ( t ) 0
sin θ ( t ) 0
0 1 ]. [ v ( t )
w ( t ) ]
Therefore,
v ( t )=vs (t) cos α (t)
w ( t )= vS ( t )
d sin α ( t )
The trajectory control as demonstrated in the third procedure of the first part is a challenging task
because of the uniqueness of the mechanical design. The model of the tricycle robot was
identified and validated using the experimental results so as to determine the appropriate control
algorithms. Trajectories are key in the design of autonomous robotics as the target path to be
traversed keeps changing dynamically with time (Martinsa, 2008). The trajectory controller for
an autonomous robot has to be more robust and dynamic than that for a manually controlled
robot. The trajectory control strategy is the one that feeds the steering control loop. The steering
control is useful in the system design (Dadashzadeh & Mahjoob, 2007). It is assumed that the
tricycle follows through with the robot dynamics due to the BLDC motor which is responsible
for the translation.
Page 22 of 26
d sin α ( t )
˙x ( t ) =vS ( t ) cos α ( t ) cos θ ( t )
˙y ( t ) =v S ( t ) cos α ( t ) sinθ ( t )
˙θ ( t )= vS ( t )
d sin α ( t )
This can be represented in the state equations below,
[ ˙x ( t )
˙y ( t )
˙θ ( t ) ]=
[cos θ ( t ) 0
sin θ ( t ) 0
0 1 ]. [ v ( t )
w ( t ) ]
Therefore,
v ( t )=vs (t) cos α (t)
w ( t )= vS ( t )
d sin α ( t )
The trajectory control as demonstrated in the third procedure of the first part is a challenging task
because of the uniqueness of the mechanical design. The model of the tricycle robot was
identified and validated using the experimental results so as to determine the appropriate control
algorithms. Trajectories are key in the design of autonomous robotics as the target path to be
traversed keeps changing dynamically with time (Martinsa, 2008). The trajectory controller for
an autonomous robot has to be more robust and dynamic than that for a manually controlled
robot. The trajectory control strategy is the one that feeds the steering control loop. The steering
control is useful in the system design (Dadashzadeh & Mahjoob, 2007). It is assumed that the
tricycle follows through with the robot dynamics due to the BLDC motor which is responsible
for the translation.
Page 22 of 26
According to the simulation model, a step input is applied for the velocity control on the
controller designed. A fast rise time is usually the most desired performance attribute for the
common tricycle robot model. The control design ought to be that the closed loop system is not
sensitive to the external noises which arise due to undulations in the road terrain and other
environmental disturbances. The trajectory considerations are done considering that the tricycle
mobile robot is traversing on a path with a curvature k (Ogata, n.d.). The differential drive model
is used to calculate the kinematic equations of the robot,
V L=V x− d
2 xω
V R=V x+ d
2 xω
The d is the separation between the wheels
The w is the instantaneous angular velocity of the robot as assumed anticlockwise about a point
midway between the wheels.
V x=V L+V R
2
ω= V L−V R
d
The curvature estimation is written as,
κ= 1
R
Where k is the curvature of the path and R is the instantaneous radius of the curvature. Assuming
the robot to be a rigid body, as it can be written,
V L
R− d
2
= V R
R+ d
2
Simplifying further,
V R +V L
2 x
1
V R +V L
d =R
Therefore,
κ= ω
V x
Page 23 of 26
controller designed. A fast rise time is usually the most desired performance attribute for the
common tricycle robot model. The control design ought to be that the closed loop system is not
sensitive to the external noises which arise due to undulations in the road terrain and other
environmental disturbances. The trajectory considerations are done considering that the tricycle
mobile robot is traversing on a path with a curvature k (Ogata, n.d.). The differential drive model
is used to calculate the kinematic equations of the robot,
V L=V x− d
2 xω
V R=V x+ d
2 xω
The d is the separation between the wheels
The w is the instantaneous angular velocity of the robot as assumed anticlockwise about a point
midway between the wheels.
V x=V L+V R
2
ω= V L−V R
d
The curvature estimation is written as,
κ= 1
R
Where k is the curvature of the path and R is the instantaneous radius of the curvature. Assuming
the robot to be a rigid body, as it can be written,
V L
R− d
2
= V R
R+ d
2
Simplifying further,
V R +V L
2 x
1
V R +V L
d =R
Therefore,
κ= ω
V x
Page 23 of 26
CONCLUSION
The robot design considered in the paper is a front wheel steer design. The model was validated
by comparing the derived model response with the experimental results of the autonomous robot.
The linearity of the model was also investigated thoroughly and the range of linearity was
calculated by analyzing the experimental data. We identified a linearized model for a three-
wheeled autonomous mobile robot. The trajectory control problem was touched upon briefly in
this paper and some promising initial results were demonstrated. A high-level planner designed
for holonomic differential drive robots only, when used with the designed trajectory controller
for the three-wheeled robot design followed the desired trajectory. Modeling and control
strategies for a design of an autonomous three wheeled mobile robot with front wheel steer is
presented. Although, the three-wheel vehicle design with front wheel steer is common in
automotive vehicles used often in public transport, but its advantages in navigation and
localization of autonomous vehicles is seldom utilized. We present the system model for such a
robotic vehicle.
RECOMMENDATIONS AND FUTURE WORK
The work on autonomous three wheeled robots has a long way to go before such vehicles are
realized onto the roads because of many control and stability related challenges. We presented
the modeling and control design approach for a particular kind of three wheeled robots. This
work could be carried forward in various directions such as design of controllers using the robust
and optimal control theoretic techniques so that the robot performs under various uncertainties
while consuming as less battery power as possible. It would also be interesting to design adaptive
PID controllers for which the parameters change according to the environment conditions.
Although, there has been a significant amount of research on adaptive and fuzzy PID control
designs, but extending such results to this robot design would be an interesting problem to
consider given the different challenges that this front wheel driven & steered design poses.
Page 24 of 26
The robot design considered in the paper is a front wheel steer design. The model was validated
by comparing the derived model response with the experimental results of the autonomous robot.
The linearity of the model was also investigated thoroughly and the range of linearity was
calculated by analyzing the experimental data. We identified a linearized model for a three-
wheeled autonomous mobile robot. The trajectory control problem was touched upon briefly in
this paper and some promising initial results were demonstrated. A high-level planner designed
for holonomic differential drive robots only, when used with the designed trajectory controller
for the three-wheeled robot design followed the desired trajectory. Modeling and control
strategies for a design of an autonomous three wheeled mobile robot with front wheel steer is
presented. Although, the three-wheel vehicle design with front wheel steer is common in
automotive vehicles used often in public transport, but its advantages in navigation and
localization of autonomous vehicles is seldom utilized. We present the system model for such a
robotic vehicle.
RECOMMENDATIONS AND FUTURE WORK
The work on autonomous three wheeled robots has a long way to go before such vehicles are
realized onto the roads because of many control and stability related challenges. We presented
the modeling and control design approach for a particular kind of three wheeled robots. This
work could be carried forward in various directions such as design of controllers using the robust
and optimal control theoretic techniques so that the robot performs under various uncertainties
while consuming as less battery power as possible. It would also be interesting to design adaptive
PID controllers for which the parameters change according to the environment conditions.
Although, there has been a significant amount of research on adaptive and fuzzy PID control
designs, but extending such results to this robot design would be an interesting problem to
consider given the different challenges that this front wheel driven & steered design poses.
Page 24 of 26
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
REFERENCES
Alvin, B. V., n.d. Self-propelled, electric, three wheel maintenance cart. USA, Patent No. 3572455 A.
Dadashzadeh, B. & Mahjoob, M. J., 2007. Fuzzy Logic control Versus Non-linear P Control of a three
wheeled mobile robot. ICMA: Mechatronics and Automation.
Folsom, T. C., 2013. Self-driving Tricycles. s.l.:University of Washington.
Martinsa, F. N., 2008. An adaptive dynamic controler for autonomous mobile robot trajectory tracking.
In: Control Engineering Practice. s.l.:s.n.
Mercedes-Benz, 2016. Mercedes F-300 Concept Cars. s.l.:s.n.
Miyazaki, F., Kanayama, Y., Kimura, Y. & Noguchi, T., n.d. A stable Tracking control method for an
Autonomous mobile robot. IEEE International Conference: Robotics and Automation Proceedings.
Murray, R. M., 2010. Chapter 12, Optimization Based Control, s.l.: s.n.
Ogata, K., n.d. Discrete-time control systems. 2nd ed. s.l.:Prentice Hall.
Sindha, J., Chakraborty, B. & Chakravarty, D., 2015. Rigid body modeling of three-wheel vehicle to
determine the dynamic stability-A practical Approach. IEEE International: Transportation Electrification
Conference (ITEC), pp. 1-8.
Springer, 2002. An agricultural mobile robot with Vision based perception for mechanical weed control
in. Autonomous robots: .
Watanabe, K., n.d. Control of an omnidirectional mobile robot. KES, Knowledge-Based Intelligent
Electronic System. Proceedings, IEEE International Conference.
Zhao, Y. & Bement, S. L., n.d. Kinematics, dynamics and control of wheeled mobile robots. IEEE
International Conference: Robotics and Automation Proceedings.
Page 25 of 26
Alvin, B. V., n.d. Self-propelled, electric, three wheel maintenance cart. USA, Patent No. 3572455 A.
Dadashzadeh, B. & Mahjoob, M. J., 2007. Fuzzy Logic control Versus Non-linear P Control of a three
wheeled mobile robot. ICMA: Mechatronics and Automation.
Folsom, T. C., 2013. Self-driving Tricycles. s.l.:University of Washington.
Martinsa, F. N., 2008. An adaptive dynamic controler for autonomous mobile robot trajectory tracking.
In: Control Engineering Practice. s.l.:s.n.
Mercedes-Benz, 2016. Mercedes F-300 Concept Cars. s.l.:s.n.
Miyazaki, F., Kanayama, Y., Kimura, Y. & Noguchi, T., n.d. A stable Tracking control method for an
Autonomous mobile robot. IEEE International Conference: Robotics and Automation Proceedings.
Murray, R. M., 2010. Chapter 12, Optimization Based Control, s.l.: s.n.
Ogata, K., n.d. Discrete-time control systems. 2nd ed. s.l.:Prentice Hall.
Sindha, J., Chakraborty, B. & Chakravarty, D., 2015. Rigid body modeling of three-wheel vehicle to
determine the dynamic stability-A practical Approach. IEEE International: Transportation Electrification
Conference (ITEC), pp. 1-8.
Springer, 2002. An agricultural mobile robot with Vision based perception for mechanical weed control
in. Autonomous robots: .
Watanabe, K., n.d. Control of an omnidirectional mobile robot. KES, Knowledge-Based Intelligent
Electronic System. Proceedings, IEEE International Conference.
Zhao, Y. & Bement, S. L., n.d. Kinematics, dynamics and control of wheeled mobile robots. IEEE
International Conference: Robotics and Automation Proceedings.
Page 25 of 26
1 out of 26
Related Documents
Your All-in-One AI-Powered Toolkit for Academic Success.
+13062052269
info@desklib.com
Available 24*7 on WhatsApp / Email
Unlock your academic potential
© 2024 | Zucol Services PVT LTD | All rights reserved.