Architecture of Agricultural Robots*
I. Introduction
II. Analogy with the Human Being
A farmer, in the exercise of their agricultural task, for example, weeding with a machete, can be perceived as a system composed of several functional blocks interacting with each other to accomplish the task with precision. These blocks can be described as follows:
- The human body: it constitutes the mechanical base on which the other elements of the system rest, as well as the agricultural tool used (the machete here). We will call it the vector.
- The muscles: they ensure the movement of different parts of the body, such as the feet, hands, or arms. In a robot, this role is played by motors, actuators, and other actuation devices. We will refer to them as actuators.
- The sensory organs: the eyes, hearing, and touch allow the farmer to perceive their environment. Similarly, a robot's sensors provide the necessary information to understand its working environment. These are the sensors.
- The brain: This is the control unit. It plays a central coordinating role. Before the operation, it plans the task to be performed; during execution, it collects information from the sensors, defines appropriate movements, analyses the work done, and adjusts actions if necessary. This block is generally broken down into several sub-modules, forming what is called the software architecture.
- a mechanical vector, serving as a support for the other components and the agricultural tool;
- an actuator block, ensuring movement;
- a sensor block, allowing perception of the environment and the robot;
- a control unit, orchestrating the entire process.
In the following, we will focus more specifically on the software architecture, which details the internal organisation of the control unit.
III. Software Architecture of an Agricultural Robot
The software architecture allows for representing the internal organisation of the control unit of an agricultural robot. The Figure 1 below illustrates the proposed software architecture, which consists of the following blocks:
- Perception block: it groups the algorithms responsible for processing data from sensors to build a representation of the environment in which the robot operates, while estimating its position in this environment. As input, this block receives information provided by various sensors (images, GPS position, LIDAR data, etc.). As output, it provides a modelling of the environment (for example, the location of plants of interest and weeds) as well as the position and orientation of the robot.
- Planning block: it receives information from the perception block (for example, the current position of the robot) and compares it to the objective defined in the overall mission (such as following a predefined trajectory). As output, this block generates an action command expressed as a residual gap between the current situation of the robot and the target to be achieved (lateral and angular deviation from the trajectory).
- Control block: it translates the action command into elementary commands understandable by the actuators (for example, motor speeds). These then execute the necessary actions to correct the trajectory and accomplish the task.
- Supervision block: it orchestrates the execution of the various algorithms of the other blocks and controls the overall progress of the mission. It analyses key metrics, such as lateral tracking error or compliance with work area boundaries (geofencing), and can decide to interrupt the mission in case of a problem. This block can also transmit information to a user interface (computer, tablet, etc.), allowing the operator to monitor the mission's progress and, if necessary, make corrective decisions.
Figure 1: Architecture of an Agricultural Robot

The hardware is based on that of a conventional tractor, enriched with sensors and a control unit enabling automation. The software part manages the robotisation by orchestrating the different modules and information exchanges. Finally, the supervision terminals allow the user to monitor, evaluate, and intervene in the mission.
IV. Conclusion
In conclusion, an agricultural robot is a conventional tractor to which sensors are added for environmental perception and localisation, as well as a control unit which, thanks to its different software blocks, allows for calculating the commands to be sent to the actuators to perform agricultural tasks as a human would.
*: The technical information presented in this article is provided for informational purposes only. It does not replace the official manuals of the manufacturers. Before any installation, handling, or use, please consult the product documentation and adhere to safety instructions. The site Torque.works cannot be held responsible for inappropriate use or incorrect interpretation of the information provided.