Abstract:
In response to the challenges faced by traditional robot navigation systems in edible fungus factories, such as narrow roads, poor GPS signal reception, sparse spatial feature point distribution caused by shelf arrangements, and perception blind spots from single sensors, a multi-sensor fusion robot navigation system was proposed under spatial constraints in edible fungus factories. First, to address the issue of noise and uncertainty in data collected from encoders or inertial measurement units (IMUs), ESKF was used to fuse both encoders and IMUs sources, improving the accuracy of the positioning. In edible fungus factories, due to the absence of obstacles between the mushroom logs on the mushroom racks, a single-line LiDAR sensor is unable to scan the entire mushroom rack which leads to incomplete navigation maps and affects navigation accuracy. Then a dual LiDAR data fusion algorithm was proposed to combine environmental information from different heights. Subsequently, an improved Cartographer-based laser SLAM algorithm was used to construct a navigation grid map. During the navigation process, the autonomous navigation framework based on Navigation2 completed the robot’s navigation through continuous switching between the planning, control, and recovery servers by calling the navigation tree server. The final speed command was output to the microcontroller which controlled the robot's movement. The Adaptive Monte Carlo Localization (AMCL) algorithm was used for global positioning, while the Theta* algorithm was employed as the planning algorithm for the planning server, and a dynamic window-based local path planning algorithm used by the control server to guide the robot's movement. The comparison of the constructed maps by using the top LiDAR, bottom LiDAR and fusion of both LiDARs revealed that the top LiDAR could not identify the gaps between the mushroom logs as obstacles, and the bottom LiDAR could not scan the mushroom logs, only scanning part of the mushroom rack. Both maps constructed by the single LiDAR were incomplete, while the dual LiDAR fusion algorithm not only recognized the mushroom logs but also detected the mushroom racks, with an obstacle detection rate 2.07% higher than that of a single LiDAR. In positioning accuracy tests, four target points were randomly selected along the longitudinal aisle of the edible fungus factory. The robot was manually controlled to reach each target point, and the positioning error was calculated by comparing the robot's coordinates with the real coordinates of the target points. After fusing the encoder and IMU data, the robot moving at 0.40 m/s had maximum longitudinal, lateral, and angular deviations of less than 5.80 cm, 3.50 cm, and 3.00°, respectively, with standard deviations of less than 1.47 cm, 1.17 cm, and 1.16°. It was also found that as the longitudinal displacement increased, the cumulative error of the encoder also gradually increased. In navigation tests, when the robot navigated at 0.20 m/s, the average longitudinal deviation, lateral deviation, and heading deviation between the actual and target navigation paths were less than 2.24 cm, 1.90 cm, and 2.04°, respectively. At a speed of 0.50 m/s, the deviations were less than 4.10 cm, 2.64 cm, and 2.82°, respectively. At a speed of 0.70 m/s, the deviations were less than 5.78 cm, 3.80 cm, and 4.00°, respectively. Overall, the robot's average longitudinal and lateral deviations did not exceed 5.78 cm and 3.80 cm, with standard deviations of no more than 1.63 cm and 1.32 cm, and the average heading deviation did not exceed 4.00°, with a standard deviation of no more than 0.84°. The approach ensured that both positioning and navigation accuracies met the requirements for robot operations in the edible fungus factory, providing significant technical support for the intelligent development of the edible fungus industry.