1 Introduction

Digital agriculture [1, 2] relies on technological innovation to enhance efficiency and reduce resource consumption to meet the farming demands of the growing global population. Advances in autonomous systems have enabled the commercial deployment of farming robots [3]; nevertheless, their full potential remains unrealized due to technical challenges such as varying light conditions, unpredictable terrain, and random obstacles. While mobile robots have made significant advancements in autonomy, they still require human intervention in many agricultural tasks, especially in complex situations where unexpected challenges arise. This dependency on human intervention adds to operational costs which increase with the amount of data and limits the scalability of mobile robot deployments. Similar to many industrial control systems, robot applications in agriculture also require a connection to a data network for supervision [4].

Several studies have reported that the development of a fully autonomous robot for challenging environments such as those with rough terrain or unstructured orchards with high-density bushes is extremely hard and sometimes impossible [5, 6]. An example includes the design and development of a solar-powered, 4-wheel drive autonomous robot intended to improve seed sowing efficiency on rough terrain, which highlights the robot’s ability to plant seeds, cultivate soil, flatten surfaces, and water newly sowed seeds with precision and minimal human intervention [7]. In a different study, preliminary experiments with a four-wheel steering (4WS) mobile robot inside high-density berry orchards have shown that autonomous navigation, when relies solely on RTK-GPS receivers, Inertial Measurement Unit (IMU), and a path-following algorithm, can be disturbed due to poor GPS signal reception, faulty or noisy readings, and the presence of random obstacles in the field [8]. This leads to inaccuracy in determining the heading and position corrections of the robot [9]. Similar issues have been reported in other studies on the use of mobile robots that rely only on GPS information for path following [10]. As an alternative solution, high-end 2D and 3D LiDAR sensors with simultaneous localization and mapping (SLAM) algorithms have been widely used for real-time collision avoidance [11], however, these devices add extra cost to the production and maintenance of the robot, besides they can also be interrupted due to occlusion caused by bushes and plant leaves, which can negatively affect the identification of actual obstacles and cause failure in the autonomous navigation. Localization and mapping algorithms such as Kalman Filter [12, 13], Particle Filter [14], or Monte Carlo Localization (MCL) [15] that enable the robot to determine its position and create a map of that environment are also used as a key component of many localization systems for estimating the state of the robot when measurements are uncertain and subject to noise. They provide a probabilistic estimate of the robot’s pose, making it suitable for environments with uncertainty. Path tracking [16] methods such as Pure Pursuit [17], PID Controllers [18], and Model Predictive Control (MPC) [19] are then executed in real-time to control the robot to follow this predefined path as closely as possible by continuously adjusting the robot’s control inputs (e.g., steering angle and velocity) to stay on the path as it encounters variations and disturbances in the environment. The path is usually represented at a relatively low level of detail, often as a sequence of waypoints or reference points in space connected by straight-line segments or smooth curves. It should be noted that with the advancement of artificial intelligence and machine learning, mobile robots can now employ learning-based approaches for path planning, such as Reinforcement learning algorithms which enable robots to learn optimal navigation policies through trial and error, taking into account environmental dynamics and task-specific objectives. However, despite the diversity of approaches, challenges persist in real-world robotics applications including the need to handle complex environments with dynamic obstacles, ensuring real-time performance on resource-constrained platforms, and addressing uncertainties inherent in sensor measurements and actuator responses. Achieving higher levels of autonomy with the experience and knowledge of a remote operator is therefore required to supervise the operation and make decisions beyond the autonomy of the robot. This can also contribute to eliminating the need for constant human oversight in the field.

The integration of robotics and wireless connectivity that are integrated with virtual reality (VR), digital twin concepts, and IoT platforms, is often denoted as the Internet of Robotic Things (IoRT) [20] and has emerged in the last few years for collaborative control and teleoperation [21] to optimize the use of autonomous agricultural machinery in unstructured farms. The main justifications for the deployment of IoRT infrastructure in agriculture can be summarized as (i) to provide real-time monitoring and control of the robot’s states and functionality (i.e., location, orientation, speed, distance to obstacles, and battery status), (ii) to feed these data to simulation models, digital shadows, and cloud-based decision support systems, and (iii) to send instant responses to the robot for assisting the autonomous navigation. An effective IoRT-based solution should incorporate the use of long-range wireless communication, simulation environment, and web-based applications to constantly monitor the robot in the field, and transmit human-in-the-loop control commands for robot teleoperation. An example of such a solution can be found in [22] in which VR and Kinect-based immersive teleoperation with an optimized Bundlefusion-based algorithm [23] for real-time 3D reconstruction was proposed for agricultural field robots. The main limitation of this method however is the availability of the wireless network, bandwidth, and quality of the connection which affect the update rate of the scene. A methodology for selecting optimal network parameters for wireless control of bilateral teleoperated manipulators was presented in [24]. By employing a teleoperated setup and performance indices, the study evaluates position and force tracking quality, determining the maximum tolerable packet loss for satisfactory system performance. Experimental validation on real wireless channel scenarios further confirms the effectiveness of the proposed technique. A discrete-time second-order consensus algorithm to address message-loss in wireless networked robot (WNR) systems during swarm rendezvous was introduced in [25] which establishes necessary and sufficient conditions for controlled WNRs to converge to a predefined formation despite message loss, offering insights into minimal connectivity requirements and the relationship between algorithm step-size and control gains for ensuring successful swarm rendezvous. Simulation validation underscores the efficacy of the proposed conditions in guaranteeing convergence even in the face of unreliable communication channels.

