Services et assistance » Articles techniques

Réalisations Clients

<b>Siège PEM</b>  - France

Siège PEM - France

Film de la semaine

Bridge load analysis

ROBOT Millennium
Bridge load analysis

 
Offre Robobat & Autodesk à 1425€ HT

Paramétrage du maillage Elements Finis à l'aide de ROS

Paramétrage du maillage éléments finis de Robot Millennium
à l’aide de la technologie Robot Open Standard

 

La technologie Robot Open Standard permet de piloter le logiciel Robot Millennium à l’aide de programme écrit en Visual Basic ou en Visual Basic pour Application à l’aide d’Excel ou de Word.
Cet article montre comment configurer les différentes options de maillage pour un maillage de type Coons des éléments surfaciques.
Cette article nécessite des notions de programmation en Visual Basic et la connaissance des modules éléments surfacique de Robot Millennium. 

1. Introduction

Pour lancer robot Millennium avec la technologie Robot Open Standard, il faut :

- Déclarer un objet IRobotApplication :
Public robapp As IRobotApplication
- Instancier cet objet :
Set robapp = New RobotApplication

Pour créer un projet de type plaque, il faut créer un nouveau projet de ce type :
robapp.Project.New (I_PT_PLATE)

Pour voir Robot Millennium, le booléen Visible doit prendre la valeur True
robapp.Visible = True

Pour intéragir avec Robot Millennium, le booléen Interactive doit prendre la valeur True
robapp.Interactive = True

Ainsi, Robot Millennium est ouvert et un nouveau projet de type plaque est créé.

2. Paramétrage des préférences de l'affaire - Maillage EF

Classiquement la boite de dialogue préférences de l’affaire permet à l’utilisateur de configurer le type de maillage éléments finis utilisé. 
Les types de maillage disponibles sont :

- maillage gros
robapp.Project.Preferences.MeshParams.MeshType = I_MT_COARSE
- maillage normal
robapp.Project.Preferences.MeshParams.MeshType = I_MT_NORMAL
- maillage fin
robapp.Project.Preferences.MeshParams.MeshType = I_MT_FINE
- maillage utilisateur
robapp.Project.Preferences.MeshParams.MeshType = I_MT_USER

La case à cocher “Ajustage automatique des maillages” est accessible en positionnant le booléen MeshAutoAdjust à vrai ou à faux soit :
robapp.Project.Preferences.MeshAutoAdjust = True
robapp.Project.Preferences.MeshAutoAdjust = False

Pour sauvegarder ces paramètres, il faut sauver les préférences :
robapp.Project.Preferences.Save

3. Paramétrage des options de maillage

La fenêtre suivante est accessible en cliquant sur le bouton modifier de la boîte de dialogue précédente.

3.1. Méthodes de maillage admissibles :


Deux méthodes de maillage sont disponibles, la méthode Coons et la méthode Delaunay, pour les activer, on utilise la syntaxe suivante :
robapp.Project.Preferences.MeshParams.SurfaceParams.Method.Method = I_MMT_COONS
robapp.Project.Preferences.MeshParams.SurfaceParams.Method.Method = I_MMT_DELAUNAY

Liste déroulante des critères d’occurrence :

Cette liste déroulante propose 3 options :
- Jamais
- Rare
- Fréquente

Cette option correspond à la variable ImplementDegree. Il faut donc écrire suivant la configuration choisie :
robapp.Project.Preferences.MeshParams.SurfaceParams.Method.ImplementDegree = I_MID_NEVER
robapp.Project.Preferences.MeshParams.SurfaceParams.Method.ImplementDegree = I_MID_OFTEN
robapp.Project.Preferences.MeshParams.SurfaceParams.Method.ImplementDegree = I_MID_RARELY

Liste déroulante Utilisation :

Cette liste déroulante propose 5 options :
- Non imposée
- Libre
- Proposée
- Recommandée
- Imposée

Cette option correspond à la variable ForcingRatio. Il faut donc écrire suivant la configuration choisie : 
robapp.Project.Preferences.MeshParams.SurfaceParams.Method.ForcingRatio = I_MFR_NONE
robapp.Project.Preferences.MeshParams.SurfaceParams.Method.ForcingRatio = I_MFR_ANY
robapp.Project.Preferences.MeshParams.SurfaceParams.Method.ForcingRatio = I_MFR_PROPOSED
robapp.Project.Preferences.MeshParams.SurfaceParams.Method.ForcingRatio = I_MFR_RECOMMENDED
robapp.Project.Preferences.MeshParams.SurfaceParams.Method.ForcingRatio = I_MFR_FORCED

3.2. Eléments finis :

Liste déroulante Type(surfacique) :

Il existe 4 types de maillages surfaciques :
- triangulaires à 3 nœuds
- quadrangulaires à 4 nœuds
- triangulaires à 6 nœuds
- quadrangulaires à 8 nœuds

