Simulation Fraiseuse 5 axes


Développement Visual Basic



Version 0.9.14

Exécutable et installation (Version 0.9.14) : Machine_simul0914.exe (4.50 Mo)


Documentation PDF (Version 0.9.2) : Machine_Simul.PDF (5Mo)

Le programme

Ce programme permet de simuler un CODE ISO pour une fraiseuse 5axes .Ce projet fait suite a mon précédent code source de simulation de Robot 6 axes. Pour la machine je passe toujours par les fichiers STL. Par contre les outils et porte-outils sont définis avec les fonctions OpenGL : glusphere, glucylindre, gludisk ..... Sinon les performances risquaient de s'écrouler. De plus c'est beaucoup plus souple pour définir les outils. Vous avez la possibilité de charger différentes machines ... Vous trouverez aussi dans l'archive Zip un petit programme ISO (test.nc) avec quelques codes basic .. G00, G01, G02, G03, G23, M06, M02, M30 ... le but de ce Programme n'est pas d'avoir un interpréteur de code ISO universel.

Je n'aime pas beaucoup les OCX mais ici j'ai mis un peu de Richtextbox, ca permet de charger de gros fichiers et d'avoir avec en même temps que la simulation 3D l'affichage en couleur des lignes de commande .




Vous pouvez manipuler la machine visualisée dans la zone graphique, en positionnant le curseur sur la fenêtre graphique et avec les boutons de la souris uniquement :
Bouton de gauche : Déplacement à l'écran de la machine
Bouton de droite : Zoom Avant et Arrière

En appuyant sur la touche SHIFT + les boutons de la souris :
SHIFT+ Bouton de gauche : Rotation suivant X ou Y
SHIFT+ Bouton de droite : Rotation suivant axe Z

Pour le controle de collision j'analyse l'intersection de triangles . Cette solution est  gourmande en calcul si l'on veut le faire avec toute la machine. J'ai donc définis plusieurs niveaux de contrôle de collision.

Niveau 1 : Collision uniquement sur les boites englobantes
Niveau 2 : Collision sur les OBB filles
Niveau 3 : Collision sur les triangles


Modifications


Version 0.2
Possibilité de charger plusieurs types de machine. Ceci ce fait via la fonction Fichier Charger Machine. Cette fonction permet une prévisualisation des machines.

Attention la résolution inverse des positions ainsi que le controle de collision n'est toujours valable que pour la première machine (FZ30).
Version 0.3
Des modifications ont été apportées pour gérer les machines avec une cinématique de type plateau. (Exemple DMG DMU60T)

Version 0.4
Il est normallement possible de gérer et simuler toutes les cinématiques existantes de machines standards. Vous trouverez de nombreux exemples (XYZAC, XYZWBC, XYZABC ..)
Vous avez maintemant aussi la visualisation du magasin outil dans un contrôle Treeview .
Attention le contrôle de collision ne fonctionne pas avec toutes ces machines. A suivre ...

Version 0.5
Fonction pour définir la couleur pièce. Déchargement piéce possible.
Attention le controle de collision ne fonctionne qu'entre la pièce et l'élement(NB axe) Généralement partie mobile avant l'outil.

Version 0.6
Plusieurs fonctions annexes ont été rajoutées, comme par exemple la possibilitée de sauvegarder une configuration Projet (pièce, machine, parcours )
Le controle de collision est toujours uniquement possible entre la pièce et un élement mais cet élément est configurable dans le fichier DAT. A suivre ...

Version 0.6.014
Optimisation du code existant avec réduction des temps de calcul. Quelques supression de bugs.

Version 0.7
Ajout de la fonction Voir Collision, qui permet de visualiser les triangles en collisions.
Version 0.8
Ajout de la gestion des mandrins. Nouvelle gestion des codes M06, M02, M30,M00

Version 0.9
Nouvelle interface et organisation des menus. Création d'une documentation intégration de la simulation des cycles de palpage. Nouvelles options pour la configuration des tests de collisions entre pièce. Fonction graphique pour configurer les machines..... Bref beaucoup de choses nouvelles.

En cette période de fin d'année communément dévolue au bilan, j'ai  ressorti les différentes images utilisées pour les versions de ce programme depuis que j’utilise ce masque . J’ai trouvé que, plus que la prose habituelle cela permettait de marquer le travail réalisé sur ce projet.

Version 0.7 Version 0.8 Version 0.9

Version 0.9.7

Pour fêter les 10000 Visiteurs sur mon site et aussi pour vous donner des informations de mes dernières avancées sur Machine_Simul.

