A Rubber-Tapping Robot Forest Navigation and Information Collection System Based on 2D LiDAR and a Gyroscope

Natural rubber is widely used in human life because of its excellent quality. At present, manual tapping is still the main way to obtain natural rubber. There is a sore need for intelligent tapping devices in the tapping industry, and the autonomous navigation technique is of great importance to make rubber-tapping devices intelligent. To realize the autonomous navigation of the intelligent rubber-tapping platform and to collect information on a rubber forest, the sparse point cloud data of tree trunks are extracted by the low-cost LiDAR and a gyroscope through the clustering method. The point cloud is fitted into circles by the Gauss–Newton method to obtain the center point of each tree. Then, these center points are threaded through the Least Squares method to obtain the straight line, which is regarded as the navigation path of the robot in this forest. Moreover, the Extended Kalman Filter (EKF) algorithm is adopted to obtain the robot’s position. In a forest with different row spacings and plant spacings, the heading error and lateral error of this robot are analyzed and a Fuzzy Controller is applied for the following activities: walking along one row with a fixed lateral distance, stopping at fixed points, turning from one row into another, and collecting information on plant spacing, row spacing, and trees’ diameters. Then, according to the collected information, each tree’s position is calculated, and the geometric feature map is constructed. In a forest with different row spacings and plant spacings, three repeated tests have been carried out at an initial speed of 0.3 m/s. The results show that the Root Mean Square (RMS) lateral errors are less than 10.32 cm, which shows that the proposed navigation method provides great path tracking. The fixed-point stopping range of the robot can meet the requirements for automatic rubber tapping of the mechanical arm, and the average stopping error is 12.08 cm. In the geometric feature map constructed by collecting information, the RMS radius errors are less than 0.66 cm, and the RMS plant spacing errors are less than 11.31 cm. These results show that the method for collecting information and constructing a map recursively in the process of navigation proposed in the paper provides a solution for forest information collection. The method provides a low-cost, real-time, and stable solution for forest navigation of automatic rubber tapping equipment, and the collected information not only assists the automatic tapping equipment to plan the tapping path, but also provides a basis for the informationization and precise management of a rubber plantation.


Introduction
As an essential strategic resource, natural rubber and its products are universally applied in industry, transportation, national defense, and medical treatment. At present, the excellent properties end of the rows is probabilistic, so the success of each turn cannot be guaranteed. Moreover, the automatic rubber-tapping operation requires the robot navigation platform to safely walk along one row in a rubber forest, to turn from one row into another, and to stop within a fixed range for tapping. Freitas [31] et al. have applied LiDAR, an IMU, a steering wheel, and wheel encoders to assess the position of offline obstacles based on the classification and clustering of three-dimensional (3D) point obstacles. Finally, obstacles, such as pedestrians and boxes, on the route of the vehicle have been detected successfully. To predict the biomass, growth, yield, water consumption, and health conditions of trees so as to provide bases for tree management, Lee [32] et al. have successfully adopted LiDAR to measure the geometric characteristics of tree crowns. The results show that LiDAR can better measure the geometric characteristics of the tree.
In summary, due to the excellent comprehensive performance of LiDAR, a method of forest navigation and information collection based on low-cost LiDAR and a gyroscope, which does not rely on GPS, is proposed in this paper. The sparse point cloud data of tree trunks are extracted by LiDAR and the gyroscope through the clustering method. The point cloud is fitted into circles by the Gauss-Newton method to obtain the center point of each tree. These center points are threaded through the Least Squares method to obtain the straight line, which is regarded as the navigation path of the robot in this forest. The Extended Kalman Filter (EKF) algorithm is adopted to obtain the robot's position. The Fuzzy Controller is applied for the following activities: walking along one row with a fixed lateral distance, stopping at fixed points, turning from one row into another, and collecting the information of plant spacing, row spacing, and trees' diameters. Then, according to the collected information, each tree's position is calculated, and the geometric feature map is constructed. The aim of the method proposed in this paper is to provide autonomous navigation for intelligent tapping devices and collect information on a rubber plantation to benefit the informatization and precision management of the rubber plantation.

