Tracking Control for Reliable Outdoor Navigation Using Curb Detection

Mobile robots are the focus of a great deal of current research in robotics. Mobile robotics is a young, multidisciplinary field involving knowledge from many areas, including electrical, electronic and mechanical engineering, computer, cognitive and social sciences. Being engaged in the design of automated systems, it lies at the intersection of artificial intelligence, computational vision


Introduction
In the past several years there has been increasing interest in applications of a mobile robot.Personal service robots perform the missions of guiding tourists in museum, cleaning room and nursing the elderly [1].Mobile robots have been used for the purpose of patrol, reconnaissance, surveillance and exploring planets, etc [2].The indoor environment has a variety of features such as walls, doors and furniture that can be used for mapping and navigation of a mobile robot.In contrast to the indoor cases, it is hard to find any specific features in outdoor environment without some artificial landmarks [3].Fortunately, the existence of curbs on roadways is very useful to build a map and localization in outdoor environment.The detected curb information could be used for not only map building and localization but also navigating safely [4].And also the mobile robot decides to go or stop using the width of the road calculated from the detected curb.The present paper deals with the development of a robot which can patrol areas such as industrial complexes and research centers.We have already reported about outdoor navigation of a mobile robot [5].The extended Kalman filter is applied for the fusion between odometry and Differential Global Positioning System(DGPS) measurement data.It is insufficient for reliable navigation since the error of DGPS measurement data increased near high buildings and trees [6].Hence, it is necessary to correct the pose of a mobile robot when the position data from the odometry and DGPS are inaccurate.This chapter proposes the curb detection algorithm and calculate the pose error from the curb edge data and then use it to correct the pose of the mobile robot.

Outdoor mobile robot system
The outdoor mobile robot system on an ATRV-mini from RWI Inc. is constructed as shown in Fig. 1.It is a four-wheeled robot designed for outdoor use and equipped with odometry.This robot is chosen because it can climb up and down over speed bumps and slopes.It is added a laser range finder to detect obstacles and build a map of the environment.For global localization, a DGPS receiver is added.A camera that can zoom-in and zoom-out, was installed to send the image data to the control station.Fig. 2 shows the software architecture of the mobile robot system.The system consists of three parts which are the mobile server, the navigation server and the remote server.The mobile sever controls the motor in the ATRV according to the velocity and angular velocity

Curb detection
The outdoor mobile robot requires ability to navigate in a dynamic and potentially dangerous environment due to curbs and obstacles.Using the laser range finder, it can measure the distance from the obstacles and calculate the distance between obstacles.These data obtained from the laser range finder can be used in environment mapping and obstacle avoidance.An important feature of road environment is the existence of curbs as shown in Fig. 3.The curbs could be used in mobile robot navigation.The proposed algorithm is to detect curbs through the laser range finder, which was positioned on the mobile robot and looking down the road with a small tilt angle as shown in Fig. 4. The tilted laser range finder projects three-dimensional shape of curbs on twodimension space.And then it extracts curb edge points.x y are the distance data in the laser range finder's coordinate as shown in Fig. 5.The curb edges on the both sides of the mobile robot is used for mapping and tracking.Even though the angle between the robot and the curb changes, the feature points of the curb do not change as shown in Fig. 6.The points around 1600mm of the axis Y represent the road surface and the curved points between 0mm and 2000mm of the axis X are the curb of the road.

Extracting the longest straight line
The laser range finder senses the surface of roads due to the small angle between the laser range finder and the mobile robot.Therefore, the longest straight line of the raw data from laser range finder is the surface of roads and the curbs locates the edges of the road.The longest straight line is extracted using Hough Transform [7], [8], [9].In Hough transform, each line is represented by two parameters, commonly called ρ and θ , which represent the length and angle from the origin of a normal to the line.Using this parameterization, an equation of the line can be written as:  Fig. 9. Raw data and the longest straight line.

Fitting the points around the longest straight line
It is needed to fit the raw data points corresponding to the straight line for identifying the road surface and the curbs.The road surface and curbs exist on the boundary of the straight line from Fig. 10.To obtain the boundary points of the line, ρ is first calculated by Eq. ( 1) for each raw scan data with d θ .And then, choose the points satisfying the following Eq.( 2).
The points of Fig. 6 show the fitting points with ρ Δ of 100mm.
Fig. 10.Points around the longest straight line.

Grouping the points and finding the road surface
The points around the longest straight line include the road surface and obstacles.To extract the road surface, we classify into six groups (ellipses in Fig. 11).Points of each group are continuous.The biggest group among the six groups indicates the sensed road surface.

Extracting the curb edge points
The scanned data of a flat road surface has two specific characteristics.One is that the scanned data of road surface is on the straight line and the interval between adjacent two points is small.The other is that the slope of the straight line is parallel to the direction L X of a laser range finder.When the distance between adjacent two points is continuously within d and the slope between them is less than σ , the two points are considered as being on the straight line (Eq. (3)).The end points (stars in Fig. 12) of the straight line are the road edges and also the start points of the curbs.Therefore the curb edge points could be obtained by finding the end points of the straight line.www.intechopen.com