Pour paramétrer le types d’éléments finis à utiliser dans le maillage, il faut définir son Type, soit : 
robapp.Project.Preferences.MeshParams.SurfaceParams.FiniteElems.Type = I_MSFET_3NODE_TRIANG
robapp.Project.Preferences.MeshParams.SurfaceParams.FiniteElems.Type = I_MSFET_4NODE_QUADRIL
robapp.Project.Preferences.MeshParams.SurfaceParams.FiniteElems.Type = I_MSFET_6NODE_TRIANG
robapp.Project.Preferences.MeshParams.SurfaceParams.FiniteElems.Type = I_MSFET_8NODE_QUADRIL

Coefficient de conversion :

Cette zone de texte permet valoriser la variable ConversionCoeff. La valeur attendue est un réel.
robapp.Project.Preferences.MeshParams.SurfaceParams.FiniteElems.ConversionCoeff = -0.3

Liste déroulante Utilisation :

Cette liste déroulante propose 5 options :
- Non imposée
- Libre
- Proposée
- Recommandée
- Imposée

Cette option correspond à la variable ForcingRatio. Il faut donc écrire suivant la configuration choisie : 
robapp.Project.Preferences.MeshParams.SurfaceParams.FiniteElems.ForcingRatio = I_MFR_ANY robapp.Project.Preferences.MeshParams.SurfaceParams.FiniteElems.ForcingRatio = I_MFR_FORCED
robapp.Project.Preferences.MeshParams.SurfaceParams.FiniteElems.ForcingRatio = I_MFR_NONE
robapp.Project.Preferences.MeshParams.SurfaceParams.FiniteElems.ForcingRatio = I_MFR_PROPOSED
robapp.Project.Preferences.MeshParams.SurfaceParams.FiniteElems.ForcingRatio = I_MFR_RECOMMENDED

3.3. Génération du maillage

Trois boutons radio permettent de spécifier le type de maillage générer. Le maillage peut être automatique, spécifié par l’utilisateur ou défini en fonction de la taille de l ‘élément.

Cette option correspond à la variable Type. Il faut donc écrire suivant la configuration choisie : 
robapp.Project.Preferences.MeshParams.SurfaceParams.Generation.Type = I_MGT_AUTOMATIC
robapp.Project.Preferences.MeshParams.SurfaceParams.Generation.Type = I_MGT_ELEMENT_SIZE
robapp.Project.Preferences.MeshParams.SurfaceParams.Generation.Type = I_MGT_USER

 

Les deux zones de texte ci-dessous permettent de spécifier le nombre de division ou la taille de l’éléments selon le type de génération choisie.

robapp.Project.Preferences.MeshParams.SurfaceParams.Generation.Division1 = 5
robapp.Project.Preferences.MeshParams.SurfaceParams.Generation.Division2 = 5
robapp.Project.Preferences.MeshParams.SurfaceParams.Generation.ElementSize = 0.01

3.4. Paramètres de la méthode Coons

Type de division :
On trouve ici cinq options :

Pour accéder à ces options on utilise la méthode suivante :
robapp.Project.Preferences.MeshParams.SurfaceParams.Coons.PanelDivisionType = I_MPDT_SQUARE_IN_RECT
robapp.Project.Preferences.MeshParams.SurfaceParams.Coons.PanelDivisionType = I_MPDT_TRIANG_AND_SQUARE_IN_TRIANG
robapp.Project.Preferences.MeshParams.SurfaceParams.Coons.PanelDivisionType = I_MPDT_TRIANG_AND_TRAPEZ_IN_TRIANG
robapp.Project.Preferences.MeshParams.SurfaceParams.Coons.PanelDivisionType = I_MPDT_TRIANG_IN_RECT
robapp.Project.Preferences.MeshParams.SurfaceParams.Coons.PanelDivisionType = I_MPDT_TRIANG_IN_TRIANG

Liste déroulante Utilisation :

Cette liste déroulante propose 5 options :
- Non imposée
- Libre
- Proposée
- Recommandée
- Imposée

Cette option correspond à la variable ForcingRatio de la méthode Coons. Il faut donc écrire suivant la configuration choisie : 
robapp.Project.Preferences.MeshParams.SurfaceParams.Coons.ForcingRatio = I_MFR_ANY
robapp.Project.Preferences.MeshParams.SurfaceParams.Coons.ForcingRatio = I_MFR_FORCED
robapp.Project.Preferences.MeshParams.SurfaceParams.Coons.ForcingRatio = I_MFR_NONE
robapp.Project.Preferences.MeshParams.SurfaceParams.Coons.ForcingRatio = I_MFR_PROPOSED
robapp.Project.Preferences.MeshParams.SurfaceParams.Coons.ForcingRatio = I_MFR_RECOMMENDED

4. Conclusion

Pour sauvegarder ces paramètres, il faut sauver les préférences :
robapp.Project.Preferences.Save

Le fichier Excel téléchargeable est un exemple d’utilisation du propos exposé :

Pour visualiser le code source, lancer Ms Excel et ouvrir l’éditeur VBA (Alt+F11