System Composition
This study takes a tracked robot as the basic platform, the system of which is shown in Figure 1. The program runs on Windows 7 Visual Studio 2013. The length of the robot platform is 76 cm and the width is 62 cm. The distance between the LiDAR's installation site on the robot platform and the ground is 95 cm. The type of this LiDAR is A2M6; it is made by SLAMTEC Company, and has a scanning frequency of 10 Hz, a scanning angle of 360 degrees, an angle resolution that is adjustable from 0.45 to 1.35 degrees, a maximum scanning distance of 18 m, and a relative scanning accuracy of 1%. The gyroscope used in this study is of type JY901 and produced by Shenzhen Witt Intelligent Technology Co., Ltd. Its frequency is 10 Hz, and its angular resolution is 0.1 degrees. Two caterpillar driving wheels are driven by two HLM480E36LN brushless direct current (DC) motors made by MOTEC Company. The role of the trace device: white wheat flour is placed in the tracing device, so when the robot walks, the white line left on the ground should be the actual walking path of the robot. As shown in Figure 2, the motor is directly controlled by the industrial computer (IC) through its driver. The Industrial Computer is the control core of the robot.
Co., Ltd. Its frequency is 10 Hz, and its angular resolution is 0.1 degrees. Two caterpillar driving wheels are driven by two HLM480E36LN brushless direct current (DC) motors made by MOTEC Company. The role of the trace device: white wheat flour is placed in the tracing device, so when the robot walks, the white line left on the ground should be the actual walking path of the robot. As shown in Figure 2, the motor is directly controlled by the industrial computer (IC) through its driver. The Industrial Computer is the control core of the robot.

Navigation Strategy
For targeting under specific conditions of rubber-tapping, mobile robots are required to be able to stop in front of trees and work. So, the robot platform set should achieve the following goals in the forest: • Autonomously navigate along one row with a fixed lateral distance; • Stop at the designed spot in front of trees; • Turn from one row into another; • Information collection.
According to the trend of trees, the spot that crosses the tree's center and is perpendicular to the tree row is regarded as dead ahead of a tree. As required by the rubber-tapping operation of the mechanical arm, the robot's ideal stopping spot should be 125 cm right ahead the rubber tree. Therefore, the ideal navigation path for the robot in a rubber forest should be the line chart that connects the dead ahead spot of each tree. In order to fit tree rows better, the segmentation fitting method is thus proposed. At the same time, the LiDAR scanning distance is set to be twice the maximum plant space to make full use of the tree data closest to the robot. If there are no data scanned within 0~90° of the LiDAR, it is supposed that the robot has reached the boundary of this rubber forest, and then a turn will be performed immediately. As shown in Figure 3, the green circles represent trees; black points stand for the ideal stopping spots; and the red dotted line is regarded as the robot's ideal navigation path.

Navigation Strategy
For targeting under specific conditions of rubber-tapping, mobile robots are required to be able to stop in front of trees and work. So, the robot platform set should achieve the following goals in the forest: • Autonomously navigate along one row with a fixed lateral distance; • Stop at the designed spot in front of trees; • Turn from one row into another; • Information collection.
According to the trend of trees, the spot that crosses the tree's center and is perpendicular to the tree row is regarded as dead ahead of a tree. As required by the rubber-tapping operation of the mechanical arm, the robot's ideal stopping spot should be 125 cm right ahead the rubber tree. Therefore, the ideal navigation path for the robot in a rubber forest should be the line chart that connects the dead ahead spot of each tree. In order to fit tree rows better, the segmentation fitting method is thus proposed. At the same time, the LiDAR scanning distance is set to be twice the maximum plant space to make full use of the tree data closest to the robot. If there are no data scanned within 0~90 • of the LiDAR, it is supposed that the robot has reached the boundary of this rubber forest, and then a turn will be performed immediately. As shown in Figure 3, the green circles represent trees; black points stand for the ideal stopping spots; and the red dotted line is regarded as the robot's ideal navigation path. ahead spot of each tree. In order to fit tree rows better, the segmentation fitting method is thus proposed. At the same time, the LiDAR scanning distance is set to be twice the maximum plant space to make full use of the tree data closest to the robot. If there are no data scanned within 0~90° of the LiDAR, it is supposed that the robot has reached the boundary of this rubber forest, and then a turn will be performed immediately. As shown in Figure 3, the green circles represent trees; black points stand for the ideal stopping spots; and the red dotted line is regarded as the robot's ideal navigation path.

