Articles techniques

Création de modèles de véhicules virtuels pour des simulations à grande échelle basées sur le cloud

Par Brad Hieb, Mike Sasena et Scott Furry, MathWorks


Les constructeurs automobiles du secteur s'appuient de plus en plus sur des méthodes de développement virtuel qui utilisent des modèles de véhicules pour permettre le prototypage, la validation et l'intégration virtuels. Cette approche offre des avantages significatifs, à la fois en termes d'économies et de réduction de temps de développement, car les prototypes physiques ne sont utilisés que pour la validation finale.

Les équipes d'ingénierie constatent cependant que quelques obstacles doivent être surmontés avant de pouvoir pleinement bénéficier des avantages du développement virtuel. Premièrement, les équipes doivent créer des modèles de véhicules virtuels au niveau de fidélité attendu. Autrement dit, le modèle doit être suffisamment détaillé pour capturer les points d’intérêts, sans pour autant que les temps de simulation soient prohibitifs. Ensuite, ces équipes doivent intégrer des modèles physiques d’installations et des modèles logiciels. Les équipes d'ingénierie doivent également inclure des scénarios de conduite qui mettent à l'épreuve le modèle en boucle fermée et visualiser les résultats de la simulation pour en extraire des informations utiles. Dans de nombreux cas, elles ont également besoin d’un moyen d’exécuter des simulations à grande échelle pour prendre en charge les études de compromis de design ou les optimisations.

Dans cet article, nous décrivons un flux de travail qui aborde tous ces domaines clés. Le flux de travail comprend la création d'un modèle avec le Application Virtual Vehicle Composer, en personnalisant ce modèle, en l'utilisant pour exécuter des simulations sur le desktop, puis en le déployant dans le cloud pour exécuter des études à grande échelle (Figure 1). De nombreux clients MathWorks utilisent déjà ce workflow ou un workflow similaire pour réduire le temps de simulation, simplifier les simulations basées sur le cloud et prendre en charge un nombre croissant de cas d'utilisation de modélisation de véhicules virtuels.

Un modèle Simulink du véhicule virtuel exécutant des simulations au-dessus et un tableau de bord personnalisé affichant diverses métriques au-dessous.

Figure 1. Un modèle de véhicule virtuel Simulink initialement créé avec l'application Virtual Vehicle Composer puis personnalisé.

Génération et personnalisation d'un modèle de véhicule virtuel

Construire un modèle de véhicule à partir de zéro n’est pas une tâche anodine. Il est très utile de commencer avec un modèle de référence avant de le personnaliser pour répondre aux exigences d'un projet particulier. C'est l'une des raisons pour lesquelles MathWorks propose, depuis plusieurs années, des applications de référence de véhicules pour une grande variété de tests et de manœuvres de véhicules. Dans la version R2022a, MathWorks a publié l'application Virtual Vehicle Composer dans Powertrain Blockset™ et Vehicle Dynamics Blockset™. Cette application permet aux équipes d'ingénierie de configurer et de créer encore plus facilement des véhicules virtuels pour les tests et l'analyse des performances via une interface utilisateur intuitive. Lorsqu'ils utilisent l'application, les ingénieurs commencent par sélectionner un groupe motopropulseur pour le véhicule (par exemple, un groupe motopropulseur EV à deux moteurs), en spécifiant soit un modèle longitudinal pur, soit un modèle incluant également la dynamique latérale, et en configurant des paramètres clés, tels que la masse du véhicule, la taille des pneus, le couple moteur maximum, etc. Ils peuvent ensuite sélectionner les cas de test à exécuter à partir d'un ensemble de cycles de conduite et de manœuvres, ainsi que les signaux à enregistrer lors des simulations. Une fois ces choix de configuration effectués, un simple clic générera un modèle Simulink® prêt pour la simulation (Figure 2).

Figure 2. L'application Virtual Vehicle Composer.

L'application Virtual Vehicle Composer permet aux équipes de configurer et de générer des modèles complets en quelques minutes. Mais plus important encore, le modèle résultant est entièrement personnalisable, de sorte que les équipes peuvent l'augmenter avec de nouvelles fonctionnalités de modèle de système physique, de contrôleur ou de capteur, ou avec des fonctions supplémentaires écrites en C ou MATLAB®.

