Implementation of an Autonomous Driving System …...assist driver for parking. To improve PAS, the...

6
Abstract —This paper proposes an autonomous self-parking system in specific parking area. In this system, the vehicle can drive itself and find the parking spaces to park automatically using a smartphone. The system consists of parking place searching, steering control, path tracking and wireless communication. According to the type of the parking space which has recognized by ultrasonic scanning, the system will record the suitable parking space, and send the information to the driver’s smartphone via wireless network. The developed system sees a limit at vehicular length of +0.8 m and vehicular width of +1m in parallel and perpendicular lot respectively by using Fuzzy-PID steering tracking control and self-positioning via odometry. After the parking is finished, our system will send a success message to inform the driver. The maximum angle between demonstrated vehicle and connecting line of bordering vehicles is smaller than 5. Our proposed system is carried out with theoretical algorithm, and hardware integration, and furthermore the result shows the ability of vehicle parking. I. INTRODUCTION Many active safety systems have been applied in recent advances of intelligent driver assistance systems. In order to reduce the collision accidents, many car manufactures aim at promoting the safety and convenience by using various sensors or actuators embedded in vehicles, as known as lane keeping system (LKS), blind detection system (BDS) and so on [1-2]. Since the Toyota motor has devoted parking system into commercial product on Prius/Lexus models, it has already become one of the popular assistant driving devices. It is always a problem to parking a vehicle for beginners, because the turning point of parking is hard to know. Many research institutes or manufacturers also have been developing the parking guidance system because the advanced parking guidance system is one of the growing topics that aim to enhance the comfort and safety of driving. With vehicles increasing rapidly, available parking spaces have become more and more scarce. Due to the reduction of the parking space, potential accidents are increased in the duration of parking. To reduce the accidents, a parking assistant system (PAS) is presented in [3]. The PAS uses the rear camera and ultrasonic sensor to detect rear obstacle to assist driver for parking. To improve PAS, the advanced parking guidance system (APGS) [4-5] has presented. In *Resrach supported by Department of Industrial Technology, Ministry of Economic Affairs, Taiwan, R.O.C.. Ming-Hung Li is with Automotive Research and Testing Center, Changhua County 50544, Taiwan (phone: +886-4-781-1222;fax: +886-4-781-1333;e-mail: [email protected]). Po-Kai Tseng is with Automotive Research and Testing Center, Changhua County 50544, Taiwan (e-mail: [email protected]). APGS, the surrounding environment can be sensed through camera and ultrasonic sensors to find suitable parking space. When the parking space is found, the system will start to control steer and remind driver to forward and reverse until parking finished. Instead of semi-automatic parking function, we proposed an autonomous driving system to complete parallel and reverse parking without any human interaction. In this paper, the demonstrated vehicle which is equipped with proposed system enters the parking area, and driver only needs to stop it at the entrance. Next, driver gets out of the vehicle and uses a smart phone to perform the parking. The parking command requests server through smart phone to obtain the parking area map and driving path which has stored in the server. After proposed system gets the map of parking area and driving path, the demonstrated vehicle will drive itself and search the suitable parking place by tracking the built-in driving path. Once a parallel or perpendicular parking space is detected from ultrasonic, parking trajectory will be generated, and reverse the demonstrated vehicle into the parking space automatically by steering tracking control. Figure 1. The architecture of our research II. SYSTEM SCHEME The main of proposed system is comprised of parking space scanning, steering control, path tracking, and wireless communication. The driving path and the environment of parking area have built up as a map in a server in advance. One real time kinematic GPS (RTK-GPS) is used to enhance the precision of the demonstrated vehicle position and help it to track the driving path. Twelve ultrasonic sensors are being installed on the demonstrated vehicle to detect available parking spaces. The architecture of proposed system is shown in Fig. 1. Implementation of an Autonomous Driving System for Parallel and Perpendicular Parking Ming-Hung Li, Po-Kai Tseng

Transcript of Implementation of an Autonomous Driving System …...assist driver for parking. To improve PAS, the...

Page 1: Implementation of an Autonomous Driving System …...assist driver for parking. To improve PAS, the advanced parking guidance system (APGS) [4-5] has presented. In *Resrach supported

