Microsoft 365 Augmenter tous les Z négatifs de la valeur x dans un GCode

  • Initiateur de la discussion Initiateur de la discussion Aloha
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Aloha

XLDnaute Accro
Bonjour,

Ma demande est sûrement un peu spéciale.

Je veux fraiser une pièce en 3d (une coupole), mais la tête ne descend pas assez bas (axe Z) dans la pièce et dans le programme que j'utilise pour créer le GCode (Estlcam) je peux bien fixer le niveau de départ pour un travail en 2d, mais pas en 3d. Voilà pourquoi je voudrais augmenter dans le code tous les Z négatifs (les Z positifs signifient que la tête remonte avant de redescendre à un niveau <0 inférieur du précédent) d'une valeur x inscrite dans une certaine cellule (E1 dans le fichier joint) pour rendre l'opération flexible.

Le début des lignes contenant les Z est toujours le même

G01 Z-2.5000 F500
ou encore
G01 Z-5.0000 F500

ce qui signifie que la tête avance sur l’axe Z, l‘axe vertical, à une vitesse définie [G01; G00 étant un mouvement plus rapide et constant pour le code entier], à la position Z=-2.5000 dans le premier exemple ci-dessus , donc 2.5mm en-dessous du niveau 0, le niveau 0 correspondant à la surface supérieure de la pièce à fraiser, à une vitesse de 500mm/minute, le code « Fxxx » définissant la vitesse à laquelle la fraise avance sur l’un des 3 axes XYZ.

Je voudrais donc remplacer Z-2.5000 par Z-7.5000, si je veux que la fraise descende 5mm plus bas.

Comme je n’arrive pas à créer un code tenant compte de la modification souhaitée, j’ai eu l’idée d’importer le code dans Excel et d’y augmenter tous les Z négatifs de la valeur inscrite dans la cellule E1 du fichier ci-joint.

Ce code n'est pas bien long avec ses 360 lignes et il y aurait moyen de le faire manuellement, mais des fois j'ai des codes comprenant des milliers, voire même quelques dizaines de milliers de lignes.

Il y avait des temps où j’aurais probablement été capable de résoudre ce problème moi-même mais cela fait un bon moment que je ne travaille plus beaucoup dans Excel. Pour vous, je suis sûr que c'est chose facile.

Bien à vous
Aloha
 

Pièces jointes

Dernière édition:
Oui et jusque-là j'arrive à me débrouiller. Seulement, il faut recomposer les lignes où il y a à la fois X et Y et là je ne vois pas comment procéder, surtout que ce n'est pas toujours le cas, des fois les Y et les Y se trouvent dans des lignes séparées.
Le problème est donc dans les lignes contenant à la fois X et Y

Quelle est la fonction de $B$2-0.000001 dans les formules de la colonne E, donc pourquoi retrancher 0.0000001?
 
Dernière édition:
Un ex en PJ qui rectifie X Y Z quand négatifs. Si ça concerne aussi les X Y positifs il faut modifier les formules.
Les colonnes de calculs sont masquées pour être plus esthétique ( colonnes de K à W )
il suffit donc de coller le code en colonne A, modifier les offsets en XYZ et copier le code modifié en colonne F.

Pour le $B$2-0.000001 c'st juste une astuce pour récupérer par ex -7.500000 et non -7.5 pour respecter le format du code d'entrée.
 

Pièces jointes

Si ça concerne aussi les X Y positifs
non, heureusement; les valeurs positives sont toujours le niveau auquel la tête monte avant de se déplacer pour une nouvelle "tâche"
Pour le $B$2-0.000001 c'st juste une astuce pour récupérer par ex -7.500000 et non -7.5 pour respecter le format du code d'entrée.
je comprends

Formidable, la solution. Vous êtes un véritable magicien en Excel!
 
Dernière édition:
Je viens de remarquer que j'ai fait un faux raisonnement: contrairement aux mouvements sur l'axe Z, où uniquement les mouvements vers le bas (négatifs) doivent être corrigés, les mouvements sur les axes X et Y doivent évidemment être corrigés dans les deux sens, donc les X et Y négatifs aussi bien que les X et Y positifs.
P.ex.: si je veux corriger les X et Y de 2.2846mm, alors X38.7846 devient X36.5000 et X-38.7846 devient x-36.5000; idem pour les Y.
Ce qui complique les choses un peu plus encore!
 
Dernière édition:
Bonjour,
En P2 vous remplacez "X-" par "X" ::
VB:
=SI(O2="";"";SIERREUR(1+CHERCHE("X";O2);""))
En T2 vous remplacez "Y-" par "Y" ::
VB:
=SI(O2="";"";SIERREUR(1+CHERCHE("Y";O2);""))
Mais ça fera le même logique que pour Z à savoir :
10 passera -34 à -44 et -10 passera -34 à -24.
 
Bonjour,
si j'applique cette modification les valeurs X et Y positives sont augmentées de la valeur de correction et non pas diminuées.
Les valeurs négatives sont toujours calculées correctement.
Bien à vous
Aloha
 

Pièces jointes

  • Correction.PNG
    Correction.PNG
    43.1 KB · Affichages: 14
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour