software architecture of wheeled mobile robots
TRANSCRIPT
Index
1. Introduction
2. General software architecture
3. Motion control
4. Localization and mapping
5. Motion planning
Advantages of differential drive
• Simple controlling algorithms;
• Good mathematical models of the drive;
• Low cost;
• Easy prototyping;
• No slippage.
Types of software architectures
• Simple embedded architectures without OS
• Architecture based on real-time OS (RTOS)
• Architecture based on embedded OS
Simple embedded architectures without OS
Advantages:
• Low cost hardware is required
• Easy development
Disadvantages:
• There is no abstraction from hardware.
• It is impossible to create to create advanced systems for performing difficult tasks.
• Problems with debugging and writing unit tests.
Applications:
• Toys, research projects.
Architecture based on real-time OS (RTOS)
Advantages:
• One processor for high level tasks and hardware control.
• Abstraction from hardware level.
Disadvantages:
• Difficult tasks scheduling.
• Difficult logic (high and low tasks are mixed)
Applications:
• Service robots, military projects and research.
Architecture based on embedded OSAdvantages:
• Abstraction from hardware level.
• Strong decomposition of tasks on hardware level.
• No scheduling problems.
• Easy decomposition of tasks between software and hardware developers.
Disadvantages:
• Higher cost.
Applications:
• Service robots, toys, military projects
and research.
Typical architecture of the controlling system
Decision making
Motion planning Motion control LocalizationSLAM
(optionally)
Automatic control theory
Advantages:
• Simple well-known theory.
• Easy to implement on hardware and software levels.
• Can work on slow processors.
• There are heuristic methods for tuning parameters.
Disadvantages:
• It is practically impossible to archive high precision of motion.
• It is difficult to calculate parameters of controlling algorithms.
PID regulator
Discrete form:
u(t) = P(t) + I(t) + D(t)P(t) = Cp * e(t)I(t) = I(t – T) + Ci * e(t)D(t) = Cd * ( e(t) – e(t-T) )
Cp, Ci, Cd – coefficients of PID regulator;T – period (time between calls of regulator).
Tuning parameters of PID regulator
• P – current error compensation• I – statical error compensation• D - oscillations damping
Ziegler–Nichols method:K – coefficient of P-regulator when system become unstable.T – period of oscillationsP = 0.6 * KI = 2 * P / TD = P * T / 8
Task
To control the robot we need to know its real position.
Problems:
• There is no universal sensor for getting accurate absolute robot position.
Odometry
Advantages:
• No need in additional sensors.
Disadvantages:
• Low accuracy.
• Error increases with time.
• High sensitivity to slippage.
Lidar based localization
Advantages:
• High accuracy.
• Error does not increase with time.
• Can be implemented on slow processors.
Disadvantages:
• Map of the environment is required.
Open source implementations
www.ros.org
www.mrpt.org
openslam.org
Task
• We need to find path to destination on the map before start of movement.
Methods:
• Optimal (A*, Dijkstra search …)
• Suboptimal (RRT Connect…)
A*
Advantages:
• It always finds the shortest way.
Disadvantages:
• High performance processor is required.
RRT Connect
Advantages:
• Very fast.
• Can search trajectories in high dimension spaces.
Disadvantages:
• The found path is not optimal.
Contacts
Dmitry Suvorov
Skoltech Space Robotics Laboratory
wicron.com lexybot.com