Approach for Autonomous Robot Navigation in Greenhouse Environment for Integrated Pest Management

The use of autonomous robots for certain tasks within agriculture applications can bring many advantages. The H2020-funded GreenPatrol project has developed an autonomous system for pest detection and treatment within commercial greenhouses. In this system the robot will navigate autonomously and regularly inspect crops using an array of cameras and algorithms to detect and treat pests at an early stage in order to improve yield, reduce pesticide use and improve worker conditions. A key enabler for this application is the localization and navigation function of the robot platform. In order to operate independently and autonomously, the robot must know in real-time its precise location and direction of pointing, it must be able to plan a route through the greenhouse from its current location to where it needs to go, it must be able to control its movements to reach its required destination, and it must be able to identify and avoid obstacles that may obstruct its route. In order to achieve these goals the robot sub-systems include an absolute localization function, to provide precise absolute position and heading in a global reference frame in real-time, a relative localization function, to provide more fidelity of the exact location and orientation of the robot with respect to its surroundings in the greenhouse, and a navigation function, to plan the route through the greenhouse and provide movement instructions to the robot platform. This paper describes the localization system of the GreenPatrol robot and presents results of testing for each of the functions. The tests include simulations as well as data collections and tests of the real-time system using the robot platform. The results show the high performance of the positioning capability and heading information for the individual systems.


I. INTRODUCTION
In agriculture, timely pest detection not only increases the quality of crop production, but also reduces the use of pesticides. Precision Agriculture (PA) shows significant advantage for pest control in terms of reduce environmental impact and greater profitability through automation of task such as crops monitoring and treatment. The key feature of the PA approach comes from positioning systems, principally Global Navigation Satellite Systems (GNSS) that are the major enablers of precision. However, positioning accuracy is of prime importance for precise management of agriculture operations. PA is useful not only for mapping but also for farm machinery guidance, automatic steering, or autonomous robots operation. In recent years, autonomous robots have been introduced in several Precision Agriculture applications. The robotic approach can provide valuable information in an Integrated Pest Management (IPM) context, providing information about pest populations that are present.
There are several automatic Integrated Pest management tools and techniques currently available [1][2][3][4][5], but none of them uses automated robotic platforms for early and online pest detection in greenhouse crops. The main objective of the GreenPatrol project is to design and develop an innovative and efficient robotic solution for IPM in crops, which has the ability to navigate inside greenhouses while performing pest detection and control tasks in an autonomous way. Using this innovative approach, the final goal is to get timely, accurate and reliable scouting records in a cost-effective way to allow growers to exploit the IPM associated benefits.
To reach this goal, GreenPatrol relies on (1) Robot precise positioning solution able to operate in the intended challenging environment, providing accurate and detailed pest maps for decision making about precise case-specific treatment, (2) Integration of Galileo's new signals and modulation in light indoor environment, (3) Perception with visual sensing for on-line pest detection, including reasoning mechanisms for efficient action selection and (4) Control strategies for manipulation and motion planning based on pest monitoring system feedback.
The use of Galileo's new signal and modulation is a fundamental building block in the development of the GreenPatrol solution as it provides the mechanism (i.e. new signals and modulations providing better performance) to cope with the inherent sources of error present in light indoor scenarios (multipath, signal blockage, etc.) [6][7] II. AUTONOMOUS ROBOT NAVIGATION IN GREENHOUSE ENVIRONMENT For any mobile device, autonomous robot navigation is the ability to automatically navigate in its environment by overcoming the challenges such as travel in a wrong path and avoiding collisions. The autonomous navigation is achieved in three steps • Localization (Absolut and Relative) • Mapping

• Path Planning
Precise localization is a fundamental capability for GreenPatrol and is used for several purposes: • As input to the navigation module in order to generate trajectories from the robot to target positions inside the Greenhouse. The model of the environment will allow obtaining the optimal (e.g. shortest) traversable paths taking into account the elements considered during the map generation. Unforeseen obstacles not included in the maps will be handled reactively as they may be encountered. • To register the location of pest evidences inside the local model of the Greenhouse. • As input to the mission planner in order to select the regions to inspect or treat depending on the state of the pest, their locations, level of spreading, etc.
In order to manage the complexity of the Greenhouse environment, the architectural design of the localization subsystem contemplates two differentiate layers for the positioning solution: absolute and relative localizations.

