Iveco Group accélère le développement de logiciels pour véhicules électriques grâce à la simulation de véhicules virtuels

Des véhicules entièrement virtuels permettent de tester des logiciels pour véhicules électriques de manière plus rapide et plus évolutive


Dans l'industrie automobile, le développement logiciel a traditionnellement progressé lentement. Avant qu'une seule ligne de code ne puisse être validée, les ingénieurs ont besoin de hardware, de bancs d'essai et de véhicules physiques, ainsi que de techniciens pour les faire fonctionner. C'est un processus lent, gourmand en ressources et peu adapté au rythme du développement logiciel moderne. Pour Iveco Group, le constructeur italien de véhicules utilitaires à l'origine du fourgon électrique eDaily ainsi que d'une flotte de camions et d'autobus, combler cet écart représentait l'opportunité de développer des logiciels de la même manière que les meilleures entreprises technologiques.

« Dans le monde de la tech, un adolescent de 16 ans peut changer le monde à partir de sa chambre grâce aux possibilités qu’offre la technologie, sans avoir à demander l’autorisation de qui que ce soit », explique Alessio Canepa, responsable du développement des logiciels de contrôle et de dynamique des véhicules chez Iveco Group. « Dans l'automobile, nous nous retrouvons souvent complètement dans la situation opposée. On dépend constamment d’autres personnes pour pouvoir avancer. »

M. Canepa dirige l'équipe chargée d'eVECOP, le logiciel interne de contrôle des véhicules d'Iveco Group. À mesure qu'il gagnait en complexité, la charge des tests augmentait également. Plus l'équipe ajoutait de fonctions, plus il fallait relancer de tests à chaque modification. Faire cela manuellement sur du hardware physique devenait impossible.

Sept camions IVECO de différentes tailles et couleurs.

La gamme complète IVECO. (Crédit image : Iveco Group)

La réponse d'Iveco Group a été Virtualis, un simulateur de véhicule virtuel conçu avec MATLAB® et Simulink®. Il permet à Iveco Group de tester son logiciel de production réel sur un véhicule entièrement virtuel, incluant la batterie, l'onduleur et les systèmes de recharge virtuels, avant même qu'un composant hardware n'entre en jeu.

Faire évoluer eVECOP pour Virtualis

La plateforme eVECOP se trouve au cœur des systèmes de contrôle des véhicules électriques d'Iveco Group. Elle coordonne des dizaines de fonctions interconnectées sur les véhicules légers, les camions lourds et les autobus. Ces fonctions couvrent un large éventail de domaines, allant du contrôle de la motricité et du freinage régénératif à la gestion thermique et à la distribution d'énergie, le tout géré via une seule plateforme logicielle interne développée presque entièrement sous MATLAB et Simulink.

Auparavant, la recompilation complète du modèle intégré prenait environ 20 minutes à chaque modification. Aujourd'hui, elle ne prend plus que 4 à 5 minutes. Une partie de cette amélioration provient du passage au mode Accelerator dans Simulink.

Pour conserver la clarté et l'évolutivité d'eVECOP, il faut ce que M. Canepa appelle une architecture modulaire, où chaque fonction logicielle réside dans son propre module autonome aux limites clairement définies. Selon lui, un bon architecte est extrêmement important pour l'équipe en charge de la plateforme logicielle. Lorsque l'architecture est bien conçue, des ingénieurs moins expérimentés peuvent contribuer à des composants individuels sans avoir besoin de comprendre l'ensemble du système. Ainsi, la plateforme peut s'étendre à de nouveaux types de véhicules sans que les ingénieurs n'aient à repartir de zéro.

Iveco Group a conçu Virtualis sur ce même principe. En utilisant des modèles référencés dans Simulink, le simulateur de véhicule virtuel conserve chaque module logiciel séparé. Ainsi, lorsque quelque chose change, seul ce module spécifique est recompilé.

Schéma mettant en évidence la plateforme eVECOP. Une icône de cerveau central relie avec des flèches les types de véhicules et les composants clés, tels que les batteries. Il répertorie des fonctions telles que le contrôle de la motricité et des avantages comme l'indépendance vis-à-vis du hardware.

