Une application de modélisation 3D pour le CNES

  • #Architecture d'entreprise & applicative
  • #Frameworks & développements
  • #Communication/marketing/performances commerciales
  • #Web & UX Design

Le Centre National d’Etudes Spatiales (CNES) est un établissement public chargé d’élaborer et de proposer au gouvernement français le programme spatial français et de le mettre en œuvre.
Au sein du CNES, le CIC (Centre d’Ingénierie Concourante) réalise des sessions de travail avec des industriels de l’aérospatiale afin de lancer l’étude de projets. On parle alors de projet en phase A. Durant cette phase, les différents experts du CNES se réunissent dans une salle de réunion spécifique, soit de manière physique, soit grâce à la visio-conférence, afin d’échanger sur le projet et de se communiquer les données importantes relatives au métier de chacun.

Lors de ces réunions, les différents acteurs ont besoin d’une application spécifique de modélisation 3D pour partager leurs avancées, effectuer des démonstrations, des simulations et ainsi avancer dans la construction du projet. C’est pour répondre à ce besoin spécifique que Clever Age a développé pour le CNES l’application IDM-CIC.

Présentation

L’application IDM-CIC permet de réaliser des modèles 3D articulés découpées en divers éléments définis par des propriétés génériques et des propriétés personnalisables.

Des calculs mathématiques peuvent ensuite être appelés afin de vérifier la répartition des masses, le centrage (centre de gravité), l’inertie, la consommation et la dissipation de puissance.

Initialement, elle permet de réaliser des modèles de satellites ou de constellation de satellites, mais peut être malgré tout utilisée pour produire d’autres types de modèles (avions, bateaux, voitures, etc…).

Cette application est entièrement gratuite et mise à disposition de tous les acteurs qui souhaitent l’utiliser, généralement à condition de suivre une formation à l’utilisation de l’outil.

Côté technique

L’application est découpée en une API contenant le modèle et des utilitaires développés en C# utilisant le framework .NET 4.0, une interface générale basée sous le logiciel Microsoft Excel et des interfaces utilisateurs annexes en Windows Forms. L’API IDM-CIC est également exposée en COM, ce qui permet à des applications développées sous d’autres langages (Ruby, C++, Java, VBScript, VBA, Python, …) de charger et manipuler des modèles.

Des fichiers spécifiques

Les données des modèles sont sauvegardées dans des fichiers spécifiques avec l’extension « .idm ». Ce sont en réalité des fichiers zip comprenant un fichier XML contenant la structure du système, des fichiers utilisés au sein du modèle (des images, des fichiers 3D, des textures…) et des fichiers annexes qui peuvent être ajoutés par des utilisateurs à la main ou via des applications tierces. Des méthodes de l’API permettent d’importer des données d’un modèle vers un autre et de les mettre à jour lorsque les données ont été modifiées dans le modèle de référence.

La modélisation 3D

La 3D dans IDM-CIC est réalisée grâce à la combinaison de formes simples (boites, cylindres, sphères, cônes, etc…) ou en embarquant des fichiers de CAO (STEP, Collada). Les différents objets contenant ces formes peuvent être instanciés dans le modèle et placés sur des repères qui peuvent être articulés via une rotation ou une translation, ce qui permet par exemple de définir l’ouverture d’un panneau solaire.

Des modèles paramétriques

Le modèle IDM-CIC embarque un gestionnaire de formule, qui est basé initialement sur le système de formules Excel. Cela permet de créer des modèles entièrement paramétriques en spécifiant des relations entre des propriétés du modèle avec des formules mathématiques. Par exemple, on peut spécifier que le rayon d’un cylindre est égal à la longueur d’une boite divisée par 2.

Le système de formule, même s’il est basé sur le système d’Excel, est entièrement embarqué et peut être utilisé via l’API sans pour autant avoir Excel.

Couplage en temps réel !

Un système de synchronisation de données en temps réel est intégré à l’API et permet de synchroniser complètement deux modèles via un service dédié utilisant le protocole TCP/IP. On peut ainsi avoir deux modèles synchronisés sur des machines distantes.

Un système de gestion d’utilisateurs et de rôles est intégré au modèle IDM-CIC afin de permettre à des utilisateurs de n’avoir accès en écriture qu’à certaines données.

Visualisation 3D

L’exposition de l’API en COM et le système de couplage temps réel ont permis la réalisation d’un plugin de l’application SketchUp (développé en Ruby), fourni avec le package, qui permet de dessiner les modèles IDM-CIC et de mettre à jour en temps réel la visualisation lorsque des propriétés intrinsèques à la géométrie sont modifiées via l’interface Excel.

Par ailleurs, la société Virtual-IT a développé un visualisateur 3D poussé, basé sous le moteur Unity permettant d’avoir des rendus impressionnants de modèles IDM-CIC dans l’espace et de faire des animations vidéos.

Plugins IDM-CIC

L’API IDM-CIC embarque enfin un système de gestion de plugins afin que d’autres acteurs puissent étendre les possibilités de l’application.

Le système de plugin permet de rajouter des contrôles à l’interface Excel afin d’exécuter des actions personnalisées qui peuvent manipuler le modèle chargé dans Excel.