Development of a 2D Laser Rangefinder Based 3D Scanning System for Wheeled Mobile Robot Applications

In this paper, a 2D laser rangefinder based 3D scanning system is proposed. The system developed is constructed using a laser scanner which has capability to scan its 240 surrounding in 0.35 resolution. The third dimension is built by designing a rotating head on which a 2D laser scanner is mounted. A DC actuator is used to rotate the rotating head. It is equipped with a high resolution quadrature encoder and a gearhead. The rotational velocity of the rotating system is determined according to the working frequency of the laser scanner. A mathematical model is developed to be able to deal with the point cloud composed of the data coming from laser scanner and encoder. The whole system is implemented in Matlab Simulink environment. The algorithm developed to create 3D shape of the objects and working environment is created to be used in real-time operations. The system proposed, experimental setup developed and the experimental results are presented in this paper in details.


Introduction
Recognition of the working environment for mobile robotic and autonomous vehicle applications is the key factor in order to perform accurate and safe autonomous drives.The detection of the surrounding can be done by the use of cameras, infrared, ultrasonic and laser scanner sensors.Laser scanning rangefinder sensors are the ones which are commonly used by the researchers to develop recognition and mapping tools for the working environment.They are ranging from sub-cm to some-km detection distances in different angular resolutions.The laser scanning rangefinder sensors scan their surroundings in 2D plane.2D scanning can give information about how far the objects and obstacles are close to the point where the scanning system is mounted.The negative side of using a 2D laser sensor is that the height information (third dimension) of the scanned objects cannot be obtained.In this study, a 3D scanning system designed to be used in mobile robotic applications is proposed.It is constructed based on a 2D laser scanning rangefinder.The scanning system has a rotating head on which a 2D laser scanner is placed.The rotating head is rotated using a DC actuator equipped with a gearhead.A high resolution quadrature encoder is also installed to the DC actuator to get rotational angle information in high precision.To avoid the vibrations and instability of the mechanical system developed, the design stages are carefully performed by the use of a computer aided engineering tool.DC actuator is controlled via a motion control unit.The quadrature encoder mounted to the DC motor is decoded using a data acquisition (DAQ) card.The DAQ card is also responsible for digital to analog conversion tasks.The algorithms created to control the scanning system are developed in Matlab Simulink.Real-time workshop toolbox of Simulink is used and gives opportunity for running the system in real-time.The data decoding process of the laser scanning rangefinder is accomplished by the algorithm created in C++ and implemented into the Simulink environment.The outline of the paper is constructed as follows: the next section is about the related studies.The third section introduces the problem statement.It covers the starting point of the research.The solution methodology is presented.Section 4 shows the system configurations.To make accuracy and performance analysis, two versions of the experimental setup are constructed.The details of them are given in this section.Experimental studies and their results are provided in Section 5.The last section is about the analysis and conclusion of the study.

