Se rendre au contenu

Documentation

Architecture des Robots Agricoles*

I. Introduction

On entend par architecture l’organisation d’un système, définie par la structuration de ses composants et leurs interactions. Pour un robot agricole, une approche intuitive consiste à l’assimiler à un être humain, en particulier à l’agriculteur qui accomplit ses tâches manuellement avec des outils. Cette analogie aide à comprendre les fonctions que le robot doit reproduire de façon automatisée.

Dans cet article, nous nous intéressons spécifiquement à l’architecture d’un robot agricole. Dans un premier temps, nous mettrons en évidence les différents blocs fonctionnels qui composent un tel robot, en les rapprochant des organes et des fonctions d’un agriculteur. Dans un second temps, nous proposerons une architecture logicielle pouvant servir de base à la conception de robots agricoles.

II. Analogie avec l’ être humain

L’une des missions premières d’un robot agricole est de reproduire, voire d’améliorer, la tâche agricole qu’un agriculteur réaliserait manuellement. Utiliser l’être humain comme base de réflexion pour la conception de l’architecture d’un robot agricole apparaît donc à la fois logique et pertinent. 

Un agriculteur, dans l’exercice de sa tâche agricole, par exemple le désherbage à l’aide d’une machette, peut être perçu comme un système constitué de plusieurs blocs fonctionnels interagissant entre eux afin d’accomplir la tâche avec précision. Ces blocs peuvent être décrits de la manière suivante : 

  • Le corps humain : il constitue la base mécanique sur laquelle reposent les autres éléments du système, ainsi que l’outil agricole utilisé (la machette ici).  Nous l’appellerons le vecteur.
  • Les muscles : ils assurent la mise en mouvement des différentes parties du corps, telles que les pieds, les mains ou les bras. Dans un robot, ce rôle est tenu par les moteurs, vérins et autres dispositifs d’actionnement.  On parlera d'actionneurs.
  • Les organes sensoriels: les yeux, l’ouïe ou encore le toucher permettent à l’agriculteur de percevoir son environnement. De manière analogue, les capteurs d’un robot fournissent les informations nécessaires à la compréhension de son milieu de travail. Il s’agit des capteurs.
  • Le cerveau : Il s'agit de l'unité de contrôle. Elle joue un rôle central de coordination. Avant l’opération, elle planifie la tâche à réaliser ; pendant l’exécution, elle collecte les informations issues des capteurs, définit les mouvements appropriés, analyse le travail effectué et ajuste les actions si nécessaire. Ce bloc est généralement décomposé en plusieurs sous-modules, formant ce que l’on appelle l’architecture logicielle.
En résumé, un robot agricole peut être modélisé comme un système composé de quatre blocs principaux : 
  • un vecteur mécanique, servant de support aux autres composants et à l'outil agricole ; 
  • un bloc d’actionneurs, assurant la mise en mouvement ; 
  • un bloc de capteurs, permettant la perception de l’environnement et du robot ; 
  • une unité de contrôle, orchestrant l’ensemble du processus. 

Dans la suite, nous nous intéresserons plus particulièrement à l'architecture logicielle, qui détaille l'organisation interne de l'unité de contrôle.


III. Architecture logicielle d’un robot agricole

L’architecture logicielle permet de représenter l’organisation interne de l’unité de contrôle d’un robot agricole. La Figure 1 ci-dessous illustre l’architecture logicielle proposée, qui se compose des blocs suivants :

  • Bloc de perception : il regroupe les algorithmes chargés de traiter les données issues des capteurs afin de construire une représentation de l’environnement dans lequel évolue le robot, tout en estimant sa position dans cet environnement. En entrée, ce bloc reçoit les informations fournies par différents capteurs (images, position GPS, données LIDAR, etc.). En sortie, il fournit une modélisation de l’environnement (par exemple, la localisation des plantes d’intérêt et des adventices) ainsi que la position et l’orientation du robot.
  • Bloc de planification : il reçoit les informations issues du bloc de perception (par exemple, la position actuelle du robot) et les compare à l’objectif défini dans la mission globale (comme suivre une trajectoire prédéfinie). En sortie, ce bloc génère une consigne d’action exprimée sous la forme d’un écart résiduel entre la situation actuelle du robot et l’objectif à atteindre (écart latéral et angulaire par rapport à la trajectoire). 
  • Bloc de commande : il traduit la consigne d’action en commandes élémentaires compréhensibles par les actionneurs (par exemple, des vitesses de moteurs). Ces derniers exécutent alors les actions nécessaires pour corriger la trajectoire et accomplir la tâche. 
  • Bloc de supervision : il orchestre l’exécution des différents algorithmes des autres blocs et contrôle le déroulement global de la mission. Il analyse des métriques clés, telles que l’erreur latérale de suivi ou le respect des limites de la zone de travail (geofencing), et peut décider d’interrompre la mission en cas de problème. Ce bloc peut également transmettre des informations vers une interface utilisateur (ordinateur, tablette, etc.), permettant à l’opérateur de suivre l’évolution de la mission et, si nécessaire, de prendre des décisions correctives.


Figure 1: Architecture d’un robot agricole

Architecture d’un robot agricole : le matériel reprend celui d’un tracteur classique, enrichi de capteurs et d’une unité de contrôle permettant l’automatisation. La partie logicielle gère la robotisation en orchestrant les différents modules et les échanges d’informations. Enfin, les terminaux de supervision permettent à l’utilisateur de suivre, évaluer et intervenir dans la mission.

Le matériel reprend celui d’un tracteur classique, enrichi de capteurs et d’une unité de contrôle permettant l’automatisation. La partie logicielle gère la robotisation en orchestrant les différents modules et les échanges d’informations. Enfin, les terminaux de supervision permettent à l’utilisateur de suivre, évaluer et intervenir dans la mission.


IV. Conclusion

Pour conclure, un robot agricole est un tracteur conventionnel auquel on ajoute des capteurs pour la perception de l’environnement et la localisation, ainsi qu’une unité de contrôle qui, grâce à ses différents blocs logiciels, permet de calculer les commandes à envoyer aux actionneurs afin de réaliser les tâches agronomiques comme le ferait un être humain.


 *: Les informations techniques présentées dans cet article sont fournies à titre indicatif. Elles ne remplacent pas les notices officielles des fabricants. Avant toute installation, manipulation ou utilisation, veuillez consulter la documentation du produit et respecter les consignes de sécurité. Le site Torque.works ne saurait être tenu responsable d'une utilisation inappropriée ou d’une interprétation incorrecte des informations fournies.