Local wireless networks incorporating communication protocols such as ZigBee [26], Wi-Fi [27], LoRa [28], and Bluetooth [29] have been employed in digital agriculture, with Wi-Fi being a common choice for IoT monitoring and control, specially in rural applications [30]. An example includes a semi-autonomous agricultural sprayer robot that was developed for remote operation utilizing Wi-Fi for communication [31]. WiFi is a well-established cost-effective standard with high bandwidth, but has a limited range, necessitating the integration of numerous repeaters or range extenders in the field. This demands interfering masts and a corresponding power supply. Furthermore, the bandwidth decreases and latency increases with each extender. Here, 5G technology promises significantly better figures, although the current solutions available on the market cannot confirm this. A preliminary evaluation of Wi-Fi6 and 5G technologies, showcasing the framework’s effectiveness with a novel Network Hardware-in-the-Loop (N-HiL) simulation framework to assess the impact of wireless communication on robot control was introduced in [32], which has shown more efficient and accurate evaluations compared to traditional methods. Demonstrated through latency-sensitive applications such as multirobot coordination and teleoperation, the N-HiL method eliminates the need for costly and time-consuming real-life testing while providing developers with reliable network conditions. However, 5G is not available in many areas, and in some cases, there is no network at all. This means that the simple solution with a SIM card and a 5G router can only be utilized to a very limited extent. A Starlink connection offers a potential alternative, but it also involves costs and is not uninterrupted. As with GPS, shadowing, weather extremes, and changes in satellite constellations can lead to interruptions. Mobile use is also associated with corresponding costs, which increase with the amount of data. ZigBee is also a widely popular choice, particularly in smart irrigation and water quality monitoring applications due to its cost-effectiveness and low power consumption, making it suitable for mass deployment of battery-operated compact sensors and creating mesh networking. This allows devices to communicate with each other through multiple hops. It has been widely adopted in IoT with many devices and platforms designed specifically for ZigBee communication.

The main objective of this study was to investigate the feasibility of using a LoRa-based wireless network connectivity to exchange multiple messages between a simulated robot and a real robot inside an actual berry field over long-range distances (up to 3000 m) without interruption. The content of these messages includes waypoint coordinates that are used by the existing autonomous navigation system of the robots to guide it from point A to Point B. Specific objectives included (i) to design and implement a simulated mobile robot with Four-Wheel Ackermann steering and pure-pursuit controller that can follow a user-defined reference trajectory in real-time and generate a path in Geographic Coordinate System, (ii) to design and evaluate a local LoRa wireless network with custom-designed hardware and evaluate its performance with respect to strength, quality, and reliability of the transmission to ensure coverage under extreme field conditions, and (iii) to evaluate the performance of the overall solution to effectively exchange multiple messages between the simulated and the real robot, and updating their position on a web-based map for visualization.

2 Materials and methods

2.1 Overview of the method

A conceptual illustration of the proposed IoRT solution using a local LoRa network for exchanging messages between the actual mobile robot in the field and the digital shadow of that robot inside a virtual environment is shown in Fig. 1. This approach assists the navigation of the robot in complex situations without the need for high-end network infrastructure. The LoRa connectivity boards to be used as repeaters should offer low power consumption with considerably long-range wireless communication and should be able to withstand the harsh agricultural environment. These boards enable the transmission of navigation data (i.e., robot location, orientation, speed, and steering commands) between a simulated and an actual robot. A remarkable advantage of such a LoRa-based wireless network is the power management capability that allows the system to continuously operate in large coverage areas where connection stability and power sources are a concern. Typically, for a LoRa signal operating in the 868 MHz or 915 MHz frequency bands, a Link Budget (LB) of around 140 to 160 dB is commonly encountered. However, the actual Link Budget can vary based on several factors, including transmitter power, antenna gain, Free Space Path Loss (FSPL), receiver sensitivity, propagation environment, and system configuration and settings.

Fig. 1
figure 1

Overview of IoRT for exchanging float32 messages with a field robot and assisting the autonomous navigation in complex situations using LoRa transceivers without the need for high-end network infrastructure

2.2 Overview of the robot

The base vehicle shown in Fig. 2 is a combustion engine four-wheel drive (4WD) and four-wheel steering (4WS) Quatrak manufactured by Irus (IRUS Motorgeräte GmbH, Burladingen, DE) with a track width of 1.2 m, maximum forward and reverse speed of 10 km/h, and approximate weight of 475 kg that utilizes a 2-cylinder petrol engine with 20.1 kW (27 HP) output power. The 4WS mechanism of the vehicle allowed sharp turns with a minimum turning radius at the row-ends, which is of great importance for operation inside actual berry orchards. The robot could be driven remotely via a 2.4 GHz wireless transmitter, or be programmed to follow waypoints using a ROS-based navigation toolbox that was installed on the vehicle by Innok Robotics (Innok Robotics GmbH, Regenstauf, DE) utilizing dual GPS antennas with a custom-built graphical user interface. In the manual mode, the rover could be controlled wirelessly within a 50 m range and was able to operate on uneven terrain up to 60° inclination. The vehicle benefits from HYDAC TTC 580 (HYDAC, Sulzbach, Germany) controller to translate the control steering signals to the actual turning angle on the wheels. A CAD model of the robot was designed in SolidWorks and was programmed in the CoppeliaSim simulation environment (Coppelia Robotics AG, Zurich, Switzerland) with Four-Wheel Ackermann steering to serve as the digital shadow of the robot. Data between the simulated sensors and controllers were exchanged using ROS and MATLAB.