Abstract—This paper proposes an autonomous self-parking system in specific parking area. In this system, the vehicle can drive itself and find the parking spaces to park automatically using a smartphone. The system consists of parking place searching, steering control, path tracking and wireless communication. According to the type of the parking space which has recognized by ultrasonic scanning, the system will record the suitable parking space, and send the information to the driver’s smartphone via wireless network. The developed system sees a limit at vehicular length of +0.8 m and vehicular width of +1m in parallel and perpendicular lot respectively by using Fuzzy-PID steering tracking control and self-positioning via odometry. After the parking is finished, our system will send a success message to inform the driver. The maximum angle between demonstrated vehicle and connecting line of bordering vehicles is smaller than 5⁰. Our proposed system is carried out with theoretical algorithm, and hardware integration, and furthermore the result shows the ability of vehicle parking.

I. INTRODUCTION

Many active safety systems have been applied in recent advances of intelligent driver assistance systems. In order to reduce the collision accidents, many car manufactures aim at promoting the safety and convenience by using various sensors or actuators embedded in vehicles, as known as lane keeping system (LKS), blind detection system (BDS) and so on [1-2]. Since the Toyota motor has devoted parking system into commercial product on Prius/Lexus models, it has already become one of the popular assistant driving devices. It is always a problem to parking a vehicle for beginners, because the turning point of parking is hard to know. Many research institutes or manufacturers also have been developing the parking guidance system because the advanced parking guidance system is one of the growing topics that aim to enhance the comfort and safety of driving.

With vehicles increasing rapidly, available parking spaces have become more and more scarce. Due to the reduction of the parking space, potential accidents are increased in the duration of parking. To reduce the accidents, a parking assistant system (PAS) is presented in [3]. The PAS uses the rear camera and ultrasonic sensor to detect rear obstacle to assist driver for parking. To improve PAS, the advanced parking guidance system (APGS) [4-5] has presented. In

*Resrach supported by Department of Industrial Technology, Ministry of

Economic Affairs, Taiwan, R.O.C.. Ming-Hung Li is with Automotive Research and Testing Center,

Changhua County 50544, Taiwan (phone: +886-4-781-1222;fax: +886-4-781-1333;e-mail: [email protected]).

Po-Kai Tseng is with Automotive Research and Testing Center, Changhua County 50544, Taiwan (e-mail: [email protected]).

APGS, the surrounding environment can be sensed through camera and ultrasonic sensors to find suitable parking space. When the parking space is found, the system will start to control steer and remind driver to forward and reverse until parking finished.

Instead of semi-automatic parking function, we proposed an autonomous driving system to complete parallel and reverse parking without any human interaction. In this paper, the demonstrated vehicle which is equipped with proposed system enters the parking area, and driver only needs to stop it at the entrance. Next, driver gets out of the vehicle and uses a smart phone to perform the parking. The parking command requests server through smart phone to obtain the parking area map and driving path which has stored in the server. After proposed system gets the map of parking area and driving path, the demonstrated vehicle will drive itself and search the suitable parking place by tracking the built-in driving path. Once a parallel or perpendicular parking space is detected from ultrasonic, parking trajectory will be generated, and reverse the demonstrated vehicle into the parking space automatically by steering tracking control.

Figure 1. The architecture of our research

II. SYSTEM SCHEME

The main of proposed system is comprised of parking space scanning, steering control, path tracking, and wireless communication. The driving path and the environment of parking area have built up as a map in a server in advance. One real time kinematic GPS (RTK-GPS) is used to enhance the precision of the demonstrated vehicle position and help it to track the driving path. Twelve ultrasonic sensors are being installed on the demonstrated vehicle to detect available parking spaces. The architecture of proposed system is shown in Fig. 1.

Implementation of an Autonomous Driving System for Parallel and Perpendicular Parking

Ming-Hung Li, Po-Kai Tseng

Page 2: Implementation of an Autonomous Driving System …...assist driver for parking. To improve PAS, the advanced parking guidance system (APGS) [4-5] has presented. In *Resrach supported