Navigation Phases
According to the data applied to the robot's navigation and the corresponding movements, the navigation is divided into three phases: "straight phase", "turning phase", and "row-changing phase".
As shown in Figure 3, at the A-B stage of the straight phase, the sparse point cloud data of tree trunks are extracted based on data offered by LiDAR and the gyroscope. Then, the point cloud is fitted though the Gauss-Newton method to obtain the coordinates of each tree's center. The straight line connecting tree centers is fitted by the Least Squares method and then regarded as the robot's navigation path. According to the navigation path, the robot would walk along one row with a fixed lateral distance and stop at the designated spot in front of each tree.
At the B-C stage of the turning phase, after finishing the rubber tapping at point B, the robot will walk straight to point C (the distance between B and C is controlled by setting the straight-walking time). Then, the data of the gyroscope's Z-axis and differential driving are employed to make a 90-degree turn.
At the C-D and E-F stages of the row-changing phase, the navigation of C-D is similar to that of the "straight phase". Their difference lies in that C-D has no fixed-point stopping, and it will use the gyroscope to turn right again when it goes through a complete row space. The E-F stage is similar to the B-C stage: when finishing the tapping, the robot will go straight toward point E, make a 90-degree left turn with the help of the gyroscope, walk straight to point F (the distance of E-F is controlled by setting the straight-walking time), make another 90-degree left turn using the gyroscope, and enter the next cycle.
The above three phases constitute the whole cycle of the robot's navigation. When the robot encounters situations beyond the above three phrases, it will stay put. On one hand, this can ensure the safety of the robot. On the other hand, after finishing all of the operations in the rubber forest, it can stop automatically.

Calibration of the Installed Location of LiDAR
It is important to calibrate the installed location of the vehicular LiDAR [27]. Whether the axis of the LiDAR, i.e., the 0-180 • axis, is parallel to the center line of the robot platform or not directly influences the navigating performance of the robot and the accuracy of information collection. When installing, the vertical wall is utilized to calibrate the center line of the LiDAR, so as to make the center line of the LiDAR parallel to the center line of the robot. As shown in Figure 4, the robot is put at the place 100 cm away from the wall and the center line of the robot is parallel to the wall. Then, on the wall, two points that can form the 45 • and 135 • angles are extracted from the LiDAR's scanned It is important to calibrate the installed location of the vehicular LiDAR [27]. Whether the axis of the LiDAR, i.e., the 0-180° axis, is parallel to the center line of the robot platform or not directly influences the navigating performance of the robot and the accuracy of information collection. When installing, the vertical wall is utilized to calibrate the center line of the LiDAR, so as to make the center line of the LiDAR parallel to the center line of the robot. As shown in Figure 4, the robot is put at the place 100 cm away from the wall and the center line of the robot is parallel to the wall. Then, on the wall, two points that can form the 45° and 135° angles are extracted from the LiDAR's scanned data, and the distance between these two points and the Lidar's central point are set as l45 and l135, respectively. Finally, the LiDAR's installation position should be calibrated until l45 = l135.