Fig. 2
figure 2

a The four-wheel Ackerman steering robot platform with GPS-based navigation system, obstacle detection sensors, and LoRa transceiver, and b the digital shadow of the robot in simulation environment

2.3 Robot control

The model of the robot’s 4W Ackermann Steering [33] shown in Fig. 3 with the front and rear wheel having their own steering angle, respectively calculated as \(\delta_{front} = l/R_{fl}\), and \(\delta_{rear} = l/R_{rl}\), was implemented in CoppeliaSim using Lua codes. This steering geometry is designed to ensure that all four wheels meet at a common center point during a turn. The Pure Pursuit algorithm [34] was used to generate steering commands and navigate the robot toward any desired target point in the simulation. This provided a relatively simple yet efficient method for real-time path tracking. It uses a look-ahead point which is a fixed distance on the reference path ahead of the robot. The inputs of the algorithm are the current position of the robot (\(x_{c}\),\( y_{c}\)), robot orientation (\(\theta\)), the desired path denoted by a set of waypoints {\((x_{1}\), \( y_{1} )\), \( (x_{2}\), \( y_{2} )\), …}, and a predefined look-ahead distance (\(d\)). The algorithm iteratively calculates the distance from the current position of the robot to each waypoint and finds the closest distance which is represented by \((w_{x}\),\( w_{y} )\). The look-ahead point is then calculated using below Eq. 1 [33].

$$ \left( {lx,{ }ly} \right){ } = { }\left( {w_{x} { } + { }d{ }.{ }cos\left( {\theta_{w} } \right),{ }w_{y} { } + { }d.sin\left( {\theta_{w} } \right)} \right) $$
(1)
Fig. 3
figure 3

Kinematic model of the mobile robot based on four-wheel Ackerman steering

Here there robot orientation (\(\theta\)) is the angle formed between the robot’s current position (\(x_{c}\),\( y_{c}\)) and the nearest waypoint \((w_{x}\),\( w_{y} )\). In this study, the center of the front axle of the robot was used as the reference point to calculate the distance between the current position of the robot and each of the waypoints. The control steering angle \(\delta_{c}\) was calculated using Eq. 2 [33].

$$ \delta_{c} { } = { }arctan\left( {ly - { }y,{ }lx{ } - { }x} \right){ }{-}{ }\theta $$
(2)

The fine-tuning of the control parameters was achieved using an iterative process involving testing and adjusting parameters. The gains and thresholds used in the Pure-pursuit controller were fine-tuned using the MATLAB PID Tuner app to make the steering more gradual and stable and to achieve smoother and more accurate speed control. In situations where the target point is very close to the robot, a heading error-based approach was used to address the issue of the robot rotating around itself. By maintaining a desired heading angle that points towards the target, the robot was able to correct its orientation and move in the desired direction. A “deadband” around the target position was also implemented where the robot did not make small adjustments to prevent oscillations.

2.4 Map generation and coordinate conversion

A 3D map of the Marquardt experimental field of the Leibniz Institute for Agricultural Engineering and Bioeconomy in Potsdam, Germany (Latitude: 52.467386, Longitude: 12.958843) was generated using drone imagery by capturing high-resolution images and stitching them to create a seamless, geo-referenced mosaic as shown in Fig. 4. The location of the LoRa repeaters are also shown in Fig. 4. The dataset used for the generation of the orthoimage and the 3D reconstruction is a combined dataset consisting of a high altitude (100 m) flight and a detailed survey of a subset area, where the orchard was surveyed by a UAV system at a height of 16 m. All surveys were planned with an 80 percent target overlap of the images. For the aerial images, a consumer-grade RGB-camera (α-6000, Sony, Tokyo, Japan) on a gimbal was attached to a quadcopter (HP-X4-E1200, Hexapilots, Germany). For the ground control points and checkpoints for georeferencing and analysis of the reconstruction results, an RTK-GNSS system (HIPer Pro, Topcon, Tokyo, Japan) was used. The overview dataset was captured in a nadir perspective covering the complete area of the field. For the detailed survey, three flight plans were flown to generate the images taken in nadir perspective and in oblique view at a 45° angle, pointing at the crop rows from the side. With these flight plans, a combined data set with an average ground sampling distance of 7.88 mm was generated. For 3D reconstruction and orthoimage generation, Agisoft Metashape (Version 1.8.4, Agisoft, St. Petersburg, Russia) was used. A total of 6 Ground Control and 3 checkpoints were measured and marked in the images, leading to an average error of 22.07 and 21.26 mm in the x and y dimensions of the 3D reconstructed model and in the resulting orthoimage, when compared to the RTK-GNSS positions. This map was used in the simulation environment to show the exact location of the digital shadow of the robot. Coordinate conversion between the simulation environment and the real world, as demonstrated in Fig. 4, was carried out using Eq. 3 [33]. The precise distance between two latitude and longitude points in the actual field was calculated using the Vincenty formula given by Eq. 4 [33], which provides a relatively accurate calculation of the ellipsoidal shape of the earth. In this equation \(d\) is the distance between the two points, \(a\) is the semi-major axis of the earth and is equal to 6,378,137 m, \({\phi }_{1}\) and \({\phi }_{2}\) are the latitudes of point 1 and point 2 in radians.