Related Studies
In the literature, many studies about building 3D scanning systems and mapping devices were conducted.Some of the studies which highlight the key issues to develop such systems are reviewed in this section.A laser sensorial subsystem that was designed for the outdoor service robots was proposed.The development steps of the research includes the design of the subparts, manufacturing of them and integration of the whole system.A 2D laser scanner was mounted on a rotating unit so that 3D scanning could be performed.The rotating unit is actuated by using a DC actuator.A CCD camera was also integrated to the system for increasing accuracy and efficiency.The verification of the proposed algorithm was also checked using the data coming from the CCD camera [1].In order to scan a dynamic environment, a 3D scanning system was designed.A pan tilt unit was developed and a 2D laser scanner was placed on it.The rotation of the pan tilt unit enabled to get 3D scan of the environment.A point cloud based algorithm was created to generate the shape of the objects scanned [2].A 3D scanning system designed to use in automobiles was proposed.A 2D laser scanning rangefinder that was the feedback sensor of the system was rotated via a rotating unit.An algorithm responsible for generating 3D shape of the surrounding was introduced.The developed system was tested for outdoor navigation purposes [3].A low-cost 3D scanning system was proposed.The system was integrated with an automatic registration method to create 3D shapes of the scanned objects [4].A lidar system was created for mobile robotic applications.It was designed for scanning 360 0 field of view.The integration of a 2D laser scanner and a rotating head was introduced to create the lidar system [5].A low-cost active 3D triangulation laser scanning system for indoor navigation of mobile robots was _______________________________________________________________________________________________________________________________________________________________ 1 Mechanical Engineering Department, Engineering Faculty, Bulent Ecevit University, incivez Mah, 67100, Zonguldak/Turkey * Corresponding Author: Email: bayar@beun.edu.trdesigned.A camera and laser scanner were integrated in a system and located on the movable part of a robot.The movable part was actuated using a servo motor.By this way 3D laser scanner based on a 2D laser sensor was created [6].A multiple robot case was taken into account.In order to recognize the working environment, an automatic planning of laser measurements was introduced.Large scale data processing was conducted using an algorithm developed.The system was tested on mobile robots [7].An accurate 3D lidar system was proposed.The system was integrated to a multiple mobile robot cooperation task.The robots were equipped with laser scanning rangefinders.Data taken from the sensors were linked using an algorithm developed [8].Tree trunk detection task was accomplished using an algorithm developed based on 3D laser scanning system.The complex structure modelling problem was focused and a solution procedure was proposed [9].

Problem Statement
Mobile robotic and autonomous ground vehicle applications require recognising the working environments.Reference trajectory tracking, obstacle avoidance, path planning, etc. tasks can be accomplished by detecting the objects and surrounding successfully.One of the detection tool used in robotic applications is cameras.If the vision is clear and the objects' placements are not so complex this solution may work.Otherwise the use of cameras is insufficient especially when the working environment has complex structured shapes.In case camera solution is not enough, laser scanning is the unique solution.Detection of surrounding can be performed in 2D or 3D planes.A scenario that depicts obstacle detection of a mobile robot is presented in Figure 1.In this presentation, tree obstacles are located on the reference trajectory of the mobile robot.These obstacles should be detected first, then the reference path should be planned considering this information.In Figure 1-left, laser scanner rangefinder located at the mid-centre of the mobile robot and the obstacles are shown.In Figure 1-right, the obstacle detection is illustrated and the areas that are not safe for generating trajectories are highlighted.In this scenario, 2D information of the obstacles can be obtained.The height information cannot be detected and/or estimated by the use of the scanning system shown.In this study, a 3D laser scanning system is proposed in order to get information about the height of the scanned objects.By this way, the working environment of a mobile robot or an autonomous vehicle is scanned and necessary data can be collected.This enables that more reliable data can be reached for generating reference trajectory.The objects placed in the desired route can be classified with high accuracy and obstacle avoidance can be achieved in an efficient and safe manner.