Navigation Path Generation
Firstly, all scanned data are sorted according to angles, and then data within 0~180 • , i.e., the robot's right-side data are extracted. In order to make full use of the tree data closest to the robot and to fit the tree row better, the LiDAR scanning distance is set to be twice the maximum plant spacing. All scanned points on the tree are extracted using the clustering method [31,33]. If two points meet the following requirements, they fall into the same category: (1) The distance difference between two points and the LiDAR is less than the threshold δ 1 (δ 1 is determined by the diameter), i.e., |l 1 − l 2 | < δ 1 ; (2) The angle difference between two points and the LiDAR is less than the threshold δ 2 (δ 2 is determined by the diameter and the distance between the robot and the tree row), i.e., (3) The distance difference between two points and the center line of the robot is less than the threshold δ 3 (δ 3 is determined by the row spacing), i.e., After clustering, if the number of elements in a cluster is larger than the given threshold N (N is determined by the number of points scanned on the tree with the smallest diameter), it can represent a tree: In the same way, other tree trunk information of the nearest tree row from the robot can be obtained. If there are small trees or stumps that do not need to be operated on, the robot can automatically ignore them by setting the threshold N. All data used in the navigation come from the tree row closest to the robot, so different row spacings and plant spacings in the forest are permitted.
Due to the uneven terrain in the forest, slight tilt may occur. This will lead to an increase in the distance error. Therefore, the gyroscope should acquire attitude information of the robot in real time to correct the LiDAR data based on the roll and pitch angles. As shown in Figure 5, plane 1 is horizontal, and the attitude information of the robot is acquired in real time by the gyroscope, including the left and right tilt angle ε 1 , the front and rear tilt angle ε 2 to plane 1, and the rotation angle around the Z axis. The tilt angle is utilized to compensate for the scanning distance error of the LiDAR when the robot walks on uneven ground. When the robot tilts to the left or right, l and l' represent the scanning distance of the LiDAR on plane 1 and plane 2, respectively, while the cylinder represents the tree. The actual distance between the robot and the tree is: Similarly, when the robot tilts to the front or rear, the actual distance between the robot and the tree is: When the robot has both left-right tilt and front-rear tilt, the total tilt angle of the robot should be the combination of these two parts: After the clustering is completed, all point cloud data on the trunk for navigation can be extracted then round-fitted through the "Gauss-Newton method" to obtain the center coordinates of C 1 , C 2 , C 3 , and C 4 , as shown in Figure 6. Then, the Least Squares method is adopted to fit the straight line of the center, which shall be the navigation path. After the clustering is completed, all point cloud data on the trunk for navigation can be extracted then round-fitted through the "Gauss-Newton method" to obtain the center coordinates of C1, C2, C3, and C4, as shown in Figure 6. Then, the Least Squares method is adopted to fit the straight line of the center, which shall be the navigation path. After the clustering is completed, all point cloud data on the trunk for navigation can be extracted then round-fitted through the "Gauss-Newton method" to obtain the center coordinates of C1, C2, C3, and C4, as shown in Figure 6. Then, the Least Squares method is adopted to fit the straight line of the center, which shall be the navigation path.

Design of the Fuzzy Controller
The advantage of Fuzzy Control [34] is that it does not need to establish an accurate control model. We only need to define effective input and output control variables and appropriate Fuzzy Control rules [35]. In this paper, the lateral error E and the heading error θ are used as the input of the Fuzzy Controller. The forward direction of the robot is taken as the reference. If E is positive, it means that the robot's position deviates from the left side of the ideal navigation path. If E is negative, it means that

Design of the Fuzzy Controller
The advantage of Fuzzy Control [34] is that it does not need to establish an accurate control model. We only need to define effective input and output control variables and appropriate Fuzzy Control rules [35]. In this paper, the lateral error E and the heading error θ are used as the input of the Fuzzy Controller. The forward direction of the robot is taken as the reference. If E is positive, it means that the robot's position deviates from the left side of the ideal navigation path. If E is negative, it means that the robot position deviates from the right side of the ideal navigation path. At the same time, the positive heading angle error indicates the counterclockwise deflection, and the negative angle indicates the clockwise deflection.
The PWM (Pulse-Width Modulation) control difference, U, of the DC motors on both the left and the right sides is selected as the output variable, so as to control the differential steering of the robot. The MIN-MAX-gravity method is selected for defuzzification. According to experience and the test conditions, the table of fuzzy control rules is shown in Table 1. Figure 8 shows the threedimensional surface diagram of the fuzzy control rules.  The MIN-MAX-gravity method is selected for defuzzification. According to experience and the test conditions, the table of fuzzy control rules is shown in Table 1. Figure 8 shows the three-dimensional surface diagram of the fuzzy control rules.