La plateforme de contrôle des véhicules électrifiés (eVECOP).

Auparavant, la recompilation complète du modèle intégré prenait environ 20 minutes à chaque modification. Aujourd'hui, elle ne prend plus que 4 à 5 minutes. Une partie de cette amélioration provient du passage au mode Accelerator dans Simulink. Le mode Accelerator sacrifie une très légère flexibilité de débuggage au profit d'une exécution nettement plus rapide. Le gain le plus important provient toutefois des modèles référencés eux-mêmes. Comme le moteur de génération de code ne recompile que ce qui a été modifié, la plupart des compilations évitent la majorité du travail. Pour une équipe apportant constamment de petites améliorations à de nombreuses fonctions différentes, le gain de temps se fait rapidement sentir.

La vitesse importe encore plus au moment de la simulation. Virtualis fonctionne plus vite que le temps réel, ce qui permet à l'équipe de créer plusieurs instances parallèles dans le cloud et de lancer des tests simultanément. L'inspiration, explique M. Canepa, est venue de l'observation du fonctionnement des entreprises du secteur logiciel.

Une capture d'écran d'une interface Simulink présentant différentes commandes de véhicule virtuel.

Un modèle de véhicule virtuel dans Simulink. (Crédit image : Iveco Group)

« Si vous voulez concevoir votre propre application Android®, vous utilisez un émulateur. Vous pouvez tester les choses de bout en bout vous-même, de manière autonome », dit-il. « Une grande partie de nos travaux s'inspire de ce que nous observons dans l'univers du cloud et des applications. »

L'idée clé derrière Virtualis est que ce système de test rapide ne fonctionne que si l'environnement est 100 % virtuel. Si seulement 1 % des tests nécessite du hardware physique, vous perdez la capacité de fonctionner dans le cloud, de manière parallèle et plus rapide que le temps réel. C'est ce seuil qui distingue fondamentalement Virtualis de ce qui existait auparavant.

Tester sans limites

Les avantages d'un environnement entièrement virtuel vont au-delà de la vitesse. Certains tests ne peuvent pas être effectués sur un banc d'essai physique ni sur un véhicule réel ; il n'est ni sûr ni raisonnable de tester les composants électriques ou le câblage d'une voiture alors qu'elle roule à 100 km/h. Dans Virtualis, ces tests sont de routine. « Avec une plateforme virtuelle, vous disposez de possibilités illimitées », explique M. Canepa.

« Avec une plateforme virtuelle, vous disposez de possibilités illimitées. »

Virtualis détecte actuellement environ 70 % des problèmes d'intégration logicielle avant même que le logiciel n'atteigne le hardware. M. Canepa précise qu'il est difficile de mesurer cela avec précision, et que l'écart restant n'est pas une limitation fixe mais plutôt le reflet de ce que l'équipe ne sait pas encore. Lorsqu'une défaillance survient sur un véhicule physique alors qu'elle avait été validée dans Virtualis, Iveco Group considère cela comme le signal que l'environnement virtuel doit être mis à jour pour se rapprocher davantage de la réalité. C'est par ce protocole que l'écart se réduit au fil du temps.

L'écart qui subsiste est d'ordre structurel plutôt qu'accidentel. Virtualis effectue une virtualisation de niveau 1, ce qui signifie qu'il ne simule ni le firmware sous-jacent ni l'électronique. Il s'agit d'un choix délibéré. Aller plus en profondeur offrirait une meilleure couverture, mais les ingénieurs perdraient la capacité d'arrêter la simulation en cours d'exécution, d'inspecter chaque variable et de comprendre exactement ce que faisait le logiciel à un instant précis.

« Lorsqu’un problème survient sur un système hardware, vous analysez les logs d'événements après coup », explique M. Canepa. « Dans Virtualis, vous pouvez figer le monde. »

Ce changement a modifié la vision qu'a Iveco Group de son processus de test. Le groupe utilise désormais les tests Hardware-in-the-Loop spécifiquement pour ce que Virtualis ne peut pas atteindre : le système d'exploitation, les drivers de bas niveau et le hardware physique provenant de prestataires externes (par exemple, les équipementiers qui fabriquent les calculateurs avec lesquels le software communique). Tout ce qui se trouve au-dessus de cette couche est résolu plus tôt, plus vite et pour moins cher.