$$ \begin{gathered} dx{ } = \left( {x{ } - { }x_{1} } \right)/\left( {x_{2} - { }x_{1} } \right) \hfill \\ dy{ } = \left( {y{ } - { }y_{1} } \right)/(y_{3} - { }y_{1} ) \hfill \\ lat{ } = { }\left( {1 - dx} \right).\left( {1 - dy} \right).lat_{1} + { }dx.\left( {1 - dy} \right).lat_{2} + { }dx.dy.lat_{3} + { }\left( {1 - dx} \right).dy.lat_{4} \hfill \\ long{ } = { }\left( {1 - dx} \right).\left( {1 - dy} \right).{ }long_{1} + dx\left( {1 - dy} \right).long_{2} { } + dx.dy.long_{3} + { }\left( {1 - dx} \right).dy{ }.long_{4} \hfill \\ \end{gathered} $$
(3)
$$ \begin{gathered} d = a.arctan\left( {\frac{{\sqrt {\cos^{2} \left( {\phi_{2} } \right).\sin^{2} \left( {\Delta \lambda } \right) + \cos \left( {\phi_{1} } \right).\sin \left( {\phi_{2} } \right) - \sin \left( {\phi_{1} } \right).\cos \left( {\phi_{2} } \right).\cos \left( {\Delta \lambda } \right)} }}{{\sin \left( {\phi_{1} } \right).\sin \left( {\phi_{2} } \right) + \cos \left( {\phi_{1} } \right).\cos \left( {\phi_{2} } \right).\cos \left( {\Delta \lambda } \right)}}} \right) \hfill \\ \Delta {\uplambda } = \frac{\pi }{180}\left( {long_{1} - long_{2} } \right) \hfill \\ \end{gathered} $$
(4)
Fig. 4
figure 4

Schematic of the translation between simulation coordinates (x, y) to the actual field coordinates (lat, long)

To ensure the accuracy and reliability of the manually created paths through the berry rows, several verification steps were implemented. The paths were first manually checked against the high-resolution orthoimage and 3D model to ensure they align accurately with the physical layout of the field, and cross-referencing was done using the RTK-GNSS measurements to validate the positions of key waypoints along the paths. The paths were then tested within a simulation environment to identify any potential issues such as collisions or navigation errors, and simulated runs were performed to ensure the paths are navigable by the robot, adjusting as necessary based on the results. An automated path validation algorithm was implemented in the simulation to check for common human errors, such as paths that pass through obstacles or exceed the operational limits of the robot, and redundant paths were created where necessary to provide alternative routes in case of unforeseen obstacles or errors in the primary path. A video demo of the path validation algorithm can be found here: https://youtu.be/IhjEKPQ7w88. Using these verification and failsafe mechanisms, we managed to maintain the integrity of the manually generated paths and minimize the risk of human error and ensuring reliable navigation through the berry rows.

2.5 Connectivity architecture

The communication architecture and data transmission of the LoRa-based teleoperation system used in this study involves the transmission of the robot’s GPS locations and distance to obstacles, the transmission of data to repeater and edge nodes, and the subsequent transfer of data to cloud storage via an available WiFi connection in the farm office. This architecture is structured into four distinct layers, the farm layer (comprising robot sensor node), the backend layer, the wrapper layer, and the frontend layer which are integrated to facilitate end-user access to live data inside the simulation environment and update the digital shadow model. The farm layer operates in a dual capacity: (i) as a provider, where LoRa nodes inside the orchard collect and transmit data to a gateway device equipped with internet access using the WiFi protocol or convert data packets to JSON format before employing HTTPS protocol for transmission to the backend layer; and (ii) as a client, where each wireless node sends requests to the backend, receiving responses in JSON format via HTTP protocol. The backend layer serves as an intermediary between the backend server and the farm layer. A middle device or server in this layer, utilizing WiFi and REST API providers, initially receives data from the farm layer, processes and analyzes the received data using the simulation, and then saves the processed information in a database through controllers implemented in Lua, MATLAB, and C# frameworks. The wrapper layer encompasses cloud storage, where processed data from the backend are sent to an IoT server for storage, providing users with a secure backup of the collected data. The provider within this layer receives data from the backend for real-time assessment of robot location and obstacles, with the input being the transferred data collected by the field layer. The frontend layer facilitates data visualization by drawing the robot path generated in the simulation, and the actual driven path of the robot inside the orchard. This layer also provides control buttons and indicators to enhance user interaction with the robot.