A. The Architecture of Proposed System The proposed system uses a server to update the map of

parking and store the driving path, which used RTK to build in advance. Once a parking space is unoccupied, this information is sent to server to update parking lot map, and the driver can select the unoccupied parking place through the smart phone.

When the demonstrated vehicle enters this parking area, the driver gets out of the vehicle and uses the smart phone to request server to provide the map of parking area and driving path. Driver just needs to touch a start parking button on the smart phone, then it will send a parking command to vehicle and server. Suitable parking lots will be recognized with 2-D parking space map which is built by ultrasonic sensors scanning. After the driver picks the one of the available parking lots, the demonstrated vehicle will park into the space with steering control.

A RTK-GPS is roof-mounted on the center of rear axle to provide the real-time GPS position and the heading of the vehicle for keeping the demonstrated vehicle on the driving path. The data rate of RTK-GPS is at 20Hz. The scanning technology of ultrasonic sensor is adopt as scanning unit for parking space scanning and availability of parking space validation. In addition, the proposed system uses the wheel speed sensor which is installed on the vehicle to count the traveling distance and build 2-D parking space with ultrasonic sensor scanning.

In control unit, an electric power steering (EPS) system is equipped into the steering wheel of the vehicle for implementation of automatic parking. The EPS includes, width modulation (PWM), steering angle sensor, and motor to control steering wheel and sense the steering angle. The steering angle is used to detect the on-line angle and feedback to IPS controller in order to do remote control. The interface of steering sensor communicates via controller area network (CAN) with unique ID which is defined by our self. The data length is 16 bits in Intel mode, and the resolution is 1 degree. The turning mechanism of demonstrated vehicle is column type and its power steering system is brush DC motor, hence the motor driver is composed of eight transistors, named as dual H-bridge circuit. The driving ability of dual H-bridge is about 70A and the pulse width modulation (PWM) frequency is 40 kHz. The steering control with a developed Fuzzy-PID can be utilized to automatically control the vehicle longitudinal and lateral motion. Besides, there is a brake module in the demonstrated vehicle, which to control the reverse speed during path tracking.

A microcontroller unit (MCU) is the mainly adopted IPS and decision maker, where signals of steering wheel, gear, ultrasonic sensors, PC1, and PC2 are delivered on the CAN bus via the message oriented transmission protocol [6-7]. Each signal is 8 bytes data with using 11-bit identifier . Since the speed of the vehicle is set as idle speed, we do not control the throttle. The PC1 is to process the information from RTK-GPS. The RTK-GPS data follows the NMEA [8] form. A C# program is used to get the latitude, longitude, and heading from $GPRMC. The PC2 is a listening client to wait a message from smart phone and then command to MCU. All

the mainly equipment of the demonstrated vehicle are shown in Fig. 2.

All the wireless communications between camera, server, smart phone, and vehicle follows the IEEE 802.11b standard. The database of server is built by Microsoft SQL Server.

Figure 2. The mainly equipment of the proposed system

III. PLOT OF THE PROPOSED AUTONOMOUS DRIVING SYSTEM

An experimental parking area is selected in Automotive Research & Testing Center (ARTC). The experimental parking area is composed of 8 parking lots, including parallel and perpendicular space. Four vehicles have arranged to create parking lot. Server is set up in a room where is located in the parking area to monitor parking lots and updated information.

Fig. 3 shows the plot of this paper, there are few steps as following statements:

System Start

Driver uses the smart phone to start proposed system. We generate the driving path for the parking vehicle in advance so that the demonstrated vehicle can track the built-in driving path.

Automatic Driving

The driving path is measured manually by RTK-GPS. Based on the reference points, the entrance point, exit point, and corners, are calculated via interpolation method. The driving path then can be derived via interpolation method, and we use pure pursuit [9] which is known for autonomous driving to keep the demonstrate vehicle on our planning path.

Parallel and Perpendicular Spaces Detection and Parking

The 2-D parking space map is built via fusion of ultrasonic sensors and wheel speed sensor, and the suitable and type of parking space is identified by the pattern which stored in database. Proposed system will plan the parking path, according to the size of parking lot, type of parking lot, lateral distance of between the bordering vehicle and the demonstrated vehicle. Furthermore, intelligent parking system will help it automatic reverse into the parking lot with steering control.