Location of the Robot
The feature-based Extended Kalman Filter (EKF) [36] provides an effective method for mobile robot pose estimation, so it was adopted in this study for robot localization in the forest. It is stipulated that, when the robot stops in front of each tree, the exact spot is regarded as the initial position of the robot, (x' 0 , y' 0 ). The pose of the robot in the forest can be expressed by its coordinates (x', y') and the attitude angle ϕ relative to the trunk. Assuming that the robot is moving at a constant speed between the two trees, the pose of the robot should be: In the above formulas, T is the sampling time; u(k) the random perturbation in motion; and v y' the speed of the car in the y'-axis direction.
For sake of convenience, the equation of the state of the robot system should be: Then, the error covariance matrix should be: In the above formula, A k = ∂ f ∂X stands for the Jacobian matrix of the system state, W k = ∂ f ∂U the Jacobian matrix of process noise, and Q k the covariance matrix of process noise.
The Kalman Gain can be calculated as: In the above formula, H k = ∂h ∂X is the Jacobian matrix for measuring the state of the model, V k = ∂h ∂U the Jacobian matrix for measuring model noise, and R k the covariance matrix of process measurement noise.
Since the robot's initial position (x' 0 , y' 0 ) is already known, the position at time k should be (x'(k), y'(k)). Distances between the tree and the LiDAR can be measured by the LiDAR, while the heading angle of the robot can be measured by the gyroscope. Therefore, the measurement model should be: Using actually measured data to correct the robot's attitude estimation: In the above formula, Z k stands for the actually measured data. Finally, the error covariance matrix is updated as follows: Extended Kalman Filter (EKF) is a recursive estimation process, and the updated pose and error covariance matrix are used to predict the new estimates in the next time step. Figure 9 is the flow chart of the system algorithm.  Figure 9. The flow chart of navigation control.

Information Collection
The information collected on the forest includes tree diameters, plant spacing, row spacing, and position information, among which tree position derives from plant spacing and row spacing recursively. The specific methods can be seen as follows.

Information Collection
The information collected on the forest includes tree diameters, plant spacing, row spacing, and position information, among which tree position derives from plant spacing and row spacing recursively. The specific methods can be seen as follows.

Calculation of Tree Position
As shown in Figure 10, the absolute coordinate system XOY is established according to the position of tree P 1 and the trend of the entire forest. The absolute coordinate of tree P 1 is (x 1 , y 1 ). When the robot stops in front of tree P 1 to carry out the operation, the center of its LiDAR is taken as the origin point O 1 . Then, the dead-ahead direction of the robot is taken as the N-axis, and the line connecting O 1 and the tree is taken as the M-axis, so as to establish the robot's coordinate system MO 1 N. The distance between P 1 and O 1 is L 1 ; the distance between P 2 and O 1 is L 2 ; and the angle between P 2 and the N-axis is γ. The coordinate system MO 1 N is rotated by β degrees (counterclockwise is positive; the β angle is measured by the gyroscope), so that the newly obtained coordinate system M 1 O 1 N 1 is parallel with the absolute coordinate system XOY. Thus, the coordinate of tree P 2 in the M 1 O 1 N 1 coordinate system should be: (L 2 sin(γ + β), L 2 cos(γ + β)) The coordinate of P 2 in the absolute coordinate system XOY should be: Therefore, the absolute coordinate of tree P 3 can be deduced from the absolute coordinates of tree P 2 . In the same way, the coordinate of all trees in the same row in the absolute coordinate system can be calculated, and coordinate calculation formulas for different rows can be inferred. Tree rows in the actual experiment are so straight that the X-coordinate of each row is regarded as the same. The coordinate formula of tree position in the forest is obtained as follows: The coordinate formula of odd tree rows should be: The coordinate formula when the robot turns: The coordinate formula of even tree rows should be: The coordinate formula of even tree rows should be:  Figure 10. The transformation of a tree's coordinates.

Calculation of Tree Radius
In order to improve the accuracy of the measurement of a tree's diameter as much as possible, when the robot stops in front of the tree for operation, the LiDAR's position is closest to the tree and the robot pauses. At this time, the scanned point set of this tree and the coordinate of the next tree's relative position are collected and circularly fitted using the Gauss-Newton method [37]. Thus, the diameter of the obtained circle is regarded as the diameter of the tree.
The curvilinear equation of the circular is supposed to be: Figure 10. The transformation of a tree's coordinates.

