DOI: 10.3303/CET23107065 Paper Received: 16 April 2023; Revised: 10 May 2023; Accepted: 28 September 2023 Please cite this article as: Eredits D., Krecht R., Boros N., 2023, GPS Based Navigation and Mobile Base Station of a Mobile Robot Platform, Chemical Engineering Transactions, 107, 385-390 DOI:10.3303/CET23107065 CHEMICAL ENGINEERING TRANSACTIONS VOL. 107, 2023 A publication of The Italian Association of Chemical Engineering Online at www.cetjournal.it Guest Editors: Petar S. Varbanov, Bohong Wang, Petro Kapustenko Copyright © 2023, AIDIC Servizi S.r.l. ISBN 979-12-81206-07-6; ISSN 2283-9216 GPS Based Navigation and Mobile Base Station of a Mobile Robot Platform Dániel Ereditsa,*, Rudolf Krechta, Norbert Borosb aSzéchenyi István University, Department of Automation and Mechatronics, H-9026 Győr, Egyetem tér 1 bSzéchenyi István University, Lifelong Learning and Skills Development Centre, H-9026 Győr, Egyetem tér 1 eredits.daniel@gmail.com One of the central challenges of today is to increase the degree of automation of the available systems and equipment in a sustainable way. This paper presents the development of an outdoor mobile robot platform navigation method, including an on-board unit and a mobile base station to support the operation of the ZalaZone Automotive Proving Ground in Zalaegerszeg, Hungary, by precise, automated deployment of traffic cones. Currently, traffic cone handling is a time- and labor-intensive job. Its automation saves a significant amount of human resources. As a first step, the technical requirements of the problem have been defined. Then, the navigation system that met the pre-defined requirements has been implemented. This paper presents the detailed development of this navigation system, including a description of the test phases as well. As part of the development process, the operation of a Global Navigation Satellite System (GNSS) receiver corrected by Real-Time Kinematic (RTK) is presented, supported by a small, low-power mobile base station, followed by a description of the applied hardware and software components, alongside with the alignment and further development of these components to achieve centimeter-accurate positioning. The Network Transport of Radio Technical Commission for Maritime Services (RTCM) via Internet Protocol (NTRIP) server facilitates the communication between the onboard unit and the base station via a 5G network. This work is continued by a detailed description of the autopilot system on the robotic platform, including the tools and software used for this purpose. The calibration process of the navigation system is described as well. Finally, the results and observations gained during the test are summarized and analyzed. These results have shown that the addition of an RTK system has highly increased the accuracy of a general GNSS receiver. In addition, these results underline the crucial role of 5G networks in the case of automated mobile applications. 1. Introduction One of the primary contemporary challenges is to enhance the level of automation within existing systems and equipment while maintaining sustainability. A mobile robot platform significantly reduces the necessity of human resources in case of repetitive but precise exercises, for example, when traffic cones are placed in exponentially less time, making room for more tests in a given span of time, which greatly reduces the time it takes to carry out a project resulting in higher efficiency. A mobile robot platform will also enable track maintenance, now carried out by vehicles with electric or internal combustion engines, which in a lifetime of a proving ground can significantly damage the environment (Gallo et al., 2017). Therefore, with the help of a mobile platform, the waste and pollution generated by a facility can be greatly decreased. However, the tasks mentioned above cannot be carried out without the support of a centimeter-accurate navigation system. Furthermore, the navigation system presented in the paper can also be used with drones and other robotic platforms, and with the help of the custom NTRIP server, drones and multiple robot platforms can be used simultaneously on the same network, lowering the cost of developing bigger and more complex systems as well as reducing the waste generated. The results shown in this paper indicate that a single autonomous vehicle can have a substantial impact on reducing traffic emissions and air pollution as well as lowering the need for human resources (Le Hong et al., 2021). 385 2. Methods 2.1 Global Navigation Satellite System (GNSS) The robotic platform needs a navigation system that uses not only the US-developed method but also Galileo, developed by the European Union, the Russian-Indian-developed GLONASS, and the Chinese Beidou-2 satellite system. A navigation method that uses satellites from all four systems can process data from a total of 80 satellites simultaneously and achieve centimeter-accurate positioning with calculation corrections. GNSS, supported by RTK, is the solution to this problem. The accuracy of a GNSS receiver is within one meter, a huge improvement on GPS, but it still falls short by far of the centimeter accuracy required by the task. But RTK isn’t perfect since there are still errors that cannot be fully corrected, like the misconception of the signals from the Earth’s atmosphere as it distorts the GNSS signal while it passes through the ionosphere and troposphere (Hadas et al., 2017). 2.2 Real-Time Kinematic (RTK) Real-Time Kinematic (RTK) is one of the methods developed to correct common GNSS errors. To build an RTK system, in addition to the GNSS receiver (rover) located on the mobile robot platform, a base station is required to transmit the Radio Technical Commission for Maritime Services, Special Committee 104, Version 3 (RTCM3) correction data to the rover via an NTRIP server (Table 1). Table 1: Devices used to build the RTK system Component Hardware Base station Custom-built mobile base station with F9P chip Rover SIRIUS RTK GNSS rover Antenna DA910 multi-band GNSS antenna These messages are used to acquire the centimeter-accurate positioning of the rover. The accurate determination of the mobile base station’s position is essential for the proper functioning of the RTK system. To support its accuracy, there is a multi-band antenna connected to the base station. By using the survey-in procedure, the base station is mobile and can be easily moved, allowing its position to be recalculated with the required accuracy every time. However, determining the position with an accuracy below 2.5 m isn’t essential since rover position accuracy does not increase significantly above a certain level of base station accuracy. Furthermore, the survey-in process takes exponentially more time as a higher level of accuracy is required. These aspects are shown later in the paper’s measurement section. The base station sends RTCM3 correction data to the rover via a Networked Transport of RTCM via Internet Protocol (NTRIP) server. RTCM3 information is a message packet that includes data from different navigation methods such as GPS, GALILEO, BEIDOU-2, and GLONASS, as well as additional correction information timestamps, which are used to determine the rover’s positioning accuracy. There are both free and subscription-based NTRIP servers, but by creating a dedicated server, the rover's accuracy is significantly increased since the base station is not tens or even hundreds of kilometers away. For this method, all receivers must be on the same network as well as creating a mount point on the base station is required. The rover is connected to the mount point after authentication, and the transmission of the RTCM3 correction data can begin (Weber et al., 2006). The rover can be in two states using RTK: RTK FIXED and RTK FLOAT. Reaching RTK FLOAT state indicates that the RTK algorithm is not yet solved, it cannot return an acceptable position, also known as RTK FIXED. RTK FLOAT is less accurate than RTK FIXED and therefore cannot be used for centimeter-accurate positioning problems. By default, the algorithm always starts in FLOAT state, but given enough time and the right conditions, an RTK FIXED state can be obtained. The RTK FIXED state means that the RTK algorithm has calculated the exact position of the rover, using the RTCM3 correction data received from the base station. The RTK uses complex mathematical formulas and algorithms, including the calculation of the exact number of radio wavelengths between the satellite and the reference station, to obtain the RTK FIXED state. Data collected by the rover is sent to the control unit of the robot platform via the PX4 autopilot system (Moeller et al., 2020). 2.3 Real-Time Kinematic (RTK) mobile base station The navigation system is supported by a custom-built mobile base station that utilizes the F9P chip. The base station has a battery pack attached to it, therefore, no external power is needed to use the device for hours. The advantage of this device is that it can be easily relocated, doesn’t need to be recalibrated ever, and on every restart, it starts the survey procedure to determine its position and automatically connects to its own Virtual Private Network (VPN) server (Ezra et al., 2022). The required accuracy for the survey-in to reach is set to a minimum of 2.5 meters. After this procedure is done, the base station gives a signal by turning its LED green and starts transmitting the RTCM3 data on its own dedicated NTRIP server, where the rovers can connect after 386 authentication. The F9P chip is connected to a Raspberry PI 4, where the base station software is running on an Ubuntu 20.04 operation system. On the Raspberry PI 4, a custom-written script is starting on system startup to set up both the VPN and the NTRIP server. To create the NTRIP server, the device utilizes a Python library called “pygnnssutils”, and to connect to the VPN, the base station uses the “openvpn” software (Mohd Fuzi et al., 2021). In this code, the LED is managed as well to give out signals to its user. If the base station loses connection to the network or something unexpected happens, there is a reset button on the case of the device, which restarts the operation system. The receiver also supports 5G connectivity to achieve even greater results, with less packet loss, higher reliability, and faster transmitting speed. 2.4 PX4 Autopilot The PX4 is a high-level controller that handles the communication between the RTK and the robot control unit. In the presented navigation system, the PX4 autopilot uses Cube Orange hardware. In addition, the Inertial Measurement Unit (IMU) in the Cube Orange allows the initial orientation of the robot platform to be accurately determined, which significantly facilitates the start of traffic cone placement, as the orientation of the platform can be determined without the necessity of calibration movement and the requirement of two GNSS receivers on the robot platform (Meier et al., 2015). The PX4 firmware also allows sensors and other peripherals to be managed. Communication between the Cube Orange autopilot and the Robot Operating System 2 (ROS2) system is handled by the MAVSDK library collection, which can exchange information and telemetry from multiple robotic platforms simultaneously within a single system. Using these available Python libraries, the PX4 is able to communicate through the MAVLink communication protocol with robotic platforms and transmit the information received from their receivers to the control unit (Allouch et al., 2019). Using this protocol, data collected by the Cube Orange is continuously read into memory and then sent to the ROS2 system, where the information is processed in real time (Boros et al., 2022). 2.5 Robot Operating System 2 (ROS2) ROS2 consists of libraries and tools that facilitate the creation of applications that serve the various functions of robot platforms. ROS2 performs the basic tasks expected of an operating system, such as hardware abstraction, inter-process data transfer, and package management, but ROS2 also needs an actual operating system to run. In addition, ROS2 can manage multiple devices on the same network, so it is possible to have multiple mobile robot platform applications on a single system. ROS2 breaks down complex systems into modular parts called nodes. Each node is responsible for different parts of the robot platform, such as driving the motors or retrieving GPS coordinates. Each node can send and receive data and can communicate with other nodes within the system. Communication between nodes can be done by topics, services, or actions. The navigation system communicates through topics (Table 2) that are used for a continuous flow of data, which is essential for real- time positioning. A topic can forward data to one or more nodes at any time. The operation of a robot platform is based on the coordinated operation of nodes and topics created for different purposes (Erős et al., 2019). Table 2: Topics used to process navigation data Topic Description PX4_yaw_deg Real-time orientation in degrees, read from IMU PX4_pose Position of the robot in Latitude/Longitude format PX4_GNSS_SAT Number of satellites visible at the current moment PX4_GNSS_RTK_TYPE The RTK is in a fixed or float state 3. Measurement 3.1 The goal of the measurement The navigation system of the mobile robot platform demands a level of accuracy that cannot be satisfied by the typical 2.5 m accuracy offered by a standard GNSS receiver. To meet these stringent requirements, the system employs the RTK correction method for its capacity to achieve centimeter-level precision, provided the ideal conditions are met. The primary objective behind conducting the measurement was to conduct a comparative analysis between the positioning accuracy achieved by a conventional GNSS receiver and the precision delivered by the platform's bespoke navigation system, enhanced by RTK technology. 3.2 Measurement setup During the measurement, the navigation system used on the robotic platform has been reproduced in order to carry out the most accurate results shown in Figure 1. 387 A custom Python script was written to help the measurement, which logs the coordinates in the Universal Transverse Mercator (UTM) coordinate system using the MAVSDK library collection and the PX4 autopilot. UTM is a coordinate system that divides the Earth into zones. It has the advantage that it does not contain negative coordinates; the coordinates are represented as positive decimal values, making it easier to determine deviations, and the simpler creation of more visual graphs is also available. 3.3 Measurement results In this section of the paper, the results and the accuracy of the navigation system are presented and visualized with the help of graphs. Firstly, the accuracy of a general GNSS receiver is presented both in a static and moving state. The results shown in Figure 2 were expected. A general GNSS receiver’s accuracy is between 1 m and 2.5 m under an open sky, which is not accurate enough to place the traffic cones into an exact position. Figure 1: The recreated navigation system during the measurement procedure Figure 2: General GNSS receiver, static state results In the case of a mobile robot platform, the accuracy of the navigation system is crucial in the moving state. The measurement of a General GNSS receiver in a moving state is presented in Figure 3, which shows that the average accuracy of the receiver is between 1.1 meters and 2 meters under open sky. This result can be greatly improved by the RTK FLOAT and RTK FIXED state shown in the later part of this section. Figure 3: General GNSS receiver, moving state results 388 In Figure 4, the measurement of the RTK FLOAT state is presented, and the improvement of the GNSS receiver’s accuracy is significant. The majority of the navigational data has an accuracy between 3.1 cm and 13.1 cm under open sky, with the base being set to a 2.5 m accuracy. With accuracy, the determination of a mobile robot platform’s position can be achieved with a precision of up to 3.1 cm, but this still can be improved when the RTK algorithm is totally solved. Figure 4: RTK FLOAT, moving state with 2.5 m survey in results In the following part of this section, the accuracy of the navigation system in RTK FIXED state is presented. The results can be seen in Figure 5, which clearly presents that the accuracy of the rover is below 2 centimeters measured under open sky, without coverage from buildings. Figure 5: RTK FIXED, moving state with 2.5 m survey accuracy Finally, the difference between the 2.5 m and 0.8 m survey-in accuracy procedure is shown. The time it takes to finish this process exponentially grows after 2.5 m. To go below 1 m inaccuracy, it takes more than 20 min, while it takes only 2 min to achieve the 2.5 m accuracy. As shown in Figure 6, the rover’s accuracy isn’t more precise in the moving state. The vast majority of the data is still between 1.4 cm and 1.9 cm, which is the main criterion for a mobile robot platform to carry out the task. Figure 6: RTK FIXED, moving state with 0.8 m survey accuracy 389 4. Conclusions The main goal of the navigation system was to provide the necessary navigational data for the platform to be able to place traffic cones in an exact location on a pre-defined path. The goal was reached. The rover’s location on the robot platform can now be determined with centimeter accuracy in real time, and with the help of the PX4 autopilot, the navigational data is transmitted to the processing unit for further calculations and path planning. The use of RTK is an immense improvement over the accuracy of a general GNSS receiver. From an average accuracy of 1-1.5 m, the RTK algorithm improved it to around 1.5 cm. Also, with the assistance of a mobile base station and a private NTRIP server, the navigation system can be expanded and used in another project as well. Acknowledgment The research was supported by the European Union within the framework of the National Laboratory for Autonomous Systems. (RRF-2.3.1-21-2022- 00002). References Allouch A., Cheikhrouhou O., Koubâa A., Khalgui M., Abbes T., 2019, MAVSec: Securing the MAVLink Protocol for Ardupilot/PX4 Unmanned Aerial Systems. The 2019 15th International Wireless Communications & Mobile Computing Conference (IWCMC), 621–628, DOI: 10.1109/IWCMC.2019.8766667. Boros, N., Ballagi, Á., Kallós, G., 2022, Implementation of motion planning algorithms for a track service mobile robot, Digital Automotive Industry Research 2022 Artificial Intelligence in Mobility, June 15-17 István Széchenyi University, ONLINE, presented on 17.06.2022 Friday, 8:30-10:30, , accessed 26/10/2023. (in Hungarian) Hadas T., Teferle F.N., Kazmierski K., Hordyniec P., Bosy J., 2017, Optimum stochastic modeling for GNSS tropospheric delay estimation in real-time. GPS Solut, 21, 1069–1081, DOI: 10.1007/s10291-016-0595-0. Erős E., Dahl M., Bengtsson K., Hanna A., Falkman P., 2019. A ROS2 based communication architecture for control in collaborative and intelligent automation systems. Procedia Manufacturing, 38, 349–357. Ezra P.J., Misra S., Agrawal A., Oluranti J., Maskeliunas R., Damasevicius R., 2022. Secured Communication Using Virtual Private Network (VPN). In: Khanna K., Estrela V.V., Rodrigues J.J.P.C. (Eds), Cyber Security and Digital Forensics. Lecture Notes on Data Engineering and Communications Technologies, 73, Springer, Singapore, DOI: 10.1007/978-981-16-3961-6_27. Gallo R., Ristorto G., Daglio G., Massa N., Berta G., Lazzari M., Mazzetto F., 2017, New solutions for the automatic early detection of diseases in vineyards through ground sensing approaches integrating lidar and optical sensors. Chemical Engineering Transactions, 58, 673-678, DOI: 10.3303/CET1758113. Le Hong Z., Zimmerman N., 2021, Air quality and greenhouse gas implications of autonomous vehicles in Vancouver, Canada. Transportation Research Part D: Transport and Environment, 90, 102676. Meier L., Honegger D., Pollefeys M., 2015. PX4: A node-based multithreaded open source robotics framework for deeply embedded platforms. 2015 IEEE International Conference on Robotics and Automation (ICRA), 6235–6240, DOI: 10.1109/ICRA.2015.7140074. Mohd Fuzi M.F., Mohd Alias M.R., Kaur N., Abd Halim I.H., 2021, SafeSearch: Obfuscated VPN Server using Raspberry Pi for Secure Network. JCRINN, 6, 90–101, DOI: 10.24191/jcrinn.v6i4.230. Moeller R., Deemyad T., Sebastian A., 2020. Autonomous Navigation of an Agricultural Robot Using RTK GPS and Pixhawk. The 2020 Intermountain Engineering, Technology and Computing (IETC), 1–6, DOI: 10.1109/IETC47856.2020.9249176. Weber G., 2006, Streaming Real-Time IGS Data and Products Using NTRIP, < https://files.igs.org/pub/resource/pubs/06_darmstadt/IGS%20WS%202006%20Papers%20PDF/6_Weber_I GS_Proceedings_Darmstadt_NTRIP.pdf >, accessed 26/10/2023. 390