Pour illustrer cette partie du workflow, nous avons implémenté un cas d'utilisation dans lequel nous avons personnalisé une version d'un modèle de véhicule électrique généré avec l'application Virtual Vehicle Composer, puis nous l'avons utilisé pour étudier les performances d'un système de freinage d'urgence autonome (AEB).

Le modèle EV que nous avons généré n'incluait pas les capteurs, les algorithmes de contrôle et les scénarios de test nécessaires pour exécuter les tests AEB. Nous avons donc incorporé ces composants à partir d’une Automated Driving Toolbox™ (exemple de modèle). À ce stade, il s'agissait de glisser-déposer les composants AEB dont nous avions besoin, de connecter les signaux nécessaires pour s'adapter à l’environnement du modèle et de copier les paramètres du véhicule et les données d'étalonnage du contrôleur à partir de l'exemple de modèle AEB. Le modèle en boucle fermée qui en résulte, comprenant à la fois le système physique EV et le contrôleur AEB, comprenait près de 33 000 blocs (Figure 3).

Un modèle Simulink du véhicule agrandi pour montrer une vue de haut niveau des diverses fonctions du véhicule.

Figure 3. Vue de haut niveau d'un modèle de véhicule généré.

Effectuer des simulations desktop

Une fois qu'un modèle de système complet est assemblé et configuré, l'étape suivante du flux de travail consiste à effectuer des simulations sur le desktop. Dans notre exemple de cas d’utilisation, l’objectif était de comprendre dans quelle mesure l’algorithme de contrôle AEB fonctionnait pour le véhicule électrique que nous avions modélisé. Par exemple, nous voulions savoir si le contrôleur arrêtait la voiture en toute sécurité, sans collision, dans divers scénarios et pour toute une gamme de poids du véhicule. Nous voulions également évaluer les paramètres de contrôle clés, tels que l'application initiale de la force de freinage (ou la pression de freinage) et le moment précis où les freins étaient complètement appliqués (Figure 4). Les simulations de desktop fournissent un moyen de valider le modèle, d'évaluer la configuration de test et de vérifier les scripts d'automatisation avec un ensemble limité d'exécutions de tests avant de passer à une étude plus complète.

Un diagramme illustrant un scénario de test AEB dans lequel un avertissement de collision avant est émis avant que les étapes de freinage successives ne soient appliquées à un ego-véhicule.

Graphique 4. Un scénario AEB typique montrant les paramètres clés à évaluer dans une étude, y compris les temps de freinage partiel (TPB1 et TPB2), temps de freinage complet (TPFB), et la force de freinage (indiquée en jaune, orange et rouge).

Pour concevoir des scénarios de conduite synthétiques à des fins de test, nous avons utilisé l'application interactive Driving Scenario Designer d' Automated Driving Toolbox, qui fournit également plusieurs Exemples d'applications AEB et évitement de collision. Nous avions un simple critère de réussite/échec pour chaque scénario : si l’ego-véhicule s’est arrêté avant d’entrer en collision avec le véhicule, le piéton ou l’obstacle sur son chemin, alors le test a réussi (Figure 5).

Graphique 5. Un exemple de scénario de test, dans lequel un piéton marche devant l’ego-véhicule.

Nous souhaitions exécuter plusieurs cas de tests, nous avons donc décidé d'automatiser l'exécution des tests, ce qui peut être fait via un script MATLAB ou Simulink Test™. Pour la première série de simulations sur ordinateur, nous avons décidé d'exécuter 16 tests différents, en faisant varier des paramètres, tels que la vitesse du véhicule, à la fois dans l'algorithme du système physique et de contrôle, ainsi que dans le scénario de test pour tester le système dans un large éventail de conditions. Sur un seul cœur de traitement, ce balayage de 16 exécutions a pris environ 23 minutes. Pour raccourcir les temps de simulation, nous avons utilisé Parallel Computing Toolbox™ pour exécuter les mêmes tests en parallèle sur quatre cœurs. Cela a réduit le temps de simulation à un peu plus de 7 minutes. Cependant, même à ce rythme plus rapide, il faudrait des jours pour terminer l’étude factorielle complète que nous souhaitions réaliser, qui impliquait des milliers de simulations. De telles études à grande échelle sont bien adaptées au cloud. Effectuer ce balayage de paramètres à petite échelle d'abord sur le desktop nous a permis de confirmer que nos scripts d'automatisation pour exécuter les simulations et vérifier le critère réussite/échec fonctionnaient comme prévu. Cela nous a donné la confiance nécessaire pour étendre l’étude à une combinaison beaucoup plus large de conditions de test dans le cloud.