Parameter estimation of curb
The position of the mobile robot and the extracted curb point can be simultaneously represented in global coordinates.If we can calculate the relative pose of the mobile robot to the curb position, we can correct the mobile robot's pose against its colliding with the curb.Fig. 13 represents the both position in global coordinates.
) We have obtained From the subsequent two curb points () , () () Ck Ck xy and (1 ) , () Ck Ck xy −− , we can find the line equation parameters (,,) abc as shown in Eq. ( 6). () (1 ) ( ) The angle k φ can be obtained such as Eq. ( 8). ( The proposed curb detection algorithm is experimented to identify the performance of it.The mobile robot was driven along a road with the distance (1m) between the mobile robot and curbs.The tilted angle ( L φ in Fig. 4) between the mobile robot and the laser range finder is 25°.The values d and σ as 50mm and /4 π are selected in Eq. (4.3).The navigation server sends the data of curb edge points (position data of stars in Fig. 14) to the remote server.The remote server receives the image and curbs edges data from the navigation server and displays the map of curbs and navigation information as shown in Fig. 16.The rectangular and the dots in the map represent the mobile robot and curb edge points, respectively.www.intechopen.comFig. 18 shows the distance between robot and curb, the curb edge angle α and angle φ between robot and curb, respectively.We can know that the proposed curb detection algorithm produces proper results and the distance and angle information calculated from the curb position could be used for reliable and safe navigation.

Tracking control using curb position
An ATRV-mini is a nonholonomic mobile robot, equivalent to a four-wheeled differential drive.Kanayama proposed a kinematic control law in Cartesian coordinates for solving the trajectory tracking problems [10].We add a term related to the distance between the robot and the right-side curb of roads to Kanayama controller.
where () R θ is the rotation matrix.
Differentiating the Eq. ( where , x y kk and k θ are positive constants, defined as controller gains.
For reliable and safe navigation, we design a new controller d V by adding the extracted curb distance and angle information to the above Kanayama controller.
where ref d is the reference distance from the curb for safety and , d kk φ are positive constants as controller gains.If the robot is too close to the curb, the added terms of the proposed controller try to prohibit the robot colliding with curbs, and vice versa.We have performed two kinds of experiments to evaluate the performance of the proposed path tracking controller in outdoor environment.One is that the mobile robot has to follow a straight path.The other is that the mobile robot has to follow a curved path.

Straight path tracking
We have performed a straight path tracking experiment, which target point is (78m, -22m) and linear velocity is 0.5m/sec.The gains of controller were determined by some simulations and experiments.Fig. 20 shows the reference path and the error of path, position and angle of the robot.Fig. 20(a) shows the reference path and tracking path and the position error of 20cm at the final point, respectively.Even though DGPS position error of 1m has occurred at the point of 12m from X-axis, the mobile robot returned to its reference path by the stable tracking controller.

Curved path tracking
We have performed a curved path tracking experiment, which linear velocity is 0.3m/sec and angular velocity is 0.06rad/s.Fig. 21 shows the reference path and the error of path, position and angle of the robot.Fig. 21(a) shows the reference path and tracking path.The X-axis position error and the angular error are 40cm and 7° at the final point, respectively.The reason that the errors are bigger than the straight path tracking experiment is related to the characteristic of skid steering system of our mobile robot platform.It is necessary to optimize the gains of controller to reduce the errors.

Conclusion
In this chapter, an algorithm is described to detect road curb position through a laser range finder.The curbs map was built and the width of the road was calculated by the detected curbs.The proposed algorithm is to calculate the distance and the angle between the mobile robot and the curb.A new controller is designed by adding the extracted curb distance and angle information to the tracking controller.It helps the mobile robot to navigate safely and reliably.To identify the availability of the proposed algorithm, navigation experiments was performed in outdoor environment and proper results was obtained.

Fig. 1 .Fig. 2 .
Fig. 1.Mobile robot system configuration.(a) DGPS antenna (b) PC (c) Image camera (d) LMS200 laser range finder (e) Attitude/heading sensor (f) Wireless LAN bridges (g) Joypad (h) Control stationfrom the navigation server and transfers the odometry to the navigation server.The navigation server makes the mobile robot localize using latitude and longitude data from the DGPS and attitude from 3-axis angle sensor.It detects curbs using distance from the tilted laser range finder and sends the distance, image and navigation data to the remote server through the wireless LAN.The remote server operates in two modes, autonomous mode or teleoperated mode, display the image and the navigation information.

Fig. 3 .
Fig. 3. Road and curb on the road.

Fig. 4 .
Fig. 4. Tilted laser range finder on the mobile robot.The mobile robot builds the map of the curbs of roads and the map is used for tracking and localization.(, , ) LL nx y is obtained by the laser range finder, where n represents n-th data and , L L

ρ
and θ are obtained by Hough Transform, called d ρ and d θ as shown in Fig. 8.

Fig. 8 .
Fig. 8. Dominant d ρ and d θ found by Hough Transform.The straight line in Fig. 9. shows the longest straight line represented by d ρ and d θ .

Fig. 13 .
Fig. 13.Positions of the mobile robot and curbs in global coordinate.

3 . 7
Distance and angle between robot and curbWe can also obtain the distance k d between the robot and the curb from the line equation and angle k φ between robot and curb by geometric relation as shown in Fig.11.Eq.(7) shows the distance k d .

Fig. 16 .
Fig. 16.Screen of the remote server.The left and right-side stars and the black triangles in Fig. 15(b), 17 show the detected curbs and the robot path, respectively.The left-side stars in Figures are irregular because the rightside curb has regular shape (height: 13cm), but the left-side of the road is not the curb.It is just the structure with low height (2cm).Even though the mobile robot moves zigzag, the detected right-side curb path is smooth.The average error of the curb points is 2cm.

Fig 18 .
Fig 18. Results for curb detection.(a) Distance d between robot and curb (b) Curb edge angle α

Fig. 21 .
Fig. 21.(Continued) If we assume that the curb is straight, we can express the curb edges to a line equation such as Eq.(5). www.intechopen.com