Développer à la vitesse du software

Amener Virtualis à ce niveau n'a pas été simple. Pour dimensionner un environnement MATLAB et Simulink destiné à gérer du software d'une telle complexité, tout en conservant des temps de compilation courts et un débuggage flexible, il a fallu faire des choix d'architecture dans des situations pour lesquelles il n'existe pas de solution unique évidente. Iveco Group a collaboré étroitement avec les ingénieurs de MathWorks pour repousser les limites du possible.

« Ce que nous avons mis en place représente déjà une façon de travailler totalement différente. Plus vous gagnez de temps lors du développement, plus vous disposez de temps pour créer un produit véritablement exceptionnel. »

« Nous voulons atteindre la plus haute qualité dans un délai exceptionnellement court. C'est le défi le plus difficile que nous ayons eu à relever ensemble », déclare M. Canepa.

La collaboration s'est concentrée sur l'amélioration de l'efficacité d'exécution, la structuration des modèles pour que plusieurs ingénieurs puissent soumettre des mises à jour simultanément sans conflit, et la mise en place d'un pipeline complet d'intégration et de test continus qui s'exécute automatiquement. Dès qu'un développeur valide du nouveau code, celui-ci déclenche des tests dans Virtualis. Les ingénieurs reçoivent les résultats en quelques heures. Personne n'a besoin de penser à lancer les tests, car le système ne laisse pas la possibilité d'oublier.

Schéma illustrant la configuration de test pour un dispositif VMU émulé exécutant eVECOP en interaction avec le banc d'essai Virtualis. La configuration comprend une interface de panneau de commande détaillée.

Schéma du véhicule virtuel Virtualis.

Iveco Group réinvestit le temps gagné dans le produit lui-même. Plutôt que de passer des semaines sur des processus de vérification formels, les ingénieurs d'Iveco Group disposent de davantage de cycles pour effectuer des itérations sur le véhicule lui-même, ce que M. Canepa considère comme la véritable mesure de la qualité logicielle.

Virtualis a également transformé un aspect moins tangible du travail d'équipe. Dans le développement automobile traditionnel, un ingénieur écrivant une simple fonction pouvait ne jamais savoir où celle-ci s'intégrait ni ce qu'elle produisait sur le véhicule. Virtualis place chaque développeur au cœur d'un véhicule virtuel complet, rendant l'effet de chaque modification immédiatement visible en contexte. Cette visibilité change le rapport des équipes à leur travail. Un ingénieur peut prototyper une nouvelle fonctionnalité, tester son impact sur l'ensemble du système et savoir qu'elle fonctionnera au moment de la faire valider.

« Nous sommes dans une période où la responsabilisation des collaborateurs est d'une importance capitale », souligne M. Canepa.

Pour lui, Virtualis s'inscrit dans une démarche bien plus large que la simple réduction des temps de compilation ou l'optimisation des tests. Les constructeurs automobiles deviennent des entreprises de logiciels, qu'ils y soient prêts ou non. Ceux qui sauront concevoir et tester leurs logiciels à la manière des entreprises technologiques (de façon rapide, itérative et axée d'abord sur le virtuel) seront ceux qui tiendront le rythme. Iveco Group a bien l'intention d'en faire partie.

« Ce que nous avons mis en place représente déjà une façon de travailler totalement différente », conclut-il. « Plus vous gagnez de temps lors du développement, plus vous disposez de temps pour créer un produit véritablement exceptionnel. »


Consulter d'autres témoignages

Navigation dans l'interface

L'engin spatial Orion se dirige vers la Lune, propulsé par le lanceur SLS

Le programme Artemis de la NASA vise une présence lunaire à long terme

Navigation dans l'interface

Application de l’approche Model-Based Design aux architectures orientées services automobiles

Renault fait progresser le prototypage ADAS avec ROS Toolbox et l'intégration de Simulink

Navigation dans l'interface

Accélérer le développement de la nouvelle génération de robots chirurgicaux

L'approche Model-Based Design permet le développement de robots chirurgicaux adaptatifs