Brevet FR3118669A1 — publié le 20220708

L’invention concerne un procédé et un dispositif de détermination d’une trajectoire d’un véhicule autonome mis en œuvre dans une architecture (20) mise en œuvre dans un ou plusieurs calculateurs embarqués dans le véhicule autonome. A cet effet, des premières données (2011) d’itinéraire et des deuxièmes données (2021) d’environnement du véhicule autonome sont reçues. Un chemin mission est déterminé par un premier module (201) de l’architecture (20) en fonction des premières données (2011). Des informations représentatives de l’environnement sont déterminées par un deuxième module (202) de l’architecture (20) à partir des deuxièmes données (2021). Un ensemble de contraintes associées au chemin mission sont déterminées dans un troisième module (203) de l’architecture en fonction des informations d’environnement. Des paramètres de trajectoire sont déterminés par un quatrième module (204) de l’architecture (20) en fonction des deuxièmes données et des contraintes. Figure pour l’abrégé : Figure 2 Procédé et dispositif de détermination d’une trajectoire d’un véhicule autonome L’invention concerne les procédés et dispositifs de détermination d’une trajectoire de véhicule, notamment un véhicule autonome. L’invention concerne également un procédé et un dispositif de planification de la trajectoire d’un véhicule, notamment un véhicule autonome. L’invention concerne également un procédé et un dispositif de contrôle de la trajectoire d’un véhicule, notamment un véhicule autonome. Arrière-plan technologique Avec le développement des véhicules autonomes, des besoins en termes de planification de la trajectoire à suivre, notamment en fonction de la géométrie de la route et/ou de l’environnement autour du véhicule autonome, sont apparus. De nombreuses méthodes de planification de chemin ou de trajectoire ont ainsi été proposées. Les méthodes de planification de chemin permettent de définir une courbe géométrique que le véhicule doit suivre pour naviguer dans un environnement donné. On peut trouver des méthodes basées sur des arbres aléatoires (de l’anglais « Random Tree (RT) » ou « Rapidly-exploring Random Tree (RRT) » ) qui recherchent un chemin jusqu’à l’objectif en échantillonnant des positions ou des transitions aléatoires et en évaluant leur validité. D’autres méthodes construisent un graphe des transitions réalisables par le véhicule (de l’anglais « state lattices » ) et cherchent à déterminer un chemin acceptable dans un tel graphe jusque l’objectif en fonction des contraintes sur l’environnement. On trouve également des techniques qui consistent à générer un ensemble de chemins candidats et à les évaluer par rapport à l’environnement pour choisir le meilleur à suivre pendant un temps court avant d’effectuer le processus à nouveau. Généralement, ces méthodes ne définissent pas de profil de vitesse spécifique, et appliquent une vitesse maximale calculée en fonction des caractéristiques du chemin (courbure maximale, vitesse règlementaire…). Les méthodes de planification de trajectoire définissent directement le déplacement temporel du véhicule. Il s’agit généralement de méthodes d’optimisation numérique sous contraintes cherchant à minimiser une fonction de coût définie par rapport à des objectifs et des bornes sur les paramètres. On pourra par exemple citer la méthode de contrôle prédictif (de l’anglais « model predictive control (MPC) ») , correspondant à une méthode de contrôle optimal ayant trouvé un champ d’application en planification de trajectoire, laquelle optimise le déplacement du véhicule représenté par un modèle d’évolution donné. Cependant, les méthodes basées sur les arbres aléatoires présentent un comportement potentiellement aléatoire et oscillant, avec une charge de calcul généralement importante pour obtenir des chemins de bonne qualité. Les méthodes de type graphe peuvent également avoir des temps de traitements importants selon la discrétisation choisie pour le graphe. De plus, les chemins obtenus ne prévoient pas toujours fidèlement le comportement du véhicule (chemin pas très lisse, sauts de courbure), ce qui peut rendre moins pertinente l’évaluation d’un tel chemin. Les méthodes par génération de chemins candidats sont généralement peu adaptées à un environnement urbain, selon notamment le type de courbe choisi pour représenter les chemins. Par exemple, les arcs de cercles ou les clothoïdes sont moins appropriés que les courbes à phases transitoire et parallèles à la route. La plupart de ces méthodes ne prennent pas en compte les obstacles dynamiques, et la définition de la vitesse de référence ne permet pas d’anticiper précisément le comportement des autres véhicules ou des situations particulières de route. Ceci rend difficile la prise en compte des occultations liées à l’environnement (dues par exemple à des bâtiments ou d’autres véhicules), ainsi que la planification en intersection ou en présence d’autres véhicules. Les méthodes basées sur des optimisations numériques permettent quant à elles de définir de façon conjointe le chemin et la vitesse mais nécessitent des temps de calcul importants ou des calculateurs puissants. Un objet de la présente invention est de réduire les temps de calcul et/ou de diminuer les ressources nécessaires au calcul d’une trajectoire d’un véhicule, notamment autonome, évoluant dans un environnement à fortes contraintes. Un autre objet de la présente invention est de permettre la planification d’une trajectoire en temps réel pour un véhicule autonome dans un environnement à fortes contraintes, par exemple en milieu urbain. Selon un premier aspect, l’invention concerne un procédé de détermination d’une trajectoire d’un véhicule autonome, le procédé étant mis en œuvre dans une architecture déterminée mise en œuvre dans au moins un calculateur embarqué dans le véhicule autonome, le procédé comprenant les étapes suivantes : - réception de premières données représentatives d’un itinéraire pour le véhicule autonome et de deuxièmes données représentatives d’un environnement du véhicule autonome ; - détermination, mise en œuvre dans un premier module de l’architecture, d’un chemin, dit chemin mission, pour le véhicule autonome en fonction des premières données ; - détermination, mise en œuvre dans un deuxième module de l’architecture, d’informations représentatives de l’environnement du véhicule autonome à partir des deuxièmes données ; - détermination, mise en œuvre dans un troisième module de l’architecture, d’un ensemble de contraintes associées au chemin mission en fonction des informations représentatives de l’environnement ; - détermination, mise en œuvre dans un quatrième module de l’architecture, de paramètres représentatifs d’une trajectoire de référence pour le véhicule autonome en fonction d’au moins une partie des deuxièmes données et de l’ensemble de contraintes ; - transmission des paramètres à au moins un système de contrôle de trajectoire du véhicule autonome. Selon une variante, le procédé comprend en outre une étape de détermination d’un mode de conduite, mise en œuvre dans le troisième module, en fonction des informations représentatives de l’environnement, la détermination des paramètres représentatifs de la trajectoire de référence étant en outre fonction du mode de conduite. Selon une autre variante, la détermination de paramètres représentatifs d’une trajectoire de référence comprend les étapes de : - génération d’une pluralité de chemins candidats à partir d’informations représentatives du chemin mission fournies par le troisième module ; - détermination d’un profil de vitesse associé à chaque chemin candidat de la pluralité en fonction de l’ensemble de contraintes, chaque couple formé d’un profil de vitesse et du chemin candidat associé formant une trajectoire candidate ; - sélection d’une des trajectoires candidates en fonction de critères de sécurité, la trajectoire candidate sélectionnée correspondant à la trajectoire de référence. Selon une variante supplémentaire, l’ensemble de contraintes comprend les éléments suivants : - un ensemble de points représentatifs d’un chemin bidimensionnel cible à suivre par le véhicule autonome, les coordonnées de chaque point étant exprimées dans un repère bidimensionnel cartésien centré sur le véhicule autonome ; - une information de vitesse associée à chaque point de l’ensemble de points, l’information de vitesse correspondant à une vitesse maximale en chaque point, la vitesse maximale étant déterminée en fonction des deuxièmes données ; - un intervalle latéral associé à chaque point d’au moins une partie de l’ensemble de points, l’intervalle latéral correspondant à un écart maximal autorisé de chaque côté de chaque point. Selon encore une variante, la trajectoire de référence correspond à une trajectoire discrétisée selon un pas temporel déterminé dans un repère bidimensionnel cartésien centré sur le véhicule autonome. Selon une variante additionnelle, les informations représentatives de l’environnement comprennent : - des informations représentatives de localisation d’au moins un objet statique ; et/ou - des informations représentatives de gabarit du au moins un objet statique ; et/ou - des informations représentatives de limite de visibilité du véhicule autonome ; et/ou - des informations représentatives de trajectoire d’au moins un objet dynamique ; et/ou - des informations représentatives de gabarit du au moins un objet dynamique ; et/ou - des informations représentatives de signalisation routière Selon une autre variante, la détermination de paramètres représentatifs d’une trajectoire de référence met en œuvre une méthode par tentacules adaptée à un environnement urbain. Selon une variante supplémentaire, au moins une partie des deuxièmes données est reçue d’au moins un capteur embarqué dans le véhicule autonome. Selon un deuxième aspect, l’invention concerne un dispositif de détermination d’une trajectoire d’un véhicule autonome, le dispositif comprenant une mémoire associée à un processeur configuré pour la mise en œuvre d’une architecture configurée pour la mise en œuvre des étapes du procédé selon le premier aspect de l’invention. Selon un troisième aspect, l’invention concerne un véhicule, notamment autonome, par exemple de type automobile, comprenant un dispositif tel que décrit ci-dessus selon le deuxième aspect de l’invention. Selon un quatrième aspect, l’invention concerne un programme d’ordinateur qui comporte des instructions adaptées pour l’exécution des étapes du procédé selon le premier aspect de l’invention, ceci notamment lorsque le programme d’ordinateur est exécuté par au moins un processeur. Un tel programme d’ordinateur peut utiliser n’importe quel langage de programmation, et être sous la forme d’un code source, d’un code objet, ou d’un code intermédiaire entre un code source et un code objet, tel que dans une forme partiellement compilée, ou dans n’importe quelle autre forme souhaitable. Selon un cinquième aspect, l’invention concerne un support d’enregistrement lisible par un ordinateur sur lequel est enregistré un programme d’ordinateur comprenant des instructions pour l’exécution des étapes du procédé selon le premier aspect de l’invention. D’une part, le support d’enregistrement peut être n'importe quel entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une mémoire ROM, un CD-ROM ou une mémoire ROM de type circuit microélectronique, ou encore un moyen d'enregistrement magnétique ou un disque dur. D'autre part, ce support d’enregistrement peut également être un support transmissible tel qu'un signal électrique ou optique, un tel signal pouvant être acheminé via un câble électrique ou optique, par radio classique ou hertzienne ou par faisceau laser autodirigé ou par d'autres moyens. Le programme d’ordinateur selon l'invention peut être en particulier téléchargé sur un réseau de type Internet. Alternativement, le support d'enregistrement peut être un circuit intégré dans lequel le programme d’ordinateur est incorporé, le circuit intégré étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. Brève description des figures D’autres caractéristiques et avantages de l’invention ressortiront de la description des modes de réalisation non limitatifs de l’invention ci-après, en référence aux figures 1 à 7 annexées, sur lesquelles : illustre de façon schématique un environnement dans lequel évolue un véhicule, par exemple autonome, selon un exemple de réalisation particulier de la présente invention ; illustre schématiquement une architecture configurée pour la détermination d’une trajectoire pour le véhicule de la , selon un exemple de réalisation particulier de la présente invention ; illustre schématiquement un chemin que doit suivre le véhicule de la , selon un premier exemple de réalisation particulier de la présente invention ; illustre schématiquement un chemin que doit suivre le véhicule de la , selon un deuxième exemple de réalisation particulier de la présente invention ; illustre schématiquement un module de l’architecture de la , selon un exemple de réalisation particulier de la présente invention ; illustre schématiquement un dispositif configuré pour déterminer une trajectoire pour le véhicule de la , selon un exemple de réalisation particulier de la présente invention ; illustre un organigramme des différentes étapes d’un procédé de détermination de trajectoire du véhicule de la , selon un exemple de réalisation particulier de la présente invention. Un procédé et un dispositif de contrôle de la trajectoire d’un véhicule autonome vont maintenant être décrits dans ce qui va suivre en référence conjointement aux figures 1 à 7. Des mêmes éléments sont identifiés avec des mêmes signes de référence tout au long de la description qui va suivre. Selon un exemple particulier et non limitatif de réalisation de l’invention, un procédé de détermination d’une trajectoire d’un véhicule autonome mis en œuvre dans une architecture déterminée elle-même mise en œuvre dans un ou plusieurs calculateurs embarqués dans le véhicule autonome comprend la réception de premières données représentatives d’un itinéraire pour le véhicule autonome, par exemple la destination choisie et la localisation courante du véhicule autonome, et la réception de deuxièmes données représentatives d’un environnement du véhicule autonome, par exemple des données relatives à la présence d’un ou plusieurs objets, statiques et/ou dynamiques, ou encore des informations sur l’environnement routier telles que des limites de vitesse. Un chemin mission pour le véhicule autonome est alors déterminé par un premier module de l’architecture en fonction des premières données. Des informations représentatives de l’environnement du véhicule autonome sont déterminées par un deuxième module de l’architecture à partir des deuxièmes données. Un ensemble de contraintes associées au chemin mission sont alors déterminées dans un troisième module de l’architecture en fonction des informations représentatives de l’environnement. Un ensemble de paramètres représentatifs d’une trajectoire de référence pour le véhicule autonome sont enfin déterminés par un quatrième module de l’architecture en fonction d’au moins une partie des deuxièmes données et de l’ensemble de contraintes. Ces paramètres sont alors transmis à un ou plusieurs systèmes de contrôle de la trajectoire du véhicule autonome pour contrôler le véhicule autonome selon la trajectoire définie. Les premier, deuxième, troisième et quatrième modules sont avantageusement différents les uns des autres et mis en œuvre de manière logicielle ou matérielle. La mise en œuvre du procédé dans une telle architecture permet avantageusement de répartir les tâches entre plusieurs modules. Une telle mise en œuvre permet ainsi de gérer un ensemble de contraintes plus important, ce qui s’applique notamment aux environnements urbains pour lesquels les contraintes pesant sur la navigation sont nombreuses. Une telle architecture permet également de paralléliser certaines tâches, ce qui permet de réduire les besoins en calcul et de prendre en charge des environnements plus complexes avec un nombre important de contraintes. Le vocabulaire suivant sera utilisé dans le reste de la description : - chemin : un chemin correspond à un objet géométrique représentant le déplacement spatial d’un véhicule sans considération de vitesse. La représentation du chemin et sa discrétisation sont donc indépendantes du temps, une telle représentation étant par exemple arbitraire (nombre de points fixé ou déterminé) ou déterminée par une longueur entre chaque point ; - trajectoire : une trajectoire est un objet géométrique représentant le déplacement spatial et temporel d’un véhicule. La représentation d’une trajectoire et sa discrétisation sont directement dépendantes du temps : à chaque point d’une trajectoire est avantageusement associé un temps auquel la position sera atteinte ; - couple chemin / vitesse : un couple chemin/vitesse correspond à l’association d’une vitesse à respecter (ou vitesse de consigne) à chaque point du chemin, une telle association étant également appelée profil de vitesse sur le chemin. Un couple chemin/vitesse est par exemple transformé en trajectoire en rééchantillonnant les points du chemin de sorte que chaque point de la trajectoire corresponde à la position atteinte après avoir parcouru le chemin pendant un intervalle de temps donné en suivant le profil de vitesse. illustre schématiquement un environnement dans lequel évolue un véhicule 10, selon un exemple de réalisation particulier et non limitatif de la présente invention. La illustre une portion d’environnement routier 1 dans lequel circule le véhicule 10. Cet environnement correspond par exemple à un environnement urbain. Selon l’exemple particulier et non-limitatif de la , le véhicule 10 est en approche d’un carrefour contrôlé par un ou plusieurs feux de circulation 112. Le véhicule 10 correspond par exemple à un véhicule autonome. Un véhicule autonome correspond à un véhicule équipé d’un système d’aide à la conduite abouti assurant le contrôle du véhicule qui est apte à rouler dans son environnement routier avec une intervention limitée du conducteur, voire sans intervention du conducteur. Un véhicule autorisant un tel mode de conduite autonome doit avoir un niveau de conduite autonome au moins égal à 3, que ce soit dans la classification éditée par l’agence fédérale chargée de la sécurité routière aux USA qui comprend 5 niveaux ou dans la classification éditée par l’organisation internationale des constructeurs automobiles qui comprend 6 niveaux. Le véhicule 10 correspond par exemple à un véhicule à moteur thermique, à un véhicule électrique ou à un véhicule hybride (combinant moteur thermique et moteur électrique). Le véhicule 10 suit avantageusement un itinéraire 102 dans l’environnement 1, cet itinéraire étant par exemple calculé à partir d’un ensemble de premières données comprenant par exemple la position courante du véhicule 10 et une destination. Selon une variante, les premières données comprennent en outre des données de cartographie de l’environnement du véhicule 10. La position du véhicule 10 est par exemple obtenue via un système de localisation par satellite, par exemple un système GPS (de l’anglais « Global Positioning System » ou en français « Système mondial de positionnement »). Un tel système est par exemple intégré au véhicule 10, par exemple mis en œuvre par un calculateur du système embarqué du véhicule 10, ou par un dispositif mobile (par exemple un téléphone intelligent) embarqué dans le véhicule 10 et communiquant avec le véhicule 10 par liaison radio (par exemple en Bluetooth® ou en Wifi®). La destination est par exemple entrée par le conducteur du véhicule 10 dans un système de calcul d’itinéraire via une interface graphique tactile ou une interface à commande vocale. Un tel système est par exemple mis en œuvre par un calculateur du système embarqué du véhicule 10, ou par un dispositif mobile (par exemple un téléphone intelligent) embarqué dans le véhicule 10 et communiquant avec le véhicule 10 par liaison radio. Les données de cartographie sont par exemple reçues d’un serveur distant, par exemple au fur et à mesure du déplacement du véhicule 10. Selon un autre exemple, les données de cartographies sont stockées en mémoire d’un système embarqué dans le véhicule 10 et/ou en mémoire du dispositif mobile. Le véhicule 10 obtient avantageusement un ensemble de deuxièmes données représentatives de l’environnement 1 dans lequel le véhicule 10 évolue. Les deuxièmes données comprennent par exemple : - des données sur la présence d’obstacle(s) statique(s) ou dynamique(s) (par exemple un autre véhicule 11, un piéton, un cycliste) dans l’environnement du véhicule, ces données comprenant par exemple des informations de distance entre chaque obstacle et le véhicule 10, la forme et/ou le gabarit de chaque obstacle et/ou des informations sur la trajectoire suivie par chaque obstacle dynamique ; - des données associées à l’environnement routier, telles que par exemple des informations sur les limites de vitesse, sur la présence de panneaux de circulation, de feux de circulation 112 (avec par exemple l’état du feu de circulation), des informations sur le trafic routier dans l’environnement 1, sur la présence de travaux, sur les conditions climatiques, c’est-à-dire toute information ou donnée susceptible d’avoir un impact sur les conditions de circulation du véhicule 10 et sur les règles de conduite à adopter par le véhicule 10. Les deuxièmes données, ou au moins une partie d’entre elles, sont par exemple obtenues d’un ou plusieurs capteurs embarqués dans le véhicule 10. De tels capteurs sont associés ou font partie d’un ou plusieurs systèmes de détection d’objet embarqués dans le véhicule 10, les données obtenues de ce ou ces capteurs permettant par exemple de déterminer la vitesse du ou des objets détectés dans l’environnement du véhicule 10 et/ou la nature ou le type des objets détectés (panneau 113, véhicule 11, feu de signalisation 112, le type de l’objet étant par exemple déterminé par classification ou par mise en œuvre d’intelligence artificielle). Ce ou ces systèmes de détection d’objet sont par exemple associés à ou compris dans un ou plusieurs systèmes d’aide à la conduite, dit système(s) ADAS (de l’anglais « Advanced Driver-Assistance System » ou en français « Système d’aide à la conduite avancé »). Le ou les capteurs associés à ces systèmes de détection d’objet correspondent par exemple à un ou plusieurs des capteurs suivants : - un ou plusieurs radars à ondes millimétriques arrangés sur le véhicule, par exemple à l’avant, à l’arrière, sur chaque coin avant/arrière du véhicule ; chaque radar est adapté pour émettre des ondes électromagnétiques et pour recevoir les échos de ces ondes renvoyées par un ou plusieurs objets, dans le but de détecter des obstacles et leurs distances vis-à-vis du véhicule 10 ; et/ou - un ou plusieurs LIDAR(s) (de l’anglais « Light Detection And Ranging », ou « Détection et estimation de la distance par la lumière » en français), un capteur LIDAR correspondant à un système optoélectronique composé d’un dispositif émetteur laser, d’un dispositif récepteur comprenant un collecteur de lumière (pour collecter la partie du rayonnement lumineux émis par l’émetteur et réfléchi par tout objet situé sur le trajet des rayons lumineux émis par l’émetteur) et d’un photodétecteur qui transforme la lumière collectée en signal électrique ; un capteur LIDAR permet ainsi de détecter la présence d’objets situés dans le faisceau lumineux émis et de mesurer la distance entre le capteur et chaque objet détecté ; et/ou - une ou plusieurs caméras (associées ou non à un capteur de profondeur) pour l’acquisition d’une ou plusieurs images de l’environnement autour du véhicule 10 se trouvant dans le champ de vision de la ou les caméras. Les données obtenues de ce ou ces capteurs varient selon le type de capteur. Lorsqu’il s’agit d’un radar ou d’un LIDAR, les premières données correspondent par exemple à des données de distance entre des points de l’objet détecté et le capteur. Chaque objet détecté est ainsi représenté par un nuage de points (chaque point correspondant à un point de l’objet recevant le rayonnement émis par le capteur et réfléchissant au moins en partie ce rayonnement), le nuage de points représentant l’enveloppe (ou une partie de l’enveloppe) de l’objet détecté tel que vu par le capteur et in fine par le véhicule embarquant le capteur. Lorsqu’il s’agit d’une caméra vidéo, les premières données correspondent à des données associées à chaque pixel de la ou les images acquises, par exemple des valeurs de niveaux de gris codés sur par exemple 8, 10, 12 ou plus de bits pour chaque canal couleur, par exemple RGB (de l’anglais « Red, Green, Blue » ou en français « Rouge, vert, bleu »), les données d’images étant par exemple traitées selon toute méthode connue de l’homme du métier, par exemple toute méthode d’apprentissage (de l’anglais « machine learning ») basée sur l’intelligence artificielle avec par exemple mise en œuvre d’un réseau de neurones. Selon une variante, les deuxièmes données, ou au moins une partie d’entre elles, sont par exemple obtenues via un système de communication de type V2X (de l’anglais « Vehicle to Everything » ou en français « Véhicule vers tout »). Selon une autre variante, les deuxièmes données sont à la fois obtenues du système de communication V2X et du ou des capteurs embarqués dans le véhicule 10. Par exemple, les données relatives à la présence d’un autre véhicule 11 dans l’environnement du véhicule 10 sont communiquées par le véhicule 10 au véhicule 11, via une liaison sans fil selon un mode de communication dit V2V (de l’anglais « vehicle-to-vehicle »), ou par l’intermédiaire d’une infrastructure mise en place dans le cadre d’une communication véhicule à infrastructure V2I (de l’anglais « vehicle-to-infrastructure »), dans le cadre d’une infrastructure réseau utilisant des technologies de communication telles que l’ITS G5 (de l’anglais « Intelligent Transportation System G5 » ou en français « Système de transport intelligent G5 ») en Europe ou DSRC (de l’anglais « Dedicated Short Range Communications » ou en français « Communications dédiées à courte portée ») aux Etats-Unis d’Amérique qui reposent tous les deux sur le standard IEEE 802.11p ou encore la technologie basée sur les réseaux cellulaires nommée C-V2X (de l’anglais « Cellular - Vehicle to Everything » ou en français « Cellulaire – Véhicule vers tout ») qui s’appuie sur la 4G basé sur LTE (de l’anglais « Long Term Evolution » ou en français « Evolution à long terme ») et bientôt la 5G. Le véhicule 10 reçoit par exemple des informations routières d’un ou plusieurs serveurs du cloud 110 (ou « nuage » en français) via une infrastructure réseau comprenant une ou plusieurs antennes et/ou une ou plusieurs UBR (« Unité Bord de Route ») 111. Les informations sont par exemple collectées par le serveur depuis les infrastructures routières, telles que des feux de circulation connectés 112, et/ou depuis d’autres véhicules 11 communiquant avec l’infrastructure (et le « cloud » 110) selon un mode de communication V2X. La détermination de la trajectoire ou de portions de trajectoires que doit suivre le véhicule 10 est avantageusement mise en œuvre dans une architecture telle que l’architecture décrite en regard de la , à partir des premières et deuxièmes données obtenues ou reçues par le véhicule 10. illustre schématiquement une architecture 20 configurée pour la détermination d’une trajectoire pour le véhicule 10, selon un exemple de réalisation particulier et non limitatif de la présente invention. L’architecture 20 est mise en œuvre dans un ou plusieurs calculateurs, par exemple un ou plusieurs calculateurs du système embarqué du véhicule 10. Les calculateurs du système embarqué du véhicule 10 communiquent avantageusement entre eux via un bus de données, par exemple un bus de données multiplexé de type CAN (de l’anglais « Controller Area Network » ou en français « Réseau de contrôleurs »), CAN FD (de l’anglais « Controller Area Network Flexible Data-Rate » ou en français « Réseau de contrôleurs à débit de données flexible »), FlexRay (standardisé par la norme ISO 17458) ou Ethernet (standardisé par la norme ISO/IEC 802-3). Un tel calculateur sera décrit plus en détail en regard de la . L’architecture 20 comprend une pluralité de modules 201, 202, 203, 204 échangeant des données entre eux via un ou plusieurs bus de communication. Ces modules 201, 202, 203, 204 sont avantageusement distincts les uns des autres. Les modules 201, 202, 203, 204 correspondent par exemple à des modules matériels ou selon une variante à des modules logiciels ou logiques. Un premier module 201, aussi appelé module de planification globale, est configuré pour définir un itinéraire à partir de la position initiale du véhicule 10 jusqu’à la destination choisie, à partir des premières données 2011 et des données de cartographies 2012 représentatives du réseau routier dans lequel évolue le véhicule 10. Cet itinéraire est calculé dans une carte du réseau routier, qui comprend optionnellement des informations a priori sur la route (par exemple géométrie de la route, nombre de voies, voie à emprunter, position des panneaux, vitesse réglementaire, …). Si ces informations sont disponibles, elles sont intégrées à l’itinéraire, l’itinéraire enrichi de ces informations correspondant à un chemin mission dans le reste de la description. En cas de non-suivi de l’itinéraire ou de mise à jour du réseau routier en raison de travaux, d’un accident ou d’une circulation trop dense, un nouveau chemin mission est calculé ou déterminé par le premier module 201 prenant en compte le changement d’itinéraire du véhicule 10 et/ou les données mises à jour du réseau routier. Un deuxième module 202, aussi appelé module de représentation de l’environnement, est configuré pour recevoir ou collecter les deuxièmes données 2021 depuis les systèmes de perception ou de détection d’objet du véhicule 10, telles que la position et la forme des obstacles statiques, les limites de visibilité du véhicule 10, le déplacement prédit des obstacles mobiles et/ou la signalisation par exemple, pour les fournir aux différents modules de l’architecture 20 sous la forme attendue, notamment au troisième module 203 et au quatrième module 204. Les obstacles statiques et les limites de visibilité sont par exemple représentés sous la forme d’ensembles de segments dans un repère cartésien bidimensionnel (2D) centré sur le véhicule 10. Chaque prédiction d’un obstacle dynamique est par exemple composée de deux éléments : une trajectoire 2D discrétisée selon un pas de temps donné, et un polygone représentant le gabarit de l’obstacle dynamique (par exemple le véhicule 11), le polygone correspondant par exemple à un rectangle aux dimensions de l’obstacle dynamique concerné (aussi appelé boite englobante). Si la détermination de l’intention d’un objet dynamique n’est pas assez certaine, par exemple s’il n’est pas possible de déterminer si un autre véhicule sur un rond-point duquel le véhicule 10 est en approche va rester sur le rond-point ou s’il va en sortir (c’est-à-dire si la confiance dans l’une ou l’autre des trajectoires prédites de l’autre véhicule est inférieure à un seuil), l’autre véhicule est « dupliqué » en considérant les deux alternatives jusqu’à ce que la confiance dans son intention soit suffisante, par exemple supérieure à un seuil. Ainsi, le véhicule 10 est en mesure de se préparer à plusieurs éventualités. Le troisième module 203, aussi appelé module de décision, est configuré pour mettre en œuvre une analyse de haut niveau du contexte. Le troisième module 203 interprète la situation de conduite, analyse les voies et définit les contraintes nécessaires à la planification locale de la trajectoire du véhicule 10 à partir des informations fournies par le deuxième module 202 et relatives à la représentation de l’environnement du véhicule 10. Le troisième module 203 détermine notamment la voie à suivre en fonction du chemin mission et de la situation à travers un ensemble de contraintes sur la trajectoire. L’ensemble de contraintes comprend par exemple : - un chemin 2D discrétisé (selon une pluralité de points) dans le repère centré sur le véhicule 10 représentant le chemin à suivre (par exemple le centre de la voie), dénommé « chemin cible » par la suite ; - une indication de vitesse en chaque point du chemin 2D discrétisé, correspondant à la vitesse maximale déterminée en fonction de la situation (par exemple vitesse maximale autorisée, encombrement de la roue, danger, priorité à céder) ; et - un intervalle représentant l’écart latéral que peut réaliser le véhicule 10 autour du chemin cible, l’intervalle en chaque point du chemin cible étant par exemple exprimé sous la forme de deux bornes représentant l’écart latéral maximal de chaque côté de chaque point du chemin cible ; selon une variante, l’intervalle est identique en chaque point et les deux bornes représentent l’écart latéral maximal de chaque côté du chemin cible, en tout point de ce dernier. Selon une variante optionnelle de réalisation, le troisième module 203 est en outre configuré pour sélectionner un mode de conduite représentant la situation de conduite courante, qui permet d’ajuster la méthode de planification locale à utiliser pour la détermination de la trajectoire par le quatrième module 204. A titre d’exemple, le mode de conduite appartient à un ensemble de modes de conduite comprenant : - un mode dit « normal » correspondant à une conduite standard ; - un mode dit « prudent » correspondant à une conduite dans des conditions difficiles, avec une mauvaise météo ou dans un environnement dans lequel évoluent des piétons par exemple ; - un mode dit « stationnement » ou « parking » correspondant à une conduite dans un environnement non structuré, par exemple hors d’une route, avec une méthode de navigation adaptée. Le mode de conduite permet ensuite de sélectionner une structure d’algorithme de planification locale mise en œuvre dans le quatrième module 204 et un ensemble de paramètres adaptés en fonction de la situation. Le troisième module 203 s’adapte avantageusement à la situation courante et est adapté pour remettre en cause le résultat de la planification globale si nécessaire. Par exemple, si le chemin mission indique qu’il faut prendre la première sortie sur un rond-point, mais que cette sortie est fermée pour cause de travaux, le troisième module 203 détermine une autre voie à suivre temporairement, et requiert au premier module 201 un nouvel itinéraire tenant compte de la voie bloquée. et illustrent chacune un chemin cible déterminé par le troisième module 203, selon un exemple de réalisation particulier et non limitatif de la présente invention. La et la illustrent chacune un chemin cible 31 déterminé à partir d’un chemin mission 30 par le troisième module 203. Selon l’exemple de la , le feu de circulation 112 est au vert, c’est-à-dire que le véhicule 10 est autorisé à passer le carrefour ou l’intersection. Selon l’exemple de la , le feu de circulation 112 est au rouge, signalant que le véhicule 10 doit marquer un arrêt et ne pas franchir le carrefour. Une information de vitesse égale à 36 km/h est associé à chaque point 311 du chemin cible 31 sur la , que ce soit sur la portion de chemin avant le feu 112 et sur la portion de chemin après passage au feu 112. Sur la , l’information de vitesse associée à chaque point du chemin cible 31 est différente de celle de la , notamment pour les points de la portion de chemin après le feu 112. Le feu étant au rouge, la vitesse associée à chaque point 411 du chemin 31 après le feu sur la est égale à 0 km/h. L’intervalle 310 représentant l’écart latéral que peut réaliser le véhicule 10 autour du chemin cible 31 est illustré par une zone en grisé entourant le chemin 31, cet intervalle étant identique sur la et la puisque lié à une même contrainte spatiale sur les deux figures, le chemin étant identique sur les deux figures. Les figures 3 et 4 illustrent ainsi le chemin cible 31 et les contraintes associées à ce chemin dépendant de l’environnement du véhicule 10 (présence d’un feu de circulation 112, carrefour avec une voie pour tourner à droite). Le chemin mission 30 indique ainsi la direction générale à suivre. Le troisième module 203 analyse la structure de la route pour déterminer que pour tourner à droite, il est nécessaire de suivre la voie de droite, ce qui permet d’obtenir un chemin cible 31 plus précis et conforme au code de la route. La différence entre les deux scénarios des figures 3 et 4 sur les contraintes de vitesse, selon la couleur du feu de signalisation 112 impose notamment un arrêt au niveau de la ligne de feu 112 au véhicule 10, et la planification locale mise en œuvre par le quatrième module devra déterminer une trajectoire respectant cette contrainte. Les contraintes sur la trajectoire sont définies par le troisième module 203 sur un horizon temporel plus court que le chemin mission qui est calculé jusqu’à l’objectif par le premier module 201 qui prend en compte le point d’origine et la destination du véhicule 10 pour déterminer le chemin mission 30. Le quatrième module 204 illustré sur la , aussi appelé module de planification locale, est configuré déterminer ou définir, à partir des contraintes fournies ou transmises par le troisième module 203 et à partir de toutes les informations données par la représentation de l’environnement (par exemple les informations sur les objets statiques et/ou dynamiques, limites de visibilité) transmises par le deuxième module 202, une trajectoire de référence à transmettre aux moyens de contrôle 2041 du véhicule 10. Cette trajectoire de référence prend la forme d’une trajectoire discrétisée selon un pas de temps donné, dans un repère 2D cartésien centré autour du véhicule 10. Selon une variante de réalisation, le quatrième module 204 prend en outre en considération le mode de conduite transmis par le troisième module 203 afin de sélectionner un algorithme particulier pour s’adapter à la situation. Ce quatrième module 204 est responsable de la définition d’une trajectoire sûre, sans collision ou tentant de minimiser les dégâts dans les cas critiques, et la plus confortable possible pour le ou les passagers du véhicule 10. Les opérations mises en œuvre dans le quatrième module 204 sont décrits avec plus en détail en regard de la . Grâce à cette architecture 20, les différentes contraintes à prendre en compte sont gérées par différents modules, ce qui permet de découper les tâches pour réaliser la navigation du véhicule 10. Concernant la méthode de planification locale, un profil de vitesse est créé et adapté pour chaque chemin candidat généré. Le profil de vitesse est adapté en fonction des contraintes données par la décision (par exemple la réglementation, une analyse haut niveau de la situation) et en fonction de l’environnement (par exemple selon les obstacles statiques, les limites de visibilité et/ou la prédiction du déplacement des obstacles dynamiques) en définissant des points d’arrêt sûrs et permettant la manœuvrabilité si nécessaire, et le profil d’accélération ou de décélération associé. Des trajectoires sûres évitant les collisions et permettant un arrêt avant les obstacles ou avant la frontière de visibilité sont ainsi obtenues. Ceci permet finalement de choisir la meilleure alternative parmi un ensemble de trajectoires potentielles, en principe toutes réalisables et confortables. La méthode de planification locale dispose d’une architecture interne permettant d’obtenir un temps de traitement inférieure à celui des méthodes existantes. illustre schématiquement le quatrième module 204 et les opérations mises en œuvre dans le quatrième module pour la détermination de la trajectoire du véhicule 10, selon un exemple de réalisation particulier et non limitatif de la présente invention. La méthode de planification locale mise en œuvre par le quatrième module 204 correspond par exemple à une méthode par tentacules adaptée à l’environnement urbain. Dans une première opération 51, un ensemble de chemins candidats 510 est généré à partir de l’ensemble de contraintes sur la trajectoire 5011 fournies par le troisième module 203. Cette première opération 51 consiste à générer un ensemble de chemins, par exemple des chemins dits « parallèles » au chemin cible. Les chemins parallèles sont caractérisés par l’écart latéral qui les sépare du chemin cible. Chaque chemin est composé d’une phase dite « transitoire » puis d’une phase dite « parallèle ». La phase transitoire fait le lien entre la position initiale du véhicule 10 et le chemin parallèle. Pour un même décalage latéral q k , plusieurs phases transitoires de longueurs différentes sont par exemple construites. La longueur d’une phase transitoire est caractérisée par la distance curviligne sur le chemin cible entre la position initiale du véhicule 10 et le point final de la phase transitoire. Cette distance est notée s j . Ainsi, l’ensemble de chemins est défini par un ensemble discret de k décalages latéraux Q = (q 1 , q 2 , …, q k ) et par un ensemble discret de J longueurs de phase transitoire S = (s 1 , s 2 , …, s j ). Un ensemble de N = KxJ chemins à générer est obtenu. L’ensemble discret de décalages latéraux Q est calculé à partir de l’intervalle [q min , q max ] obtenu du troisième module 203, lequel est échantillonné avec un pas latéral δ q à définir en fonction de la couverture de l’intervalle à réaliser et des capacités de calcul disponibles. Un échantillonnage important permettra d’évaluer plus de possibilités mais entraînera un traitement plus long, tandis qu’un échantillonnage léger sera plus rapide à traiter mais pourra potentiellement manquer de solutions. On construit l’ensemble Q tel que q 1 = q min , q k = q max et q i+1 – q i ≤ δ q . On doit donc avoir Si q min max >0, c’est-à-dire qu’on génère des chemins de chaque côté du chemin cible, alors la valeur 0 est explicitement introduite dans l’ensemble discret Q des décalages latéraux afin de générer également des chemins confondus avec le chemin cible. L’ensemble S est par exemple fourni de façon fixée (paramètre a priori) ou calculé en fonction des paramètres du véhicule 10 (par exemple en fonction de la vitesse initiale, des conditions d’adhérence, d’une accélération transversale maximale). Pour générer le chemin correspondant aux paramètres (s j , q k ), les coordonnées cartésiennes du point d’arrivée de la phase transitoire L jk sont calculées en interpolant le point sur le chemin cible situé à une distance s j , puis en le projetant d’une distance q k selon le vecteur normal au chemin cible en ce point. L’orientation et la courbure associées au point L jk sont également déterminées à partir du chemin cible. La phase transitoire du chemin est ensuite générée sous la forme d’une courbe paramétrée avec par exemple deux polynômes de degré 5 : Le paramètre τ est un paramètre arbitraire variant entre 0 et 1 et qui n’est pas associé au temps de parcours ni à l’abscisse curviligne du chemin. Sur chaque équation, il y 6 paramètres à déterminer, qui sont obtenus en posant le système représentant la continuité de la position, de l’orientation, de la courbure et de la vitesse avec la position initiale du véhicule et avec le point L jk . Toute de forme de courbe permettant d’assurer les continuités requises est utilisée, par exemple des polynômes de degré différent, une spirale à courbure polynomiale, une courbe de Bézier, une courbe calculée par optimisation prédictive à partir d’un modèle de véhicule. Une fois que les paramètres ont été déterminés, la courbe est échantillonnée et les points sont enregistrés. On calcule pour chaque point la position x et y, ainsi que l’orientation θ et la courbure k. La méthode d’échantillonnage de la courbe est à fixer : un échantillonnage dense permettra une meilleure représentativité mais pourra potentiellement allonger les calculs selon les traitements effectués par la suite. Selon un exemple particulier fourni à titre illustratif, la phase transitoire est systématiquement échantillonnée avec 50 points. Lorsque les phases transitoires ont été calculées, des points sont ajoutés après le point L jk de façon à construire la suite du chemin parallèle au chemin cible jusqu’à ce que le chemin atteigne une longueur déterminée s max . La longueur s max est un paramètre à fixer, qui peut dépendre de la vitesse du véhicule 10 ou de son horizon de visibilité. Par exemple, on pourra choisir s max comme étant la distance de freinage confortable du véhicule, ou comme étant la distance maximale de visibilité du véhicule. Un chemin plus long permettra d’analyser l’espace à plus long terme, mais il n’est pas nécessaire d’avoir des chemins trop longs car cela allonge le temps des traitements à réaliser par la suite. Il n’est pas toujours nécessaire de générer tous les chemins. En effet, tous les chemins générés sont adaptés et évalués par la suite, ce qui a un coût en temps de calcul. Pour alléger le traitement dans les cas simples et selon un mode de réalisation particulier, seuls sont générés les chemins sans décalage latéral par rapport à la trajectoire cible dans un premier temps, et ces chemins sont ensuite adaptés comme présenté dans la suite. Si l’une au moins des trajectoires obtenues après adaptation permet de poursuivre sans s’arrêter, la méthode passe directement à l’opération de sélection 55. Cependant, si toutes les trajectoires mènent à un arrêt, cela veut dire qu’un obstacle barre la route du véhicule 10. Il est alors nécessaire de générer les chemins alternatifs et les adapter également avant de passer à l’opération de sélection 55. Dans une deuxième opération 52, pour chaque chemin généré, un profil de vitesse est déterminé à partir des contraintes 5011 transmises par le troisième module 203. Dans une troisième opération 53, le profil de vitesse est adapté en fonction deuxièmes données relatives aux obstacles statiques 5012 et/ou aux limites de visibilité 5013 transmis par le deuxième module 202. Dans une quatrième opération 54, le profil de vitesse obtenus à la troisième opération 53 pour chaque chemin généré est adapté en fonction des deuxièmes données relatives aux obstacles dynamiques 5014 prédits transmis par le deuxième module 202. Quand un profil de vitesse a été défini sur chaque chemin, chaque couple chemin/vitesse est transformé en une trajectoire 540. La deuxième opération 52 correspond à un processus d’adaptation de la vitesse. Sur chaque chemin généré, un profil de vitesse permettant de respecter des contraintes de sécurité et de confort est construit puis adapté. Ces étapes d’adaptation de vitesse correspondant aux opérations 53 et 54 transforment progressivement les chemins en couple chemin/vitesse puis en trajectoire 540. Dans ces opérations, il est supposé que la forme géométrique de chaque chemin est fixée et ne peut pas être modifiée. Les choix d’adaptation de vitesse effectués ici sont donc à apprécier en considérant que d’autres chemins pourront peut-être réaliser un comportement plus adapté. Par exemple, si un obstacle barre le centre de la voie, le résultat des opérations d’adaptation de la vitesse sur un chemin suivant le centre de la voie sera une trajectoire d’arrêt, même si la situation permet un dépassement. En revanche, si un chemin a été généré sur la voie de gauche et que l’environnement est libre, le résultat de l’adaptation correspondra à une trajectoire de dépassement. Au final, le résultat de l’adaptation de la vitesse sur l’ensemble de chemin donnera un ensemble de trajectoires candidates dont la meilleure sera sélectionnée à l’opération 55. Un chemin P (« path » en anglais) particulier composé de N points est considéré pour la suite pour décrire les opérations d’adaptation de la vitesse. Le troisième module 203 contraint la planification locale mise en œuvre par le quatrième module 204 via le chemin cible. Le troisième module 203 définit les vitesses maximales réalisables en chaque point. Ces consignes de vitesse sont reportées sur P. Pour chaque point P(i) de P, on détermine la vitesse maximale autorisée par la décision en projetant P(i) sur le chemin cible et en déterminant la vitesse associée au point résultant. On ajoute également sur P les points de changement de vitesse importants, comme la position des panneaux ou les points d’arrêt (les stops ou les priorités à céder par exemple). On récupère donc pour chaque point P(i) la vitesse v i decision . Ensuite, on ajuste si nécessaire cette vitesse en chaque point par rapport à un critère de confort. On se donne une borne d’accélération latérale supérieure à 0 à ne pas dépasser. Étant donnée une courbure k et une vitesse v, on sait calculer l’accélération latérale induite : On peut donc calculer la vitesse maximale en fonction de la courbure et de la borne d’accélération : Avec k i la courbure du chemin au point P(i). Finalement, on associe au point P(i) la vitesse v(i) donnée par : L’adaptation aux obstacles statiques consiste à parcourir P avec le gabarit du véhicule 10 et vérifier que celui-ci n’entre pas en collision avec les obstacles statiques de l’environnement. Si une collision est détectée, un point d’arrêt est inséré sur P. En partant de la position initiale du véhicule, chaque point P(i) est testé pour vérifier s’il présente une collision (avec les obstacles statiques ou les limites de visibilité) ou non. Ce test consiste à placer le gabarit du véhicule 10 (par exemple un rectangle aux dimensions adaptées) sur P(i) et à rechercher une intersection entre les segments formant le gabarit et les segments représentant les bords des obstacles statiques et les limites de visibilité fournis par le module de représentation de l’environnement. Sans collision, le processus passe au point suivant. Si aucune collision n’est détectée sur le chemin, il n’y a rien à faire. En revanche, si une collision est détectée, le chemin P étant figé, il est nécessaire de produire un arrêt avant la collision pour assurer la sécurité du véhicule 10. La position du point d’arrêt à insérer est alors déterminée. Soit P(i) le point de P sur lequel une collision est détectée. Par construction de l’algorithme, on sait que le point P(i-1) est nécessairement sans collision. On déduit alors que la collision se produit entre P(i-1) et P(i). On détermine le point de contact par dichotomie en interpolant linéairement la position du véhicule 10 entre ces deux points. Une fois le point contact déterminé, le traitement diffère selon l’objet de la collision. Si la collision détectée concerne un obstacle statique, il faut faire en sorte de laisser une marge de manœuvre au véhicule 10 pour pouvoir repartir et éventuellement le dépasser par la suite. Le point de contact est calculé à nouveau le long de P sur une distance s safe pour obtenir le point d’arrêt. La valeur de s safe est par exemple fixée de manière arbitraire. Selon un autre exemple, cette valeur est calculée en fonction du braquage maximal du véhicule 10 et de la largeur de l’obstacle. On associe alors à ce point une vitesse nulle, on le marque comme étant le dernier point du chemin, et on passe au chemin suivant. Si la collision détectée concerne la limite de visibilité du véhicule, on définit directement le point de contact comme point d’arrêt, sans introduire de distance de sécurité. Ceci permet d’avoir un compromis entre sécurité et conservatisme : on garantit qu’en cas d’obstacle, on sera en mesure de s’arrêter au pire au contact d’un obstacle masqué par la visibilité (on considère tout de même que le gabarit représentant le véhicule 10 est légèrement plus grand que la taille réelle du véhicule 10 pour prendre en compte le bruit des capteurs), sachant que le calcul du profil de vitesse pourra réussir à planifier un arrêt avec une marge plus importante. Selon un mode de réalisation particulier, les segments représentant les obstacles statiques et ceux représentant les limites de visibilité sont mélangés et labellisés pour ne balayer le chemin qu’une seule fois et optimiser les calculs. Pour calculer une trajectoire temporelle réalisable sur le chemin, il est nécessaire de définir le profil de vitesse du véhicule sur ce chemin, en tenant compte des limitations dynamiques du véhicule 10 et des objectifs de confort. Le calcul du profil de vitesse final est par exemple effectué par une méthode de lissage fonctionnant par exemple à partir d’un profil d’accélération et de décélération cible. Un profil de décélération à utiliser est par exemple défini. La méthode de lissage exploite un profil de décélération pour lisser le profil de vitesse sur le chemin. Initialement, ce profil correspond au profil de décélération confortable. Cependant, si un arrêt est imposé sur le chemin et que le profil de décélération confortable ne permet pas de produire l’arrêt à temps, des paramètres de freinage permettant de réaliser l’arrêt à la position demandée entre un profil « confortable » et un profil dit « maximum » sont recherchés, la décélération étant plus faible dans le profil confortable que dans le profil maximum. Pour réduire les fluctuations liées aux arrondis numériques ou au bruit dans la perception, une marge de longueur 2ε lon centrée sur le point d’arrêt (situé à une distance s stop du véhicule) est définie, qui permet de déterminer si on doit calculer un profil de freinage ou lisser normalement le profil. Ceci permet de forcer la convergence du profil d’arrêt une fois que le freinage est engagé, et évite d’osciller d’un pas de planification à un autre entre une trajectoire lissée et une trajectoire de freinage. À partir des conditions initiales du véhicule et des paramètres de freinage de confort, on calcule la distance de freinage d f nécessaire au véhicule pour réaliser l’arrêt. Si d f stop - ε lon , les paramètres de freinage associés au chemin permettent de produire l’arrêt avant le point demandé, et un lissage normal du profil de vitesse est effectué. Si s stop - ε lon ≤ d f ≤ s stop + ε lon , les paramètres de freinage associés au chemin permettent l’arrêt du véhicule autour du point d’arrêt demandé, et un profil d’arrêt avec ces paramètres est généré. Si d f > s stop + ε lon , les paramètres de freinage associés au chemin ne permettent pas d’arrêter le véhicule à temps, et les paramètres pour produire l’arrêt à l’endroit indiqué sont adaptés. La méthode de calcul du profil de freinage nécessaire pour produire l’arrêt donné comprend par exemple les étapes suivantes : - dans une première étape, la distance d’arrêt est calculée à partir des conditions initiales avec le profil de freinage maximal. Ceci permet de trouver la distance de freinage minimale que le véhicule est en mesure d’effectuer. Si cette distance d’arrêt est supérieure à s stop , il est conclu que l’arrêt est impossible au point demandé. Afin de minimiser les dégâts en cas de collision, les valeurs de freinage maximales sont associées au chemin ; - dans une deuxième étape, on sait qu’un freinage confortable n’est pas suffisant pour produire l’arrêt à l’endroit voulu, mais un freinage maximal produirait l’arrêt trop tôt : les paramètres de freinage sont calculés de façon à produire l’arrêt à l’endroit demandé : ● dans un premier temps, la variation d’accélération est fixée à la valeur confortable et uniquement la valeur de freinage est ajustée. Pour vérifier qu’une telle configuration est possible, la distance de freinage est calculée. Si cette distance de freinage est inférieure à s stop , il est possible de calculer une distance permettant de produire l’arrêt au bon endroit ; ● Si ce n’est pas le cas, il faut également ajuster la variation d’accélération. On fixe alors la décélération maximale et on calcule la variation d’accélération permettant de produire l’arrêt au bon endroit. Adaptation aux obstacles dynamiques L’objectif est d’adapter le profil de vitesse aux obstacles dynamiques. L’idée générale de cette méthode est de simuler l’évolution des objets de la scène sur un horizon futur et de repérer les éventuelles collisions pour adapter la trajectoire du véhicule 10. Si une collision est détectée, un point d’arrêt est défini à un endroit sans collision. Pour un pas de temps donné, des trajectoires de freinage sont définies par rapport aux obstacles dynamiques. L’aspect réactif de la méthode permet de ne pas aboutir systématiquement à un arrêt, des ralentissements permettant de laisser passer les obstacles avant de reprendre une accélération sont observés. On dispose d’une prédiction du déplacement des obstacles dynamiques sous la forme d’une trajectoire échantillonnée avec un pas de temps connu. Pour pouvoir comparer avec le véhicule 10, il faut disposer d’une trajectoire prévoyant son déplacement, échantillonnée au même pas de temps que les prédictions des obstacles dynamiques. Le lissage du profil de vitesse est réalisé afin d’intégrer la dynamique d’accélération cible, puis à partir du chemin et du profil de vitesse lissé, la trajectoire prédite est calculée pour le véhicule 10 en supposant un suivi exact, avec un pas de temps identique à celui des prédictions des obstacles. En premier lieu, le profil de vitesse est lissé sur P. La fonction de lissage est également responsable de l’adaptation du freinage en cas d’arrêt. Si un freinage maximal est nécessaire à ce stade, il n’est pas possible de faire mieux, la trajectoire de freinage maximal est alors sortie. Sinon, on note T la trajectoire obtenue par la conversion du couple chemin/vitesse et le traitement se poursuit. Pour chaque point T(i) de T, il est vérifié si une collision est présente ou non. Afin de prendre en compte une distance de sécurité correspondant au temps inter-véhicule, le gabarit du véhicule 10 est augmenté ainsi que celui des obstacles sur une durée δt, fixée par exemple à 1 seconde. On représente donc, pour vérifier la collision au temps t, les différents acteurs par l’espace qu’ils occupent du temps t au temps t + δt. En l’absence d’intersection, on passe au point suivant. Si une intersection est détectée, cela veut dire que la trajectoire du véhicule 10 le conduit à une collision, un arrêt avant la collision s’imposant alors. Le point précédent, sans collision, est choisi comme point d’arrêt. Une vitesse nulle est annotée à cette position sur le chemin. Le profil de vitesse ayant été modifié, il est nécessaire de le lisser à nouveau, puis de générer une nouvelle trajectoire et de la vérifier également. En effet, bien que l’on s’arrête à la première collision détectée, il est possible que l’évolution des obstacles dynamiques sur le reste de l’horizon de prédiction produise une autre collision à un autre endroit. Il faut donc s’assurer que la nouvelle trajectoire est toujours sans collision. Ce traitement est reproduit jusqu’à ce qu’aucune collision ne soit détectée. Cette itération nécessaire explique que l’adaptation aux obstacles dynamiques peut, selon les situations, nécessiter plus de temps de calcul. En pratique, pour limiter les impacts sur le temps de traitement, lorsqu’on définit un point d’arrêt dans cette étape, la collision avec la position des obstacles au temps suivant est vérifiée directement. Tant qu’une collision est détectée, le point sans collision précédent est sélectionné et la vérification est effectuée à nouveau. Ceci permet de traiter les cas complexes comme celui présenté en repositionnant le point d’arrêt sans effectuer de lissage. À la fin de cette opération, l’ensemble des trajectoires adaptées est transmis pour traitement à l’opération 55. Dans une cinquième opération 55, une fonction de sélection permet de déterminer la meilleure trajectoire 550 disponible parmi la pluralité de trajectoires déterminées à la quatrième opération 54. Cette meilleure trajectoire 550 est alors transmise aux moyens de contrôle 2041 en tant que trajectoire de référence. Une fois que toutes les trajectoires ont été adaptées, il faut choisir laquelle suivre jusqu’au prochain pas de planification. Il est souhaitable de donner à la fonction de sélection des garanties de sécurité en premier lieu, et de confort ensuite. La sécurité est par exemple déclinée en deux aspects : une sécurité de stabilité latérale pour éviter de perdre le contrôle du véhicule 10, et une sécurité physique pour éviter les collisions avec les obstacles. Des considérations sur l’accélération latérale et longitudinale induites par les trajectoires permettront ensuite de raffiner le choix. Sécurité de stabilité latérale Les trajectoires qui pourraient mettre en danger la stabilité latérale du véhicule et causer une perte de contrôle ou un retournement du véhicule 10 sont à écarter. Ceci peut être particulièrement important quand le véhicule 10 se retrouve face à un obstacle inattendu et doit choisir entre l’évitement ou le freinage. En effet, l’évitement n’est pas toujours la meilleure option : même si la trajectoire est libre de toute collision, elle peut être brutale et induire une accélération latérale trop importante risquant de déstabiliser le véhicule 10. On peut donc, selon les conditions initiales, préférer d’abord freiner tout droit et éviter l’obstacle ensuite, une fois que la vitesse a été réduite et que l’évitement peut se faire sans danger. Sur chaque trajectoire, l’accélération latérale est comparée en chaque point à une borne maximale donnée en paramètre. Si l’accélération latérale est supérieure (en valeur absolue) à la borne, elle est retirée de la liste des trajectoires viables. Cette situation peut se produire malgré les contraintes fixées. En effet, en fonction des conditions initiales, il est possible que le profil de vitesse final ne permette pas de respecter toutes les contraintes. Si on prend l’exemple d’une contrainte de vitesse de 20 km/h sur un point situé à 3 mètres du véhicule 10 avec une vitesse initiale de 50 km/h, il est constaté que la transition n’est pas réalisable compte tenu du profil de décélération. Dans ce cas, l’algorithme de lissage va produire un profil de vitesse compatible avec les conditions initiales, mais qui ne respectera pas toutes les contraintes. Une accélération latérale locale supérieure à la borne de confort sera obtenue, et potentiellement supérieure à la borne maximale considérée ici. Dans le cas critique où toutes les trajectoires induisent un dépassement de la borne de sécurité, elles sont toutes réintégrées pour poursuivre le processus et éviter de n’avoir aucune trajectoire à sélectionner par la suite. Selon une variante, un traitement particulier tel qu’une manœuvre d’urgence particulière est mise en œuvre de manière alternative. Etats de collision d’une trajectoire On cherche à assigner à chaque trajectoire un état de collision à partir des informations collectées pendant les étapes d’adaptation. Les 4 états de collision suivants sont définis : - E1 : la trajectoire ne conduit pas à une collision ; - E2 : la trajectoire ne conduit pas à une collision mais ne permet pas de respecter la distance de sécurité avec un obstacle statique ; - E3 : la trajectoire conduit à une collision avec un obstacle statique ; et - E4 : la trajectoire conduit à une collision avec un obstacle dynamique ; Les trajectoires sont classées dans le groupe qui convient, et une organisation qui permet de privilégier la sécurité est obtenue. Toutes les trajectoires de E1 sont considérées comme étant strictement meilleures que celles de E2, elles-mêmes strictement meilleures que celles de E3, elles-mêmes strictement meilleures que celles de E4. Au sein d’un même groupe, toutes les trajectoires sont considérées équivalentes en termes de sécurité. La sélection de l’ensemble de trajectoires offrant les meilleures garanties de sécurité est obtenue en choisissant celles du premier groupe non-vide. Choix de l’alternative la plus confortable Suite à la sélection de l’ensemble de trajectoires apportant les meilleures garanties de sécurité, celle offrant le plus de confort et d’efficacité est sélectionnée. Pour ce faire, un coût est calculé sur chaque trajectoire de la façon suivante : La première partie de cette fonction de coût permet d’estimer l’intégrale du carré de l’accélération globale sur la trajectoire, avec N le nombre de points de la trajectoire, a lon,i et a lat,i les accélérations longitudinale et latérale respectivement au point i, et δ t le pas de temps entre deux points de la trajectoire. Ce coût est faible quand la trajectoire présente peu de changements de vitesse ou de déplacement latéral. À l’inverse, une trajectoire avec des fortes variations de vitesse ou des courbes importantes aura un coût plus important. Cependant, cette définition n’encourage pas la mise en mouvement. En effet, en partant de l’arrêt, une trajectoire effectuant un léger démarrage pour s’arrêter immédiatement ensuite est plus confortable qu’une trajectoire d’accélération jusqu’à la vitesse cible. On introduit donc le coût σ eff fixé à une valeur élevée, et la variable de décision δ eff qui vaut 1 si la trajectoire amène à un arrêt et 0 sinon. De cette façon, une trajectoire d’accélération est préférée à une trajectoire d’arrêt, mais si toutes les trajectoires mènent à l’arrêt, ce coût n’intervient pas dans la sélection car il est présent sur toutes les trajectoires. De la même façon, on introduit un coût fixé σ conf permettant de rejeter les trajectoires qui dépassent les bornes d’accélération confortable définies. Même si le profil de vitesse est calculé de façon à éviter ces situations, il peut arriver que l’accélération latérale dépasse localement la borne de confort. La variable de décision δ conf vaut donc 1 si un dépassement est constaté, 0 sinon. La relation d’ordre entre σ eff et σ conf permet de donner la priorité à l’efficacité sur le confort ou inversement. Ici, nous choisissons σ eff conf , ce qui fait qu’une trajectoire de freinage confortable sera moins pénalisée qu’une trajectoire efficace avec un dépassement de la borne de confort. Une fois que le coût est calculé sur toutes les trajectoires, celle 550 présentant le coût le plus faible est sélectionnée et transmise aux moyens de contrôle 2041. On notera que la fonction de coût pourrait être calculée différemment selon le type de trajectoire que l’on souhaite privilégier. Un tel fonctionnement du quatrième module 204 correspond à la mise en œuvre d’une planification réactive de trajectoire, c’est-à-dire que le processus décrit dans les opérations 51 à 55 est exécuté de façon régulière pour mettre à jour la planification par rapport aux évolutions de l’environnement et aux nouvelles contraintes. Une planification locale adaptée à une variété de situations de conduite urbaine est ainsi obtenue grâce à une méthode générique et une intégration dans une architecture globale 20. La méthode permet de définir des trajectoires sûres, et cherche à minimiser les dommages dans les cas critiques. Elle permet également de prendre en compte les occlusions et les obstacles dynamiques. La méthode de planification locale proposée est une méthode réactive discrète et déterministe basée sur des calculs géométriques simples. La phase d’adaptation des chemins peut être parallélisée si les moyens de calcul le permettent. Elle est adaptée à la plupart des situations de conduite normale dans un environnement urbain. Elle prend en compte une distance de sécurité et de manœuvrabilité quand un arrêt doit être défini par rapport aux obstacles statiques. Elle prend en compte les obstacles dynamiques (avec une durée de sécurité) et la visibilité potentiellement limitée du véhicule par rapport à l’objectif de navigation à réaliser. La méthode proposée permet de s’adapter à des situations plus ou moins critiques en libérant progressivement des contraintes. Par exemple, pour assurer un freinage suffisant et éviter une collision, la méthode est capable de prévoir une trajectoire de décélération allant au-delà du freinage confortable. illustre schématiquement un dispositif 6 configuré pour mettre en œuvre une architecture 20, seul ou en combinaison avec d’autres dispositifs 6, laquelle est adaptée pour déterminer une trajectoire de véhicule, par exemple le véhicule autonome 10, selon un exemple de réalisation particulier et non limitatif de la présente invention. Le dispositif 6 correspond par exemple à un dispositif embarqué dans le véhicule 10, par exemple un calculateur. Le dispositif 6 est par exemple configuré pour la mise en œuvre des opérations décrites en regard des , 2, et 5 et/ou des étapes du procédé décrit en regard de la . Des exemples d’un tel dispositif 6 comprennent, sans y être limités, un équipement électronique embarqué tel qu’un ordinateur de bord d’un véhicule, un calculateur électronique tel qu’une UCE (« Unité de Commande Electronique »), un téléphone intelligent, une tablette, un ordinateur portable. Les éléments du dispositif 6, individuellement ou en combinaison, peuvent être intégrés dans un unique circuit intégré, dans plusieurs circuits intégrés, et/ou dans des composants discrets. Le dispositif 6 peut être réalisé sous la forme de circuits électroniques ou de modules logiciels (ou informatiques) ou encore d’une combinaison de circuits électroniques et de modules logiciels. Selon différents modes de réalisation particuliers, le dispositif 6 est couplé en communication avec d’autres dispositifs ou systèmes similaires et/ou avec des dispositifs de communication, par exemple une TCU (de l’anglais « Telematic Control Unit » ou en français « Unité de Contrôle Télématique »), par exemple par l’intermédiaire d’un bus de communication ou au travers de ports d’entrée / sortie dédiés. Le dispositif 6 comprend un (ou plusieurs) processeur(s) 60 configurés pour exécuter des instructions pour la réalisation des étapes du procédé et/ou pour l’exécution des instructions du ou des logiciels embarqués dans le dispositif 6. Le processeur 60 peut inclure de la mémoire intégrée, une interface d’entrée/sortie, et différents circuits connus de l’homme du métier. Le dispositif 6 comprend en outre au moins une mémoire 61 correspondant par exemple une mémoire volatile et/ou non volatile et/ou comprend un dispositif de stockage mémoire qui peut comprendre de la mémoire volatile et/ou non volatile, telle que EEPROM, ROM, PROM, RAM, DRAM, SRAM, flash, disque magnétique ou optique. Le code informatique du ou des logiciels embarqués comprenant les instructions à charger et exécuter par le processeur est par exemple stocké sur la mémoire 61. Selon un mode de réalisation particulier et non limitatif, le dispositif 6 comprend un bloc 62 d’éléments d’interface pour communiquer avec des dispositifs externes, par exemple un serveur distant ou le « cloud », d’autres nœuds du réseau ad hoc. Les éléments d’interface du bloc 62 comprennent une ou plusieurs des interfaces suivantes : - interface radiofréquence RF, par exemple de type Bluetooth® ou Wi-Fi®, LTE (de l’anglais « Long-Term Evolution » ou en français « Evolution à long terme »), LTE-Advanced (ou en français LTE-avancé) ; - interface USB (de l’anglais « Universal Serial Bus » ou « Bus Universel en Série » en français) ; - interface HDMI (de l’anglais « High Definition Multimedia Interface », ou « Interface Multimedia Haute Definition » en français) ; - interface LIN (de l’anglais « Local Interconnect Network », ou en français « Réseau interconnecté local »). Des données sont par exemples chargées vers le dispositif 6 via l’interface du bloc 62 en utilisant un réseau Wi-Fi® tel que selon IEEE 802.11, un réseau ITS G5 basé sur IEEE 802.11p ou un réseau mobile tel qu’un réseau 4G (ou LTE Advanced selon 3GPP release 10 – version 10) ou 5G, notamment un réseau LTE-V2X. Selon un autre mode de réalisation particulier, le dispositif 6 comprend une interface de communication 63 qui permet d’établir une communication avec d’autres dispositifs (tels que d’autres calculateurs du système embarqué) via un canal de communication 630. L’interface de communication 63 correspond par exemple à un transmetteur configuré pour transmettre et recevoir des informations et/ou des données via le canal de communication 630. L’interface de communication 63 correspond par exemple à un réseau filaire de type CAN (de l’anglais « Controller Area Network » ou en français « Réseau de contrôleurs »), CAN FD (de l’anglais « Controller Area Network Flexible Data-Rate » ou en français « Réseau de contrôleurs à débit de données flexible »), FlexRay (standardisé par la norme ISO 17458) ou Ethernet (standardisé par la norme ISO/IEC 802-3). Selon un mode de réalisation particulier supplémentaire, le dispositif 6 peut fournir des signaux de sortie à un ou plusieurs dispositifs externes, tels qu’un écran d’affichage, un ou des haut-parleurs et/ou d’autres périphériques via respectivement des interfaces de sortie non représentées. illustre un organigramme des différentes étapes d’un procédé de détermination d’une trajectoire de véhicule, selon un exemple de réalisation particulier et non limitatif de la présente invention. Le procédé est par exemple mis en œuvre par un dispositif embarqué dans le véhicule 10 ou par le dispositif 6 de la selon l’architecture 20 de la . Dans une première étape 71, des premières données représentatives d’un itinéraire du véhicule autonome et des deuxièmes données représentatives d’un environnement du véhicule autonome sont reçues. Les premières données sont par exemple reçues d’une interface homme-machine, dite IHM et/ou d’un système de localisation par satellite. Les deuxièmes données sont par exemple reçues de système(s) embarqué(s) dans le véhicule comprenant un ou plusieurs capteurs configurés pour détecter les objets ou obstacles situés dans l’environnement du véhicule autonome et/ou de dispositifs de communication (par exemple d’autre véhicule, des objets connectés, une antenne ou une UBR, un ou plusieurs serveurs distants) selon un mode de communication véhicule vers tout, dit V2X. Dans une deuxième étape 72, un chemin, dit chemin mission, est déterminé ou calculé dans un premier module de l’architecture, pour le véhicule autonome en fonction des premières données reçues à la première étape 71, ou au moins à partir d’une partie de ces premières données. Dans une troisième étape 73, des informations représentatives de l’environnement du véhicule autonome sont déterminées ou obtenues dans un deuxième module de l’architecture à partir des deuxièmes données reçues à la première étape 71, ou au moins à partir d’une partie de ces deuxièmes données. Dans une quatrième étape 74, un ensemble de contraintes associées au chemin mission est déterminé dans un troisième module de l’architecture en fonction des informations représentatives de l’environnement déterminées à la troisième étape 73. Dans une cinquième étape 75, des paramètres représentatifs d’une trajectoire (par exemple des coordonnées d’un ensemble de points associées à des valeurs de vitesse) de référence pour le véhicule autonome sont déterminés dans un quatrième module de l’architecture en fonction d’au moins une partie des deuxièmes données et de l’ensemble de contraintes obtenues à la quatrième étape 74. Dans une sixième étape 76, les paramètres obtenus à la cinquième étape sont transmis à un ou plusieurs systèmes de contrôle du véhicule autonome pour contrôle la trajectoire du véhicule, par exemple dans un mode autonome sans l’assistance du conducteur. Tout ou partie des étapes précédentes sont réitérées, par exemple à intervalles réguliers en fonction du déplacement du véhicule et/ou lors de la survenue d’un changement, par exemple un changement d’itinéraire décidé par le conducteur ou un lors de la survenue d’un évènement dans l’environnement du véhicule (passage d’un feu au rouge ou au vert, route fermée, nouvel obstacle détecté, nouvelles conditions météorologiques telles que de la pluie ou de la neige), pour calculer ou adapter la trajectoire du véhicule autonome. Bien entendu, l’invention ne se limite pas aux modes de réalisation décrits ci-avant mais s’étend à un procédé de contrôle de la trajectoire d’un véhicule, par exemple autonome, et à un procédé de contrôle d’un véhicule, par exemple autonome, ainsi qu’aux dispositifs configurés pour la mise en œuvre de l’un et/ou l’autre de ces procédés. L’invention concerne également un véhicule, par exemple automobile ou plus généralement un véhicule autonome à moteur terrestre, comprenant le dispositif 6 de la . Procédé de détermination de trajectoire d’un véhicule autonome (10), ledit procédé étant mis en œuvre dans une architecture (20) déterminée mise en œuvre dans au moins un calculateur (6) embarqué dans ledit véhicule autonome (10), ledit procédé comprenant les étapes suivantes : - réception (71) de premières données (2011) représentatives d’un itinéraire pour ledit véhicule autonome et de deuxièmes données (2021) représentatives d’un environnement dudit véhicule autonome (10) ; - détermination (72), mise en œuvre dans un premier module (201) de ladite architecture (20), d’un chemin, dit chemin mission, pour ledit véhicule autonome(10) en fonction desdites premières données (2011) ; - détermination (73), mise en œuvre dans un deuxième module (202) de ladite architecture (20), d’informations représentatives dudit environnement du véhicule autonome (10) à partir desdites deuxièmes données (2021) ; - détermination (74), mise en œuvre dans un troisième module (203) de ladite architecture (20), d’un ensemble de contraintes associées audit chemin mission en fonction desdites informations représentatives dudit environnement ; - détermination (75), mise en œuvre dans un quatrième module (204) de ladite architecture (20), de paramètres représentatifs d’une trajectoire de référence pour ledit véhicule autonome (10) en fonction d’au moins une partie desdites deuxièmes données (2021) et dudit ensemble de contraintes ; - transmission (76) desdits paramètres à au moins un système de contrôle (2041) de trajectoire dudit véhicule autonome (10). Procédé selon la revendication 1, comprenant en outre une étape de détermination d’un mode de conduite, mise en œuvre dans ledit troisième module (203), en fonction desdites informations représentatives dudit environnement, ladite détermination (75) des paramètres représentatifs de la trajectoire de référence étant en outre fonction dudit mode de conduite. Procédé selon la revendication 1 ou 2, pour lequel la détermination (75) de paramètres représentatifs d’une trajectoire de référence comprend les étapes de : - génération d’une pluralité de chemins candidats à partir d’informations représentatives dudit chemin mission fournies par ledit troisième module (203) ; - détermination d’un profil de vitesse associé à chaque chemin candidat de ladite pluralité en fonction dudit ensemble de contraintes, chaque couple formé d’un profil de vitesse et du chemin candidat associé formant une trajectoire candidate ; - sélection d’une desdites trajectoires candidates en fonction de critères de sécurité, ladite trajectoire candidate sélectionnée correspondant à ladite trajectoire de référence. Procédé selon l’une des revendications 1 à 3, pour lequel ledit ensemble de contraintes comprend les éléments suivants : - un ensemble de points représentatifs d’un chemin bidimensionnel cible à suivre par ledit véhicule autonome (10), les coordonnées de chaque point étant exprimées dans un repère bidimensionnel cartésien centré sur ledit véhicule autonome (10) ; - une information de vitesse associée à chaque point dudit ensemble de points, ladite information de vitesse correspondant à une vitesse maximale en ledit chaque point déterminée en fonction desdites deuxièmes données (2021) ; - un intervalle latéral associé à chaque point d’au moins une partie dudit ensemble de points, ledit intervalle latéral correspondant à un écart maximal autorisé de chaque côté dudit chaque point. Procédé selon l’une des revendications 1 à 4, pour lequel ladite trajectoire de référence correspond à une trajectoire discrétisée selon un pas temporel déterminé dans un repère bidimensionnel cartésien centré sur ledit véhicule autonome (10). Procédé selon l’une des revendications 1 à 5, pour lequel lesdites informations représentatives dudit environnement comprennent : - des informations représentatives de localisation d’au moins un objet statique ; et/ou - des informations représentatives de gabarit dudit au moins un objet statique ; et/ou - des informations représentatives de limite de visibilité dudit véhicule autonome ; et/ou - des informations représentatives de trajectoire d’au moins un objet dynamique ; et/ou - des informations représentatives de gabarit dudit au moins un objet dynamique ; et/ou - des informations représentatives de signalisation routière. Procédé selon l’une des revendications 1 à 6, pour lequel ladite détermination (75) de paramètres représentatifs d’une trajectoire de référence met en œuvre une méthode par tentacules adaptée à un environnement urbain. Procédé selon l’une des revendications 1 à 7, pour lequel au moins une partie desdites deuxièmes données (2021) est reçue d’au moins un capteur embarqué dans ledit véhicule autonome (10). Dispositif (6) de détermination de trajectoire d’un véhicule autonome (10), ledit dispositif (6) comprenant une mémoire (61) associée à au moins un processeur (60) configuré pour la mise en œuvre d’une architecture (20) configurée pour la mise en œuvre des étapes du procédé selon l’une quelconque des revendications 1 à 8. Véhicule (10) comprenant le dispositif (6) selon la revendication 9.