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 Stanley Stanford Vehicle Mars rover Roomba vacuum cleaning robot 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 Mobile platform Driving wheels Steering (support) wheels F 1 D 1 D 2 F 2 The two driving wheels provide forces (torques) for moving (rotating) the robot
Dynamics equations Newton s equation FF = mmmm Euler s equation FF = FF 1 FF 2 m: mass of the robot I: moment of inertia NN = IIww +ww IIww ττ = FF 1 DD 1 + FF 2 DD 2 A common practice - Use PWM and PID controller to provide the force to the wheels
Recall the DC motor model R L θθ mm, θθ mm, θθ mm θθ, θθ, θθ + PWM supply - V b i + - τ m B m J m τ f τ Lm n τ L Wheel
Forces by and on the wheels Supporting (passive) wheel Driving wheel Shaft static and damping friction Torque τ L Driving force F Ground static and damping friction
Consider autonomous wheelchair as an example - SJTU Wheelchair Joystick IR Sensors Camera Sonic Sensors DC Motor Bumper
Wheelchair control block diagram Joystick IR Sensors Bumper Camera Sonic Sensors DSP TMS320LF2407A (TI) Wheel controller PWM amplifier - left PWM amplifier - right DC motor for the left wheel DC motor for the right wheel
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 teleoperation 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 B A
Path planning 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 Wheelchair Wheelchair
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 Potential 2. For avoiding collision with obstacles, establish a Repulsive Potential
1. The attractive potential: UU aaaaaa qq = 2. The repulsive potential: The mathematics dd = dd (qq, qq gggggggg ) 1 2 εεdd2, dd dd gggggggg εεdd ggggggggdd 1 2 (dd gggggggg) 2, dd > dd gggggggg qq = rrrrrrrrrr pppppppppppppppp, qq gggggggg = gggggggg pppppppppppppppp UU rrrrrr qq = εε( 1 DD qq 1 QQ )2, DD(qq) QQ 0, DD(qq) > QQ QQ = tttttttttttttttt 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: UU qq = UU aaaaaa qq + UU rrrrrr qq The gradient of the potential: UU qq = UU aaaaaa qq + UU rrrrrr qq Gradient is a derivative of a function in several dimensions. If f(q 1,..., q n ) is differentiable scalarvalued 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 UU qq = [ UU(qq) qq 1, (qq) qq 2, (qq) qq nn ] TT
We can use - UU qq (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 dddddddddddddddd = cc (tt rr tt ss ) c: speed of light; t r : time of received; t s : 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 ssssssee pppppppppppppppppp l h = ll pppppppppppppppppp h pppppppppppppppppp αααα lll = zz 2 where α and β are constant related to the focal length of the camera length 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 based on the constraint aaaaaa mmmmmm mm ii=1 rr (ii) vv(ii) 2 if rrrrrrrr oo ii < rrrrrrrr oo jj, then dddddddddddddddd(oo ii ) < dddddddddddddddd oo jj r(i) is the range data by radar; v(i) is the depth data by vision; m is the number of cars seen