A. Absolute Localization
The purpose of the absolute localization function is to provide real-time absolute position and heading information in a global reference frame. This is required in order to give the relative localization and navigation functions information about where the robot is located within the greenhouse (or outside the greenhouse) in an absolute sense, which is necessary for reliable navigation. In addition, the precise absolute position information is logged for geo-referencing where actions have taken place (e.g. locations of plants where pests have been detected, locations of plants where treatment has been applied, etc.). Since greenhouses are challenging environments, in terms of multipath and signal blockage due to its metal-reinforced complex structures of glass or polycarbonate, the GreenPatrol solution includes novel algorithms and processing to mitigate the increased errors in this environment and improve position and heading performance. In particular, the GreenPatrol proposed Precise Point Positioning (PPP) solution which takes advantage of the additional signals provided by Galileo, such as the E5 AltBOC signal, and combines the PPP with data from inertial measurement sensors and wheel odometry in dead reckoning (DR) to provide the best instantaneous estimation of the robot position.
PPP is the techniques which take advantage of using real time corrections and provides precise point position in real time. The advantage over RTK is that it does not require any additional infrastructure in terms of reference stations -in contrast to RTK, PPP uses dual frequency pseudorange and carrier phase observables from a single receiver, as well as precise satellite position and clock , to determine its absolute co-ordinate with high precision, but with higher flexibility, potentially lower capital and running costs and global capability.