Exécution d'études de simulation à grande échelle dans le cloud

Il existe de nombreuses raisons d’exécuter des simulations dans le cloud. La mise à l’échelle, pour tirer parti de ressources informatiques plus importantes, est une motivation courante. Les ingénieurs peuvent également souhaiter simplement décharger les tâches informatiques de leur poste de travail principal, ou les équipes peuvent souhaiter accéder à la demande à du matériel informatique spécialisé qui n'est nécessaire qu'occasionnellement.

Lorsque vous travaillez dans MATLAB, la transition du bureau vers le cloud est simple ; il n'est pas nécessaire de réécrire les scripts ou les algorithmes. MathWorks propose des architectures de référence pour exécuter MATLAB et Simulink sur des machines virtuelles (VM) dans le cloud, ainsi que des conteneurs prédéfinis qui peuvent être déployés dans le cloud.

Pour notre étude, nous avons utilisé l'architecture de référence pour exécuter MATLAB Parallel Server™ sur Amazon® Web Services. Disponible sur GitHub®, cette architecture de référence facilite le lancement d’instances de machines virtuelles Windows® ou Linux® basées sur les dernières Amazon Machine Images (AMI) de MathWorks prédéfinies®, même pour les équipes ayant peu ou pas d'expérience dans le cloud. Une fois l'instance lancée, nous nous y sommes connectés via un desktop distant, avons téléchargé nos fichiers de configuration de test, puis nous étions prêts à commencer à exécuter des tests sur un cluster de machines virtuelles Linux avec quatre machines à 32 cœurs.

Nous avons mené une étude factorielle complète comprenant 28 scénarios, 16 valeurs pour un paramètre de modèle de système physique et cinq valeurs chacune pour deux paramètres de contrôle. Cela a abouti à une suite de tests de 11 200 simulations. Dans le cloud, les tests ont été réalisés en 90 minutes environ, alors que sur une station de travail à quatre cœurs, la même étude aurait pris environ deux jours.

En examinant les résultats de cette étude, nous avons confirmé que le contrôleur AEB était raisonnablement robuste dans tous les tests. Nous avons remarqué quelques cas de panne, dans lesquels le véhicule virtuel ne s'est pas arrêté à temps (Figure 6). Dans un flux de travail typique, ces cas seraient examinés plus en détail sur le desktop, où les ingénieurs analyseraient les résultats dans MATLAB et Simulink pour identifier la cause première de l'échec, décider comment résoudre le problème (par exemple, en réglant le contrôleur paramètres) et, si nécessaire, mettre à jour le modèle pour un test de suivi exécuté dans le cloud. Les études de simulation à grande échelle avec des modèles de véhicules virtuels facilitent l'identification de ces cas de défaillance potentiels et permettent aux équipes d'ingénierie de se concentrer sur les problèmes potentiellement critiques dès le début du processus de conception.

Un graphique à trois axes montrant les résultats des tests de scénarios AEB. Les tests échoués sont représentés par des points rouges.

Graphique 6. Exemples de résultats de l’étude, mettant en évidence les entrées pour l’un des tests ayant échoué (X rouges).

Conclusion

Alors que le développement de véhicules virtuels devient de plus en plus central dans le flux de travail global du secteur automobile, les équipes d'ingénierie auront besoin de moyens pour répondre à la demande toujours croissante de simulation. Virtual Vehicle Composer offre aux équipes un avantage de productivité significatif dans ce domaine en leur permettant de configurer rapidement des modèles de véhicules adaptés. Étant donné que ces modèles ne sont pas des boîtes noires, les ingénieurs ont la possibilité de les améliorer et de les personnaliser rapidement dans Simulink en fonction des besoins spécifiques de leur projet. De plus, les équipes peuvent ensuite continuer à utiliser MATLAB et Simulink ainsi que le cloud computing pour automatiser les études de simulation à grande échelle et analyser leurs systèmes dans un large éventail de conditions afin d'identifier les problèmes potentiels, d'évaluer les compromis de conception et d'effectuer des optimisations.

Publié en 2024

Consulter des articles relatifs à des secteurs associés