Brevet FR3120141A1 — publié le 20220826

L’invention concerne un procédé et un dispositif de test et de validation d’un modèle Simulink ® d’un système embarqué d’un véhicule en utilisant une interface utilisateur Qt ® , ledit procédé comprenant les étapes suivantes : - établissement (51) d’une connexion entre l’interface utilisateur et le modèle de simulation ; - saisie (52) d’une donnée d’entrée par un utilisateur via une partie graphique de l’interface utilisateur ; - émission (53) de la donnée d’entrée par l’interface utilisateur à destination du modèle de simulation via un protocole de transmission de données sans perte ; - réception (54) d’une donnée retour par l’interface utilisateur, ladite donnée de retour étant émise par le modèle de simulation via le protocole de transmission de données sans perte ; et - affichage (55) de la donnée retour sur une partie graphique de l’interface utilisateur. Figure pour l’abrégé : Figure 4 Procédé et dispositif de test et de validation d’un modèle d’un système embarqué d’un système utilisant une interface utilisateur La présente invention concerne les procédés et dispositifs de test et de validation d’un modèle de simulation d’un système embarqué d’un véhicule, notamment automobile. Plus particulièrement, la présente invention concerne des procédé et dispositifs de test et de validation d’un modèle de simulation d’un système embarqué d’un véhicule en utilisant une interface utilisateur, ledit modèle de simulation étant développé en utilisant un environnement de modélisation et de simulation connu sous le nom de Simulink ® , et ladite interface utilisateur étant développée par une application connue sous le nom de Qt ® . Arrière-plan technologique De nombreuses systèmes disponibles à bord de véhicules actuels impliquent des Interfaces Homme Machine (HMI, Human Machine Interface en anglais). Parmi ces systèmes on peut citer les ordinateurs de bord qui présentent une IHM pour des interactions, par exemple, avec des contenus multimédia, avec la température à l’intérieur de l’habitacle ou encore pour obtenir des informations sur le véhicule tels que l’autonomie restante. La nécessité d'embarquer dans les véhicules de plus en plus rapidement de plus en plus de systèmes tout en se conformant aux exigences réglementaires de plus en plus strictes motive le développement accru de modèles virtuels lors de la conception de ces systèmes mais aussi lors de leur phases de test et de validation. La capacité de modéliser et de simuler virtuellement divers systèmes embarqués d’un véhicule améliore la rapidité des processus de développement de ces systèmes en permettant aux concepteurs de valider des modèles virtuels et de les tester pour évaluer si ces systèmes répondent aux exigences du cahier des charges et de la réglementation sans devoir pour autant fabriquer physiquement des prototypes de ces systèmes. En utilisant de tels modèles de simulation virtuels de systèmes embarqués d’un véhicule, les concepteurs peuvent ainsi explorer plusieurs alternatives pour optimiser la conception de ces systèmes et découvrir des erreurs de fonctionnement de ces systèmes très rapidement. Ainsi, la conception de système basée sur un modèle de simulation virtuel fournit des gains d'efficacité dans le développement de systèmes qui permettent aux concepteurs de livrer des évolutions ou nouveaux systèmes très rapidement tout en contrôlant les coûts de développement. Habituellement, le développement d'un système embarqué d’un véhicule par utilisation d’un modèle de simulation virtuel passe par une procédure de validation de ce modèle de simulation (MIL, model-in-the-loop en anglais) pour évaluer si le modèle de simulation reproduit le comportement du système. Une fois validé, le modèle de simulation est testé (procédure de test appelé SIL, software-in-the-loop en anglais) pour évaluer la dynamique et l’interactivité du modèle de simulation et ainsi pour valider le fonctionnement du système. Une fois le modèle de simulation testé, le système est mis en œuvre matériellement parlant et le développement de ce système se termine par une procédure de test matériel (hardware-in-the-loop simulation en anglais). Pour la modélisation virtuelle de système, l’environnement de modélisation et de simulation Simulink® est très largement utilisé par les concepteurs qui souhaitent concevoir des commandes, des systèmes sans fil et d'autres systèmes dynamiques. L’environnement Simulink ® comporte une interface principale se présentant sous la forme d’un éditeur graphique pour modéliser les différents composants d'un système, et un ensemble personnalisable de blocs prédéfinis pour modéliser des algorithmes et des comportements physiques. La construction d'un modèle de simulation d’un système à partir de l’environnement Simulink ® consiste donc à sélectionner des blocs appropriés et à les connecter ensemble de manière à activer une ou plusieurs fonctionnalités souhaitées. L'ajout de blocs se fait en les faisant glisser et en les déposant de la bibliothèque Simulink ® à un emplacement souhaité d’une fenêtre de l’éditeur graphique. MATLAB ® et Simulink ® sont très souvent utilisés tout au long d’un processus de conception car ils fournissent des formalismes de haut niveau tels qu’un diagramme d’états (Stateflow en anglais) pour prendre en charge la modélisation détaillée à la fois de la spécification d’un système et des tests infrastructure requise pour tester le système. Le diagramme d’états devient alors le cœur de la spécification exécutable du système. Comme cette spécification est exécutable, contrairement aux spécifications papier traditionnelles, le comportement du système peut être vérifié en stimulant le modèle. La simulation du système est obtenue en soumettant le modèle à une variété d'entrées qui correspondent aux commandes de l'utilisateur, pour vérifier que les exigences du cahier des charges du système sont correctement capturées dans le diagramme d’états. La capacité d'animation du diagramme d’états fournit également un retour visuel concernant la simulation du système. Les spécifications exécutables spécifient souvent le comportement d'un système aux entrées externes. Par exemple, dans un « système d'accélérateur par câble », l’entrée du conducteur se fait via la pédale d’accélérateur. La spécification exécutable spécifie alors la réponse du système à cette entrée. Dans ce cas, le système n’a qu’une seule entrée utilisateur. En général, ces types de systèmes avec un petit nombre d’entrées peuvent être capturées à l'aide d'une trace temporelle. Cependant, certains systèmes, notamment dans l'ingénierie automobile, peuvent avoir plusieurs entrées ou une série d'entrées multiples provenant du conducteur ou des passagers. Dans ce cas, il n'est ni pratique d'essayer de modéliser les entrées, ni de créer une trace des entrées utilisateur. Au lieu de cela, il est plus pratique de créer une représentation graphique de l’interface entre le système et l’utilisateur sous forme d’une IHM. Par l'inclusion d'IHM, les concepteurs peuvent ainsi interagir avec la modélisation du système pour reproduire les interactions entre un utilisateur et le système une fois embarqué à bord du véhicule. Par exemple, de nombreux systèmes multimédias embarqués de véhicules de tourisme utilisent des IHM sophistiquées qui nécessitent une série d'entrées de la part de l'utilisateur pour obtenir un résultat souhaité tel qu’une programmation de fréquence radio sur des boutons prédéfinis ou un parcours routier à partir d’un système de navigation. Il est commun de développer une interface utilisateur en utilisant un environnement MATLAB® communément appelé GUIDE ® qui fournit un ensemble d'outils pour créer des IHM. GUIDE ® fournit aux utilisateurs une palette de divers éléments d'entrée et d'affichage à glisser-déposer, tels que des boutons, zones de texte et jauges. Par exemple, pour chaque bouton qui doit être une entrée testable dans le système, un bouton poussoir de la palette GUIDE ® est placé au-dessus du bouton représenté dans une image de l’IHM représentant une vue qu’à l’utilisateur du système. Lorsque l'IHM est publiée, GUIDE ® crée un modèle de script MATLAB ® contenant un rappel de fonctions pour chaque bouton actif. Chaque fois qu'un bouton est enfoncé, une fonction est appelée pour le traitement du contenu de la fonction. Le contenu d’une fonction de rappel est spécifié via la programmation MATLAB ® pour fournir la capacité d'effectuer des actions aussi simples que basculer une valeur ou activer un mécanisme pour capturer des entrées d’un utilisateur. Classiquement, une procédure de validation (MIL) peut donc être mise en œuvre par une IHM développée par GUIDE ® et autres outils MATLAB ® . Mais, cette solution n’est pas appropriée à cause des ressources des outils MATLAB ® (GUIDE ® et autres) qui ne permettent pas de créer des interfaces utilisateurs à partir de script d’où un allongement de la validation et du test de systèmes qui comporte des interfaces utilisateur. 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 à 4 annexées, sur lesquelles : illustre schématiquement un environnement de test et de validation d’un modèle de simulation MS d’un système embarqué d’un véhicule en utilisant une interface utilisateur Qt ® selon un exemple de réalisation particulier de la présente invention ; illustre une architecture de blocs Qt ® pour l’établissement d’une communication entre un modèle de simulation MS et une application QML selon un exemple de réalisation particulier de la présente invention ; illustre schématiquement un dispositif de test et de validation d’un modèle de simulation MS d’un système embarqué d’un véhicule en utilisant une interface utilisateur Qt ® , selon un exemple de réalisation particulier de la présente invention ; et illustre un organigramme des différentes étapes d’un procédé de test et de validation d’un modèle de simulation MS d’un système embarqué d’un véhicule en utilisant une interface utilisateur Qt ® , selon un exemple de réalisation particulier de la présente invention. Procédé de test et de validation d’un modèle de simulation d’un système embarqué d’un véhicule en utilisant une interface utilisateur, ledit modèle de simulation étant développé en utilisant un environnement de modélisation et de simulation connu sous le nom de Simulink ® , et ladite interface utilisateur étant développée par une application connue sous le nom de Qt ® , ledit procédé comprenant les étapes suivantes : - établissement (51) d’une connexion entre l’interface utilisateur et le modèle de simulation ; - saisie (52) d’une donnée d’entrée par un utilisateur via une partie graphique de l’interface utilisateur ; - émission (53) de la donnée d’entrée par l’interface utilisateur à destination du modèle de simulation via un protocole de transmission de données sans perte ; - réception (54) d’une donnée retour par l’interface utilisateur, ladite donnée de retour étant émise par le modèle de simulation via le protocole de transmission de données sans perte ; et - affichage (55) de la donnée retour sur une partie graphique de l’interface utilisateur. Procédé selon la revendication 1, pour lequel les étapes de saisie, d’émission, de réception et d’affichage sont répétées jusqu’à ce qu’une condition soit vérifiée. Procédé selon l’une des revendications 1 à 2, pour lequel le protocole de transmission de données sans perte est un protocole TCP/IP. Procédé selon la revendication 3, qui utilise un script pour faire appel à des instructions d’un programme d’ordinateur formé d’un ensemble d’instructions générées à partir du modèle de simulation. Procédé selon l’une des revendications 1 à 4, ledit script est écrit dans un langage connu sous le nom de Python ® . Programme d’ordinateur comportant des instructions pour la mise en œuvre du procédé selon l’une quelconque des revendications précédentes, lorsque ces instructions sont exécutées par un processeur. 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 l’une des revendications 1 à 5. Dispositif (4) de test et de validation d’un modèle de simulation d’un système embarqué d’un véhicule en utilisant une interface utilisateur, ledit modèle de simulation étant développé en utilisant un environnement de modélisation et de simulation connu sous le nom de Simulink ® , et ladite interface utilisateur étant développée par une application connue sous le nom de Qt ® , ledit dispositif (4) comprenant une mémoire (41) associée à au moins un processeur (40) configuré pour la mise en œuvre des étapes du procédé selon l’une quelconque des revendications 1 à 5.