Les développeurs de composants logiciels ont tendance à être très éloignés des utilisateurs finaux des produits dans lesquels leurs composants sont utilisés. Récemment, cependant, nous avons communiqué directement avec un utilisateur de KOMPAS-3D MCAD pour résoudre un problème de conception de moule. Il semble que les modèles 3D n'étaient pas correctement exportés vers des formats d'échange de données comme STP, X_T et SAT. La cause, malheureusement pour nous, s'est avérée être dans notre noyau de modélisation géométrique C3D Modeler. Voici comment nous avons résolu le problème rapidement.

Moisissure menacée
Aleksei Grekov est l'ingénieur principal de conception à l'usine d'instruments de Sverdlovsk. Il conçoit des moules depuis 36 ans, depuis 15 ans avec KOMPAS-3D. En tant que tel, il est extrêmement consciencieux. Il prend la responsabilité de son travail et surveille l'état de ses créations jusqu'à la production. Pour cette raison, vous trouvez souvent Aleksei Grekov sur le plancher de production de l'usine.


En plus de fabriquer ses propres produits, l'usine fabrique des moules pour des clients extérieurs. Une de ces commandes client a conduit l'usine de Sverdlovsk à demander une assistance pour un problème déroutant, qui a abouti à l'assistance technique de C3D Labs. L'usine d'instruments de Sverdlovsk a dû livrer un modèle 3D dans un format d'échange de données, car le client n'a pas utilisé KOMPAS-3D. Après la procédure d'exportation et d'importation, le résultat s'est retrouvé sous forme de surface plutôt que de corps solide. Les surfaces ne peuvent pas être utilisées pour fabriquer des moules et le client n'allait donc pas pouvoir utiliser le modèle 3D.
Surface incorrecte résultant d'un bug de congéLe problème s'est posé lorsque le département de conception a déployé une nouvelle version de KOMPAS-3D. Les soupçons des employés ont été éveillés après, comme ils le disent, "non seulement ils ont changé l'interface, mais ils ont également détruit la fonction d'exportation!"

Aleksei Grekov raconte ce qui s'est passé:
Notre client n'a pas utilisé KOMPAS-3D et il avait besoin du modèle non seulement pour la visualisation mais également pour le traitement en atelier et l'assemblage. KOMPAS Viewer aurait été suffisant si le modèle devait seulement être visualisé. La fonction d'exportation / importation devait fonctionner correctement pour fournir le modèle solide et non un modèle de surface. Dans les versions précédentes de KOMPAS-3D, la fonction de traduction fonctionnait mieux et nous avons rarement rencontré des problèmes pour créer des formats intermédiaires.
Après avoir analysé le problème, les développeurs de KOMPAS-3D ont réalisé que le nœud du problème résidait dans certaines mathématiques. De l'extérieur, le moule semblait fermé et KOMPAS-3D le traitait comme s'il l'était. En réalité, les bords du modèle n'étaient pas alignés, ils s'étaient donc séparés, ce qui a transformé le solide en modèle de surface. Une expertise spécifique était nécessaire pour résoudre le problème car les algorithmes standard du noyau de modélisation géométrique C3D Modeler (sur lequel KOMPAS-3D est basé) n'ont pas pu résoudre le problème.
Tout d'abord, les développeurs ont proposé une solution de contournement pour former correctement le modèle: modifiez la géométrie pour aligner les bords. Il s'est avéré que changer la géométrie n'était pas une option, car la précision était de la plus haute importance. La solution de contournement proposée n'a pas fonctionné.
Formule de moule
Des diagnostics détaillés ont montré que le modèle était en cours de construction avec un défaut qui ne l'empêchait pas d'être édité par KOMPAS-3D, mais le rendait incompatible avec l'échange de données.
L'indice du problème provient de l'observation que la coque fermée s'est ouverte lors de la traduction. La cause en était l'ajout de bords limites issus d'une opération booléenne. Le concepteur CAO a tracé un contour sur un visage, l'a extrudé, puis l'a uni au corps parent. Mais le contour dépassait légèrement la taille du visage en raison des particularités des contraintes qui étaient appliquées.
La flèche indique un contour dépassant la taille du visageLe fait que le contour dépasse des bords n'était pas en soi un problème. Le problème est survenu parce que le contour a légèrement dépassé, d'une quantité équivalente à la tolérance. Par conséquent, l'opération booléenne s'est déroulée le long de la branche qui a contourné la création de visage. Les petits écarts ne sont pas un problème aussi important pour les mathématiques du noyau que les visages de tailles similaires - cela est vrai pour les algorithmes de modélisation mais pas, comme il s'est avéré, pour l'échange de modèles. Après avoir déterminé le problème, nos programmeurs l'ont résolu en ajustant les critères qui décidaient de créer ou non des visages.
Solution mathématique au problème d'exportationMais une autre source du bogue des bords limites a été trouvée. Les paramètres d'entrée de l'opération de congé impliquent le rayon du congé, plus une chaîne d'arêtes à remplacer par de nouvelles faces. Souvent, une opération de congé n'est pas strictement locale: elle affecte parfois non seulement les faces qui touchent les bords de la chaîne de congé, mais aussi d'autres. Des situations difficiles peuvent survenir aux extrémités des chaînes ouvertes, car la construction correcte des congés nécessite la modification des faces de toutes les arêtes adjacentes aux sommets extérieurs.
Si le rayon d'un congé est supérieur à la dimension latérale d'une face (par rapport à l'arête), les faces qui ne sont pas voisines doivent également être modifiées. Certains cas ont été traités par les fonctions régulières conçues pour modifier les faces adjacentes aux sommets extérieurs; les autres visages ont été traités séparément en tant que cas spéciaux. À la suite de la demande de Sverdlovsk Instrument Plant, nous avons augmenté le nombre de cas spéciaux traités avec succès.
Le matin dans le noyau C3D, le soir dans KOMPAS-3D
La nouvelle solution mathématique a été immédiatement ajoutée au noyau de modélisation géométrique C3D Modeler puis à KOMPAS-3D v17 en tant que mise à jour express, qui a été livrée aux concepteurs de l'usine d'instruments de Sverdlovsk. La seule chose à faire était d'appliquer la commande «Reconstruire» de KOMPAS-3D au modèle, de l'exporter au format d'échange, puis de vérifier le résultat en réimportant le fichier.
Aleksei Grekov rapporte le résultat: «Notre usine a produit un moule de moulage extrêmement complexe, sur lequel nous avions travaillé longtemps. Ce projet a impliqué une série de demandes d'assistance, qui ont été traitées avec succès. Aujourd'hui, le matériel produit par ce projet a été testé et les résultats sont positifs. Tout ce travail valait le temps et les efforts, et je joins des photos du résultat final. Un grand merci à tout votre personnel! »



par Alexander Spivakov, responsable du développement des convertisseurs C3D chez C3D Labs
Vidéo: Présentation de la boîte à outils C3D pour le développement de logiciels d'ingénierie
Demander une évaluation de C3D ToolkitPS c'est
crosspost .