ROBOT AUTONOME AVEC GUIDAGE EN MODE POUSSEE DOMAINE TECHNIQUE DE L'INVENTION AUTONOMOUS ROBOT WITH GUIDING IN PUSH MODE TECHNICAL FIELD OF THE INVENTION
[0001] La présente invention concerne un robot motorisé. Elle concerne plus particulièrement un robot capable de se mouvoir en mode « poussée » par la présence d'un opérateur à une extrémité du robot. The present invention relates to a motorized robot. It relates more particularly to a robot capable of moving in "push" mode by the presence of an operator at one end of the robot.
ETAT DE LA TECHNIQUE ANTERIEURE STATE OF THE PRIOR ART
[0002] Les robots autonomes motorisés sont aujourd'hui bien connus et utilisés dans de nombreux domaines tels que la logistique, l'agriculture, la production industrielle, etc. Pour assurer leur déplacement de façon autonome, les robots doivent comporter des moyens de repérage et de guidage. De nombreuses formes de mises en œuvre existent aujourd'hui, avec des capteurs et/ou caméras agencés à des endroits permettant de mettre en œuvre les fonctions de repérage permettant au robot de se déplacer dans de condition de sécurité acceptables. [0002] Powered autonomous robots are now well known and used in many fields such as logistics, agriculture, industrial production, etc. To ensure their movement autonomously, the robots must include locating and guiding means. Many forms of implementation exist today, with sensors and / or cameras arranged at locations to implement the locating functions allowing the robot to move in acceptable safety conditions.
[0003] Pour gérer le déplacement, un robot autonome peut être programmé en fonction d'un trajet précis à effectuer. Ce mode est bien adapté pour les trajets devant être effectués de façon répétée. Dans d'autres cas, par exemple lorsqu'un opérateur souhaite effectuer un trajet unique, le robot dispose de capteurs permettant de détecter l'opérateur, et de moyens de guidage permettant au robot de se déplacer en suivant l'opérateur. Ce mode est bien connu sous le terme anglais « follow-me » (suivez-moi). D'autres exemples de solutions sont présentés ci-après. To manage the movement, an autonomous robot can be programmed according to a specific path to perform. This mode is well suited for journeys to be made repeatedly. In other cases, for example when an operator wishes to make a single path, the robot has sensors for detecting the operator, and guiding means for the robot to move by following the operator. This mode is well known as "follow-me" (follow me). Other examples of solutions are presented below.
[0004] Le document US2006140450 décrit un dispositif et un procédé de suivi d'un être humain. Le dispositif comprend un support de stockage stockant un programme pour exécuter le procédé et un système électronique mobile comprenant l'appareil. L'appareil de poursuite de l'être humain comprend : un module de détection de l'emplacement du haut du corps de l'être humain ; un module de détection de position de la jambe d'un être humain ; un module de sélection d'objet suivi ; une vitesse de suivi et une calculatrice d'orientation pour calculer la vitesse. Le dispositif permet de suivre un être humain. US2006140450 discloses a device and a method of monitoring a human being. The device includes a storage medium storing a program for executing the method and a mobile electronic system comprising the apparatus. The human tracking apparatus includes: a module for detecting the location of the upper body of the human being; a module for detecting the position of the leg of a human being; a tracking object selection module; a tracking speed and an orientation calculator to calculate the speed. The device makes it possible to follow a human being.
[0005] Le document CN 105005247 décrit un transpalette susceptible d'être commandé à distance par un opérateur au moyen d'une communication sans fil. En outre, le transpalette peut suivre un opérateur automatiquement.
[0006] Le document TW201540447 décrit un capteur pour détecter la posture du squelette humain devant un robot et se déplacer en fonction de commandes gestuelles du corps humain. Le robot suit l'individu qui se déplace. CN document 105005247 describes a pallet truck that can be controlled remotely by an operator by means of a wireless communication. In addition, the pallet truck can follow an operator automatically. [0006] Document TW201540447 describes a sensor for detecting the posture of the human skeleton in front of a robot and to move according to gestural commands of the human body. The robot follows the individual who is moving.
[0007] Le document KR101014531 décrit une méthode de suivi d'un humain par un robot motorisé. Le capteur est prévu pour détecter les jambes d'un individu et de le suivre dans ses déplacements. The document KR101014531 describes a method of monitoring a human by a motorized robot. The sensor is designed to detect the legs of an individual and follow him in his movements.
[0008] Le document JP2008149399 décrit un robot motorisé se déplaçant à une vitesse appropriée pour suivre une personne qui se déplace en même temps. Le robot se déplace à côté de l'individu, en même temps que lui. [0008] JP2008149399 discloses a motorized robot moving at a suitable speed to follow a person who moves at the same time. The robot moves next to the individual, at the same time as him.
[0009] Le document JP2003280739 décrit un robot motorisé capable de suivre une personne humaine. [0009] JP2003280739 describes a motorized robot capable of following a human person.
[0010] Ces solutions permettent à un robot autonome motorisé de suivre un opérateur de manière relativement fiable. Néanmoins, ces solutions impliquent que l'opérateur précède le robot sur le chemin qu'il souhaite lui faire parcourir. Or, en se déplaçant devant le robot, l'opérateur ignore complètement se qui se passe derrière lui, à savoir si le robot le suit ou pas, si le robot dévie de la route suivie par l'opérateur, ou même s'il est en détresse ou s'il a subit un incident. Cette situation donne lieu à un très grand nombre d'incertitudes quand à la qualité et la fiabilité du suivi effectué par le robot. These solutions allow a motorized autonomous robot to follow an operator relatively reliably. Nevertheless, these solutions imply that the operator precedes the robot on the path he wants to make him travel. However, when moving in front of the robot, the operator completely ignores what is happening behind him, whether the robot is following him or not, whether the robot deviates from the road followed by the operator, or even if he is in distress or if he has an incident. This situation gives rise to a great number of uncertainties as to the quality and reliability of the monitoring carried out by the robot.
[0011] Dans d'autres cas, il arrive qu'un opérateur soit dans une situation l'obligeant à changer de sens de déplacement. Or, avec un robot « suiveur », l'opérateur est alors obligé de contourner le robot pour aller se positionner du côté opposé pour reprendre un mode suivi. Ce cas contraint à prévoir des moyens de reconnaissance de l'opérateur des deux côtés du robot. Enfin, dans certains cas, un opérateur bloqué n'est pas en mesure de contourner le robot pour aller se positionner de l'autre côté. Il faut alors prévoir des moyens de dépannage pour permettre de gérer la situation, par exemple en remorquant le robot, ou en le soulevant pour le tourner de 180 degrés. In other cases, it happens that an operator is in a situation requiring him to change direction of travel. However, with a robot "follower", the operator is then forced to bypass the robot to go to position the opposite side to resume a tracking mode. This case makes it necessary to provide means for recognizing the operator on both sides of the robot. Finally, in some cases, a blocked operator is not able to bypass the robot to go to the other side. It is then necessary to provide troubleshooting means to help manage the situation, for example by towing the robot, or by lifting it to turn 180 degrees.
[0012] Le document Youtube « Robot assistant Effibot de Effidence au Sival 2016 » décrit un Robot capable de se déplacer derrière l'opérateur en mode suivi mais aussi devant lui, grâce à une télécommande pour le guider à distance. Ce mode de conduite n'est pas intuitif et la télécommande peut encombrer l'opérateur.
[0013] La vidéo Youtube « Fini les bottes, avec Effibot ? » décrit un robot capable de se déplacer en suivant l'opérateur. [0012] The Youtube document "Effibot assistant robot Effidence to Sival 2016" describes a robot able to move behind the operator in tracking mode but also in front of him, with a remote control to guide him from a distance. This mode of driving is not intuitive and the remote control can clutter the operator. [0013] The Youtube video "Finish the boots, with Effibot? Describes a robot that can move by following the operator.
[0014] Dans ces deux vidéos, on décrit un robot capable de suivre l'opérateur grâce à un système de repérage qui lui permet de détecter les jambes de l'opérateur par exemple. Cependant, sa zone de repérage est limitée à l'avant du robot, l'arrière étant obstrué par du hardware. En mode poussée, une télécommande est nécessaire afin de transmettre au robot les instructions de déplacement. In these two videos, there is described a robot capable of following the operator through a tracking system that allows him to detect the legs of the operator for example. However, its cue area is limited to the front of the robot, the rear being obstructed by hardware. In push mode, a remote control is required to transmit the movement instructions to the robot.
[0015] Pour pallier ces différents inconvénients, l'invention prévoit différents moyens techniques. To overcome these disadvantages, the invention provides different technical means.
EXPOSE DE L'INVENTION SUMMARY OF THE INVENTION
[0016] Tout d'abord, un premier objet de l'invention consiste à prévoir un robot autonome motorisé capable de se faire suivre par un opérateur tout en permettant à ce dernier de pouvoir visualiser le robot en cours de déplacement. First, a first object of the invention is to provide a motorized autonomous robot capable of being followed by an operator while allowing the latter to be able to view the robot during movement.
[0017] Un autre objet de l'invention consiste à prévoir un robot autonome motorisé de construction peu coûteuse. Another object of the invention is to provide a motorized autonomous robot inexpensive construction.
[0018] Un autre objet de l'invention consiste à prévoir un robot autonome motorisé dont la mise en œuvre est simple et fiable. Another object of the invention is to provide a motorized autonomous robot whose implementation is simple and reliable.
[0019] Pour ce faire, l'invention prévoit un robot autonome motorisé comprenant un corps monté sur roues ou chenilles ou pattes, un dispositif de repérage, un module de conduite, en communication avec le dispositif de repérage et comprenant un module de détection de position relative d'un opérateur dans une zone de conduite d'un côté du robot, ledit module de détection étant adapté pour déterminer une position relative de l'opérateur par rapport à une position de référence correspondant à l'arrêt du robot, ladite position relative étant utilisée par un module de consigne afin de générer une consigne de déplacement elle-même transmise à un module de guidage pour faire avancer et/ou tourner et/ou translater latéralement le robot dans une zone d'avancement situé sur un autre côté du robot. To do this, the invention provides a motorized autonomous robot comprising a body mounted on wheels or tracks or lugs, a tracking device, a driving module, in communication with the tracking device and comprising a detection module of relative position of an operator in a driving zone on one side of the robot, said detection module being adapted to determine a relative position of the operator with respect to a reference position corresponding to the stoppage of the robot, said position relative being used by a setpoint module to generate a displacement instruction itself transmitted to a guide module for advancing and / or rotating and / or laterally translating the robot in a forward zone located on another side of the robot.
[0020] Un tel dispositif permet de configurer un robot de façon à ce que le conducteur pousse virtuellement ce dernier sans utiliser de télécommande. Dans ce document, ce mode est désigné « poussez-moi », par analogie au mode « suivez-moi » où le robot suit
l'utilisateur. En variante, un robot est avantageusement muni des deux modes de conduites, pour un maximum de souplesse d'utilisation. Such a device makes it possible to configure a robot so that the driver virtually pushes the latter without using a remote control. In this document, this mode is called "push me", by analogy with the "follow me" mode where the robot follows the user. In a variant, a robot is advantageously provided with both modes of pipe, for maximum flexibility of use.
[0021] Grâce à un tel dispositif, l'opérateur peut commander le déplacement d'un robot en conservant une parfaite visibilité sur le robot lui-même et son environnement. L'opérateur peut ainsi réagir immédiatement face à toute situation imprévue ou face à un incident. Il peut facilement et immédiatement interagir avec le robot et modifier ou adapter la conduite en cours de route, en temps réel et sans être encombré par une télécommande. Dans le cas d'une variante de robot pourvue d'un mode de conduite « suivez-moi », le conducteur peut passer d'un mode de conduite à l'autre sans devoir contourner le robot, ce qui est parfois impossible sur certains sites de travail comme par exemple entre des vignes ou dans une serre. With such a device, the operator can control the movement of a robot while maintaining a perfect visibility on the robot itself and its environment. The operator can react immediately to any unforeseen situation or incident. It can easily and immediately interact with the robot and modify or adapt the driving en route, in real time and without being cluttered by a remote control. In the case of a robot variant equipped with a "follow me" driving mode, the driver can switch from one driving mode to another without having to work around the robot, which is sometimes impossible on certain sites. work such as between vineyards or in a greenhouse.
[0022] De manière avantageuse, la position relative de l'opérateur est déterminée par la mesure d'un écart longitudinal et un écart latéral par rapport à une position de référence correspondant à l'arrêt du robot. Advantageously, the relative position of the operator is determined by the measurement of a longitudinal deviation and a lateral deviation with respect to a reference position corresponding to the stopping of the robot.
[0023] En variante, la position relative de l'opérateur est déterminée par la mesure d'un écart angulaire (a) et d'un écart de rayon (r) par rapport à une position de référence correspondant à l'arrêt du robot. In a variant, the relative position of the operator is determined by measuring an angular difference (a) and a radius deviation (r) with respect to a reference position corresponding to the stoppage of the robot. .
[0024] De manière avantageuse, le dispositif de repérage comporte un seul capteur. Cette caractéristique technique permet d'obtenir un agencement simple, avec un câblage limité, et une grande fiabilité. Un tel agencement permet de limiter les coûts et de simplifier la construction du robot. Ce même capteur peut servir à détecter les obstacles présents le long du trajet du robot. Advantageously, the tracking device comprises a single sensor. This technical feature provides a simple layout with limited wiring and high reliability. Such an arrangement makes it possible to limit the costs and to simplify the construction of the robot. This same sensor can be used to detect obstacles present along the path of the robot.
[0025] Selon un mode de réalisation avantageux, le dispositif de repérage comprend un module qui permet de déterminer la position relative de l'opérateur par rapport au robot à conduire. Un tel module peut comprendre par exemple un élément sélectionné dans la liste suivante : un laser, un Lidar, un sonar, un radar, une caméra, une caméra thermique, un dispositif de mesure de distance par infrarouge, un dispositif de mesure par radio (par exemple UWB : Ultra Wide Band), un GPS. According to an advantageous embodiment, the tracking device comprises a module that determines the relative position of the operator relative to the robot to drive. Such a module may comprise for example an element selected from the following list: a laser, a Lidar, a sonar, a radar, a camera, a thermal camera, an infrared distance measuring device, a radio measurement device ( for example UWB: Ultra Wide Band), a GPS.
[0026] Le dispositif de repérage est de préférence adapté pour émettre un faisceau rotatif sur une plage angulaire d'au moins 300° et plus préférentiellement de 330° et encore plus préférentiellement de sensiblement 360°. Cette caractéristique présente l'avantage d'offrir
une visibilité totale ou quasi totale pour le robot à l'aide d'un unique capteur, simplifiant considérablement l'architecture et la mise en œuvre du système. En outre, pour un robot avec un système de conduite bimodal (suivez-moi ou « poussez-moi »), le dispositif de repérage permet de gérer simplement les deux modes, avec une configuration simple et fiable. The tracking device is preferably adapted to emit a rotating beam over an angular range of at least 300 ° and more preferably 330 ° and even more preferably substantially 360 °. This feature has the advantage of offering Total or near total visibility for the robot using a single sensor, greatly simplifying the architecture and implementation of the system. In addition, for a robot with a bimodal driving system (follow me or "push me"), the tracking device allows to simply manage both modes, with a simple and reliable configuration.
[0027] Le dispositif de repérage permet un usage dans des environnements divers et même dans des conditions difficiles, voire extrêmes. En effet, le laser par exemple, peut être utilisé tant dans une pièce plongée dans l'obscurité, qu'en extérieur en présence d'un soleil intense. Enfin, le repérage sur 360 degrés présente l'avantage d'offrir une visibilité totale pour le robot garantissant une plus grande sécurité. The tracking device allows use in various environments and even in difficult or extreme conditions. Indeed, the laser for example, can be used both in a room plunged in the dark, and outside in the presence of an intense sun. Finally, the 360-degree tracking has the advantage of offering total visibility for the robot to ensure greater safety.
[0028] Selon un autre mode de réalisation avantageux, le dispositif de repérage est configuré pour détecter les éléments environnementaux permettant d'assurer un déplacement sans collision. According to another advantageous embodiment, the tracking device is configured to detect the environmental elements to ensure a collisionless movement.
[0029] L'invention prévoit également un système de conduite pour robot autonome tel que préalablement décrit, comprenant un dispositif de repérage apte à communiquer avec un module de conduite pourvu d'un microprocesseur et d'instructions de mise en œuvre, ledit module de conduite comprenant un module de détection de position relative de l'opérateur, un module de consigne de déplacement et un module de guidage, le système de conduite étant configuré de façon à permettre une conduite par un opérateur situé dans une zone de conduite d'un côté du robot pour faire avancer et/ou tourner et/ou translater latéralement le robot dans une zone d'avancement situé d'un autre côté du robot. The invention also provides a driving system for autonomous robot as previously described, comprising a locating device adapted to communicate with a driver module provided with a microprocessor and implementation instructions, said module of comprising a relative position detection module of the operator, a displacement instruction module and a guide module, the driving system being configured to allow driving by an operator located in a driving zone of a side of the robot to advance and / or rotate and / or translate laterally the robot in a forward zone located on the other side of the robot.
[0030] Un tel système permet d'équiper un grand nombre de robots autonomes motorisés pour leur faire bénéficier du mode de conduite « poussez-moi ». Such a system can equip a large number of autonomous motorized robots to make them benefit from the driving mode "push me".
[0031] L'invention prévoit également un procédé de conduite d'un robot autonome motorisé tel que préalablement décrit par un opérateur, comprenant les étapes suivantes : The invention also provides a method of driving a motorized autonomous robot as previously described by an operator, comprising the following steps:
le module de détection de position relative de l'opérateur détermine la position relative de l'opérateur par la mesure d'un écart longitudinal et d'un écart latéral par rapport à une position de référence correspondant à l'arrêt du robot ; the relative position detection module of the operator determines the relative position of the operator by measuring a longitudinal deviation and a lateral deviation from a reference position corresponding to stopping the robot;
le module de consigne de déplacement, reçoit les données de position relative de l'opérateur et détermine une consigne de déplacement; the displacement instruction module receives the relative position data of the operator and determines a displacement instruction;
le module de guidage reçoit la consigne de déplacement et assure le déplacement du robot en accord avec la consigne de déplacement.
[0032] De manière avantageuse, la direction angulaire du robot est déterminée par le module de consigne en fonction de l'écart angulaire ou de l'écart latéral, de sorte que plus cet écart est grand, plus le virage est prononcé. the guidance module receives the displacement instruction and moves the robot in accordance with the displacement instruction. Advantageously, the angular direction of the robot is determined by the setpoint module as a function of the angular deviation or the lateral deviation, so that the greater the difference, the greater the turn is pronounced.
[0033] Egalement de manière avantageuse, la vitesse de déplacement du robot est déterminée par le module de consigne en fonction de l'écart de rayon (r) ou de l'écart longitudinal, de sorte que plus cet écart est grand, plus la vitesse est élevée. Also advantageously, the speed of movement of the robot is determined by the setpoint module as a function of the radius deviation (r) or the longitudinal gap, so that the greater the difference, the greater the speed is high.
[0034] En mode « poussez-moi », contrairement au mode « suivez-moi », l'utilisateur est véritablement actif et conduit le robot. Il décide de sa position relative par rapport au robot afin de conduire ce dernier et bien le diriger entre les obstacles et vers le chemin qu'il souhaite. L'utilisateur a la possibilité de réagir à toute situation ou événement en temps réel, puisqu'il voit le robot et son environnement de façon continue. Ce mode de conduite est donc très sûr, très fiable, intuitif, et procure une grande capacité d'adaptation sur une infinité de sites. In "push me" mode, unlike the "follow me" mode, the user is really active and drives the robot. He decides on his relative position in relation to the robot in order to drive the robot and steer it between the obstacles and towards the path it wants. The user has the opportunity to react to any situation or event in real time, since he sees the robot and its environment continuously. This mode of driving is very safe, very reliable, intuitive, and provides great adaptability on an infinity of sites.
[0035] Selon encore un mode de réalisation avantageux, le module de détection de position relative de l'opérateur est prévu pour détecter un mouvement ou signe de l'opérateur correspondant à une consigne d'arrêt du déplacement du robot. Cette caractéristique permet à l'utilisateur de réagir très rapidement, sans devoir toucher le robot, pour un maximum de réactivité et de sécurité. En variante, un recul de l'opérateur peut servir à commander un arrêt. Encore en variante, un bouton d'arrêt peut être prévu sur le robot ou une commande à distance. According to yet another advantageous embodiment, the relative position detection module of the operator is provided to detect a movement or sign of the operator corresponding to a stop instruction of the movement of the robot. This feature allows the user to react very quickly, without having to touch the robot, for maximum responsiveness and security. Alternatively, a retreat of the operator can be used to control a stop. Still alternatively, a stop button can be provided on the robot or a remote control.
DESCRIPTION DES FIGURES DESCRIPTION OF THE FIGURES
[0036] Tous les détails de réalisation sont donnés dans la description qui suit, complétée par les figures 1 à 6, présentées uniquement à des fins d'exemples non limitatifs, et dans lesquelles: All the details of embodiment are given in the description which follows, supplemented by FIGS. 1 to 6, presented solely for purposes of non-limiting examples, and in which:
-la figure 1A est une représentation schématique d'un exemple de robot autonome avec système de conduite selon l'invention ; FIG 1A is a schematic representation of an example of autonomous robot with driving system according to the invention;
-la figure 1 B est une représentation schématique d'un exemple de robot autonome situé entre le conducteur et la zone de conduite ; FIG 1B is a schematic representation of an example of autonomous robot located between the driver and the driving zone;
- les figures 2, 3 et 4 sont des exemples de déplacements avec virages d'un robot autonome motorisé selon l'invention ;
- la figure 5 présente un organigramme fonctionnel illustrant les principales étapes d'un procédé de conduite selon l'invention ; FIGS. 2, 3 and 4 are examples of movements with bends of a powered autonomous robot according to the invention; FIG. 5 presents a functional flowchart illustrating the main steps of a driving method according to the invention;
- la figure 6 illustre un exemple de module de conduite pour robot autonome motorisé selon l'invention. FIG. 6 illustrates an example of a motorized autonomous robot driving module according to the invention.
DESCRIPTION DETAILLEE DE L'INVENTION DETAILED DESCRIPTION OF THE INVENTION
[0037] L'objectif est de manipuler un robot en le précédant mais sans le toucher et sans utiliser de joystick ou de télécommande. Le robot peut s'immobiliser brusquement si son système d'arrêt d'urgence se déclenche. Dans ce cas, la personne qui suit le robot ne doit pas heurter le robot. Le robot peut s'immobiliser brusquement si son système d'arrêt d'urgence se déclenche. Il faut alors prévoir que la personne qui suit le robot ne heurte ce dernier. Par ailleurs, le robot doit être suffisamment loin pour que la personne puisse faire un pas sans risquer de heurter le robot avec sa jambe. The objective is to manipulate a robot by preceding it but without touching it and without using a joystick or remote control. The robot can come to a sudden stop if its emergency stop system is triggered. In this case, the person following the robot must not hit the robot. The robot can come to a sudden stop if its emergency stop system is triggered. It is then necessary to foresee that the person who follows the robot does not strike this last one. In addition, the robot must be far enough for the person to take a step without risk of hitting the robot with his leg.
[0038] La figure 1A illustre un exemple de réalisation d'un robot 1 comprenant un corps 2 monté sur roues 3. Dans cet exemple, le corps 2 est de forme rectangulaire, et sensiblement plat, pour maintenir le centre de gravité près du sol et faciliter les opérations de chargement et de déchargement par l'opérateur. En variante, le corps peut être conçu selon une vaste panoplie de formes et de profils, en fonction des utilisations prévues, et des qualités esthétiques requises. De façon classique, le robot comporte au moins un moteur, électrique ou thermique, et des moyens permettant de gérer les déplacements de façon autonome. FIG. 1A illustrates an exemplary embodiment of a robot 1 comprising a body 2 mounted on wheels 3. In this example, the body 2 is of rectangular shape, and substantially flat, to maintain the center of gravity close to the ground and facilitate loading and unloading operations by the operator. Alternatively, the body can be designed according to a wide range of shapes and profiles, depending on the intended uses, and aesthetic qualities required. In a conventional manner, the robot comprises at least one motor, electric or thermal, and means for managing the movements autonomously.
[0039] Dans l'exemple de réalisation de la figure 1A, le robot comprend un plateau de chargement 5 agencé au dessus du corps 2. Cette position permet une grande aisance pour manipuler les charges à transporter par le robot. La figure 1 montre également que le plateau 5 est espacé du corps 2. Dans cet exemple, la surélévation du plateau est assurée par des entretoises 6 de séparation, agencées entre le dessus du corps 2 et le dessous du plateau. In the embodiment of Figure 1A, the robot comprises a loading plate 5 arranged above the body 2. This position allows great ease to handle the loads to be transported by the robot. Figure 1 also shows that the plate 5 is spaced from the body 2. In this example, the elevation of the plate is provided by separation spacers 6, arranged between the top of the body 2 and the underside of the plate.
[0040] Tel que montré à la figure 1A, le robot de cet exemple de réalisation comprend six entretoises réparties de façon à bien supporter la totalité de la surface du plateau, soit deux entretoises à chaque extrémité et deux entretoises vers la zone médiane du corps. Le robot est conçu pour avancer dans au moins une direction, quelle qu'elle soit, il peut tourner et effectuer des trajectoires curvilignes ou rectilignes. Le changement de direction angulaire est assuré soit par pivotement des roues (deux ou quatre roues directionnelles) ou par variation de vitesse angulaire relative entre les roues de chaque côté du robot.
[0041] A cet effet, le robot est avantageusement équipé de quatre moteurs électriques, implantés dans les axes des roues. Le robot peut également être pourvu d'un moteur unique avec deux ou quatre roues motrices. Le corps 2 permet de loger une ou plusieurs batteries et les éléments électroniques requis pour assurer la gestion et le guidage du robot. As shown in Figure 1A, the robot of this embodiment comprises six spacers distributed so as to support the entire surface of the plate, two spacers at each end and two spacers to the middle zone of the body . The robot is designed to advance in at least one direction, whatever it is, it can rotate and perform curvilinear or rectilinear trajectories. The change of angular direction is ensured either by pivoting the wheels (two or four directional wheels) or by relative angular velocity variation between the wheels on each side of the robot. For this purpose, the robot is advantageously equipped with four electric motors, located in the axes of the wheels. The robot can also be equipped with a single engine with two or four driving wheels. The body 2 can accommodate one or more batteries and the electronic elements required for the management and guidance of the robot.
[0042] La surélévation du plateau 5 par rapport au dessus du corps permet de former une zone 7 de vision, sensiblement libre dans laquelle un dispositif de repérage 4, de préférence unique, est agencé. The elevation of the plate 5 relative to the top of the body allows to form a zone 7 of vision, substantially free in which a registration device 4, preferably single, is arranged.
[0043] Dans l'exemple illustré, les entretoises 6 de séparation sont constituées de plaquettes sensiblement minces orientées de sorte que leur plan principal soit sensiblement parallèle à l'axe du faisceau du dispositif de repérage 4. Toujours dans l'exemple des figures 1 et 2, le dispositif de repérage 4 comprend un laser radar (ou LIDAR) adapté pour permettre de repérer les objets environnants sur une plage angulaire de 360°. Les entretoises sont suffisamment minces et espacées pour ne pas entraver la vision de l'environnement. In the illustrated example, the spacers 6 of separation consist of substantially thin plates oriented so that their main plane is substantially parallel to the axis of the beam of the tracking device 4. Still in the example of Figures 1 and 2, the tracking device 4 comprises a radar laser (or LIDAR) adapted to locate the surrounding objects over an angular range of 360 °. The spacers are thin enough and spaced apart so as not to hinder the vision of the environment.
[0044] En variante, d'autres types de capteurs peuvent être utilisés, tels que une ou plusieurs caméras, un ou plusieurs capteurs inductifs, ou autres. Des solutions hybrides, avec plusieurs types de capteurs, peuvent aussi être mises en œuvre. Alternatively, other types of sensors may be used, such as one or more cameras, one or more inductive sensors, or the like. Hybrid solutions, with several types of sensors, can also be implemented.
EXEMPLES DE CONDUITE EN MODE « POUSSEZ-MOI » EXAMPLES OF DRIVING IN "PUSH ME" MODE
[0045] Dans les exemples de mise en œuvre du système et procédé de conduite de l'invention illustrés aux figures 1 B, 2, 3 et 4, un exemple de robot 1 sans plateau porte- charge est utilisé à des fins d'illustration. Le dispositif de repérage 4 est avantageusement un scanner laser (ou LIDAR) actif sur 360 degrés, qui permet de détecter à la fois les éléments environnants le robot comme par exemple des objets, murs, parois ou obstacles et le conducteur du robot 10. Le conducteur est mobile dans une zone de conduite 20 située d'un côté du robot 1. Une zone d'avancement 30, dans laquelle le robot est susceptible de se déplacer, se trouve du côté opposé à la zone de conduite 20. In the examples of implementation of the system and method of driving the invention illustrated in Figures 1B, 2, 3 and 4, an example of robot 1 without load plate is used for illustration purposes . The tracking device 4 is advantageously a laser scanner (or LIDAR) active 360 degrees, which can detect both the surrounding elements of the robot such as objects, walls, walls or obstacles and the driver of the robot 10. The The conductor is movable in a driving zone 20 located on one side of the robot 1. A feed zone 30, in which the robot is able to move, is on the opposite side to the driving zone 20.
[0046] L'exemple de la figure 1 B illustre un exemple de robot se déplaçant en mode « poussez-moi » selon une direction sensiblement rectiligne. The example of Figure 1 B illustrates an example of a robot moving in "push me" mode in a substantially rectilinear direction.
[0047] L'exemple de la figure 2 illustre un exemple de robot se déplaçant en mode « poussez-moi » en amorçant un virage à droite. The example of Figure 2 illustrates an example of a robot moving in "push me" mode by initiating a right turn.
[0048] L'exemple de la figure 3 illustre un exemple de robot se déplaçant en mode
« poussez-moi » en amorçant un virage à gauche. The example of Figure 3 illustrates an example of a robot moving in mode "Push me" by starting a left turn.
[0049] L'exemple de la figure 4 illustre un exemple de robot se déplaçant en mode « poussez-moi » en amorçant un virage à gauche grâce à une autre méthode de mesure de la position de consigne. The example of Figure 4 illustrates an example of a robot moving in "push me" mode by initiating a left turn with another method of measuring the set position.
SYSTEME DE CONDUITE DRIVING SYSTEM
[0050] La figure 6 illustre de façon schématique un exemple de système de conduite pour robot autonome comprenant un dispositif de repérage 4 (montré aux figures 1A, 1 B, 2, 3 et 4) tel que préalablement décrit, apte à communiquer par liaison filaire ou sans fil avec un module de conduite 100. Pour sa mise en œuvre, le module de conduite comprend au moins un microprocesseur 101 et des instructions de mise en œuvre 102 du microprocesseur des différents modules. Le module de conduite prévoit également un module 103 de détection de position relative de l'opérateur et un module 104 de consigne de déplacement. Un module de guidage 105 assurant le guidage du robot le long de la zone d'avancement, est également prévu. Le module de conduite comprend avantageusement des modules mémoires tels qu'un module 106 de données de position relative du conducteur, et un module 107 de données de consigne de déplacement du robot. Un module de détection d'obstacle peut également être prévu. FIG. 6 schematically illustrates an exemplary autonomous robot driving system comprising a tracking device 4 (shown in FIGS. 1A, 1B, 2, 3 and 4) as previously described, able to communicate by link. Wired or wireless with a driving module 100. For its implementation, the driving module comprises at least one microprocessor 101 and implementation instructions 102 of the microprocessor of the various modules. The driving module also provides a module 103 for detecting the relative position of the operator and a displacement instruction module 104. A guiding module 105 guiding the robot along the advancement zone is also provided. The driving module advantageously comprises memory modules such as a module 106 of relative position data of the driver, and a module 107 of the robot's movement reference data. An obstacle detection module can also be provided.
[0051] Le système de conduite est configuré de façon à permettre une conduite par un opérateur 10 situé dans une zone de conduite 20 d'un côté du robot 1 pour faire avancer le robot dans une zone d'avancement 30 situé du côté opposé. Le système de conduite est donc de type « poussez-moi », puisque le robot précède le conducteur, qui conduit le robot, sans contact avec celui-ci ni télécommande pour le commander à distance. The driving system is configured to allow driving by an operator 10 located in a driving zone 20 on one side of the robot 1 to advance the robot in a forward zone 30 located on the opposite side. The driving system is therefore of the "push me" type, since the robot precedes the driver, who drives the robot, without contact with it or remote control for remote control.
PROCEDE DE CONDUITE DRIVING METHOD
[0052] La figure 5 présente un organigramme fonctionnel montrant les étapes principales du procédé de conduite d'un robot autonome motorisé selon l'invention. FIG. 5 presents a functional flowchart showing the main steps of the method of driving a powered autonomous robot according to the invention.
[0053] A l'étape 50, le module de conduite 100 reçoit une commande pour amorcer ou poursuivre une conduite en mode poussée. Par exemple, un utilisateur appuie sur un bouton de commande sur le robot ou sur une manette à distance. A l'étape 51 , le dispositif de repérage 4 envoi au module 103 de détection de position relative de l'opérateur, les données de position du conducteur du robot présent dans la zone de conduite 20. A l'étape 52, le même module 103 détermine la position de consigne de l'opérateur par rapport au robot, par exemple en déterminant un écart longitudinal et un écart latéral (voir figures 1 B, 2 et 3) ou en
mesurant un écart d'angle et un écart de rayon « r » (voir figure 4). In step 50, the driving module 100 receives a command to initiate or continue driving in push mode. For example, a user presses a command button on the robot or on a remote controller. In step 51, the tracking device 4 sends to the operator position detection module 103, the position data of the robot driver present in the driving zone 20. In step 52, the same module 103 determines the position of the operator relative to the robot, for example by determining a longitudinal and a lateral deviation (see FIGS. 1 B, 2 and 3) or measuring an angle difference and a radius deviation "r" (see Figure 4).
[0054] A l'étape 53, le module 104 de consigne de déplacement compare la position relative du conducteur avec une position de référence. A cette position de référence, le conducteur se trouve dans la zone de conduite à un écart longitudinal et latéral ou à un écart d'angle et un rayon « r » correspondant à l'arrêt du robot. Si la position relative du conducteur s'écarte de la position de référence, le module 104 de consigne de déplacement établit une consigne pour faire déplacer le robot. L'étape 54 illustre un exemple de critères avantageusement utilisés pour déterminer la vitesse du robot et les éventuels virages. Selon ces critères, la vitesse est déterminée en fonction de l'écart avec la position de référence :In step 53, the displacement instruction module 104 compares the relative position of the conductor with a reference position. At this reference position, the driver is in the driving zone at a longitudinal and lateral spacing or at a corner deviation and a radius "r" corresponding to the stoppage of the robot. If the relative position of the driver deviates from the reference position, the displacement instruction module 104 sets a set point for moving the robot. Step 54 illustrates an example of criteria advantageously used to determine the speed of the robot and any bends. According to these criteria, the speed is determined according to the difference with the reference position:
- si l'écart = 0 : vitesse constante ; - if the difference = 0: constant speed;
- si l'écart > 0 : la vitesse augmente ; - if the difference> 0: the speed increases;
- si l'écart < 0 : la vitesse diminue. - if the difference <0: the speed decreases.
[0055] Le sens de l'angle de virage est déterminé par le module de consigne 104 en fonction de la position relative de l'opérateur, de sorte que lorsque l'opérateur 10 se situe d'un premier côté d'une position de référence (par exemple un axe longitudinal A-A du robot ou un angle a), le sens de virage est horaire, et lorsque l'opérateur se situe d'un second côté de la position de référence, le sens de virage est anti-horaire. The direction of the turn angle is determined by the setpoint module 104 as a function of the relative position of the operator, so that when the operator 10 is located on a first side of a position of reference (for example a longitudinal axis AA of the robot or an angle a), the turning direction is hourly, and when the operator is on a second side of the reference position, the direction of turning is counter-clockwise.
[0056] En option, pour faire stopper rapidement le robot, le module 103 de détection de position relative de l'opérateur est prévu pour détecter un mouvement ou signe de l'opérateur correspondant à une consigne d'arrêt du déplacement du robot (étape 55). Cette consigne peut aussi correspondre à un recul de l'utilisateur ou à une commande via un bouton prévu à cet effet. As an option, to quickly stop the robot, the module 103 for detecting the relative position of the operator is provided to detect a movement or sign of the operator corresponding to a stop instruction of the robot movement (step 55). This instruction can also correspond to a retreat of the user or to a command via a button provided for this purpose.
[0057] DEFINITIONS ET FONCTIONS DE CALCUL : [0057] DEFINITIONS AND FUNCTIONS OF CALCULATION:
-La longueur_pas : longueur d'un pas lors d'une marche (80cm) ; -The length_not: length of a step when walking (80cm);
-Fct_longueur_pas (vitesse) : fonction qui retourne la longueur d'un pas en fonction de la vitesse de déplacement de la personne. Si la vitesse est celle d'une marche, alors la valeur renvoyée sera de 80cm (longueur_pas). Si la vitesse est celle d'une course, la longueur est bien plus grande ; -Fct_longueur_pas (speed): function that returns the length of a step according to the speed of movement of the person. If the speed is one step, then the value returned will be 80cm (length_not). If the speed is that of a race, the length is much greater;
-Ecart : distance en mètres pour éloigner longitudinalement le robot de la personne pour tenir compte que la longueur d'un pas n'est pas la même pour toutes les personnes ; -Ecart: distance in meters to longitudinally distance the robot from the person to take into account that the length of a step is not the same for all people;
-Fct_distance_arrêt_piéton (vitesse) : fonction qui retourne la distance d'arrêt théorique du piéton en fonction de sa vitesse de marche ;
-Fct_distance_arrêt_piéton (vitesse) = vitesse * temps_de_reaction + vitesseA2/ (2*décélération_théorique_piéton) ; -Fct_paston_stitchingdistance (speed): function that returns the theoretical stopping distance of the pedestrian according to its walking speed; -Fct_pump_stitchdistance (speed) = speed * reaction_time + velocity A 2 / (2 * deceleration_theoretic_axon);
-Fct_distance_arrêt_urgence_robot (vitesse) : fonction qui retourne la distance d'arrêt théorique du robot en fonction de sa vitesse de déplacement lors d'un freinage d'urgence ; -Fct_distance_arrêt_urgence_robot (vitesse) = vitesse * temps_de_latence + vitesseA2/ (2*décélération_urgence_robot) ; -Fct_Robot Emergency Stop (speed): function that returns the theoretical stopping distance of the robot according to its speed of movement during an emergency braking; -Fct_Robot Emergency Stop (speed) = speed * time_latency + speed A 2 / (2 * emergency_robot deceleration);
- Distance de consigne : distance souhaitée pour l'écart longitudinal entre le piéton et le robot ; - Set distance: desired distance for the longitudinal distance between the pedestrian and the robot;
- Distance_consigne = max(max(Longueur_pas, Fct_longueur_pas(vitesse_robot)) + écart, max(0, Fct_distance_arrêt_piéton(vitesse_robot) - fct_distance_arrêt_urgence_robot(vitesse_robot))) - Set distance = max (max (Length_out, Fct_length_not (speed_robot)) + deviation, max (0, Fct_stop_stop_distance (speed_robot) - fct_distance_stopping_offence_robot (speed_robot)))
-Consigne d'orientation du véhicule : il s'agit d'une consigne et non d'un ordre envoyé au moteur car l'évitement d'obstacle qui vient ensuite pourra modifier cette consigne ; - Guidance of the vehicle: it is a deposit and not an order sent to the engine because obstacle avoidance that comes after can change this instruction;
-S'il s'agit d'un véhicule à trains directeurs : Consigne = rayon de braquage (ou courbure ou angle de braquage des roues) ; -If it is a steered vehicle: Setpoint = turning radius (or curvature or steering angle of the wheels);
-Braquage des roues vers la gauche quand la personne est décalée sur la droite. -Braking the wheels to the left when the person is shifted to the right.
-Braquage des roues vers la droite quand la personne est décalée sur la gauche. -Braking the wheels to the right when the person is shifted to the left.
-Si la personne est à peu près dans l'axe du robot plus ou moins une valeur delta en cm, alors le robot a les roues droites. Cette dernière caractéristique permet au robot d'avancer en ligne droite même si la personne ne marche pas rigoureusement droite ou si le module de détection de la personne est imprécis dans la détection latérale. -If the person is roughly in the axis of the robot plus or minus a delta value in cm, then the robot has the wheels right. This last feature allows the robot to advance in a straight line even if the person does not walk rigorously straight or if the person's detection module is inaccurate in lateral detection.
-S'il s'agit d'un véhicule à trains fixes (type char) : Consigne = vitesse de rotation (ou courbure). -If it is a stationary vehicle (type char): Setpoint = speed of rotation (or curvature).
Le véhicule tourne sur lui-même de telle manière à ce que la personne soit toujours dans l'axe longitudinale du robot. Si la personne est à peu près dans l'axe du robot plus ou moins une valeur delta en cm alors le robot ne tourne pas. Ce dernier point permet au robot d'avancer en ligne droite même si la personne ne marche pas rigoureusement droite ou si le module de détection de la personne est imprécis dans la détection latérale. The vehicle turns on itself in such a way that the person is always in the longitudinal axis of the robot. If the person is roughly in the axis of the robot plus or minus a delta value in cm then the robot does not rotate. This last point allows the robot to advance in a straight line even if the person does not walk rigorously straight or if the detection module of the person is imprecise in the lateral detection.
-Consigne de vitesse du véhicule : il s'agit d'une consigne et non d'un ordre envoyé au moteur car l'évitement d'obstacle qui vient ensuite pourra modifier cette consigne. -Conigne of speed of the vehicle: it is about a deposit and not of an order sent to the engine because the avoidance of obstacle which comes then will be able to modify this instruction.
-Consigne = vitesse linéaire d'avancement ; -Consigne = linear speed of advancement;
-Le robot accélère ou ralentit afin d'asservir l'écart longitudinal sur la distance de consigne mais il ne peut pas reculer. -The robot accelerates or slows to enslave the longitudinal deviation to the set distance but can not move back.
[0058] EVITEMENT D'OBSTACLES REACTIF : [0058] REACTIVE OBSTACLE EVACUATION:
On prédit la position du robot dans le futur avec les consignes définies plus haut pour voir s'il va heurter un obstacle :
-le robot a une forme donnée (en général un rectangle). We predict the position of the robot in the future with the instructions defined above to see if it will hit an obstacle: the robot has a given shape (usually a rectangle).
-prédire = on définit la position où se trouvera le robot 100ms plus tard, puis on définit la position où se trouvera le robot 200ms plus tard, etc, jusqu'à ce que le robot ait atteint sa vitesse de consigne demandée et on continue à prédire les positions du robot en décélérant jusqu'à ce qu'il soit à l'arrêt. -previous = we define the position where the robot will be 100ms later, then we define the position where the robot will be 200ms later, etc., until the robot has reached its desired speed and we continue to predict robot positions by decelerating until it stops.
-Cette dernière étape est prévue pour être certain que si la consigne est de se déplacer à 10km/h, que le robot puisse accélérer jusqu'à 10km/h et qu'il y ait ensuite suffisamment de distance libre devant lui pour ralentir et s'immobiliser en tout sécurité. -This last step is planned to be certain that if the instruction is to move at 10km / h, that the robot can accelerate up to 10km / h and that there is then enough distance in front of him to slow down and s immobilize safely.
-on vérifie que pour chaque position prédite, qu'il n'y ait pas un obstacle dans le robot prédit, sinon on considère qu'il y a une collision. we check that for each predicted position, that there is not an obstacle in the predicted robot, otherwise we consider that there is a collision.
-S'il y a une collision, on évalue si on peut changer l'orientation du robot pour éviter l'obstacle sans modifier la vitesse demandée. On définit une fenêtre de recherche pour la nouvelle orientation. Cette fenêtre est centrée sur la consigne d'orientation demandée. Si on demande au robot d'aller tout droit, alors la fenêtre s'étend de l'orientation maximale à gauche jusqu'à l'orientation maximale à droite. Si on demande au robot de tourner, alors la fenêtre est plus étroite et d'autant plus étroite que l'on demande au robot de tourner. -If there is a collision, we evaluate if we can change the orientation of the robot to avoid the obstacle without changing the speed required. We define a search window for the new orientation. This window is centered on the orientation instruction requested. If you ask the robot to go straight, then the window extends from the maximum orientation on the left to the maximum orientation on the right. If the robot is asked to turn, then the window is narrower and narrower as the robot is asked to turn.
-Cette dernière étape est prévue afin que si un conducteur demande à son robot de tourner à gauche à fond, il ne veut surtout pas qu'il aille à droite et même s'il y a un obstacle devant lui. Dans ce cas, on préfère que le robot ralentisse. -This last step is planned so that if a driver asks his robot to turn to the left thoroughly, he does not want him to go to the right and even if there is an obstacle in front of him. In this case, it is preferred that the robot slow down.
-Pour chaque case à l'intérieur de la fenêtre, on prédit la trajectoire du robot avec la vitesse de consigne et l'orientation de la case testée. For each box inside the window, the trajectory of the robot is predicted with the set speed and the orientation of the box tested.
-On sélectionne la case qui est « OK » et la plus proche de la consigne souhaitée. -We select the box that is "OK" and the closest to the desired setpoint.
-Si aucune case de la fenêtre n'est « OK », alors on refait la même chose pour une vitesse légèrement inférieure.
-If no box in the window is "OK", then we do the same thing for a slightly lower speed.
Numéros de référence employés sur les figures Robot Reference numbers used on Robot figures
Corps du robot Robot body
Roues wheels
Dispositif de repérage Tracking device
Plateau de chargement ou plateau porte-charge Loading tray or load tray
Entretoises de séparation Separation spacers
Zone de vision Vision area
Opérateur ou conducteur Operator or driver
Zone de conduite Driving area
Zone d'avancement Progress Zone
Module de conduite Driving module
Microprocesseur microprocessor
Instructions Instructions
Module de détection de position relative de l'opérateur Module de consigne de déplacement Relative position detection module of the operator Relocation position module
Module de guidage Guidance module
Données de position relative Relative position data
Données de consigne de déplacement Travel setpoint data
Bus de données
Data bus