2. control
mathematicl Modeling
kinematics model
Dynamic model
friction
Longitudinal dynamics
Lateral dynamics
Differential Steering
Control Algorithm
Trajectory Generation
Ostacle Avoidance
3. Mathematical model of mobile robot
Egyptian Academy for Engineering and advanced Technology
The mathematical model of mobile robot can be interpreted as a
conjunction of the kinematic and dynamic model. Kinematic
model define the position of robot in plane and the dynamic
model covers the robot’s dynamical properties and influences.
4. Kinematic Model
Egyptian Academy for Engineering and advanced Technology
Kinematic model of mobile robot with differentially
driven wheels can be obtained from the assumptions for
wheel movement in the plane :
• the robot can move in plane while its Z axis is always
perpendicular to this plane,
• wheels are rolling without forward slip fulfilling the
holonomic constraints for movement of this
type of robot in plane,
• it is assumed, that in a small time samples, even while
the robot is moving straight forward, it
always moves on an arc, which center is the ICC -
instantaneous center of curvature and this arc’s
radius is in term of CoG defined as Ro,
• the robot base is solid, it’s mass is constant and the
wheels are only moving parts of the robot.
5. Kinematic Model
Egyptian Academy for Engineering and advanced Technology
The kinematic model can be derived from the geometric properties of the robot motion in plane by
defining the angular velocity of mobile robot center of gravity CoG in respect to ICC as
(2)
b expresses the distance between wheel and CoG, which lies in the middle where of wheels rotation axis.
The radius Ro of an arc than can be defined as
(3)
6. Dynamic Model
Egyptian Academy for Engineering and advanced Technology
Given that the dynamic properties of mobile robot have an important influence to its motion, mainly from
the wheel engines traction forces FR, FL, it is possible to incorporate them into the mobile robot’s dynamic
model. According to the second Newton's law
the linear acceleration of mobile robot’s base can be interpreted as a derivation of its linear velocity v and
interpreted as a sum
7. Dynamic Model
Egyptian Academy for Engineering and advanced Technology
while the traction forces FR, FL can be defined from the robot’s overall torque
where τR, τL express partial wheel torques. Those torques can be defined in terms of the traction forces a
(8)
(9)
8. Dynamic Model
Egyptian Academy for Engineering and advanced Technology
while the left engine traction force FL is considered in opposite direction to suit the relation (8) for the
robot’s overall torque τ robot, this situation is depicted on Fig
Definition of mobile robot’s overal
orientation of traction forces FR, FL
Angular acceleration of mobile robot !_ can be expressed by its torque τ robot and robot’s overall moment of inertia J as
(10)
9. Dynamic Model
Egyptian Academy for Engineering and advanced Technology
By substituting the partial wheel torques (9) for right and left engine τR, τL into the sum (8) of total
mobile robot’s torque τ robot and by comparing it with the equation (10), it is possible to obtain the
angular velocity !_ of two wheeled mobile robot (11) as a function of a robot’s engines traction forces.
(11)
Mathematical model of mobile robot with differentially driven wheels, that consist of a kinematic (5)
and dynamic (7), (11) model may be represented by block diagram depicted on Fig. 3 and it can be
programmed as a simulation model in the Simulink environment.
10. Friction in mobile robot dynamics
Egyptian Academy for Engineering and advanced Technology
Friction acting against the movement is dependent on the object’s mass
by the normal force FN and it can be classified as a static or a kinetic
friction [3], [7]. Static friction is considered only at zero velocity and it is
represented by its coefficient µs as a force threshold Fs, which must be
overcome to set the object, in this case a mobile robot, moving. Until
reaching this force threshold, the effect of wheel traction force Fext is
compensated by static friction force Ffr. After overcoming the Fs, the
robot is set in motion, now affected by kinetic friction, which is usually
represented as a constant Coulomb friction, defined as
(12)
11. Friction in mobile robot dynamics
Egyptian Academy for Engineering and advanced Technology
where µk is the Coulomb friction coefficient. This (12) kinetic friction model
defines the friction force at non-zero velocities, it is independent on the size of
contact area and always acts against the movement, however the friction force Ffr
is dependent on a moving object’s velocity direction, no matter the size. In
general, the coefficients are defined in term µs µk
≥ , while in the case of µs > µk it
is possible to consider the effect of stiction [3], illustrated on Fig
12. Friction in mobile robot dynamics
Egyptian Academy for Engineering and advanced Technology
Kinetic model of friction can be further extended by considering the viscous
friction, defined by µv coefficient, which causes an increase in the friction force
with increasing velocity v of moving object. Finally, at small velocities and with the
active stiction effect, it is possible to apply the Stribeck curve defined by
coefficient ast, which replaces the step change of the friction force from Fs to Fk by
step less change at a small velocities interval [3]. By combining the above
mentioned friction models, a
generalized model of friction can be obtained as [3]
(13)
13. Friction in mobile robot dynamics
Egyptian Academy for Engineering and advanced Technology
Different setting for created friction model
in Simulink
14. Longitudinal dynamics
1. Forward Motion and Acceleration
Engine Power
.Traction Force.
2. Braking and Deceleration
Friction Forces
.Engine Braking.
3. Stability in Slopes and Uneven Terrain
Weight Distribution
.Center of Gravity.
4. Rolling Resistance
Tire design and pressure
Ground surface (e.g., wet grass vs. dry)
.Mower weight
18. differential steering
In an autonomous lawn mower, differential steering is used to control the
movement and turning of the mower by independently controlling the left and right
wheels (or tracks) of the vehicle. This system allows the mower to navigate, turn,
and follow a desired path without the need for a traditional steering mechanism.
How It Works in an Autonomous Lawn Mower:
Independent Wheel Control
1-Straight Line
2-Turning
3- Pivot Turns
Autonomous Navigation
Precision and Maneuverability
19. Control Algorithm
Process Description :
Initialize Sensors and Motors
System activation: Sensor calibration
Define Lawn Boundaries and Waypoints
Load predefined waypoints or use sensors to detect boundaries
Trajectory Generation
Select the suitable mowing pattern (Zig-Zag, Spiral, or GPS-Based
Path)
Move Forward
Operate motors using the differential steering system
Obstacle Avoidance
Stop Scan the environment for an alternative path
Recalculate the trajectory and resume movement
21. Trajectory Generation
Path Generation for the Autonomous Lawn Mower:
creating a path is important to make sure it mows the
entire lawn effectively. By generating waypoints, the
mower can move in a structured way, covering all areas
without missing any spots.
Different trajectory patterns:
22. Trajectory Generation
Types of Trajectories:
1. Linear Trajectory: The simplest form, where the system
moves in a straight line between two points.
2. Curved or Circular Trajectory: Used for motions
requiring turns or rotations, such as following a curved
road .
3. Zigzag Trajectory: Common in structured tasks like lawn
mowing or cleaning, ensuring full area coverage by
alternating back-and-forth paths
4. Dynamic Trajectories: ideal for Areas with unknown
obstacles.
Path Planning Implementation: using A*, Dijkstra, or Rapidly-
exploring Random Tree (RRT)*, the path can be optimized for
efficiency.
.
Spiral Coverage Pattern
(Back-and-Forth Coverage)
Random Walk Algorithm
23. Trajectory Generation
We will use Zigzag Trajectory (Back-and-Forth Coverage (
Due to Ease of use :
1. Reduced Turning Time:
The mower spends less time turning around
at the ends of rows compared to circular or
complex path patterns.
2. Simplicity of implementation: Ease of
Programming ,zigzag pattern makes it easier
to implement in the mower’s control system.
3. Efficiency and coverage:
maintain a consistent speed and movement,
allowing for quicker mowing.
Overall, it enhances efficiency, consistency,
and adaptability for various lawn shapes.
24. Trajectory Generation
Zig-zag Algorithm
This algorithm models a lawn mower
(zig-zag) coverage pattern .The goal is to
ensure full coverage of a defined area
using an efficient back-and-forth motion.