Méthodologie de conception d un produit mécatronique R. PLATEAUX, O. PENAS, J.Y. CHOLEY, F. MHENNI, A. RIVIERE Institut Supérieur de Mécanique de Paris (ISMEP-Supméca) Laboratoire d Ingénierie des Structures Mécaniques et des Matériaux (LISMMA) Résumé : Aujourd'hui, de nombreuses méthodologies et outils de conception mécatronique existent. Mais leur approche est partielle au sens où ils ne permettent de passer continûment des spécifications au prototype virtuel. Dans cet article, la première partie descendante du cycle en V est intégrée. Pour faire cela, une méthodologie hybride, basée sur différents outils, langages et méthodologies tels que l'analyse fonctionnelle, le SADT, SysML, Modelica et Catia Systems est proposée. Abstract : Nowadays, many studies about mechatronic design process are available. But all of these are local, for they only focus on one single level of the V-cycle and don t enable a modelling continuity from requirements to the virtual prototyping. In this article, we propose to integrate the entire downward side of the design V- cycle. For this, we present a hybrid methodology based on several tools, languages and methodologies such as SADT, SysML, Modelica and Catia Systems. Mots clefs : Méthodologie de conception intégrée, Modelica, Mécatronique. Introduction Les phases de conception d un système mécatronique sont nombreuses. Le cycle en V correspondant présente souvent des itérations avant de pouvoir obtenir un prototype physique concluant. En effet, différentes étapes dont la cohérence n est pas toujours garantie, sont nécessaires : collecter les exigences et les transcrire sous forme de spécifications sur des paramètres quantifiables, décomposer le système pour faire apparaître un modèle fonctionnel et structurel, simuler le système en phase de pré-dimensionnement. Une des raisons de ce problème est la discontinuité de modélisation lors du passage d une phase de conception à l autre. Son origine peut être multiple : pertes et/ou modifications de données lors des transferts entre outils, mises à jour non automatiques entre les modèles Finalement, il y a rupture numérique entre les modèles. Comme bien souvent les systèmes mécatroniques sont des systèmes de grande complexité, de part leur nombre de composants, leur aspect multi-physique et multi-domaine, et les couplages mis en jeu, il apparaît judicieux de définir quels sont les besoins pour concevoir de tels systèmes. Chakrabarti and Bligh [1] proposent les trois exigences suivantes pour définir une approche de conception idéale : supporter la conception routinière et innovante ; permettre de réaliser la synthèse ; élaborer des solutions modulables en niveau de granularité. Pour remplir la première condition, la continuité des différents niveaux de modélisation - fonctionnel, logique et physique - est fondamentale. Cette continuité a non seulement l avantage de limiter les pertes d informations, mais de rendre plus facilement cohérents les différentes spécifications, paramètres et modèles entre les divers niveaux. Elle limite les erreurs, les oublis, les redondances et assure que le prototype final respecte le cahier des charges. Par ailleurs, elle facilite la traçabilité par l automatisation de la répercussion de la mise à jour de modifications d un niveau de modélisation sur les autres, suivie d une 1
notification dans la documentation du projet. Ainsi les choix de solutions pourront être automatiquement documentés : le cheminement complet depuis les exigences initiales sera explicite et facile d accès. Cependant, ces conditions ne sont pas suffisantes pour la mécatronique. En effet, l aspect pluridisciplinaire des systèmes mécatroniques nécessite un environnement ouvert à l ensemble des métiers, permettant à la fois de modéliser la mécanique, l électronique, l automatisme et de permettre ainsi les collaborations entre les services De plus, en pré-dimensionnement, pour calculer e.g. les éventuels couplages thermiques intervenant dans ces domaines, chacun peut avoir besoin d un modèle simplifié de la partie modélisée par les autres. Il est donc important de permettre de modifier la granularité dans les différents modèles, pour permettre cette vision multi-échelle selon les besoins. En effet, en phase de pré-dimensionnement, plus les modèles sont simulables tôt dans le cycle de conception, moins il est nécessaire d itérer et plus le temps de développement est raccourci. Toujours dans cette perspective, la visualisation 3D (même simplifiée) des éléments, disponible très tôt dans la conception permet de prendre en compte l encombrement et les éventuelles interactions de proximité ou de contact et facilite donc le pré-dimensionnement géométrique. Enfin, une dernière caractéristique semble nécessaire pour une conception rapide et efficace de systèmes complexes : l accès à une base de données commune à l ensemble des concepteurs d un projet afin de capitaliser les précédentes études et automatiser certaines déclinaisons d exigences, de fonctions ou d architectures récurrentes. Ainsi, après avoir défini notre approche de conception idéale, nous allons décrire de quelle manière nous pourrions la mettre en œuvre en se basant sur les méthodologies et langages actuels. Nous proposons également un environnement dans lequel l'implémentation sera possible pour chacune des phases de conception. 1 Notre approche 1.1 Méthodologies, outils et langages existants De nombreux outils et méthodologies existent, provenant de domaines différents [2] [3] [4] [5] [6] [7]. Ils répondent aux problèmes récurrents des concepteurs [8], à savoir, assurer la création rapide d un produit peu cher, simple et fiable [9] [10] répondant à un cahier des charges, même si ces contraintes sont souvent antagonistes. Ainsi, pour le domaine de l ingénierie mécanique, l analyse fonctionnelle, l APTE, le SADT (Structured Analysis and Design Technique) [11] / IDEF methods (Integrated DEFinition, 0 : for Function Modeling Method, 3 : Process Description Capture Method et 4: Object-Oriented Design Method) [12] et le FAST (Function Analysis System Technique Diagram) [13] sont couramment utilisés. Pour l électronique, les langages de description matériel (VHDL, Verilog) sont destinés à représenter et simuler le comportement ainsi que l'architecture d un système électronique numérique. Les outils de synthèse logique (Design compiler, RC, Leonardo ) compilent la description fonctionnelle d'un circuit à l'aide d'un outil de synthèse et d'une bibliothèque de cellules logiques. Les méthodologies de conception avec une approche système commencent à émerger [14] [15]. Pour l ingénierie informatique, UML (Unified Modeling Language) est le bon outil, qui a été décliné en SysML (System Modelling Language) [16] [17] pour l approche systémique. Mais ces outils présentent quelques lacunes : le SADT (ou IDEF0), initialement prévu comme un outil de description et d'analyse est privé de toute analyse séquentielle. Notons toutefois qu IDEF4 peut pallier quelque peu ce défaut. Quant à SysML, il propose un grand nombre de diagrammes, parfois redondants, pour modéliser un système (diagrammes d'exigences, fonctionnels, comportementaux et structurels). Cependant, il ne propose pas de méthodologie. Néanmoins, le diagramme paramétrique permettrait, si cela était implémenté, d'effectuer une simulation physique du système, même si la géométrie n'est toujours pas prise en compte. En effet, il descend jusqu'au niveau du comportement physique du composant et peut ainsi être considéré comme l'interface avec la simulation. On voit donc que le principal inconvénient de SysML et du SADT est de ne pas permettre la simulation de la structure générée : aucune validation significative n'est alors effectuée avant la phase de prédimensionnement. De ce fait, pour ces méthodologies et langages, même si certains tests de cohérence sont possibles, la validation du modèle est liée directement au savoir-faire du concepteur, puisque la simulation réaliste du modèle est pour l instant impossible. Parmi les solutions possibles, deux moyens peuvent être utilisés pour parvenir à un environnement idéal de conception tel que nous l avons défini précédemment (continuité de modélisation, cohérence, traçabilité, 2
capitalisation, modélisation simulable, vision initiale 3D, multi-niveau, multi-physique et multi-échelle) : soit par l interfaçage des outils utilisés, soit par l intégration de ces outils au sein d un environnement unique. Etant donné la multitude et la variété d outils utilisés (multi-niveaux, multi-domaines) dans le cadre de la conception de produits mécatroniques, il paraît matériellement difficile de réaliser l interfaçage de tous ces outils entre eux. Aussi, nous nous sommes naturellement orientés vers la solution d intégration, en choisissant pour chaque niveau les outils et méthodologies qui nous semblaient les plus pertinentes pour la conception mécatronique : SysML et SADT pour l analyse fonctionnelle, Modelica [18] pour la simulation multiphysique [19] voire géométrique dans Dymola [20], CATIA V6 pour la maquette numérique intégrée. Des études ont déjà été menées pour intégrer Modelica à SysML [21]. De notre côté, nous avons choisi d intégrer des modules SysML à Modelica [22], et certaines sont en cours au sein de notre équipe pour intégrer les données géométriques de la maquette numérique au sein de Modelica, pour avoir des simulations dynamiques 3D. 1.2 Notre démarche intégrée Afin de permettre un passage continu des exigences à la description détaillée du système et donc une intégration complète de toutes les phases de modélisation, un environnement unique a été envisagé. L objectif est d arriver à un prototype virtuel, simulable et rendant compte du comportement du système. Pour cela, depuis deux ans, nous avons choisi d exploiter le langage Modelica sous Dymola. Le première étape consiste à répondre à l adéquation de cet environnement à répondre à toutes les caractéristiques de l environnement idéal de conception que nous avons défini précédemment. Tout d abord, il répond en grande partie à la définition de l'environnement pour une analyse fonctionnelle idéale défini par Chakrabarti et Bligh [1] par sa capacité à supporter les conceptions de toute nature (multidomaine), à tout niveau (multi-niveau) et à permettre les évolutions de conception à travers les niveaux de détail (multi-échelle). En effet, Modelica est un langage objet acausal permettant de décrire des systèmes mécatroniques, multidomaines, pour modéliser des phénomènes discrets et continus. Une des forces de ce langage est de proposer de nombreuses bibliothèques (mécanique, électrique, hydraulique, thermique, etc) libres, développées par des spécialistes et d'avoir déjà des outils libres (Scicos, OpenModelica). Cet environnement orienté objet permet aisément de restructurer un mauvais découpage des fonctions avec leur correspondance structurelle. Le niveau d encapsulation peut alors être modifié (multi-niveau). FIG. 1 : Niveau d encapsulation modulable [1] disponible sous Modelica Que l on se place en conception routinière ou innovante, la modularité proposée par le langage permet de changer la classe des objets constituant le modèle. Ainsi, la modification d un type de composant est possible et la création à partir de rien en utilisant, soit une nouvelle topologie de composants, soit en partant d équations caractéristiques du comportement du système, devient envisageable. Par ailleurs, la continuité du processus de conception est assurée par le développement d éléments permettant de passer continûment d un niveau à l autre (Exigences, Fonctionnel, Physique/Comportemental, Structurel) sous Modelica dans Dymola. En fait, le processus de conception peut être comparé à un puzzle incomplet [23]. Les exigences, fonctions et structures sous-tendues par ces fonctions ainsi que les composants sont les macro-pièces de ce puzzle. L'objectif du processus idéal allant du cahier des charges à la conception détaillée est alors de compléter le puzzle, en réduisant le nombre de modèles différents lors de la conception. Les exigences fonctionnelles et dysfonctionnelles sont directement enregistrées sous format texte dans la documentation de Dymola avec des critères quantitatifs, et une routine en Modelica crée automatiquement 3
les blocs exigences dans l interface graphique de Dymola (comme le «requirement diagram» de SysML). A tout moment la modification d une exigence met à jour le cahier des charges dans la documentation. Les cas d'utilisation peuvent être très tôt intégrés. La documentation associée est générée en direct et intégrée au modèle. Le modèle intègre le cahier des charges, les évolutions... La documentation en ligne constitue la mémoire de génération du produit, précisant les forces et faiblesses du modèle, ses hypothèses et limitations. Cet échange peut être dynamique. On peut envisager la définition de spécifications reconnues par le mot clé «contrainte» dans la documentation, générant la dite contrainte avec ses limites mini, maxi. FIG. 2 : Blocs exigences sous Modelica Les exigences sont dérivées en fonctions reliées par des connections entre les connecteurs avec une approche de raffinements successifs, similaire à la représentation SADT ( FIG. 2). Chacune des fonctions est réalisée par des composants, simples ou composés, identifiés ou non, existants (COTS : composants sur étagère) ou non. Il n est pas nécessaire de connaître la structure interne des fonctions pour définir les flux transitant et donc leurs connecteurs associés. Les aspects de synchronisation peuvent être pris en compte par des graphes complémentaires utilisant le jeu de variables déclaré dans la structure. FIG. 3 : Exemples de représentation SADT d un objet fonction et son raffinement sous Dymola Les comportements normaux et les dysfonctionnements anticipés sont décrits avec les grafcets (sequential function charts, SFC, FIG. 4) de Modelica. FIG. 4 : «Sequence Function Chart» en Modelica 1. Le système étant en état d'attente, Si bon code entré alors 2. Ouverture portail Si véhicule passé et portail ouvert alors 3. Fermer le portail Si portail fermé alors 4. Retour à l'étape d'attente 1 Ces fonctions peuvent être liées aux solutions structurelles ou aux niveaux de décomposition de ces fonctions via un tableau croisé de correspondance fonction/solution (TAB. 1). Les équations de comportement peuvent être introduites à ce niveau pour identifier les flux des paramètres (comme dans le «parametric diagram» de SysML) et pouvoir commencer les simulations. A chaque étape de l'analyse, nous avons la possibilité de choisir parmi les solutions existantes, de concevoir tout ou partie des sous-fonctions correspondantes. Solutions Fonctions S1 S2 S3 S4 S5 S6 F1 X X X F2 X X F3 X X X X F4 X X F5 X X X TAB. 1 : Tableau croisé Fonctions-Solutions. 4
Plusieurs stratégies peuvent alors être adoptées : Rechercher si la fonction a déjà au moins une solution exploitable sans développement supplémentaire. Dans le cas d'une famille de solutions, une recherche d'architecture optimale pourra être envisagée. Décomposer les fonctions jusqu'au niveau des briques élémentaires, point de passage direct avec le structurel. Rechercher la solution remplissant le plus de fonctions, puis rechercher si toutes les fonctions sont réalisées, sinon parmi le jeu de fonctions restantes réitérer la première étape. Différents niveaux de modélisation structurelle peuvent alors être utilisés pour simuler le fonctionnement du système. Ceci complète le modèle couramment utilisé en géométrie où l on matérialise les intentions de conception par la cotation. FIG. 5 : Choix du composant structurel sous Dymola FIG. 6 : Exemple d objet graphique et son code en Modelica Les éléments structurels font apparaître les premiers éléments géométriques. Ils nous permettent d avoir une représentation 3D (parfois simplifiée) des composants, qui, par l intégration des éléments géométriques, rend les simulations multi-physiques de pré-dimensionnement plus réalistes. Certains COTS peuvent fournir une géométrie détaillée à partir de CATIA. Un des aspects important de cette approche «tout intégré» est le passage du continu (ensemble donné par la simulation) au discret (donné par l ensemble des composants). Une simulation peut être réalisée dans le domaine continu puis on peut passer à la recherche de l'adéquation entre le composant idéal simulé et une instance réelle (domaine discret). La représentation plane des objets Modelica avec ses positions et dimensions est purement graphique. Les données géométriques ne sont pas couplées avec ces icônes 2D. C est pourquoi nous proposons d étendre les représentations des objets Modelica en 3D pour intégrer la géométrie au comportement. Cet aspect est longuement détaillé dans un autre article [24]. L intégration de Dymola au sein de CATIA System (V6) offre la possibilité d accès au module PDM de CATIA, qui permet de stocker, structurer, tracer les données, de partager et favoriser la réutilisation des standards et de l existant. Ainsi, la capitalisation des différents modèles est possible. 2 Conclusion Dans cet article, nous avons proposé une démarche unique intégrée permettant la réalisation d une conception d un système mécatronique basée sur le langage Modelica au sein de l environnement Dymola (Catia System). Un exemple détaillé de la continuité assurée par cette méthodologie sur un système mécatronique a été illustré dans un précédent article [23]. Les propriétés de cet environnement permettent de remplir les nombreuses conditions d un environnement idéal de conception pour les produits mécatroniques : la garantie de la cohérence et la traçabilité des paramètres entre les niveaux de modélisation est automatiquement assurée par l unicité des paramètres, du langage, de l information au sein d un environnement unique. L aspect multi-niveau, multi-domaine et multi-échelle y est déjà présent. Les blocs d exigences, les graphes fonctionnels, dysfonctionnels, structurels et vision 3D peuvent être développés sous Modelica. Enfin, la capitalisation des informations et modèles peut être assurée par l intégration de Dymola à Catia System V6. 5
Aujourd hui, cet environnement idéal n existe pas encore dans le commerce mais DS avec son Catia System V6 laisse entrevoir l espace dans lequel ce développement pourrait avoir lieu. Dymola est intégré à la structure CATIA et un découpage en Requirement, Function, Logic, Physic (RFLP) est proposé de base. Cela ne correspond pas nécessairement à la démarche proposée mais les modules existent au sein du même outil de développement. Ce nouvel environnement n attend plus que l électronique et l informatique pour répondre pleinement aux besoins de conception de produit mécatronique. Références [1]. Chakrabarti, A. and Bligh, T. P. A scheme for functional reasoning in conceptual design. Novembre 2001, Vol. 22, 6, pp. 493-517. [2]. Pahl, G. and Beitz, W. Engineering Design - A Systematic Approach. 2nd edition. London : Springer, 1996. [3]. Teorey, T. J., Yang, D. and Fry, J. P. A logical design methodology for relational databases using the extended entityrelationship model. New York : ACM Comput. Surv., 1986. pp. 197-222. doi : 10.1145/7474.7475. [4]. Yan, H.-S. A methodology for creative mechanism design. s.l. : Mechanism and machine theory, 1992. pp. 235-242. Vol. 27. [5]. Choley, J-Y. Mécatronique : une nouvelle démarche de conception des systèmes complexes. Technologies et Formations. Delagrave Editions S.A., October 2006, 127, pp. 29-35. [6]. Sell, R. and Tamre, M. Integration of V-model and SysML for advanced mechatronics system design. Annecy : s.n., 2005. pp. 276-280. REM05. [7]. Bernardi, M., Bley, H. and Schmitt, B. New approaches for developing mechatronical products in multidisciplinary teamwor. Seoul : s.n., 2002. [8]. Blessing, L.T.M. A process-based approach to design. London : s.n., 1995. [9]. Amerongen, J.van. Mechatronic Design. Journal of Mechatronics. Décembre 2003, Vol. 13(10), pp. 1045-1066. http://www.ce.utwente.nl/rtweb/publications/2003/pdf-files/125ce2003.pdf. [10].. Mechatronic Design: A Port-Based Approach. American University of Sharjah : s.n., 2007. pp. 1-8. [11]. Rausand, M. and Høyland, A. System Reliability Theory: Models, Statistical Methods, and Applications. Wiley- IEEE : s.n., 2004. pp. 81-83. ISBN 047147133X. [12]. Command, Air Force Systems. Information Integration for Concurrent Engineering IDEF4 Object- Oriented Design Method Report. [Online] 1995. http://www.idef.com/. [13]. Del L., Younker. Value Engineering: Analysis and Methodology. s.l. : CRC Press, 2003,. 350 pages. ISBN 082470696X. [14]. D. Hubaux, L. Guedria, L. Vandendorpe, M. Verleysen et J.D. LEGAT. Nouvelles méthodes de conception de systèmes. HAMMAMET (Tunisie) : s.n., 10-13 April 2002. pp. pp. 341-345. [15]. David Maliniak. Don't Be A Separatist Think "System". [Online] 01 02 2007. [Cited: 02 03 2009.] http://electronicdesign.com/articles/index.cfm?ad=1&articleid=14723. [16]. SysML. [16] System modeling language (SysML) specification. Version 1.0, Draft. OMG document ad/2006-03-01. SysML. [Online] 2006. http://www.sysml.org/ http://www.omgsysml.org/. [17]. Georgia Institute of Technology. INCOSE MBSE Challenge Team for Mechatronics/Interoperability. Georgia Institute of Technology. [Online] http://www.pslm.gatech.edu/projects/incose-mbse-msi/. [18]. MODELICA. Modeling of Complex Physical Systems. Modelica. [Online] http://www.modelica.org/. [19]. Hadj-Amor, H.J. Contribution au prototypage virtuel de systèmes mécatroniques basé sur une architecture distribuée HLA - Expérimentation sous les environnements OpenModelica-OpenMASK. Toulon : s.n., 2008. Thèse du Laboratoire LISMMA (EA 2336) Supmeca Toulon. [20]. DYNASIM. Dymola multi-engineering Modelling and simulation. [Online] http://www.dynasim.com/index.htm. [21]. Pop, A., Akhvlediani, D. and Fritzson, P. Towards Unified System Modeling with the ModelicaML UML Profile. s.l. : Proceedings of the 1st International Workshop on Equation-Based Object-Oriented Languages and Tools. [22]. TURKI, Skander. Ingénierie système guidée par les modèles: Application du standard IEEE 15288, de l'architecture MDA et du langage SysML à la conception des systèmes mécatroniques. s.l. : Université du Sud Toulon-Var, 02/10/2008. [23]. Plateaux, Régis, et al. Towards an Integrated Mechatronic Design Process. Málaga : IEEE, 2009. ISBN 978-1- 4244-4195-2. [24]. Plateaux, Régis, et al. Vers un environnement intégré pour le prédimensionnement Modelica 3D. Marseille : CFM, 2009. [25]. Sharpe, J.E.E. Computer tools for integrated conceptual design. 1995. pp. 471-488 (18). 6