The custom-designed circuit motherboard shown in Fig. 5a was manufactured by Adaptive AgroTech Consultancy (Adaptive AgroTech, Potsdam, Germany), and was optimized to serve as a versatile data acquisition and LoRa transceiver and repeater node. The board has an onboard RFM95W Lora SX1276 module, with frequency: 868MHz, transmit power: + 20 dBm, link budget: 168 dB, receiver sensitivity: − 148 dBm, and maximum packet size: 256 bytes. The set of interfaces on the board includes three analog sensor inputs, two CAN ports, one digital sensor inputs, I2C, USART, and SPI ports, alongside onboard peripherals such as an SD card module, RTC clock, and LED indicator. With an input voltage range of 12 VDC to 26 VDC, the board ensures flexibility across different applications and platforms. The board was designed to be cost-effective, and easy to install and maintain. In this study, they were placed in IP67 enclosures with GX16 aviation plug connectors as shown in Fig. 5b to operate in harsh environmental conditions. Each board benefits from two microcontrollers, STM32 (STMicroelectronics, Geneva, Switzerland) and one dual-core ESP32-S3 microcontroller (Espressif Systems, Shanghai, China) with built-in WiFi and Bluetooth chips and two ESP-WROOM-32 LX6 processors with 512 kB of SRAM each, capable of handling 240 MHz. The ESP32 contributes dual-core processing, Wi-Fi and Bluetooth capabilities, and energy-efficient power management, while the STM32 provides a robust ARM Cortex-M core, diverse peripherals, and real-time clock functionality. During the LoRa transmission, the board consumed less than 240 mA. To determine the effect of antennas on the quality of LoRa signal, the board was further evaluated with two different antennas, referred to as Antenna A (with 3.5 dBi gain and impedance of 50 Ω) and Antenna B (with 2 dBi gain and impedance: 50 Ω), as shown in Fig. 5c. The cable length for both antennas was 10 cm.

Fig. 5
figure 5

Hardware setup used in the experiment, a the custom-designed board for LoRa connectivity with dual microcontroller, real-time clock, onboard memory, and CANBUS communication, b LoRa repeater nodes, c two LoRa antennas

In this study, the average physical distance between the LoRa node that was interfaced with the simulation and the LoRa repeater nodes that were installed inside the actual field was less than 500 m. The LoRa transceivers were programmed to be active on the air for a total of 36 s in each hour in order to maintain the 1% duty cycle regulations. The active air time (s) for each LoRa message was calculated using Eq. 5 [35],

$$ t_{{air}} = \left( {\frac{1}{{CR}}} \right).\left( {\frac{{2^{{SF}} }}{{BW}}} \right) \cdot \left( {PL + 8} \right) $$
(5)

where SF is the spreading factor, BW is the Bandwidth, \(PL\) is the payload length, and CR is the coding rate (which is typically 4/5 for LoRa). In this study, the values for SF, BW, and PL were respectively 7, 125 kHz, and 220 bytes (including 10 latitude and longitude points in one message), corresponding to 471 ms of air time for each LoRa message. It should be noted that depending on the spreading factor (adjustable between 7 and 12), bandwidth (adjustable between 125, 250, or 500 kHz), and the maximum payload of 256 bytes, it was possible to maintain the 1% duty cycle (36 s in one hour) and transmit the entire data points required for robot teleoperation.

2.6 Signal quality and packet loss rate analysis

To evaluate the strength, quality, and reliability of the transmission, three key signal parameters including Link Budget (LB), Received Signal Strength Indication (RSSI), and estimated Packet Loss Rate (PLRe) were calculated for the two antennas at different distances (as shown in Fig. 6) using Eqs. 610 [35], respectively and were then compared with actual measurements from field experiments. The Link Budget serves as a comprehensive measure, accounting for the gains and losses throughout the communication system. It considers factors such as transmit power, Free Space Path Loss (FSPL), antenna gains, receiver sensitivity, and a safety margin. The FSPL accounts for the attenuation of the signal as it propagates through free space without obstacles. The RSSI provides a measure of the power level received at the receiver and is calculated as the sum of the receiver sensitivity and the gain of the receiver antenna. The purpose of estimating the PLR based on the LB was to provide insight into the potential reliability of the communication link for the specified distances and antenna configurations. The actual PLR (PLRa) for each antenna at different distances was calculated by tracking 100 messages sent by each transmitter node and the number of packets successfully received, and then calculating the percentage. In the below equations, \(P_{tx}\) is the transmit power of the system, \(FSPL\) is the FSPL, \(G_{tx}\) and \(G_{rx}\) are the gains of the transmitter and receiver antennas, respectively, \(P_{rx}\) is the receiver sensitivity, \(d\) is the distance between the transmitter and receiver, \(f\) is the frequency of the operation, \(c\) is the speed of light, \(N_{pr}\) is the number of packets received, and \(N_{ps}\) is the number of packets sent.

$$ FSPL \left( {dB} \right) = 20\log_{10} \left( d \right) + 20\log_{10} \left( f \right) + 20\log_{10} \left( {4\pi /c} \right) $$
(6)
$$ LB = P_{tx} - FSPL + G_{tx} + G_{rx} + P_{rx} + M $$
(7)
$$ RSSI \left( {dBm} \right) = P_{rx} + G_{rx} $$
(8)
$$ PLR_{e} \left( \% \right) = 1 - 0.5^{LB/6} $$
(9)
$$ PLR_{a} \left( \% \right) = \left( {1 - \frac{{N_{pr} }}{{N_{ps} }}} \right) \times 100 $$
(10)
Fig. 6
figure 6

