Premier exercice — La rondelle paramétrique
Pour découvrir iLogic, rien de mieux qu'un exercice concret. Nous allons modéliser une rondelle plate dont les dimensions sont pilotées par des règles. Ce cas simple illustre un problème très courant en conception mécanique : adapter une dimension à une contrainte industrielle.
Le problème
Notre rondelle est définie par trois paramètres :
| Paramètre | Règle |
|---|---|
| Diamètre intérieur | Valeur libre, saisie par l'utilisateur |
| Diamètre extérieur | Diamètre intérieur × 2 |
| Épaisseur | Diamètre intérieur / 10, arrondi à l'épaisseur de tôle supérieure disponible |
La formule du diamètre extérieur est simple : diametre_interieur * 2. L'épaisseur, en revanche, pose un problème. Si le diamètre intérieur vaut 20 mm, l'épaisseur calculée est de 2 mm — et on trouve bien des tôles de 2 mm. Mais si le diamètre intérieur vaut 14 mm, l'épaisseur calculée serait de 1.4 mm, et cette épaisseur de tôle n'existe pas.
Les rondelles sont découpées dans des tôles, et les épaisseurs de tôle disponibles sont normalisées. Voici les épaisseurs que nous allons utiliser :
| Épaisseur (mm) |
|---|
| 0.8 |
| 1 |
| 1.2 |
| 1.5 |
| 2 |
| 3 |
Pour un diamètre intérieur de 14 mm, il faut donc choisir l'épaisseur de tôle immédiatement supérieure ou égale à 1.4 mm, soit 1.5 mm.
Étape 1 : modéliser la rondelle
Commencez par créer une nouvelle pièce dans Inventor et modélisez une rondelle simple :
- Créez une esquisse sur le plan XY
- Dessinez deux cercles concentriques centrés sur l'origine
- Coter le cercle intérieur : c'est le diamètre intérieur (
diametre_interieur) - Coter le cercle extérieur : c'est le diamètre extérieur (
diametre_exterieur) - Extrudez l'esquisse pour créer un anneau plein — la distance d'extrusion est l'épaisseur (
epaisseur)
Renommez les paramètres dans le gestionnaire de paramètres d'Inventor (Gérer > Paramètres) pour qu'ils portent des noms explicites :
diametre_interieur(par exemple 20 mm pour commencer)diametre_exterieur(40 mm)epaisseur(2 mm)
Étape 2 : créer la règle iLogic
Ouvrez le navigateur iLogic (Gérer > iLogic > Navigateur de règles) et créez une nouvelle règle que vous nommerez Calculer_Epaisseur.
Dans l'éditeur, commencez par la formule la plus simple — le diamètre extérieur :
diametre_exterieur = diametre_interieur * 2
C'est aussi simple que ça. iLogic reconnaît diametre_interieur et diametre_exterieur comme des paramètres du modèle. Quand la règle s'exécute, elle lit la valeur courante de diametre_interieur et affecte le double à diametre_exterieur.
Cliquez sur Enregistrer et exécuter pour tester. Modifiez la valeur de diametre_interieur dans le gestionnaire de paramètres, puis relancez la règle : le diamètre extérieur se met à jour automatiquement.
Étape 3 : l'épaisseur calculée
Ajoutons maintenant le calcul de l'épaisseur. La formule brute est simple :
diametre_exterieur = diametre_interieur * 2
epaisseur = diametre_interieur / 10
Testez avec un diamètre intérieur de 20 mm : l'épaisseur passe à 2 mm. Parfait. Mais essayez avec 14 mm : l'épaisseur passe à 1.4 mm, une valeur qui ne correspond à aucune tôle standard.
Étape 4 : les épaisseurs normalisées avec MultiValue
C'est ici qu'intervient la fonction MultiValue.FindValue. Cette fonction cherche dans une liste de valeurs celle qui correspond le mieux à un critère donné.
Sa syntaxe est :
MultiValue.FindValue(liste, opérateur, valeur_cible)
- liste : un tableau de valeurs dans lequel chercher
- opérateur :
">="(supérieur ou égal),"<="(inférieur ou égal) ou"="(égal) - valeur_cible : la valeur à approcher
Pour notre rondelle, nous voulons trouver l'épaisseur de tôle supérieure ou égale à diametre_interieur / 10. Il nous faut d'abord définir la liste des épaisseurs disponibles avec MultiValue.SetList, puis utiliser MultiValue.FindValue pour trouver la bonne valeur.
Voici la règle complète :
' Définir la liste des épaisseurs de tôle disponibles
MultiValue.SetList("epaisseur", 0.8, 1, 1.2, 1.5, 2, 3)
' Calculer le diamètre extérieur
diametre_exterieur = diametre_interieur * 2
' Calculer l'épaisseur idéale
Dim epaisseur_ideale As Double = diametre_interieur / 10
' Trouver l'épaisseur de tôle supérieure ou égale la plus proche
epaisseur = MultiValue.FindValue(
MultiValue.List("epaisseur"), ">= ", epaisseur_ideale)
Décortiquons ce qui se passe :
MultiValue.SetListdéfinit les valeurs autorisées pour le paramètreepaisseur. Dans Inventor, ce paramètre affichera désormais une liste déroulante avec ces six valeurs.diametre_interieur / 10calcule l'épaisseur théorique (1.4 mm pour un diamètre de 14 mm).MultiValue.FindValueparcourt la liste et retourne la première valeur supérieure ou égale à 1.4, soit 1.5 mm.
Tester la règle
Enregistrez la règle et testez-la avec différentes valeurs de diamètre intérieur :
| Diamètre intérieur | Épaisseur idéale (÷ 10) | Épaisseur retenue |
|---|---|---|
| 8 mm | 0.8 mm | 0.8 mm |
| 10 mm | 1.0 mm | 1 mm |
| 11 mm | 1.1 mm | 1.2 mm |
| 14 mm | 1.4 mm | 1.5 mm |
| 20 mm | 2.0 mm | 2 mm |
| 25 mm | 2.5 mm | 3 mm |
La règle fonctionne : l'épaisseur est toujours arrondie à la valeur de tôle standard supérieure ou égale.
Déclencher la règle automatiquement
Pour l'instant, la règle ne s'exécute que manuellement. Pour qu'elle se déclenche à chaque modification du diamètre intérieur, ouvrez les propriétés de la règle dans le navigateur iLogic (clic droit > Propriétés de la règle) et activez le déclenchement sur le paramètre diametre_interieur.
Vous pouvez aussi configurer la règle pour qu'elle se déclenche à chaque mise à jour du modèle (Event Triggers), ce qui garantit que les calculs sont toujours à jour.
Résumé
Voici ce que nous avons appris dans ce chapitre :
| Concept | Code iLogic |
|---|---|
| Affecter un paramètre | diametre_exterieur = diametre_interieur * 2 |
| Définir une liste de valeurs | MultiValue.SetList("epaisseur", 0.8, 1, 1.2, 1.5, 2, 3) |
| Lire une liste de valeurs | MultiValue.List("epaisseur") |
| Trouver la valeur la plus proche | MultiValue.FindValue(liste, ">= ", valeur) |
Avec seulement quelques lignes de code, nous avons transformé une pièce statique en un modèle paramétrique intelligent qui respecte des contraintes industrielles. C'est toute la puissance d'iLogic : un effort minimal pour un résultat immédiatement utile en bureau d'études.
Besoin d'un développement Inventor (iLogic, .NET, VBA, C++) ou Fusion 360 (Python, C++) ? Contactez-moi pour un devis gratuit.