Wheeled Mobile Robot Wheeled Mobile Robots WMR are dynamic systems where an appropriate torque needs to be applied to the wheels to obtain desired motion of platform.. Bicycle Drive Bi
Trang 1HA NOI UNIVERSITY OF SCIENCE AND
TOPIC: MODELING AND SIMULATING THE
THREE-WHEELED MOBILE ROBOT
INSTRUCTOR: Ph.D Vũ Thị Thúy Nga
Trang 2Mục lục
Table of Contents
i
Part 1: Introduction 1
1.1 Wheeled Mobile Robot 1
1.2 Some typed of Wheeled Mobile Robot 1
1.2.1 Differential Drive 1
1.2.2 Bicycle Drive 1
1.2.3 Tricycle Drive 1
1.2.4 Car Drive 2
1.2.5 Omni Robot 2
1.3 Choosing WMR three wheels 3
Part 2: Modeling the Moblie Robot Three Wheels 3
2.1 Kinetic Model 3
2.2 Dynamic Model 7
Part 3:Controlling Methods Wheel Mobile Robot 16
3.1 Control Overview 16
3.2 Basic approaches 17
3.2.1 Directional and translational control 17
3.2.2 Basic approaches 19
3.3 Orbit Following Control 22
3.3.1 following the trajectory using basic approaches 22
3.3.2 Analysis feedforward and feedback elements 22
3.3.3 Linearization of feedback 23
3.3.4 Development of tracking kinetic trajectory 25
3.3.5 Linear Controller 27
Part 4: Designing Controller for Three Wheel Robot 29
4.1 Designing Kynametic Controller 29
4.2 Designing the Dynamic Controller 32
Trang 3Mục lục
Part 5: Control System On Matlab Simulink 34
5.1 Knematic Model 34
5.2 Dynamic Model 36
5.3 Kynematic Controller 38
5.4 Dynamic Controller 39
5.5 Simulink Result 39
5.5.1 First Case 39
5.5.2 Second case 40
5.5.3 Third Case 42
5.5.4 Fouth case 43
Reference 45
Trang 4Part 1: Introduction
1.1 Wheeled Mobile Robot
Wheeled Mobile Robots (WMR) are dynamic systems where an appropriate torque needs to be applied to the wheels to obtain desired motion of platform Motion control algorithms therefore need to consider the system’s dynamic properties Usually this problem is tackled using cascade control schemas with the outer controller for velocity control and the inner torque(force, motor current,etc.)
The outer controller determines the required system velocities for the system
to navigate to the reference pose or to follow the reference trajectory While the inner faster controller calculates the required torques to achieve the system velocities determined from the outer controller
1.2 Some Typed Of Wheeled Mobile Robot
1.2.1 Differential Drive
A different wheeled robot is a mobile
robot is a mobile robot whose movement is
based on separately driven wheels placed on
their side of the robot body
It can change its direction by varying the
relative rate of rotation of its wheels and hence
does not require an additional steering motion
Robots with such a driven typically have on or
more castor wheels to prevent the vehicle from
tilting
1.2.2 Bicycle Drive
Bicyce Drive also have 2 wheels as
Differential Drive, but its wheels are arrange
in a straight line, and usually only one wheel
is active and other can control the steering
angle, similar like a bicycle
This type of robot is rarely used cause
of its backwardness in reality applications
1.2.3 Tricycle Drive
Trang 5Tricycle Drive is a combination of WMR mentioned above, it has 3 wheels:
2 rear wheels are arranged coaxially and front wheel is steering one Two of three wheels are attached to the actuator to control and the remaining one is free or to control desired speed or angle
Trang 61.3 Choosing WMR three wheels
Robot nonholonomic
Two Drive Rear
Wheel
Front Drive Wheel
Trang 7Where:
ICR: instantaneous center of rotation of vehicle R(t): instantaneous radius of vehicle’s trajectory
: angular speed of vehicle around the center of ICR
v : longitudinal vehicle velocity
r : wheel’s radius
: the vehicle’s orientation – angle between WMR and O m X m axis
The model is placed in a general coordinate system X g ,Y g , and the
coordinate system of motion associated with WMRX m ,Y m The state vector of the vehicle in the general coordinate system is:
Because the movement of the vehicle through transmission of 2 rear wheels that moniting the WMR direction; therefore, the vehicle's longitudinal velocity is determined by:
Trang 8The equation of external kinematic of WMR on the general coordinate
system is determined as follows:
In order to eleminate the complex in presentation, we temporarily ignore the
dependence of the quantity into time, the above equation can be rewritten as:
Or we can write as following matrix:
Thus, within control input as velocity vector v v T
, we have a matrix S being vector fields representing the possible travel directions of the WMR:
Trang 9
In which the directions of motion are:
System equation 2.5 is rewritten as follows:
Beside, the WMR can only move along the wheels, not drift Therefore, the motion
of the WMR is constrained:
Where:
x2 , y2 : font wheel coordinates
Trang 10The relationship between (x2,y2) with (x,y) as following:
Therefore;
Subtituting 2.10 into 2.8 we have :
Trang 11Model 3-wheel mobile robot is considered within 2 rear wheels as active
driven by two engines, font wheel as free one These actuators will generate torques
P : the power lost due to friction
k : the index of the general coordinate component q k
Trang 12d
g k : gravity analysis in the direction of q k
: disturbance component in direction of q k
q k
a jk : constrain cefficient according to q k
Trang 13The dynamic model 2.13 can be rewritten in matrix as follows:
Eq: matrix tránition form
actuation space to coordinate space
u : input torque vector
AT q: motion constraint coefficient matrix
In order to simplify 2.16 , we temporarily
ignore the dependence on q Then 2.16
becomes
Beside, taking derivative both sides od 2.7 we have : q S.v S.v Then 2.17
becomes:
M.S.v M.S.v V F G d E.u AT (2.18)
Trang 14Phần 2: Mô hình hóa đối tượng Mobile Robot 3 bánh
From 2.7 and 2.21, we can describe the state space
Consider for the dynamic modeil, within m, J are mass anf torque around ICR
respectively; and ignore disturbance component in formula 2.15
Trang 15
Phần 2: Mô hình hóa đối tượng Mobile Robot 3 bánh
1
Meanwhile, we consider that WMR just run on even surface That means its potential
energy is constant and q k component disappeared in equation 2.15
The WMR’s kinetic energy is:
The Lagrangian function is calculated by:
We have:
Trang 16Phần 2: Mô hình hóa đối tượng Mobile Robot 3 bánh
, and
In the ideal condition, ignoring the friction that means lost
power equal 0 (P=0)
Thus the equation 2.15 becomes:
In order to 2 rear wheels can run with longitudinal velocity
v R ;v Lneeded torques R ,L
The combined force to pull the WMR moving is ; considering in two components x and y we have:
Trang 17Incoordinate system of motion associated with WMR, traction force exerted
by the two wheels on the vehicle tends to make the vehicle rotate about its axis with torque M determined by:
M L
Subtituting 2.27, 2.28 and 2.29 into 2.26 we have:
Knematic model 2.30 is writen in the matrix as follow:
M q.q Eu AT (2.30) Where:
Trang 18Otherwise,
From that, state space 2.22 can be represented as following:
Because of the non-linear of system, in order to design controller, we
normally separated model into 2 parts, including:
Knematic model:
Trang 19Phần 2: Mô hình hóa đối tượng Mobile Robot 3 bánh
Where matrixs M,E, V are defined by 2.32
Trang 20Part 3: Controlling Methods Wheel Mobile Robot
3.1 Control Overview
As mentioned above, to facilitate control design, we often divide the state
model of the vehicle into two component models, kinematics and dynamics
Therefore, the construction of control options is also based on these two models
To design the controller for this WMR, we normally use the classic control
scheme, using structure of 2 control loops, that is cascade control strategy In detail,
the outer loop is speed control loop (the kinematic control loop); and the inner loop
is the torque control loop (dynamic control loop) The outer loop kinematics
controller calculates the speed value to become the set value for the inner loop
kinematics controller The block diagram of the system is described as follows:
Beside, the above control system can also be represented in another way
according to the EMR method as follows:
Trang 213.2 Basic approaches
3.2.1 Directional and translational control
Let the angle of direction at time t is φ(t) và and desired angle is φref(t), the control angle deviation :
𝑒𝜑(𝑡) = 𝜑𝑟𝑒𝑓(𝑡) − 𝜑(𝑡)
In this case, the variable to be controlled is φ(t) and in order to control φ(t) to reach the desired value we need to control the bias 𝑒𝜑(𝑡) to zero
The direction angle of the robot is expressed through the system of differential
equations of the direction angle as follows:
In this case, the control variable is selected as t , it is determined
corresponding to the angular deviation 𝑒𝜑(𝑡) through proportional controller as follow:
t = 𝐾1 (𝜑𝑟𝑒𝑓(𝑡) − 𝜑(𝑡)) The equation (3.1) becomes:
This equation is approximated to:
Trang 22In order to follow a given trajectory or given state; we need translational control- means control longitudinal vehicle The suitable solution is a control that is proportional to the distance from current position to the reference position:
Trang 233.2.2 Basic approaches
In this section, by combining the angular control and the translational control mentioned in the previous section, we will have some basic approaches in practice to control the robot to a reference state
a Controlling to a set point
In this case, WMR is asked for reach to reference position without requiring the final direction angle The direction angle of the robot is controlled continuously following the direction of reference location, the direction from robot’s current positon to reference called r, it is determined:
Vận tốc dài và góc lái của bánh trước được điều khiển như sau:
The longitudinal velocity and steering direction of the front wheel are controlled
Trang 24However, the above control law will encounter some problems In detail, the above speed is always positive, so the robot may accidentally pass through the reference point, this will cause the speed to continue increasing (because the distance to the reference point continue increasing) Otherwise, when passing through the reference point, the reference direction angle will suddenly reversed The solution here is changing the formula of velocity and steering angle as follows:
a Controlling to a reference pose through the intermediate point
Unlike the previous part, in this case, in addition to going to the required position, the robot also needs to reach a given angle of direction Basically, this is quite easy to do because the control rules above can be applied again
Ý tưởng của phương pháp này là sử một điểm trung gian x t , y t được đặt cách
điểm tham chiếu một khoảng r sao cho hướng từ điểm trung gian về phía điểm tham
chiếu trùng với hướng tham chiếu:
The idea of that method is to use an intermediate point x t , y t placed a distance r from the reference point
Thuật toán điều khiển robot sẽ được chia làm 2 giai đoạn: Ở giai đoạn 1, robot được điều khiển đi tới điểm trung gian Khi khoảng cách từ vị trí của robot tới điểm trung gian đủ nhỏ ( ) thì robot sẽ chuyển sang giai đoạn
2, điều khiển robot về điểm tham chiếu
The control algorithm will devided into 2 stages In first stage, the robot is driven to the internediate point When the distance form the robot’s position to the referene point small enough ( ) the robot will change to
Trang 25b Từ trạng thái tham chiếu tới quỹ đạo tham chiếu
In here, the trajectory is divided into many small segments and the terminals will be
the references states In other words, a reference orbit includes a series of references states Ti
with i 1, 2,3 n The robot have to move sequentially from T1,T2 ,… until Tn
Trang 263.3 Orbit Following Control
3.3.1 Following the trajectory using basic approaches
Tương tự như phần 3.2.2.c, ta có thể hình dung quỹ đạo tham chiếu như một
vị trí chuyển động tham chiếu Mỗi thời điểm trích mẫu, điểm tham chiếu lại được xác định bằng điểm hiện tại của quỹ đạo tham chiếu theo thời gian x ref t , y ref t
Việc điều khiển tới điểm tham chiếu này được áp dụng luật điều khiển như công thức (3.2)
Similar to section 3.2.2.c, we can consider the reference trajectory as reference movement positions Each sampling times, the reference point is re-determined by current point of reference orbit in time x ref t , y ref t
3.3.2 Analysis feedforward and feedback elements
The approach described in section 3.3.1 is easy to implement, but it has the disadvantage that it is very susceptible to disturbance in the control loops, so a feedforward disturbance compensation component is required
Firstly, we consider a planar differential system A system is said to be a planar differential if there is a set of flat outputs and all the states and system inputs can be rewritten as functions of planar outputs and a finite number of time derivatives its space Consequently, if a system is planar differential then every system variable can be computed from flat outputs without integration That is, from the reference trajectory we can calculate the control inputs
We can easily see that the 3 wheeled mobile robot object in question is a planar
differential system Indeed:
Trang 27Thus, formula (3.3) is the formula for calculating reference inputs corresponding to a reference trajectory This is also an open-loop controller for the kinematic model to ensure the robot follows the set trajectory
3.3.3 Linearization of Feedback
The idea of this method is to perform transformations to linearize the input to
the system making the system between the new input and the output linear Since then, the design of linear controllers for the system becomes possible The feedback linearization design process is as follows:Chọn các đầu ra phẳng thích hợp, số lượng đầu ra phải bằng số lượng đầu vào
- Selecting the appropriate flat outputs, the number of outputs should be equal to the number of inputs
- Differentiate the outputs and check for the occurrence of the inputs, repeating until all inputs appear
- The system of equations is solved for the highest derivative of each input
In the case of the 3-wheel mobile robot, as demonstrated from the previous section,
it is a planar differential system The flat output of the system is x(t) and y(t) The first derivative of the flat inputs is:
From the above equation, just only the appearance of vs ,we
continue to take second derivative:
Trang 28The equation has sufficient input vs and The equation is rewriten as follows:
So with this transformation, the input of the system becomes
u1 u2 x yT
and state model z x x y yT
is described as :
T