Field experiments for evaluating LoRa connectivity with two antennas at different distances, showing the map of sample points (left), and six sets of transmitters (right)

2.7 Message exchange

An overview of the message exchange between the actual robot and its digital shadow is presented in Fig. 7. The input of the digital shadow inside the simulation is a new target position (x, y), and the outputs are a ROS topic called SimIrus, and a CSV file that includes the corresponding latitude and longitude coordinates of the simulated robot. The LoRa transceiver board that was interfaced with the digital shadow of the robot using ROS serial subscribes to this SimIrus topic and extracts the latitude and longitude coordinates. This node also receives LoRa messages that include the current position of the actual robot. When the digital shadow receives a new target position, it autonomously drives to this position using the Pure-Pursuit controller. The current positions of the digital shadow (\({x}_{c}, {y}_{c}\)) are then translated to real-world coordinates (lat, long) every 50 ms to generate a path. This path is first visualized and validated on Google Maps using a custom-designed web GUI (front end). The key waypoints of this path are sent as LoRa messages to the actual robot in the field via the LoRa transmitter connected to the simulation software and multiple repeater nodes placed in different locations in the field to ensure reliable connectivity. As the actual robot receives the latitude and longitude coordinates of the path, they are published as ROS messages so the path-tracking controller software of the actual robot can subscribe to this message and perform autonomous navigation. At the same time, the new position of the actual robot is also transmitted as a LoRa message to the digital shadow (that is running inside the simulation environment) and is used to update the scene when the software switch shown in Fig. 7 is activated.

Fig. 7
figure 7

The architecture of the LoRa connectivity for exchanging messages between the actual robot and its digital shadow

3 Results and discussion

3.1 Evaluation of LoRa wireless connectivity

Results of analysis of LoRa signal at different distances for comparing antennas A and B, respectively with 3.5 and 2 dBi, are summarized in Table 1, with graphical presentations shown in Figs. 8, 9 and 10. As expected, the higher gain antenna provided a more focused radiation pattern and extended the communication range, especially at longer distances where weaker signal levels were encountered. It should be noted that the gain represents the ability of the antenna to focus or direct the transmitted or received energy in a specific direction. The deviation of the actual field measurements of the LoRa signal strength with the calculated values can be attributed to the environmental conditions, antenna characteristics, multipath propagation, interference, and signal attenuation. Obstacles and environmental factors may have also introduced additional path loss beyond theoretical calculations, affecting signal strength over longer distances. In addition, variations in antenna performance, influenced by manufacturing tolerances, orientation, and other factors are likely to have been different from datasheet specifications. For example, the LoRa RFM95W transceiver’s receiver sensitivity used in this study was specified as − 148 dBm, but in our real-world tests, it showed different performance depending on the calibration, and the actual sensitivity of the receiver at different frequencies. In our experiments, real-world factors like multipath propagation, interference, and equipment setup have led to discrepancies between theoretical and experimental results.

Table 1 Results of LoRa connectivity evaluation with two different antennas at different distances
Fig. 8
figure 8

Plot of changes in the RSSI values at different distances and with two different antennas, (a, b) comparison between the calculated RSSI values and the three LoRa transmitters with antenna A and B, c comparison between the calculated RSSI for antenna A and B, and, d comparison between averaged measured RSSI values for the two antennas

Fig. 9
figure 9

Demonstration of increase in FSPL values (left), and decrease in link budget values for the two antennas at different distances

Fig. 10
figure 10

Plots of expected and measured packet loss rates with each antenna at different distances

The results of the RSSI analysis are shown in Fig. 8, indicating that for distances beyond 2357 m with no signal reception, the measured RSSI values for both antennas were below − 110 dBm. This can be due to a combination of path loss, environmental factors, signal attenuation exceeding 127.3 dB, receiver sensitivity variations, interference, and equipment setup. While the calculated RSSI for the two antennas has yielded relatively similar values (around 2 dBm), the differences between the averaged measured RSSI for the two antennas are significantly larger (around 10 dBm). The null hypothesis of equal means between the averaged RSSI values was also rejected using the t-test. Since the measured RSSI values are the results of an actual field experiment, it can be stated that the choice of antenna should be considered for an effective robot teleoperation system, even if the values from theoretical calculations are not significantly different. The reason for no signal reception after 2357 m (with an RSSI of − 110 dBm) is attributed to a combination of parameters such as signal attenuation, receiver sensitivity, interference and noise, and equipment setup.

