Post on 24-Jun-2020
Mobile Robots (Wheeled)
(Take class notes)
Wheeled mobile robots
• Wheeled mobile platform controlled by a computer is called mobile robot in a broader sense
• Wheeled robots have a large scope of types and applications- Autonomous car- Autonomous wheelchair- Roomba vacuum cleaning robot- Mars rover- Unmanned aerial vehicle (UAV) - a special case- Automated helicopter (drone) – a special case
Wheeled mobile robots - examples
Roomba vacuum cleaning robot
Stanley – Stanford VehicleMars rover
UAV
Wheeled mobile robots technical issues• Mobile robot dynamics
- Much simpler than legged mobile robots
• Mobile robot kinematics- Focus on path planning – how to move from one point to another
efficiently, avoiding obstacles while moving- How to navigate a mobile robot such as an autonomous vehicle
on highways
• Sensing for understanding the environments – necessary for autonomous vehicles- Visual sensors- Radar sensors- Laser sensors- Ultrasonic sensors
Wheeled robot dynamics• Simple Newton-Euler equations are sufficient to describe
the dynamics of a mobile robot
Driving wheels
Steering (support) wheels
Mobile platform
F1
F2
• The two driving wheels provide forces (torques) for moving (rotating) the robot
D1
D2
Dynamics equations
𝐹𝐹 = 𝑚𝑚𝑚𝑚
𝑁𝑁 = 𝐼𝐼�̇�𝑤 +𝑤𝑤 × 𝐼𝐼𝑤𝑤
• Newton’s equation
• Euler’s equation m: mass of the robotI: moment of inertia
• A common practice - Use PWM and PID controller to provide the force to the wheels
𝝉𝝉 = 𝐹𝐹1 × 𝐷𝐷1 + 𝐹𝐹2 × 𝐷𝐷2
𝐹𝐹 = 𝐹𝐹1 − 𝐹𝐹2
Recall the DC motor model
R L
Vb
i
τm
Bm Jm
�̇�𝜃 ,�̈�𝜃𝑚𝑚𝜃𝜃𝑚𝑚, �̈�𝜃�̇�𝜃𝑚𝑚, 𝜃𝜃 ,
τLnτLmτf
PWM supply++
--
Wheel
Forces by and on the wheels
Driving wheel
Torque τL
Driving force F
Supporting (passive) wheel
Shaft static and damping friction
Ground static and damping friction
Consider autonomous wheelchair as an example- SJTU Wheelchair
Joystick
IR Sensors
DC Motor
Camera
Bumper
Sonic Sensors
Wheelchair control block diagram
Wheel controller
PWM amplifier - left PWM amplifier - right
DC motor for the left wheel DC motor for the right wheel
DSP – TMS320LF2407A (TI)
Joystick IR Sensors CameraBumper Sonic Sensors
Navigation
• A great deal of research is on the navigation of autonomous robots- Indoor- Outdoor
• Ground autonomous vehicles will have a great scope of applications
• Aerial vehicles could use tele-operation as well – “drone” A pilotless aircraft operated by
remote control
Indoor robot navigation• Planning a path according to the map of a space
• Obstacle avoidance is more a challenge since there are many stationary and moving objects (people) to avoid
• For stationary objects one approach is to enlarge the size of the object and then plan the path as if the robot is a point
• Consider the following:
• Move the autonomous wheelchair from point A to point B in the space as shown
A
B
Path planning
Wheelchair
Wheelchair
• Enlarge the size of obstacles by the dimension of wheelchair• Consider the wheelchair as a single point – dimensionless• Program the shortest distance from the origin to the destination
Navigation and collision avoidance in depth• The robot detects an object. How to avoid it?• Many approaches have been developed• A well cited paper is by Oussama Khatib (Stanford
University)- It is called “artificial potential field” method- “Real-Time Obstacle Avoidance for Manipulators and Mobile
Robots,” Khatib, O., 1985
• Basic principle:1. For reaching the designation point, establish an Attraction
Potential2. For avoiding collision with obstacles, establish a Repulsive
Potential
The mathematics
𝑈𝑈𝑎𝑎𝑎𝑎𝑎𝑎 𝑞𝑞 =
12𝜀𝜀𝑑𝑑2 , 𝑑𝑑 ≤ 𝑑𝑑∗𝑔𝑔𝑔𝑔𝑎𝑎𝑔𝑔
𝜀𝜀𝑑𝑑∗𝑔𝑔𝑔𝑔𝑎𝑎𝑔𝑔𝑑𝑑 −12
(𝑑𝑑∗𝑔𝑔𝑔𝑔𝑎𝑎𝑔𝑔)2,𝑑𝑑 > 𝑑𝑑∗𝑔𝑔𝑔𝑔𝑎𝑎𝑔𝑔
1. The attractive potential:
2. The repulsive potential:
𝑈𝑈𝑟𝑟𝑟𝑟𝑟𝑟 𝑞𝑞 = �𝜖𝜖(
1𝐷𝐷 𝑞𝑞 −
1𝑄𝑄∗)2, 𝐷𝐷(𝑞𝑞) ≤ 𝑄𝑄∗
0, 𝐷𝐷(𝑞𝑞) > 𝑄𝑄∗
𝑑𝑑 = 𝑑𝑑 (𝑞𝑞, 𝑞𝑞𝑔𝑔𝑔𝑔𝑎𝑎𝑔𝑔 )
𝑞𝑞 = 𝑟𝑟𝑟𝑟𝑟𝑟𝑟𝑟𝑟𝑟 𝑝𝑝𝑟𝑟𝑝𝑝𝑝𝑝𝑟𝑟𝑝𝑝𝑟𝑟𝑝𝑝, 𝑞𝑞𝑔𝑔𝑔𝑔𝑎𝑎𝑔𝑔= 𝑔𝑔𝑟𝑟𝑚𝑚𝑔𝑔 𝑝𝑝𝑟𝑟𝑝𝑝𝑝𝑝𝑟𝑟𝑝𝑝𝑟𝑟𝑝𝑝
𝑄𝑄∗ = 𝑟𝑟𝑡𝑟𝑟𝑡𝑡𝑝𝑝𝑡𝑟𝑟𝑔𝑔𝑑𝑑
3. The motion is realized by following the negative gradient of the sum of the attractive/repulsive potential (energy)
Total potential energy and its minimization
𝑈𝑈 𝑞𝑞 = 𝑈𝑈𝑎𝑎𝑎𝑎𝑎𝑎 𝑞𝑞 + 𝑈𝑈𝑟𝑟𝑟𝑟𝑟𝑟 𝑞𝑞
Total potential energy:
The gradient of the potential:
𝛻𝛻𝑈𝑈 𝑞𝑞 = 𝛻𝛻𝑈𝑈𝑎𝑎𝑎𝑎𝑎𝑎 𝑞𝑞 + 𝛻𝛻𝑈𝑈𝑟𝑟𝑟𝑟𝑟𝑟 𝑞𝑞
Gradient is a derivative of a function in several dimensions. If f(q1, ..., qn) is differentiable scalar-valued function in Cartesian coordinate, its gradient is the vector whose components are the n partial derivative of f, which is a vector.
Green represents U, and the arrows represent gradient
𝛻𝛻𝑈𝑈 𝑞𝑞 = [𝜕𝜕𝑈𝑈(𝑞𝑞)𝜕𝜕𝑞𝑞1
, 𝜕𝜕𝑈𝑈(𝑞𝑞)𝜕𝜕𝑞𝑞2
, … 𝜕𝜕𝑈𝑈(𝑞𝑞)𝜕𝜕𝑞𝑞𝑛𝑛
]𝑇𝑇
We can use - 𝛻𝛻𝑈𝑈 𝑞𝑞 (negative gradient) to assign a velocity to the mobile robot:
+
Starting point
Designation
Outdoor navigation
• Outdoor navigation- Need a map- Use GPS for global path planning on the map- Use visual, sonar, radar, etc. sensors for local
maneuver – avoid obstacles, and find a path- Time constant is an issue
- How fast sensor updates its reading- How accurate the sensor readings are- How fast robot should be moving
Global Positioning System (GPS)• GPS is a space-based satellite navigation system that provides
location and time information
• In all weather conditions, anywhere on or near the earth where there is an unobstructed line of sight to four or more GPS satellites
• GPS uses trilateration to calculate the position of the receiver
• Trilateration is a mathematical technique used to calculate the position of a point from three surrounding points by using the intersection of circles in 2D and spheres in 3D
• Three satellites are for the trilateration, while the fourth satellite is for calibrating the clock
• The distance from each satellite is calculated as
𝑑𝑑𝑝𝑝𝑝𝑝𝑟𝑟𝑚𝑚𝑝𝑝𝑑𝑑𝑡𝑡 = 𝑑𝑑 � (𝑟𝑟𝑟𝑟 − 𝑟𝑟𝑠𝑠)
c: speed of light; tr: time of received; ts: time message sent
Trilateration uses four satellite
• If only three satellites are visible, one can use a so-called the Pseudo-Satellite – setup on the ground
Local maneuver needs multiple sensors • Computer vision is a good approach to assess the environments
• Computer vision is difficult to obtain accurate 3D information of the surrounding environment
• Use radar to obtain the range information of individual objects
- Automobile radar is a hot topic in recent years (at 76 GHz)
- Radar vision integration (sensor fusion) is a topic of study
Vision detection of vehicles Radar detection of vehicles in the image
Radar depth association with vision detected vehicle
• Use the pinhole model to establish the relationship between the size and depth using computer vision
𝑝𝑝𝑝𝑝𝑠𝑠𝑡𝑡𝑟𝑟𝑟𝑟𝑔𝑔𝑝𝑝𝑟𝑟𝑝𝑝𝑎𝑎𝑟𝑟𝑝𝑝= 𝑔𝑔𝑟𝑟𝑟𝑟𝑔𝑔𝑝𝑝𝑟𝑟𝑝𝑝𝑎𝑎𝑟𝑟𝑝𝑝 × 𝑡𝑟𝑟𝑟𝑟𝑔𝑔𝑝𝑝𝑟𝑟𝑝𝑝𝑎𝑎𝑟𝑟𝑝𝑝
=𝛼𝛼𝛼𝛼 × 𝑔𝑔𝑡
𝑠𝑠2
where α and β are constant related to the focal length of the camera length
l h
• Size of the object in the camera can reveal the depth information if we know the size of the real objects exactly
Approach
• Use camera to obtain rough depth for every vehicle in the image – assuming vehicles to have the same average size
• Use radar to obtain exact depth of every vehicle
• Use a so-called Hungarian algorithm to perform association
r(i) is the range data by radar; v(i) is the depth data by vision; m is the number of cars seen
𝑚𝑚𝑟𝑟𝑔𝑔 𝑚𝑚𝑝𝑝𝑝𝑝∑𝑖𝑖=1𝑚𝑚 ||𝑟𝑟 (𝑝𝑝) − 𝑣𝑣(𝑝𝑝)||2
based on the constraint
if 𝑟𝑟𝑚𝑚𝑝𝑝𝑟𝑟 𝑟𝑟 𝑝𝑝 < 𝑟𝑟𝑚𝑚𝑝𝑝𝑟𝑟 𝑟𝑟 𝑗𝑗 ,then 𝑑𝑑𝑝𝑝𝑝𝑝𝑟𝑟𝑚𝑚𝑝𝑝𝑑𝑑𝑡𝑡(𝑟𝑟 𝑝𝑝 ) < 𝑑𝑑𝑝𝑝𝑝𝑝𝑟𝑟𝑚𝑚𝑝𝑝𝑑𝑑𝑡𝑡 𝑟𝑟 𝑗𝑗