B. Relative Localization
The purpose of the relative localization function is to capture the robot sensor information at the right level of abstraction and use it to estimate the robot position in a model of the environment. This relative position (and heading) of the robot within its local environment is provided to the navigation function so that a route for the robot to move can be planned and actioned.
The relative localization module takes as a core input the absolute localization solution (GNSS PPP and dead reckoning) and its main purpose is to enhance it when possible, by taking advantage of other sensorial information such as 3D LiDAR and 2D safety range sensors, and the previous knowledge of the environment (topological map built in a previous stage). The relative localization module yields the position and heading information in local coordinates in the ENU reference frame (tangent to the earth surface with axes pointing East for X, North for Y and Up for Z, and which origin is defined by a point in the greenhouse), and a quality indicator of the solution.
The relative localization algorithm relies on ROS [8] software for its implementation in the robot platform (for a detailed description see [9]. It uses the Gmapping algorithm (based on FastSLAM [10] for mapping and AMCL [11][12][13][14] for localisation. Both of them use a particle filter probabilistic approach to estimate the best robot position (and map for the case of SLAM).
The relative localization function takes the absolute position and heading estimation as an input, which is then transformed to local coordinates and fused with other available sensorial information (e.g. laser range readings) in a probabilistic algorithm in order to estimate the robot position relative to its environment. The environment is represented through a map, which is built up incrementally using SLAM algorithms as the robot moves around it using the most recent solution available of robot Absolute localization solution and of the range readings to update the map and compute its own position inside it. In GreenPatrol, it is preferred to perform the mapping stage offline (just once, prior to operations) to model each new greenhouse, rather than generating the map on-line during operations as it provides many important benefits such as having a better knowledge of the greenhouse footprint before performing any planning action or considerably reducing the uncertainty of the robot mission.

C. Navigation
The navigation function is responsible for the autonomous movements of the robot. It is in charge of achieving the mission position and heading goals by moving from the current position without any human intervention (but allowing its supervision).
To do this it is necessary on the one hand to plan a global path between the robot position and its desired goal across the traversable areas of the Greenhouse map (provided by the relative localization function).
On the other hand, it is necessary to plan and follow consecutive local paths covering the global path and taking into account the presence of unexpected obstacles detected by the sensors, avoiding obstacles and possible stuck situation.

III. EXPERIMENTAL SETUP AND TEST SCENARIO
Under the GreenPatrol Project, the framework has been developed which is a real-time system which include a robot platform with wheel odometer and Laser scanner. An external Absolute Localization unit has been developed with multifrequency GNSS receiver and IMU sensor along with realtime positioning software. The Absolute Localization unit also takes odometer data as input from the Robot to calculate PPP+DR position solution.
The entire system has been tested and evaluated in realtime scenario in an open sky. To do so, a mockup Greenhouse scenario has been developed in an open sky as shown in Fig. 1. The robot platform has been provided with two localization units, which are connected to separate GNSS antennas as shown in Fig. 2. The antennas were installed at a distance of 60 cm apart from each other, and so that they were aligned along the forward direction of travel of the robot. Having two separate units for testing allows cross-checking of the position and heading solutions to validate the performance. Both localization HW units gets power, odometer and timing data, and connection to internet from the robot as shown.  In addition to the set-up on the robot, a local reference station was also installed for the duration of the tests. The purpose of the local reference station is so that a postprocessed kinematic (PPK) solution for the localization units can be generated relative to the local reference, and this provides an independent high accuracy reference throughout the test for comparison with the PPP+DR solution. In this way the absolute accuracy, and convergence time to the required accuracy, can be calculated and assessed.
The main advantage of testing in open sky conditions is that it allows validation of the algorithm implementation and its performance in ideal conditions, since it is possible to have a reference solution of the robot position and heading. In the greenhouse scenario obtaining a reliable absolute reference solution for assessing the performance is not always possible due to the inherent difficulty of the environment itself, such as the effect of multipath in the solution or gaps in the signals reception, etc.
The advantages of having two localization units with separate antennas on the robot during this test are that: • The solutions from the two units can be compared to check the consistency of the solutions. The distance between the separate antenna locations should match the known (measured) distance between the antennas. Such a consistency check is useful as it gives a good indication of the quality of the solutions for the whole test, and not just at specific times or locations.
• Having two separate antennas means that the solutions for the two units are based on independent measurements (with different multipath, for example) and therefore a comparison between them gives an idea of absolute position errors • Having two separate antennas means that it is possible to do assessment of absolute heading accuracy by independently computing heading between the antennas and comparing this with the heading values output by the localization algorithms.
During the test period the robot was static for some time and then manually controlled to move in a similar trajectory to would be found in the greenhouse, with a mixture of straight line forward motion (in corridors), 90 degree and 180 degree turns, and backward motion. An overview of the Robot trajectory has been depicted in Fig. 3. During the test period the localization unit was continuously producing position in realtime using PPP+DR approach and stored all input sensor data and output position solution in a hard drive, which can be further processed for statistical analysis.

A. Test Results of Absolute Localization
For this test, the real-time PPP+DR position solutions were obtained from both units shown in Fig. 4. Results show that real time PPP+DR solution have good agreement with the trajectory mentioned in Fig. 3.

a) Position accuracy and convergence compared to reference
To determine absolute accuracy, the position solution from each localization unit is compared with the reference PPK solution (generated relative to local reference receiver using RTKlib software). The PPK solution (relative carrier phase with fixed ambiguities) should have an accuracy of <5cm and so is taken as the reference solution. Therefore, the error in the global localization PPP+DR solutions are computed as the difference from the PPK solution. The convergence is also assessed by checking how long it takes for the absolute accuracy to reach the required error of 30 cm [requirement for GreenPatrol Project]  We can see from these results that both units took a little time to converge to their best solution, but once they did converge the general level of performance was well below the 20 cm of accuracy.
The position accuracy performance is then computed for the period after convergence has been achieved. The convergence and accuracy performance can be summarized as:

b) Assesment of Heading compare to the Reference Heading
In order to validate heading obtained from PPP+DR solution, a reference heading is computed from RTKlib. For this purpose, localization unit 1 is used as reference and localization unit 2 is used as a rover in a moving baseline PPK solution.
The moving baseline output includes the East, North and Up baseline between the two antennas through which we have computed the distance between two antennas. This distance gives a good indication of the quality of reference heading value. As we know the exact distance between two antennas is 60 cm, so if the calculated distance shows few mm deviation then it reflects that reference heading is good, but if it is greater than a few cm away then it indicates as a bad heading.  Fig. 9 Baseline length between two antennas using RTKLib Fig. 9 shows the baseline length between two antennas obtained from RTKLib, shows that during whole duration of test the baseline length shows maximum deviation of 4.55 cm from true distance, which shows that the accuracy of heading is reliable(or good) is 100% and the availability of heading throughout the test period was 98.48%. (tabulated in Table 1) Table 1 Reference Heading Accuracy and Availability In order to validate the measured heading obtained from localization units 2, we have compared it with reference heading solution.
Overall heading analysis in Table 2 shows that 68% of time we get heading error of 3.36 degree, however 95% of time heading error was less 9.27%. For the whole duration of test 79.62% of time we got heading error below threshold which is 5 degree.

c) Assesment of Beaseline Length Error between two Antenna
As the two units had separate antennas, the difference between the solutions for each epoch is computed as the antenna baseline length. Time series of baseline length units is shows in Fig. 10, and corresponding statistical results for baseline length error (compared to known measured antenna baseline of 60cm) are listed in Table 3. When it comes to further testing in the greenhouse where obtaining a continuous precise reference solution may be difficult, the comparison of the solutions from the two absolute localization units will give a quantitative measure of the consistency of the absolute position performance inside the greenhouse, because any error in position solution reflect on the baseline length between the two antennas. From Fig. 10, it can be seen that the calculated antenna baseline has some larger error at the start (whilst the solutions are converging) but varies smoothly. Once the robot starts moving the calculated antenna baseline distance shows more high frequency variation but remains close to the known measured distance of 60 cm.
The overall statistics (Table 3) shows that the standard deviation of error in baseline length with respect to true baseline length (60 cm) is 5 cm, while RMSE shows 8 cm. It also shows that 68% of time the baseline error is less than 9 cm, while 95% it is less than 14 cm.