Figure 9 shows the plots of Free Space Path Loss (FSPL) and Link Budget (LB) against distance, explaining the communication link’s performance in terms of gains and losses from the transmitter, receiver, and propagation medium. It can be seen that as the distance between the transmitter and receiver increases, the FSPL grows, resulting in a reduction in received signal strength. FSPL assumes a free space environment without obstacles, reflections, or interference. In real-world experiments, additional factors such as buildings, vegetation, and atmospheric conditions further contributed to path loss. The observed increase in FSPL with distance is in fact due to the fundamental of electromagnetic wave propagation in free space, which can be interpreted with the inverse square law’s signal power decrease over distance. The FSPL calculations indicate that the path loss at 2357 m is approximately 127.3 Db. With a Link Budget of 83.8 dB for Antenna A and 82.5 dB for Antenna B, the received signal strength was too weak to be detected reliably, especially considering other losses and factors not included in the theoretical model. While the receiver sensitivity of the LoRa boards is independent of the distance, the decrease in received signal strength due to FSPL and other losses relative to the receiver sensitivity such as atmospheric absorption, refraction, scattering, and diffraction contributes to the overall decrease in the LB with increasing distance, resulting in weakened signal strength. It can be clearly seen that the higher gain antenna directly influenced the communication link’s performance, offering better coverage and extended range. In addition, at longer distances, the signal may be more susceptible to interference from other sources, background noise, or electromagnetic disturbances, which can further degrade the communication link and reduce the effective LB. It should be noted that antennas’ efficiency, polarization alignment, and placement relative to environmental factors play pivotal roles in shaping the LB.

Plots of the expected and measured packet loss rate (PLR) with each antenna at different distances are shown in Fig. 10. It can be observed that for the distance up to 1640 m, the expected and measured PLR were almost the same, however for longer distances such as 2120 and 2357 m, a large deviation is observed. This is due to the presence of obstacles, buildings, foliage, and other objects in the experimental environment that have affected the propagation of the LoRa signal, and reduced its strength at longer distances. It can be stated that the LoRa signals could have undergone multipath propagation, where multiple reflected paths cause signal fading and variations in signal strength. The presence of other electronic devices, noise, or competing signals in the nearby of the experiment could have interfered with the LoRa transmission, affecting the PLR.

3.2 Evaluation of the digital shadow and message exchange

The performance of the digital shadow with Pure-Pursuit controller to follow two reference paths are shown in Figs. 11 and 12, respectively for an ideal generated path and for a user’s drawn path. It can be seen that the response of the kinematic control for the ideal path perfectly matches the reference path, demonstrating an accurate and efficient tracking capability in both x and y direction. This ideal performance is indicative of the Pure-Pursuit controller’s effectiveness in environments where dynamic constraints are minimal or absent. However, some deviations are noticeable in the response of the digital shadow, which can be attributed to the dynamic and other constraints of the simulated robot such as limitations imposed on the steering wheels and joint torque, and real-time computational delays which are inherent in practical robotic systems. The digital shadow’s deviations from the reference path highlight the challenges faced in real-world applications where perfect path tracking is often unattainable.

Fig. 11
figure 11

Evaluation of the digital shadow for tracking a reference path

Fig. 12
figure 12

Demonstration of the paths in the simulation and in the field, highlighting (a) the path generated by the simulated robot versus the user input path, (b) logged data by the simulation software every 0.5 seconds, (c) waypoints generated by the simulated robot in latitude and longitude coordinates for LoRa transmission, and (d) the reference path received by the actual robot in the field and displayed on Google Maps

For the case of the user’s drawn path demonstrated in Fig. 12a, it can be seen that the input path (shown in yellow) does not need to be very accurate since it is just intended to be a guideline for the digital shadow of the robot to navigate autonomously within the rows and at the row-end turnings. The simulation was programmed to log waypoints of the input path and the robot’s driven path (denoted as the response trajectory) every 0.5 s as shown in Fig. 12b. Here the synchronization and accuracy of the input path and the response trajectory executed by the simulated robot are visible. The simulation embedded code then converted the driven path into the standard Geographic Coordinate System (GCS) as plotted in Fig. 12c. This resulted in a total of 1256 latitude–longitude data points in decimal format. These points were later transmitted as multiple LoRa messages to the physical robot in the actual field. In our experiment, each latitude–longitude data point of the path (including the comma between them) contained 23 bytes of data. With the LoRa spreading factor of 7 that was used in this study, and the maximum LoRa payload size of 256 bytes, the entire 1256 data points of the path were transmitted to the robot as multiple LoRa messages each including 10 data points (220 bytes) within a single message. To ensure the 1% duty cycle, the time on the air for each message was calculated to be around 235 ms using the LoRa calculator available on the Semtech website. To verify the efficacy of this transmission and ensure precision, Fig. 12d shows the waypoints received by the robot, which were subsequently displayed and validated using Google Maps. A video demo of the simulated robot is available at: https://youtu.be/KVodRjM-mnU.

