Brevet FR3146519A1 — publié le 20240913

L'invention porte sur un procédé de pilotage d'un robot de conduite d'un groupe motopropulseur de véhicule automobile comportant: - une étape de chargement d'un gabarit de consignes de vitesse brutes (Cb) en fonction du temps associé à une marge brute maximale (Mgb_max) et une marge brute minimale (Mgb_min) à respecter, - une étape de calcul d'une marge contrainte maximale (Mgc_max) et une "marge contrainte minimale" (Mgc_min), - une étape de détermination de zones d'accélération, de zones de décélération, et de zones mortes, - une étape de définition d'une fonction glissante, et - une étape de calcul d'une consigne de vitesse dynamique finale (Vd) en fonction de la marge de contrainte brute maximale (Mgb_max), la marge de contrainte brute minimale (Mgb_min), la marge contrainte minimale (Mgc_min), la marge contrainte maximale (Mgc_max), et la fonction glissante. Figure 8 PROCÉDÉ DE PILOTAGE D'UN ROBOT DE CONDUITE SIMULANT UNE CONDUITE AGRESSIVE La présente invention porte sur un procédé de pilotage d'un robot de conduite simulant une conduite agressive. L'invention trouve une application particulièrement avantageuse pour la mise au point de groupes motopropulseurs de véhicules à moteur thermique à essence et/ou de groupes motopropulseurs de type hybride. De façon connue en soi, un robot de conduite utilisé sur un banc de test de groupe motopropulseur est apte à assurer de manière autonome et automatique un suivi de cycles d'homologation d'un groupe motopropulseur, tels qu'une procédure d’essai mondiale harmonisée pour les véhicules légers dit cycle WLTP (pour "Worldwide Light Vehicles Test Procedures" selon la terminologie anglosaxonne). A cet effet, le robot de conduite comporte une unité de commande et des actionneurs capables de piloter mécaniquement la pédale de frein, la pédale d’accélération et le levier de changement de rapport de vitesse du groupe motopropulseur. Le robot de conduite peut ainsi commander les accélérations et les décélération du groupe de motopropulseur de façon à suivre un gabarit de consignes de vitesse. Toutefois, les robots de conduite existants ne sont pas capables de simuler de façon automatique une conduite agressive maximisant les gradients d'accélération et de décélération afin de valider la robustesse d'une calibration d'optimisation énergétique d'un groupe motopropulseur. L'invention vise à remédier efficacement à cet inconvénient en proposant un procédé de pilotage d'un robot de conduite d'un groupe motopropulseur de véhicule automobile comportant: - une étape de chargement d'un gabarit de consignes de vitesse brutes en fonction du temps associé à une marge brute maximale et une marge brute minimale à respecter, - une étape de calcul d'une nouvelle marge maximale inférieure à la marge de contrainte brute maximale et d'une nouvelle marge minimale supérieure à la marge de contrainte brute minimale dites respectivement "marge contrainte maximale" et "marge contrainte minimale", - une étape de détermination, sur le gabarit de consignes de vitesses brutes, de zones d'accélération, de zones de décélération, et de zones mortes, - une étape de définition d'une fonction glissante qui présente un tronçon croissant pour chaque zone d'accélération, un tronçon décroissant pour chaque zone de décélération, et un tronçon constant pour chaque zone morte, et - une étape de calcul d'une consigne de vitesse dynamique finale en fonction de la marge de contrainte brute maximale, la marge de contrainte brute minimale, la marge contrainte minimale, la marge contrainte maximale, et la fonction glissante. L'invention permet ainsi d'effectuer, en toute autonomie, un suivi de consignes de vitesse simulant une conduite agressive de façon à valider la robustesse d'une calibration d'optimisation énergétique d'un groupe motopropulseur par la production d'essais répétables. L’invention permet en outre de disposer d’un réglage unique, quel que soit le groupe motopropulseur à piloter et le gabarit initial de consignes de vitesse, pour produire une consigne de vitesse simulant la conduite agressive d'un conducteur. L'invention permet d'obtenir une qualité de suivi de consigne compatible avec les exigences de l’essai tout en évitant de sortir des tolérances de l’essai. Selon une mise en œuvre de l'invention, on considère respectivement: - une zone d'accélération si une différence entre un échantillon de rang n+1 et un échantillon de rang n du gabarit de consignes de vitesse brutes est supérieur à un seuil, - une zone de décélération si une différence entre un échantillon de rang n+1 et un échantillon de rang n du gabarit de consignes de vitesse brutes est inférieur à l'inverse du seuil, - une zone morte si une valeur absolue d'une différence entre un échantillon de rang n+1 et un échantillon de rang n est inférieur au seuil. Selon une mise en œuvre de l'invention, ledit procédé comporte en outre une étape de filtrage consistant à supprimer les zones mortes entourées par deux zones identiques consistant en deux zones d'accélération ou deux zones de décélération. Selon une mise en œuvre de l'invention, la fonction glissante est définie de telle façon qu'elle vaut: - 0 au début d'une zone d'accélération, - 1 à la fin d'une zone d'accélération, et - dans une zone morte, une valeur constante égale à la valeur de la fonction glissante à la fin d'une zone précédente. Selon une mise en œuvre de l'invention, ledit procédé comporte une étape de calcul d'une consigne de vitesse dynamique brute à partir de la formule suivante: Vdb= Mgbx_max*fg + (Mgbx_min*(1-fg)) - Vdb étant la consigne de vitesse dynamique brute, - Mgbx_max étant la marge de contrainte brute maximale d'un échantillon x, - Mgbx_min étant la marge de contrainte brute minimale d'un échantillon x, - fg étant la fonction glissante. Selon une mise en œuvre de l'invention, la consigne de vitesse dynamique finale est obtenue en limitant la consigne de vitesse dynamique brute par la marge contrainte minimale et la marge contrainte maximale suivant la formule suivante: Vd = max([min( [Vdb, Mgcx_max]), Mgcx_min]), - Vd étant la consigne de vitesse dynamique finale, - Vdb étant la consigne de vitesse dynamique brute, - Mgcx_max étant la marge contrainte maximale d'un échantillon x, - Mgbx_min étant la marge contrainte minimale d'un échantillon x. Selon une mise en œuvre de l'invention, dans les zones mortes, la vitesse dynamique finale conserve sa valeur précédente. Selon une mise en œuvre de l'invention, pendant des phases d’arrêt du véhicule automobile, la vitesse dynamique finale est nulle. Selon une mise en œuvre de l'invention, une fonction de transfert appliquée aux marges brutes maximale et minimale pour calculer les marges contraintes maximale et minimale est un décalage paramétrable défini par une valeur de contrainte. Selon une mise en œuvre de l'invention, la marge contrainte maximale est égale à la marge brute maximale moins la valeur de contrainte et la marge contrainte minimale est égale à la marge brute minimale plus la valeur de contrainte. L’invention sera mieux comprise à la lecture de la description qui suit et à l’examen des figures qui l’accompagnent. Ces figures ne sont données qu’à titre illustratif mais nullement limitatif de l’invention. représente de façon schématique un banc de test de groupe motopropulseur dans lequel est implanté un robot de conduite piloté suivant le procédé selon l'invention; est une représentation graphique d'un gabarit de consignes de vitesse brutes associé à des marges maximales et minimales; illustre la définition des marges contraintes maximale et minimale lors de la mise en œuvre du procédé selon l’invention; montre un gabarit de consignes de vitesse brutes en fonction du temps faisant apparaître des zones d'accélération, des zones de décélération et des zones mortes, ainsi qu'une courbe d'accélération correspondante sur laquelle est représenté un seuil de gradient de vitesse; est une représentation graphique illustrant la détection des zones d'accélération, des zones de décélération et des zones mortes sur une portion d'un gabarit de consignes de vitesse brutes; illustre la suppression de zones mortes de la entourées par deux zones identiques d'accélération ou de décélération; illustre l'élaboration d'une fonction glissante qui varie en fonction de la zone d'accélération, la zone de décélération ou de la zone morte; est une représentation, sur un même graphique, d'un gabarit de consignes de vitesse brutes, de marges initiales maximale et minimale, de marges contraintes minimale et maximale, et des consignes de vitesse dynamiques obtenues lors de la mise en œuvre du procédé selon l'invention au cours d'une phase d'accélération; est une représentation, sur un même graphique, d'un gabarit de consignes de vitesse brutes, de marges initiales maximale et minimale, de marges contraintes minimale et maximale, et des consignes de vitesse dynamiques obtenues lors de la mise en œuvre du procédé selon l'invention au cours d'une phase de décélération. La montre un banc de test 10 d'un groupe motopropulseur 11 comportant un robot de conduite 12 piloté suivant le procédé selon l'invention. Le robot de conduite 12 comporte une unité de commande et des actionneurs capables de piloter mécaniquement la pédale de frein, la pédale d’accélération et le levier de changement de rapport de vitesse du groupe motopropulseur. Comme cela est expliqué ci-après, le robot de conduite 12 est apte à élaborer une consigne de vitesse à partir d'un gabarit de consignes de vitesse brutes qu'il va faire suivre au groupe motopropulseur 11 en imposant une accélération Acc via le pilotage de la pédale de frein, de la pédale d’accélération et du levier de changement de rapport de vitesse. Le robot de conduite 12 communique via un module 13 avec un environnement de simulation 14, par exemple de type dSpace-Simulink (nom commercial). Le module 13 gère, via l'environnement 14, une décélération Dec_EE liée à une phase de récupération d'énergie électrique. Un système de pilotage du groupe motopropulseur 15 gère une décélération Dec_p liée à la pente de la route. On décrit ci-après, en référence avec les figures 2 à 9, le procédé de pilotage du robot de conduite 12 selon l'invention. Une première étape consiste à charger un gabarit de consignes de vitesse brutes Cb en fonction du temps associé à une marge brute maximale Mgb_max et une marge brute minimale Mgb_min à respecter, tel que cela est illustré sur la . Le gabarit de consignes de vitesse brutes Cb et les marges brutes Mgb_max, Mgb_min peuvent être stockés dans une mémoire de l'unité de commande du robot de conduite 12. Le chargement consiste à transférer des données représentatives du gabarit de consignes de vitesse brutes Cb vers cette mémoire. Le gabarit de consignes de vitesse brutes Cb est échantillonné suivant une période d’échantillonnage T_ech. La période d'échantillonnage T_ech vaut par exemple 0.1s. Une deuxième étape consiste à calculer une nouvelle marge maximale Mgc_max inférieure à la marge de contrainte brute maximale Mgb_max et une nouvelle marge minimale Mgc_min supérieure à la marge de contrainte brute minimale Mgb_min dites respectivement "marge contrainte maximale" et "marge contrainte minimale", tel que cela est illustré sur la . Les marges contraintes minimale Mgc_min et maximale Mgc_max sont paramétrables de façon à adapter le niveau de conduite agressive du conducteur. Une fonction de transfert Fct est appliquée aux marges brutes Mgb_min, Mgb_max pour calculer les marges contraintes soit Mgcx=Fct(Mgbx). De préférence, cette fonction de transfert Fct est un décalage paramétrable défini par une valeur de contrainte Ctr. La marge contrainte maximale Mgc_max est égale à la marge brute maximale Mgb_max moins la valeur de contrainte Ctr, soit Mgc_max = Mgb_max - Ctr. La marge contrainte minimale Mgc_min est égale à la marge brute minimale Mgb_min plus la valeur de contrainte Ctr, soit Mgc_min = Mgb_min + Ctr. Une troisième étape consiste à déterminer les zones où la consigne brute Cb est associée à une phase d’accélération, une phase de décélération ou une zone morte. Ce calcul fait intervenir un gradient de vitesse Cbgrd pour déterminer le type de zone (accélération, décélération, morte). Suivant cette étape, on compare une différence entre un échantillon de rang n+1 et un échantillon de rang n du gabarit de consignes de vitesse brutes Cb avec un seuil Cb_grd. On considère ainsi: - une zone d'accélération Zacc si une différence entre un échantillon de rang n+1 et un échantillon de rang n du gabarit de consignes de vitesse brutes Cb est supérieur à un seuil Cb_grd, soit Cb(n+1)-Cb(n)>Cbgrd - une zone de décélération Zdec si une différence entre un échantillon de rang n+1 et un échantillon de rang n du gabarit de consignes de vitesse brutes Cb est inférieur à l'inverse du seuil Cb_grd, soit Cb(n+1)-Cb(n) - une zone morte Zm si une valeur absolue d'une différence entre un échantillon de rang n+1 et un échantillon de rang n est inférieur au seuil Cb_grd, soit |Cb(n+1)-Cb(n)| La illustre la mise en place du seuil Cbgrd par rapport à la courbe d'accélération Acc représentative des différences entre échantillons de vitesse divisée par la durée entre ces échantillons. La illustre la détection locale des différentes zones d'accélération Zacc, Zdec, Zm du gabarit de consignes de vitesse brutes. La courbe haute de la illustre un résultat global de la détection des différentes zones Zacc, Zdec, Zm. Une quatrième étape consiste à filtrer le résultat obtenu lors de la troisième étape pour supprimer les zones mortes Zm entourées par deux zones identiques. Ainsi, on supprime une zone morte Zm située entre deux zones d’accélération Zacc ou une zone morte Zm située entre deux zones de décélération Zdec. La montre ainsi que les zones mortes Zm ont été supprimées au niveau des flèches F1, F2 et F3 par rapport à la détection initiale des différentes zones montrées sur la courbe haute de la . Une cinquième étape consiste à définir une fonction glissante fg qui présente un tronçon croissant Tcr pour chaque zone d'accélération Zacc, un tronçon décroissant Tdec pour chaque zone de décélération Zdec, et un tronçon constant Tco pour chaque zone morte Zm. De préférence, le tronçon croissant Tcr est défini de préférence par une fonction affine croissante, et le tronçon décroissant Tdec est défini par une fonction affine décroissance. La fonction glissante fg est définie de telle façon qu'elle vaut: - 0 au début d'une zone d'accélération Zacc, soit fg(début Zacc n°x)=0; - 1 à la fin d'une zone d'accélération Zacc, soit fg(fin Zacc n°x)=1; - dans une zone morte Zm, une valeur constante égale à la valeur de la fonction glissante à la fin de la zone précédente soit fg(Zm) = fg (Zone précédente). La illustre la définition de la fonction glissante en fonction des zones d’accélération Zacc, des zone de décélération Zdec, et des zones mortes Zm. Une sixième étape consiste à calculer une consigne de vitesse dynamique finale Vd en fonction de la marge de contrainte brute maximale Mgb_max, la marge de contrainte brute minimale Mgb_min, la marge contrainte minimale Mgc_min, la marge contrainte maximale Mgc_max, et la fonction glissante fg. A cet effet, on calcule dans un premier temps une consigne de vitesse dynamique brute Vdb à partir de la formule suivante: Vdb= Mgbx_max*fg + (Mgbx_min*(1-fg)) - Vdb étant la consigne de vitesse dynamique brute, - Mgbx_max étant la marge de contrainte brute maximale d'un échantillon x, - Mgbx_min étant la marge de contrainte brute minimale d'un échantillon x, - fg étant la fonction glissante. La consigne de vitesse dynamique finale (Vd) est obtenue en limitant la consigne de vitesse dynamique brute (Vdb) par la marge contrainte minimale (Mgc_min) et la marge contrainte maximale (Mgc_max) suivant la formule suivante: Vd = max([min( [Vdb, Mgcx_max]), Mgcx_min]), - Vd étant la consigne de vitesse dynamique finale, - Vdb étant la consigne de vitesse dynamique brute, - Mgcx_max étant la marge contrainte maximale d'un échantillon x, - Mgbx_min étant la marge contrainte minimale d'un échantillon x. Dans les zones mortes Zm, la vitesse dynamique finale Vd conserve sa valeur précédente. Pendant des phases d’arrêt du véhicule automobile, la vitesse dynamique finale Vd est nulle. Procédé de pilotage d'un robot de conduite d'un groupe motopropulseur de véhicule automobile caractérisé en ce que ledit procédé comporte: - une étape de chargement d'un gabarit de consignes de vitesse brutes (Cb) en fonction du temps associé à une marge brute maximale (Mgb_max) et une marge brute minimale (Mgb_min) à respecter, - une étape de calcul d'une nouvelle marge maximale (Mgc_max) inférieure à la marge de contrainte brute maximale (Mgb_max) et d'une nouvelle marge minimale (Mgc_min) supérieure à la marge de contrainte brute minimale (Mgb_min) dites respectivement "marge contrainte maximale" et "marge contrainte minimale", - une étape de détermination, sur le gabarit de consignes de vitesses brutes (Cb), de zones d'accélération, de zones de décélération, et de zones mortes (Zm), - une étape de définition d'une fonction glissante (fg) qui présente un tronçon croissant pour chaque zone d'accélération (Zacc), un tronçon décroissant pour chaque zone de décélération (Zdec), et un tronçon constant pour chaque zone morte (Zm), et - une étape de calcul d'une consigne de vitesse dynamique finale (Vd) en fonction de la marge de contrainte brute maximale (Mgb_max), la marge de contrainte brute minimale (Mgb_min), la marge contrainte minimale (Mgc_min), la marge contrainte maximale (Mgc_max), et la fonction glissante (fg). Procédé selon la revendication 1, caractérisé en ce qu'on considère respectivement: - une zone d'accélération (Zacc) si une différence entre un échantillon de rang n+1 et un échantillon de rang n du gabarit de consignes de vitesse brutes (Cb) est supérieur à un seuil (Cb_grd), - une zone de décélération (Zdec) si une différence entre un échantillon de rang n+1 et un échantillon de rang n du gabarit de consignes de vitesse brutes (Cb) est inférieur à l'inverse du seuil (Cb_grd), - une zone morte (Zm) si une valeur absolue d'une différence entre un échantillon de rang n+1 et un échantillon de rang n est inférieur au seuil (Cb_grd). Procédé selon la revendication 1 ou 2, caractérisé en ce qu'il comporte en outre une étape de filtrage consistant à supprimer les zones mortes (Zm) entourées par deux zones identiques consistant en deux zones d'accélération (Zacc) ou deux zones de décélération (Zdec). Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que la fonction glissante (fg) est définie de telle façon qu'elle vaut: - 0 au début d'une zone d'accélération (Zacc), - 1 à la fin d'une zone d'accélération (Zacc), et - dans une zone morte (Zm), une valeur constante égale à la valeur de la fonction glissante à la fin d'une zone précédente. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'il comporte une étape de calcul d'une consigne de vitesse dynamique brute (Vdb) à partir de la formule suivante: Vdb= Mgbx_max*fg + (Mgbx_min*(1-fg)) - Vdb étant la consigne de vitesse dynamique brute, - Mgbx_max étant la marge de contrainte brute maximale d'un échantillon x, - Mgbx_min étant la marge de contrainte brute minimale d'un échantillon x, - fg étant la fonction glissante. Procédé selon la revendication 5, caractérisé en ce que la consigne de vitesse dynamique finale (Vd) est obtenue en limitant la consigne de vitesse dynamique brute (Vdb) par la marge contrainte minimale (Mgc_min) et la marge contrainte maximale (Mgc_max) suivant la formule suivante: Vd = max([min( [Vdb, Mgcx_max]), Mgcx_min]), - Vd étant la consigne de vitesse dynamique finale, - Vdb étant la consigne de vitesse dynamique brute, - Mgcx_max étant la marge contrainte maximale d'un échantillon x, - Mgbx_min étant la marge contrainte minimale d'un échantillon x. Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que dans les zones mortes (Zm), la vitesse dynamique finale (Vd) conserve sa valeur précédente. Procédé selon la revendication 6 ou 7, caractérisé en ce que, pendant des phases d’arrêt du véhicule automobile, la vitesse dynamique finale (Vd) est nulle. Procédé selon l'une quelconque des revendications 1 à 8, caractérisé en ce qu'une fonction de transfert appliquée aux marges brutes maximale et minimale (Mgb_max, Mgb_min) pour calculer les marges contraintes maximale et minimale (Mgc_max, Mgc_min) est un décalage paramétrable défini par une valeur de contrainte (Ctr). Procédé selon la revendication 9, caractérisé en ce que la marge contrainte maximale (Mgc_max) est égale à la marge brute maximale (Mgb_max) moins la valeur de contrainte (Ctr) et la marge contrainte minimale (Mgc_min) est égale à la marge brute minimale (Mgb_min) plus la valeur de contrainte (Ctr).