Page 3: Implementation of an Autonomous Driving System …...assist driver for parking. To improve PAS, the advanced parking guidance system (APGS) [4-5] has presented. In *Resrach supported

Figure 3. The driving path for experimental parking area

A. Path Tracking The goal of the proposed path tracking (PT) scheme is to

navigate the vehicle to track the driving path. The proposed PT scheme includes two phases, first phase is to determine goal point, second is to determine the steering angle, shown in Fig. 4, where the yellow part represents the phase 1 and the orange part represents the phase 2.

Initially, the RTK-GPS of vehicle is inputted to the PT scheme. Then, the phase is triggered to determine goal point. In the phase 1, all the RTK-GPS coordinates which are within the circle of radius (i.e., Dis ) and located at the front of vehicle (i.e., y > 0) on the driving path are picked and stored to find the goal point. Once the goal point is determined, the phase 2 is triggered. In the phase 2, the goal point is inputted to pure pursuit algorithm to calculate the curvature for the tracking from the current RTK-GPS position to the goal point. After the curvature is computed, curvature is substituted into the kinematic steering condition [10] to obtain the steering angle. The steering angle then is set as the input of Fuzzy-PID to control steering wheel.

The RTK-GPS position is composed of (x, y, h), where x means the latitude, y is the longitude, and h is the heading of the vehicle. The pure pursuit algorithm uses the relations of the relative horizontal distance (H) and the distance (D) between current RTK-GPS position and goal point to compute the curvature ( ).

22DH

(1)

Since the experimental vehicle uses idle speed to park, i.e., the slip angles are zero, the steering angle can be determined by the kinematic steering condition. If we assume that a front-wheel-steering 4WS vehicle is turning to left on a circle of radius R, the kinematic steering condition is expressed as (2).

222 cotlaR

where

2cotcotcot 21

Figure 4. The Proposed PT scheme

1 and 2 represent the steer angle of the inner and outer wheels, respectively. l is the distance between the front and rear axles is the distance between the mass center of vehicle and rear axle is the steering angle.