The robot’s driven path in the actual field containing waypoints that were logged every 0.5 s by the GPS tracker and were transmitted as multiple LoRa messages to update the simulation scene. When each data point is received, it is also uploaded to a web-based map (here we used Google map service) to provide World Wide Web access to the live location of the robot in the field. It was observed that the majority of the data points received belong to the time when the robot was doing navigation adjustments, particularly during sharp turns (at the row-end turnings) and obstacle avoidance maneuvers. As mentioned earlier, the robot benefits from its own ROS-based autonomous navigation and collision avoidance system that upon receiving target waypoints generates steering and speed commands (published as a twisted message on a topic called cmd_vel) to drive the robot to that point. In other words, the robot does not necessarily require receiving each and every single waypoint of the target path all at once. The robot’s onboard navigation toolbox was in fact interfaced with the LoRa receiver and was able to adjust its trajectory effectively using the most recently received waypoints. This feature is very practical especially when the robot has started navigating the already transmitted path and comes across dynamic situations, including difficult obstacles, or under sudden environmental changes, such as unexpected terrain alterations. For the latency measurements associated with this teleoperation, our results showed an average delay of 0.53 s between the time that the LoRa transmitter on the robot initiated sending one GPS data point and the time that the data point was received by the LoRa received connected to the simulation scene. This latency, though minimal, besides the 1% restrictions on the duty cycle are the two main reasons that we did not want to directly control the robot by transmitting messages containing steering and speed values. The averaged 0.53 s latency observed emphasizes the need for further optimizations, especially for applications requiring real-time maneuverability. Plot of the steering angle control and speed profile of the robot during the experiment are also shown in Fig. 12a and b. The number of row-end turnings shown on the driven path corresponds to the values of the maximum positive or minimum negative steering angle (maximum steering to the left or right). It can also be observed that at these spots, the robot had the lowest speed due to turnings. Sample data stored by the robot collision avoidance system corresponding to the distance detection sensors on the left and right side of the robot are plotted in Fig. 13, showing that the average distance between the robot and the bushes was in the range of 15 to 35 cm.

Fig. 13
figure 13

Sample results from the real robot in the field, showing a plot of the driven path, b plot of the steering angle control, and c plot of the robot’s speed profile

The outcome of this study suggests that the use of a local LoRa wireless network for connectivity in the teleoperation of agricultural mobile robots is feasible and does not pose serious challenges such as accuracy and reliability for small-scale farms such as the one used in this experiment, however, disruptions might occur in larger fields depending on various factors such as the existence of trees, high hill terrains, weather, and long distances. There may also be issues with interference from other wireless devices, which can lead to signal degradation and loss of data. Therefore, proper calibration and installation are essential to ensure the accuracy and reliability of this approach. Understanding and accounting for these parameters are therefore crucial for designing and optimizing wireless communication systems, especially in scenarios where the distance between transmitter and receiver plays a significant role. For example, when calculating the link budget, the FSPL value is subtracted from the transmitter power, contributing to the overall assessment of the link’s performance.

Here, the 5G technology promises significantly better figures [36], but the available solutions on the market cannot confirm this. Future works involve the evaluation of a 5G campus network under a funded project in Germany in which a mobile 5G campus network from CampusGenius with Nokia technology is being operated. The antenna systems have a range of 500 m and up to 800 m under ideal conditions. In conjunction with the 5G Nokia router (Nokia Industrial 5G CPE CPOx504e), this results in a latency time of 20–30 ms, which is significantly less than the 1 ms that 5G technology should actually achieve. In addition, the router has a 1 Gbit Ethernet connection and this also defines the bandwidth for the possible application such as transmitting video streams at the end node. The point at which this data bandwidth is reduced by a large number of routers still needs to be tested. However, one advantage of 5G technology is its long range, which means that the antenna masts can be set up outside the field and do not interfere with agricultural work. For example, a 500 m by 500 m area can be covered with three antennas. The disadvantage here is that the antennas require a fiber optic connection to the base station due to the high bandwidth. This severely restricts the set-up and dismantling times of the mobile system. The advantage that the mobile 5G campus network can move with the required locations is therefore limited and changing more than once a day is unrealistic. Another advantage of 5G campus technology is that up to 10,000 end nodes are possible. This means that all possible applications of the technology can be operated simultaneously, such as video monitoring, robot swarms, teleoperation, sensor nodes, or control application nodes for irrigation.

4 Conclusion

This study demonstrated promising results for the use of the Internet of Robotic Things with a Local LoRa Network in enabling efficient teleoperation of an agricultural mobile robot. We compared the experimental results with theoretical predictions and provided insights into the practical performance and limitations of the LoRa communication system. Our findings highlighted the quality of the LoRa communication link between the robot and the simulation, the robustness of the connectivity architecture and communication for uninterrupted message exchanging, and the core technical challenges that need to be addressed for an effective teleoperation system using LoRa connectivity, including latency, stability, and the limited range of wireless communication. The LoRa transceivers were active on the air for a total of 36 s in each hour in order to maintain the 1% duty cycle regulations (which provided ample time to transmit the generated reference path). Each transmitter was able to send up to 256 bytes in each message, depending on the spreading factor set. The maximum number of 222-byte messages that were sent in one hour was 17,561 messages. The presented approach may have issues with interference from other wireless devices, which can lead to signal degradation and loss of data. Some of the issues encountered during the preliminary experiment phase of this study include the stability in the communication between ROS and microcontrollers in long runs, the high computation and graphical processing requirements for the simulation, and the coordinate calibration required for the map used in the simulation. The first two issues were resolved by programming all codes and functions directly in the simulation environment and optimizing the scene and data saving in a way that requires less computation. Other limitations include accuracy and reliability depending on various factors such as the terrain, weather, and distance. Future work will include the implementation of the 5G network for a significant improvement in data transmission speed and navigation efficiency, as well as sufficient visual and sensor feedback. To identify the specific reasons for the discrepancy, future studies may consider conducting additional experiments, optimizing the setup, and evaluating the impact of environmental factors and equipment performance.