System Configuration
In this study, two versions of the scanning system was designed.
In the first version, the rotation unit is motorized by the use of a stepper motor.A simple encoder unit is also coupled to the system to verify the rotation information.The details of this version is presented in Figure 2. The system composes of motor mounting unit, couplings, rotating head, bearings, gearhead, shaft, steel body, safety limiter, stepper motor, simple encoder unit and a 2D laser scanner.The same system is also used for the second version of the setup.The reason of designin two versions of the system is that accuracy and performance comparison would be done.The second version of the setup is shown in Figure 3.In this version, instead of using a stepper motor, a DC actuator is used.High resolution quadrature encoder (1024 count per revolution) is plugged into the system to be able to increase the precision.The DC motor is driven by a motion controller, Cytron-MD10C that needs 24 V voltage and can provide current up to 10 A. The laser scanning rangefinder used in this study is shown in Figure 4.The laser scanner (URG-04LX) is manufactured by the Hokuyo Company.It needs 5 V voltage and 1 A current to work properly.240 0 view can be scanned using this sensor.The scanning resolution of the laser scanner is about 0.36 0 which means that 683 scan points in an area of 240 0 are provided by the sensor.The working frequency of the scanner is 10 Hz.The laser scanner can scan and measure the objects up to 4 m.The objects placed away from this distance cannot be sensed using this sensor.The required algorithm is developed in Matlab-Simulink environment.The flow chart of the algorithm's stages is presented in Figure 5.As seen in this figure, the laser data reaches the computer via RS232 serial port.The decoding algorithm is created using C++ programming language and embedded in Simulink environment.By this way, high speed communication with the laser sensor can be achieved.The decoding process in real-time can also be accomplished.The motion control unit that is used to control the DC actuator is commanded by using Q2-usb DAQ card manufactured by the Quanser company.Reference input is created in Simulink and sent through the motion control unit over the DAQ card.High resolution encoder data is also observed by the use of DAQ card.It provides the rotational information of the rotating head in high precision.An experimental setup is constructed to achieve the objective in this study.It is given in Figure 6.The aim of the experimental studies can be summarized as: a box of which dimensions are 30 cm x 40 cm is scanned using the scanning system developed and the height information of the box is obtained.The scanning system is placed 50 cm away from the box.In Figure 6, the box scanned is shown.The laser scanner, DAQ card and the motion controller are also shown in zoomed-in-view in this figure for providing a clear presentation.Note that the system allows to set the rotational velocity of the rotational head unit for any value which is suitable for decoding the laser scanner data.

Experimental Studies
One of the scanning results is shown in Figure 7.The rotating unit of the platform is controlled and the laser's 2D data is collected.Then, the rotation angle and the laser information are combined to create a point cloud.As shown in Figure 7, the box's surface is fully scanned and its actual dimensions could be obtained.
The rotation angles are also shown in Figure 8.The quadrature encoder data is decoded using the DAQ card shown in Figure 6 and the angular information is obtained.The rotating unit is rotated between the angles of -30 0 and 25 0 .These angles are set according to the placement of the box scanned.The limits of the rotation of the rotating head can be set in any value.The number of rotation can also be set inside the algorithm developed.It should be emphasized that more scanning can give more accurate detection of the shape of the objects.

Analysis and Conclusion
Robotic and mechatronics systems, automation lines, autonomous vehicles and mobile robots need to get information from their working environments.The information coming from their surrounding affects their control systems' strategies.Path planning, trajectory tracking, and high level control tasks use these information as feedback.One of the solutions to detect the working environment is the use of laser scanners.In this study, detection of objects in 3D view is focused.A 2D laser scanner sensor is used as the feedback source and located on a rotating head.The rotation is provided using a DC motor that is equipped with a gearhead and high resolution quadrature encoder.A motion control unit is adapted into the system in order to provide necessary commands required for the DC motor.A DAQ card is also integrated to the system.It is responsible for sending analog commands to the motion control unit and decoding the encoder data.The whole system is implemented in Simulink environment.The algorithms created using Simulink and C++ are used to create a point cloud so that the 3D shapes of the objects scanned could be determined.A number of experiments is conducted and some of them is presented in this paper.The results indicate that the 3D scanning system developed in this study can be adapted into any robotic application to sense the surrounding.It is an easy-to-use and easy-to-adapt solution.It is also aimed that the solution proposed would provide some highlights for the researchers who wish to contribute in this area.

Figure 1 .
Figure 1.A scenario depicting obstacle detection in a mobile robot application.

Figure 2 .
Figure 2. Experimental setup, version 1.The rotating head is actuated via using a stepper motor and the rotation feedback is obtained using a simple encoder unit.

Figure 3 .
Figure 3. Experimental setup, version 2. The head where the laser scanner is placed is actuated via using a DC motor and the rotation information is taken from a high resolution quadrature encoder.

Figure 4 .
Figure 4. Laser scanning rangefinder used in study.

Figure 5 .
Figure 5. Flow chart of the algorithm developed.

Figure 7 .
Figure 7. Point cloud representing the box's dimensions.

Figure 8 .
Figure 8. Rotation angle of the rotating head.