Then, the steering angle can be obtained by rewriting (2).

))((cot2/122

1

laR

where

1

R

Therefore, in the PT scheme, when the curvature is calculated by pure pursuit algorithm, the curvature is substituted into (5) to obtain the steering angle.

B. Parking Path Planning The parking path is generated by the previous proposed

work, automatic parking system [3-4]. The automatic parking system includes a gyro, an incremental wheel pulse transducer (WPT), and ultrasonic sensors to measure the heading angle of the vehicle, traveling distance, and rear obstacle, respectively. There are two parts in path planning. One is parallel mode, the other is perpendicular mode. In parallel mode, a geometry relation in Fig. 5 has been considered to build the mathematical model of parking space. The car detail specification can be found from manufacture, including vehicular length (L), width (W) and distance from rear-wheel axis to bumper (c). The width of parking space usually fixed between 1.5 m and 2.5 m. The “m” and “n” are the key parameters, and it can be measured by ultrasonic sensors. The system operation hypothesizes the second radius as minimum one in (6). Besides, the parking action aslo has constrained and considered the first radius in Fig. 5, N is the gear ratio and s is steering angle. Accordingly, the constrained relations of longitudinal and lateral are concluded into (7)-(8)

min_ cot

2s

outWR l

N

(6)

min_out min_out 1(R R cos ) ( )sin ( )L c D b (7)

Page 4: Implementation of an Autonomous Driving System …...assist driver for parking. To improve PAS, the advanced parking guidance system (APGS) [4-5] has presented. In *Resrach supported

min_outR sin ( )cosL c H c (8)

Figure 5. Parallel Geometry Model

The geometry can give two relations in (9) and (10) from the original position and first turn relation. According to (11) expression, the first radius can be calculated. The steering of the vehicle can be controlled automatically, which based on sensing relative lateral distance (m) and reference point to bumper distance (c).

1( ) sm D U b R (9) 2 2 2

min_ 0 min_( ) ( ) ( )out s outR R H n b R U (10)2 2

0 min_ 1 1

1

( ) 2 ( ) ( )2( )

outs

H n b R m D b m D bR

m D b

(11)

The angle variation αof first turn is shown in (12) by lateral relation.

1 0

min_

sinout s

H n bR R

(12)

In addition, a relative lateral distance (m) has considered that parking path should be the same with relative lateral distance changing. Therefore, the length of the line 퐿 which is following the first turn can be expressed as (13).

퐿 = 푞 + 표푓푓푠푒푡 + (푚 −푚푖푛 ) (13)

푞 is a constant as minimum length in 퐿 , and 퐿 will be adjusted accordingly when relative lateral distance (m) and 표푓푓푠푒푡 are updated. The 표푓푓푠푒푡 is an offset from new trajectory to original, it is zero except the relative lateral distance (m) is not equal to minimum relative lateral distance (푚푖푛 ). Fig.6 shows the path planning with different relative lateral distance.

Figure 6. Path Planning Simulation

In perpendicular mode, the algorithm derivation has an assumption that initial position of demonstrated vehicle is perpendicular to parking space. The same as parallel, “m” and “n” still are the key parameters. The perpendicular mathematical model has simplified, which is shown in Fig. 7. The parameters of n and m are derived by (14) and (15), respectively.

Figure 7. Perpendicular Geometry Model

1min bcRn

02

1min2

minmin )( bbRRRm

where the Rmin, c, b1, and b0 are shown in Fig. 8.

IV. CONTROL TRACKING METHOD

In order to follow a certain path, the path tracking plays the important role of how to determine speed and steering settings at each instant of time. As mentioned previously, the optimal tracking position can be generated by measuring related parameters, meanwhile the tracking points are compared to current position, and furthermore got a smoothly control by Fuzzy-PID steering control method with built-in gain in Table 1 [11-13]. The precise steering control has experimented by means of collection the steering angle error and accumulated error, and then to form Fuzzy-PID table. Each membership function is composed of three triangular curves in central position, and both sides are trapezoid relations. Finally the control gains of the fuzzy table can be filled using center of

-400 -200 0 200 400 600 800 1000-100

-50

0

50

100

150

200

250

300

x(cm)

y(cm

)

Page 5: Implementation of an Autonomous Driving System …...assist driver for parking. To improve PAS, the advanced parking guidance system (APGS) [4-5] has presented. In *Resrach supported

gravity, and the defuzzification shows as KI = {0.3/NB,0.4/NS,0.5/ZR,0.8/PS,1.2/PB} and Kp = {6/NB,10/NS,15/ZR,20/PS,25/PB} and KD = {3/NB,3/NS,3/ZR,5/PS,5/PB }.

TABLE I. FUZZY-PID TABLE

KP/ KI /KD Steering angle error NB NS ZR PS PB

Error sum

NB NB NB NS NS PB NS NS ZR NS ZR PS ZR NS NS ZR PS PS PS NS ZR PS ZR PS PB NB PS PS PB PB

V. VERIFICATION TESTS In this paper, the experiment has been tested in ARTC

campus, and the demonstrated vehicle is a SUV. The scenario can refer to Fig. 1, which the demonstrated vehicle looks for available parking space without a person on board. There are parallel and perpendicular lots in the parking area and only right side parking considered in our plot. Our proposed system has the ability to identify the type of parking space. Fig. 8 and Fig. 9 show the scanning result of parallel space and perpendicular lot. When the demonstrated vehicle has found a suitable parking lot, it will track the trajectories which generated from proposed path planning until parking finish. In order to verify the performance of parking result, this paper has proposed a method to calculate the angle (θ) which is between demonstrated vehicle and connecting line of right bordering vehicle. The detail definition of parallelism is shown in Fig. 10.

The parallel and perpendicular parking have been tested fifteen times respectively. Fig. 11 and Fig. 12 show the test results of parallel and perpendicular. Both of them have good performance in tern of parallelism, all the test results of the angle (θ) are smaller than 5⁰. On top of that, the offsets of parallel mode are kept in the range of -10 cm to 15 cm, and the offsets of perpendicular mode have met our goal also, which are in the range 50cm to 80cm. It is comfortable to open the door.

Figure 8. Scan for Parallel Parking Space

Figure 9. Scan for Perpendicular Parking Space

Figure 10. Definition of Parking Performance

Figure 11. Performance of Parallel Parking

Figure 12. Perfermeace of Perpendicular Parking

df dr-10

-5

0

5

10

15Parallel to the front vehicle

number2 4 6 8 10 12 14

-10

-5

0

5

10

d f d r

30

40

50

60

70

80Parallel to the right vehicle

number2 4 6 8 10 12 14

-10

-5

0

5

10

Page 6: Implementation of an Autonomous Driving System …...assist driver for parking. To improve PAS, the advanced parking guidance system (APGS) [4-5] has presented. In *Resrach supported

VI. CONCLUSION In this work, an intelligent automatic parking system is

implemented in ARTC. The demonstrated vehicle have been self-driving on the specific path and parking into the parking space successfully. RTK provides high precise path coordinate as tracking reference. The verification tests have been experimented over 50 times, the results have been proven the feasibility of odometer, EPS driver and ultrasonic sensor integration. The proposed system has an ability of the parking space identification and high active-safety parking without a person on board. The tests show the results of the angle (θ) between demonstrated vehicle and connecting line of bordering vehicle are smaller than 5⁰. In the future, LIDAR and camera will be considered to solve more complicated environment and expect that proposed technology can carry out in real world.

ACKNOWLEDGMENT This work was supported by Department of Industrial

Technology, Ministry of Economic Affairs, Taiwan, R.O.C.

REFERENCES [1] SAE J2399: Adaptive Cruise Control (ACC) Operating

Characteristics and User Interface, Society of Automotive Engineer, Dec. 2003.

[2] Persson, M. et al., “Stop and Go Controller for Adaptive Cruise Control”, Proc. of the 1999 IEEE International Control Applications Conference, Vol. 2, Aug. 1999, pp. 1692-1697.

[3] C. Vestri, S. Bougnoux, R. Bendahan, K. Fintzel, S. Wybo, F. Abad and T. Kakinami, “Evaluation of a Vision-Based Parking Assistance System,”. IEEE Conf. Intelligent Transportation Systems, pp. 56–60, 2005.

[4] Tsung-hua Hsu, Jing-Fu Liu, Pen-Ning Yu, Wang-Shuan Lee and Jia-Sing Hsu, “Development of an Automatic Parking System for Vehicle,” IEEE Vehicle Power and Propulsion Conference (VPPC), Sept. 2008.

[5] Chun Hsiung Chen, Chan Wei Hsu and Chi Chun Yao, “A Novel Design for Full Automatic Parking System,” ITS Telecommunications (ITST), Nov. 2012.

[6] Robert Bosch GmbH, “CAN Specification Version 2.0”, September 1991.

[7] K. M. Zuberl, “Scheduling Messages on Controller Area Network for Real-Time CIM Applications”, IEEE Trans. on Robotics and Automation, vol. 13, no. 2, pp.310-314, April 1997.

[8] NMEA 0183 Standard for Interfacing Marine Electronics Devices, Revision 3.01, NMEA Standard 0183, 2000.

[9] R C. Coulter, “Implementation of the Pure Pursuit Path Tracking Algorithm,” Robotics Institute, Carnegie Mellon University, Jan. 1992.

[10] R. N. Jazar, Vehicle Dynamics: theory and application, Springer, 2008. [11] C. C. Lee, “Fuzzy Logic in Control System: Fuzzy Logic Controller,

Part I and Part II,” IEEE Trans. System, Man and Cyb., Vol. 20, No. 2, pp. 404-435, 1990.

[12] Coulter, R. C. “Implementation of the Pure Pursuit Path Tracking Algorithm”, Robotics Institute, Carnegie Mellon University, January, 1992.

[13] Herdia, G. et al., “Stability of Autonomous Vehicle Path Tracking with Pure Delays in the Control Loop”, Advanced Robotics, Vol. 21, No. 1–2, 2007, pp. 23-50.