Calculation of Tree Radius
In order to improve the accuracy of the measurement of a tree's diameter as much as possible, when the robot stops in front of the tree for operation, the LiDAR's position is closest to the tree and the robot pauses. At this time, the scanned point set of this tree and the coordinate of the next tree's relative position are collected and circularly fitted using the Gauss-Newton method [37]. Thus, the diameter of the obtained circle is regarded as the diameter of the tree.
The curvilinear equation of the circular is supposed to be: C, D, E, G, and H are assumed as follows: Then a, b, and c should be: Thus, the tree's radius R should be: After obtaining each tree's position and diameter according to the above method, in order to help users have a better understanding of the collected information, the position of the tree is embodied by the position of the circle's center and the diameter of the tree by the diameter of the circle. The geometric feature map of the forest is thus graphed.

Navigation Results Analysis
In order to test the navigation performance and the accuracy of information collection of the LiDAR-gyroscope-based navigation system, a forest about 800 m 2 in area is selected as the test area south of the Agricultural Science and Technology Park in Tongzhou District, Beijing (116 • 49' 13" E, 39 • 51' 29" N). This test area is composed of three rows of trees, with 15 trees in each row, so there are 45 trees altogether. As shown in Figure 11a, the absolute coordinate system XOY is established by taking tree P 1 as the reference, with moving backward and left 2 m as the origin O. In the absolute coordinate system, the actual position of the tree is measured by hand with a tape measure. Then, we can obtain the plant spacing and row spacing. In Figure 11b, the circumference of the trunk at the same height as the LiDAR (95 cm from the ground) was measured with a tape measure in the test forest, and data on the diameter of the tree were obtained. The specific parameters are shown in Table 2. Because the distance between the test forest and adjacent forests is 1000 cm, to guarantee the integrity of this test and make the robot turn at the boundaries, the scanning radius of the LiDAR was set to be 900 cm, and the initial speed 0.3 m/s.  In this test, white wheat flour is placed in the tracing device, so, when the robot walks, the white line left on the ground should be the actual walking path of the robot. The heading direction of the robot is regarded as "front", and the difference between the actual stopping site and the ideal site is regarded as the "front and back error", just as what is shown by the yellow dot in Figure 3. If the robot stops in front of the ideal stopping site, the error is positive. If the robot stops at the back of the ideal stopping site, the error is negative.
Three repeated tests have been conducted in this forest. When measuring lateral errors, the points at 125 cm in front of each tree are connected in turn as the ideal navigation path for the robot. In the test, white wheat flour is placed in the tracing device, so, when the robot walks, the white line left on the ground should be the actual walking path of the robot. As shown in Figure 12a, the lateral error is measured between the ideal navigation path and the actual walking path of the robot. When the robot  In this test, white wheat flour is placed in the tracing device, so, when the robot walks, the white line left on the ground should be the actual walking path of the robot. The heading direction of the robot is regarded as "front", and the difference between the actual stopping site and the ideal site is regarded as the "front and back error", just as what is shown by the yellow dot in Figure 3. If the robot stops in front of the ideal stopping site, the error is positive. If the robot stops at the back of the ideal stopping site, the error is negative.
Three repeated tests have been conducted in this forest. When measuring lateral errors, the points at 125 cm in front of each tree are connected in turn as the ideal navigation path for the robot. In the test, white wheat flour is placed in the tracing device, so, when the robot walks, the white line left on the ground should be the actual walking path of the robot. As shown in Figure 12a, the lateral error is measured between the ideal navigation path and the actual walking path of the robot. When the robot stops in front of the tree (the robot stops for 3 seconds), the position of the LiDAR relative to the tree is marked with white wheat flour. As shown in Figure 12b, the distance between the actual and ideal stopping spots is measured as the front and back errors. After each experiment, the lateral error data were sampled in front of each tree (data are represented by solid circles in Figure 13) and in front of the midpoint of the connection between two trees (data are represented by hollow circles in Figure 13). The front and back error data were sampled in front of each tree. is regarded as "front", and the difference between the actual stopping site and the ideal site is regarded as the "front and back error", just as what is shown by the yellow dot in Figure 3. If the robot stops in front of the ideal stopping site, the error is positive. If the robot stops at the back of the ideal stopping site, the error is negative.
Three repeated tests have been conducted in this forest. When measuring lateral errors, the points at 125 cm in front of each tree are connected in turn as the ideal navigation path for the robot. In the test, white wheat flour is placed in the tracing device, so, when the robot walks, the white line left on the ground should be the actual walking path of the robot. As shown in Figure 12a, the lateral error is measured between the ideal navigation path and the actual walking path of the robot. When the robot stops in front of the tree (the robot stops for 3 seconds), the position of the LiDAR relative to the tree is marked with white wheat flour. As shown in Figure 12b, the distance between the actual and ideal stopping spots is measured as the front and back errors. After each experiment, the lateral error data were sampled in front of each tree (data are represented by solid circles in Figure 13) and in front of the midpoint of the connection between two trees (data are represented by hollow circles in Figure 13). The front and back error data were sampled in front of each tree.  In order to describe the robot's stopping range around each tree, the stopping error is prescribed as: 2 2 StoppingError (LateralError) (FrontAndBackError ) = + . Table 5 shows the result of the stopping errors. In Figure 14, the abscissa represents the range of stopping errors, and the ordinate represents the number of data elements within the range of errors. Figure 14 suggests that the stopping error follows a normal distribution. Most of the errors are within the range of 5~15 cm, and the average stopping error is 12.08 cm, which meets the requirements of forest navigation for a rubber-tapping robot.  Table 3 shows the result of lateral errors when the robot walked along one row and turned at the end of the row, while Table 4 shows the result of the front and back errors. Figure 13 suggests the lateral error of the robot at each separate measurement point in the second test. The solid blue line represents the lateral error when the robot walked along one row, and the red dotted line represents the lateral error when turning. The root mean square (RMS) lateral errors with the three repeated tests are 10.31 cm, 10.32 cm, and 9.37 cm, respectively, which shows that the method has great path tracking performance. In the three repeated tests, the average values of the front and back errors are all positive, mainly because the inertia makes the robot move forward for a distance after receiving the stop command. In order to describe the robot's stopping range around each tree, the stopping error is prescribed as: Table 5 shows the result of the stopping errors. In Figure 14, the abscissa represents the range of stopping errors, and the ordinate represents the number of data elements within the range of errors. Figure 14 suggests that the stopping error follows a normal distribution. Most of the errors are within the range of 5~15 cm, and the average stopping error is 12.08 cm, which meets the requirements of forest navigation for a rubber-tapping robot.  In order to describe the robot's stopping range around each tree, the stopping error is prescribed as: 2 2 StoppingError (LateralError) (FrontAndBackError ) = + .
(6) Table 5 shows the result of the stopping errors. In Figure 14, the abscissa represents the range of stopping errors, and the ordinate represents the number of data elements within the range of errors. Figure 14 suggests that the stopping error follows a normal distribution. Most of the errors are within the range of 5~15 cm, and the average stopping error is 12.08 cm, which meets the requirements of forest navigation for a rubber-tapping robot.

Mapping Results Analysis
In order to help users have a better understanding of the collected information, a geometric feature map [38] of the test forest is constructed to show the plant spacing, row spacing, diameter, and position

Mapping Results Analysis
In order to help users have a better understanding of the collected information, a geometric feature map [38] of the test forest is constructed to show the plant spacing, row spacing, diameter, and position of trees. On the basis of the above results, the point set of each tree is fitted into a circle by the "Gauss-Newton method". According to the above method of measuring plant spacing, row spacing, tree position, and tree diameter as well as the method of graphing a geometric feature map, the position of a tree is represented by the center of the circle, and the diameter of the tree by the diameter of the circle. The map of the forest and an enlarged partial detail can be seen in Figure 15.

Mapping Results Analysis
In order to help users have a better understanding of the collected information, a geometric feature map [38] of the test forest is constructed to show the plant spacing, row spacing, diameter, and position of trees. On the basis of the above results, the point set of each tree is fitted into a circle by the "Gauss-Newton method". According to the above method of measuring plant spacing, row spacing, tree position, and tree diameter as well as the method of graphing a geometric feature map, the position of a tree is represented by the center of the circle, and the diameter of the tree by the diameter of the circle. The map of the forest and an enlarged partial detail can be seen in Figure 15. To evaluate the accuracy of the constructed geometric feature map, the tree's position error P e is defined as follows: In the above formula, (x t , y t ) stands for the actual position of the tree, and (x i , y i ) the calculated position of the tree according to collected data. The tree's radius error r e is defined as follows: In the above formula, r t represents the actual radius of the tree while r i represents the calculated radius of the tree according to collected data. Similarly, the plant spacing error h e is defined as follows: Table 6 shows the position error, radius error, and plant spacing error of trees.  Figures 16 and 17 show the position error and radius error of trees, respectively. After analyzing Table 6, it can be seen that all average values of plant spacing errors in these three tests are negative, which indicates that the tree distance measured by the robot is shorter than the actual condition on the whole. This is mainly because the robot is regarded as stopping at the ideal position by the default setting when measuring tree spaces, just as what the black dot shows in Figure 3. Table 4 shows that the average front and back error in these three tests is positive and similar to the average value of the plant spacing error. It shows that, due to the inertia of the robot, where the robot stops is generally in front of the ideal spot, just as what is shown by the yellow dot in Figure 3. Therefore, the measured plant spacing is shorter than the actual condition.
growth of the tree position error. From the 16th tree to the 30th tree, i.e., in the second tree row, when the robot returns, a part of the error will be compensated for, so the tree position error decreases gradually. However, in the third tree row, the tree position error gradually increases again. Figure 17 shows that the radius error of the tree fluctuates within a small range around 0, and the RMS radius errors are 0.49 cm, 0.51 cm, and 0.66 cm, respectively, which shows that the measured radius reflects the true radius of the tree very well. The tree radius error is mainly caused by longitudinal cracks in trees and the unevenness of the ground. Among the information collected on the forest during the tests, the maximum radius error is 1.26 cm, while the maximum plant spacing error is 26.19 cm. The results show that the collected data could reflect the true parameters of the forest well. Figure 19 shows a comparison between the actual map of the forest and the graphed map. In this figure, the red stands for the actual geometric feature map, the green stands for the constructed geometric feature map, and the number in parentheses is the tree number. In the constructed geometric feature map, the average position errors are 43.00 cm, 46.48 cm, and 40.40 cm, respectively, indicating that the map containing information on the forest not only benefits the informatization and precision management of trees, but also provides references for navigating a robot based on prior maps.     Figure 18 shows a comparison between the front and back errors and the plant spacing errors in the second test. It can be seen that the front and back error and the plant spacing error are generally distributed symmetrically, which proves the previous inference to be right. This indicates that the plant spacing error mainly derives from the front and back errors.   As shown in Figure 16, from the first tree to the fifteenth tree, i.e., in the first tree row, the tree position error increases gradually. This is mainly because the tree position is the recursion of plant spacing; a smaller plant spacing leads to a plant spacing error, the accumulation of which leads to the growth of the tree position error. From the 16th tree to the 30th tree, i.e., in the second tree row, when the robot returns, a part of the error will be compensated for, so the tree position error decreases gradually. However, in the third tree row, the tree position error gradually increases again. Figure 17 shows that the radius error of the tree fluctuates within a small range around 0, and the RMS radius errors are 0.49 cm, 0.51 cm, and 0.66 cm, respectively, which shows that the measured radius reflects the true radius of the tree very well. The tree radius error is mainly caused by longitudinal cracks in trees and the unevenness of the ground. Among the information collected on the forest during the tests, the maximum radius error is 1.26 cm, while the maximum plant spacing error is 26.19 cm. The results show that the collected data could reflect the true parameters of the forest well. Figure 19 shows a comparison between the actual map of the forest and the graphed map. In this figure, the red stands for the actual geometric feature map, the green stands for the constructed geometric feature map, and the number in parentheses is the tree number. In the constructed geometric feature map, the average position errors are 43.00 cm, 46.48 cm, and 40.40 cm, respectively, indicating that the map containing information on the forest not only benefits the informatization and precision management of trees, but also provides references for navigating a robot based on prior maps.   Figure 19. Comparison of forest maps.

1.
A method for forest navigation for an automatic rubber tapping platform was proposed in this paper. Instead of relying on GPS and prior maps, the method makes the robot walk along one row at a fixed lateral distance, stop at a fixed point, and turn from one row into another, only using low-cost two-dimensional (2D) LiDAR and a gyroscope. The root mean square (RMS) lateral errors Figure 19. Comparison of forest maps.