B. Test Results of Relative Localization
The same test data is used for testing the relative localization algorithms. The approach for verification is the following: • A map is built using the same mapping algorithm adjusted for the greenhouse test [8]. Apart from the robot range readings, the algorithm takes the robot reference position and heading as localization inputs (i.e. PPK solution of one of the units and the base station for position, and the relative position of the two antennas for heading). The reason behind not building the map directly from the absolute localization output is that during the localization stage the robot perception is matched against the map. From a verification perspective, using the same input for building the map and then localise in it should be better avoided, since the errors in the localization input would already be present in the map, biasing the performance of the relative solution towards that input. • Relative localization is obtained using as inputs the map, the robot range readings and the solution from the absolute localization unit (PPK + DR). • Relative localization solution is compared against the reference position and heading.  For a numerical comparison of the error between them it is needed to interpolate the absolute and reference solutions at the relative localization sampling interval, since the process is triggered by the robot motion (displacement and turning thresholds) rather than being synced with GNSS time. For the parts where the robot is static, the relative localization generates a solution, so the analysis is conducted by comparing the last relative position and heading solutions just before the stop and comparing them against the reference until the robot starts moving again. This way, rather than measuring the error in the solution, the error gives an idea of the ability of the algorithm to reach to a good solution in terms of the mean deviation of the reference while the robot is in static conditions. Of course, the distance and heading thresholds that control the execution of the relative localization algorithm have been carefully adjusted to ensure it updates close to the stops to a certain extent. However, ensuring a significant reduction in the possible gap between the update and the final stop position also means reaching a compromise with system computational burden, because this implies that the algorithm executes more often. Very low thresholds introduce a delay in the solution in real time if the algorithm updates at higher rates than its required processing interval, which depends on the robot speed, on the filter configuration (number of particles, laser samples, etc.) and on the available computational power. Setting these thresholds to convenient values to reduce the error in static, but at the same time maintaining a good execution load during dynamic conditions (10 cm displacement and 6 degrees turn). Table 4 shows statistical results of localization and heading accuracy obtained in dynamic scenario, the relative localization improve heading in dynamic conditions by achieving below 5 degree heading error 95.3% of times. However, for robot position which was already good and under the specification for the absolute one, does not shows any significant improvement by relative localization. Unlike in the dynamic case, in static case the relative localization enhanced robot position accuracy but not in heading accuracy Table 5.

C. Conclusion
At the view of these results, it can be stated that the absolute and relative localization algorithm performs well both in dynamic conditions and during the stops. The main conclusions of the analysis are the following: • For robot navigation, in dynamic scenario of open sky, absolute position solution obtained by real time PPP+DR approach fulfilled the requirement of accuracy of 30 cm for GreenPatrol project. • Heading solution which play an important role in Navigation, also shows accuracy of 3.36 degree 68% of time. However, the requirement for GreenPatrol project is 5 degree 95% of time was not fulfilled by absolute localization. Nevertheless, heading accuracy is further improved by relative localization. • It has been verified that the implementation of the relative localization algorithms is correct and its behaviour in simulation environment (with real data) is as expected: smooth solution, no unexpected jumps, able to cope with errors and uncertainty in sensors, etc. • In terms of repeatability and accuracy, the results of the open-sky test are coherent with the conclusions for the test in the greenhouse environment [9]. This was expected since the input of the relative localization is the robot absolute position and heading estimation (which is quite good in both cases) and relative sensor information (which is not affected for the change of environment). It has been checked that when the absolute localization solution input improves, it has a benefit in the accuracy of the relative solution. • In terms of the degree of improvement of the absolute solution, the relative localization is able to improve heading in dynamic conditions, but not the robot position, which is already very good and under specifications for the absolute one. Again, these results are in line with the observed behaviour in the greenhouse tests. Regarding the accuracy in static conditions, an effort has been made to get a solution closer to the robot stop position and heading, with improvements in the robot position (but not so much in its heading).
However, it has been observed that, even though the relative solution does not provide a significant improvement in accuracy obtained by the absolute localization in open sky, it has been identified as a back-up solution in scenarios of high GNSS signal degradation, since it is more immune to these changes in the input thanks to the range sensors and mapmatching. This ability could be potentially exploited by the robot when there are evidences that the absolute localization solution is degraded.