Ces derniers temps, la plus grande partie du travail a consisté à tester et corriger le logiciel J’ai cependant  essayé dans cette version d’améliorer la partie mise en position de la pièce. Comme par exemple en  rajoutant une fonction de positionnement de la pièce par glissé. Comme sur l’image suivante :

 

En cliquant dans un des champs   Origine pièce  l’on fait apparaître la boite englobante de la pièce avec 6 petite flèches . Il suffit alors  de « tirer « sur une de ces flèches  pour positionner la pièce sur la machine. Ceci permet d’effectuer un positionnement approximatif de la pièce. L’on pourra par la suite toujours utiliser une autre méthode pour affiner le positionnement.

 

La sélection de deux points par la fonction aligner   permet d’obtenir le décalage entre ces points et ainsi à l’aide des boutons   l’on peut positionner automatiquement la pièce selon ces valeurs.

 

J’ai aussi travaillé sur la partie G70/G71 ( Unité métrique ou INCH). C’est une partie assez ingrate à traiter et difficile, car il ne faut pas oublier d’effectuer toutes les conversions. J’ai en effet pris le partie de garder tous les calculs et définition interne en millimètres la partie Inch étant seulement une conversion par un facteur 25.4 des cotes affichées. L’utilisateur peut aussi spécifier via le masque des options l’unité dans laquelle il veut travailler. J’ai donc aussi rajouté un nouveau Code ISO qui est G72 ce dernier permet après avoir forcé une unité dans le code par G70 ou G71 de revenir à l’unité par défaut.

 

La partie intégration G02/G03 G23( interpolation circulaire par 3 points ) est aussi opérationnelle. Cependant en mettant le nez dans cette partie j’ai découvert toute la complexité que cela pouvait représenter. Donc pour le moment seul les cercles sont représentés en utilisant les plans G17,G18,G19 . Pas d’interpolations hélicoïdales, pas de gestion dans un plan incliné…

 

Traitement du G23 ou de sont équivalent plus connu de chez Siemens, le CIP

Et enfin pour coller un peu plus à la « réalité » toute la partie gestion des outils et définition de ces derniers à été modifiée.

La Simulation accepte maintenant des outils et des assemblés (composé d’un outil et de porte outil, rallonge , pince etc ….)

Ces éléments peuvent être définis précisément à partir des données DXF que l’on peut trouver auprès des fabricants ou que vous pouvez créer à partir de votre système CAO Personnel.

Fichier DXF

Extraction automatique du contour

Représentation 3D dans Machine_Simul

 Et enfin j’ai rajouté dans les exemples une petite « Démo » sympa avec un parcours 5 axes sur une turbine. Bon je sais c’est du classique mais j’aime bien les mouvements  et en plus ça me permet d’utiliser les options  « Mandrins ».

 
Pour jouer qvec cette exemple: charger la machine Mikron, le fichier STL TurbineAscii.stl et le fichier Turbine_Mikron.i qui sont normalement dans le répertoire Exemple  et GO .. pour avoir ça :

 

  

Voilà A peine ces lignes écrites que je constate qu’il faudra une version 0.9.8 pour corriger les 3478 Bugs répertoriés

 A suivre donc …
Version 0.9.12
Ajout de la fonction Réglages longueur outil, qui permet de modifier en dynamique dans l'environnement de visualisation la longueur sortie de l'outil. Ce réglage s'éffectu au moyen d'une réglette affichée dans la zone de visualisation 3D.



Version 0.9.13
Début de la gestion des codes NUM1060



Version 0.9.14
Modification du mode de rotation. Shift + bouton gauche de la souris = rotation classique. Shift + bouton droit de la souris = rotation mode dominant


Liens


Machine Zimmerman FZ30 ( sans la petite modification de mon magasin outil :-)

Machine DMG avec plateaux DMU70

Machine MIKRON UCP 800

Machine HURON KX20

Machine RAINNEA CNC
 

Vous pouvez retrouver une ancienne version de ce code sur le site de www.vbfrance.com (code 9590)

Liens sur le site www.vbfrance.com


Comme toujours sur la toile "Rien ne se perd tout se transforme" et donc logiquement une société a repris mon code pour en faire une version payante.

Interactive Milling 250 £ C'est un peu cher pour un relooking de l'interface. Enfin moi ce que j'en dit.




Présentation Video

Demo Démonstration rapide des fonctionnalités du logiciel.

Rainnea Hardhat Présentation du logiciel avec la machine de Rainnéa.

Version V0.9.12 Présentation de la nouvelle fonction de réglage de la longueur outil en version 0.9.12.




Merci d'envoyer vos commentaires, bug reports et autres à : usinage5axes@free.fr


page principale   |  lisez moi !