Edycja postprocesora Fusion

wymiana narzędzia

Dyskusje na temat post procesorów.

Autor tematu
maniek0019
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 4
Posty: 18
Rejestracja: 27 maja 2015, 22:44
Lokalizacja: Dębica

Edycja postprocesora Fusion

#1

Post napisał: maniek0019 » 28 maja 2020, 00:19

Witam.
Mam problem odnośnie wymiany narzędzia na magazynie na Heidenhain 415, standardowa wymiana wygląda tak :

TOOL CALL 1 Z S1000(wywołanie narzędzia)
L M6(pobranie narzędzia z magazynu)

standardowy post z Fusiona (HH 407) nie posiada w swojej strukturze M6 i program wygląda tak:

TOOL CALL 1 Z S1000(wywołanie narzędzia)
L M3(włączenie obrotów)

Brakuje pobrania narzędzia M6,

Będę wdzięczny za pomoc w znalezieniu odpowiedniego parametru do zmiany




Autor tematu
maniek0019
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 4
Posty: 18
Rejestracja: 27 maja 2015, 22:44
Lokalizacja: Dębica

Re: Edycja postprocesora Fusion

#2

Post napisał: maniek0019 » 28 maja 2020, 06:29

Zapomniałem,

podsyłam plik postprocesora którego się tyczy sprawa.
Załączniki
heidenhain 407.rar
(9.67 KiB) Pobrany 277 razy


capt.d.
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 1
Posty: 421
Rejestracja: 25 lut 2016, 19:23
Lokalizacja: Tarnowskie Góry

Re: Edycja postprocesora Fusion

#3

Post napisał: capt.d. » 28 maja 2020, 15:41

Aloha

W linii 677 wpisałbym onCommand(COMMAND_LOAD_TOOL);
W linii 1302 usunąłbym "//".

Jestem ciekaw czy zadziała, proszę o informację.

Pozdrawiam.
Live long and prosper.


Steryd
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 4718
Rejestracja: 13 lut 2017, 19:34
Lokalizacja: Szczecin

Re: Edycja postprocesora Fusion

#4

Post napisał: Steryd » 28 maja 2020, 16:50

jak nie zadziała , to wpisz

Kod: Zaznacz cały

writeBlock(
      "L " +"M6" 
    );
    
po sekwencji:

Kod: Zaznacz cały

writeBlock(
      "TOOL CALL " + tool.number + SP + getSpindleAxisLetter(machineConfiguration.getSpindleAxis()) + conditional(!isProbeOperation(), " S" + rpmFormat.format(spindleSpeed))
    );
    if (tool.comment) {
      writeComment(tool.comment);
    }
Można?
Morzna!!!


Autor tematu
maniek0019
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 4
Posty: 18
Rejestracja: 27 maja 2015, 22:44
Lokalizacja: Dębica

Re: Edycja postprocesora Fusion

#5

Post napisał: maniek0019 » 30 cze 2020, 00:09

capt.d. pisze:
28 maja 2020, 15:41
Aloha

W linii 677 wpisałbym onCommand(COMMAND_LOAD_TOOL);
W linii 1302 usunąłbym "//".

Jestem ciekaw czy zadziała, proszę o informację.

Pozdrawiam.
Przepraszam że dopiero po miesiącu się za to zabrałem, ale trochę miałem na głowie.... mniejsza,


Bardzo dziękuję za odzew !!

Po Twoich zmianach coś takiego :

===
Error: Failed to evaluate post configuration.
Code page changed to '1250 (ANSI - Europa Úšrodkowa)'
Start time: Monday, June 29, 2020 9:50:35 PM

###############################################################################
Error: SyntaxError: missing } after property list
Error at line: 1302
Failed while processing global script.
###############################################################################
====

Dodane 12 minuty 52 sekundy:
Steryd pisze:
28 maja 2020, 16:50
jak nie zadziała , to wpisz

Kod: Zaznacz cały

writeBlock(
      "L " +"M6" 
    );
    
po sekwencji:

Kod: Zaznacz cały

writeBlock(
      "TOOL CALL " + tool.number + SP + getSpindleAxisLetter(machineConfiguration.getSpindleAxis()) + conditional(!isProbeOperation(), " S" + rpmFormat.format(spindleSpeed))
    );
    if (tool.comment) {
      writeComment(tool.comment);
    }

Te zmiany zadziałały :)
Dzięki wielkie chłopaki za zainteresowanie i pomoc,

ale żeby kod NC był doszlifowany pod moją maszynkę potrzebuję jeszcze coś zmienic,
oto kod z Fusiona po modach aktualny :

0 BEGIN PGM 1001 MM
1 BLK FORM 0.1 Z X+0 Y-53.337 Z-21
2 BLK FORM 0.2 X+89.141 Y+0 Z+0
3 ; -------------------------------------
4 ; Tools
5 ; #1 D=50 - ZMIN=-1 - ZMAX=+15 - face mill
6 ; -------------------------------------
7 ;
8 L Z+0 R0 FMAX M91
9 M5
10 TOOL CALL 1 Z S955
11 L M6
12 M3
13 L X+121.641 Y-51.043 R0 FMAX
14 L Z+15 R0 FMAX
15 M8
16 L Z+5 FMAX
17 L Z+4 F460
18 CC X+116.641 Z+4
19 C X+116.641 Z-1 DR+
...
26 C X+94.141 Z+4 DR-
27 L Z+15 FMAX
28 M9
29 M5
30 L Z+0 R0 FMAX M91
31 M30
32 END PGM 1001 MM

Nie potrzebuję wogóle lini nr 8; 9; 28 ; 29; a w miejsce lini 30 wolałbym Z+50 FMAX M5

Bardzo proszę o pomoc, będę zobowiązany :)


Steryd
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 4718
Rejestracja: 13 lut 2017, 19:34
Lokalizacja: Szczecin

Re: Edycja postprocesora Fusion

#6

Post napisał: Steryd » 30 cze 2020, 12:26

Co do linijek 8 i 9 to znajdź taką sekwencję:

Kod: Zaznacz cały

  if (insertToolCall || newWorkOffset || newWorkPlane) {

    // retract to safe plane
    writeRetract(Z);
  }
  
  if (hasParameter("operation-comment")) {
    var comment = getParameter("operation-comment");
    if (comment) {
      writeStructureComment(comment);
    }
  }

  if (properties.showNotes && hasParameter("notes")) {
    var notes = getParameter("notes");
    if (notes) {
      var lines = String(notes).split("\n");
      var r1 = new RegExp("^[\\s]+", "g");
      var r2 = new RegExp("[\\s]+$", "g");
      for (line in lines) {
        var comment = lines[line].replace(r1, "").replace(r2, "");
        if (comment) {
          writeComment(comment);
        }
      }
    }
  }
  
  if (insertToolCall) {
    forceWorkPlane();
  
    onCommand(COMMAND_STOP_SPINDLE);

i wstaw podwójny ukośnik (//) przed writeRetract(Z) i przed onCommand(COMMAND_STOP_SPINDLE)

Tylko, czy na pewno chcesz usunąć odjazd przed wymianą narzędzia?

Reszta jest na końcu.
po tekście

Kod: Zaznacz cały

function onClose() {
wstawiasz // przed:
setCoolant(COOLANT_OFF)
onCommand(COMMAND_STOP_SPINDLE);
writeRetract(Z);

pod tym ostatnim dopisujesz

Kod: Zaznacz cały

writeBlock("L " + "Z+50 " + " R0 FMAX " + "M5");
albo

Kod: Zaznacz cały

writeBlock("L " + "IZ+50 " + " R0 FMAX " + "M5"); 
wtedy zawsze pojedzie do góry o 50 niezależnie gdzie będzie.
Można?
Morzna!!!


Autor tematu
maniek0019
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 4
Posty: 18
Rejestracja: 27 maja 2015, 22:44
Lokalizacja: Dębica

Re: Edycja postprocesora Fusion

#7

Post napisał: maniek0019 » 10 lip 2020, 23:00

Super, wszystko działa jak należy,


Niski ukłon w stronę SteryD :)

Awatar użytkownika

abeljames
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 1
Posty: 1
Rejestracja: 13 kwie 2023, 04:01

Re: Edycja postprocesora Fusion

#8

Post napisał: abeljames » 29 maja 2025, 10:35

maniek0019 pisze:
28 maja 2020, 00:19
Witam.
Mam problem odnośnie wymiany narzędzia na magazynie na Heidenhain 415, standardowa wymiana wygląda tak :
TOOL CALL 1 Z S1000(wywołanie narzędzia) Football Bros
L M6(pobranie narzędzia z magazynu)
standardowy post z Fusiona (HH 407) nie posiada w swojej strukturze M6 i program wygląda tak:
TOOL CALL 1 Z S1000(wywołanie narzędzia)
L M3(włączenie obrotów)
Brakuje pobrania narzędzia M6,
Będę wdzięczny za pomoc w znalezieniu odpowiedniego parametru do zmiany
Po wygenerowaniu kodu, dodaj ręcznie linię L M6 po każdej komendzie TOOL CALL:
plaintext
TOOL CALL 1 Z S1000
L M6
L M3
Ale to uciążliwe, więc modyfikacja postprocesora to najlepsza droga.


funiki
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 1
Posty: 1
Rejestracja: 20 paź 2025, 05:06

Re: Edycja postprocesora Fusion

#9

Post napisał: funiki » 20 paź 2025, 05:07

maniek0019 pisze:
28 maja 2020, 00:19
Witam.
Mam problem odnośnie wymiany narzędzia na magazynie na Heidenhain 415, standardowa wymiana wygląda tak :
bloodmoney
TOOL CALL 1 Z S1000(wywołanie narzędzia)
L M6(pobranie narzędzia z magazynu)

standardowy post z Fusiona (HH 407) nie posiada w swojej strukturze M6 i program wygląda tak:

TOOL CALL 1 Z S1000(wywołanie narzędzia)
L M3(włączenie obrotów)

Brakuje pobrania narzędzia M6,

Będę wdzięczny za pomoc w znalezieniu odpowiedniego parametru do zmiany
Aby dodać polecenie pobrania narzędzia M6 do standardowego programu z Fusiona (HH 407), musisz zaktualizować parametry narzędzia w swoim programie, aby uwzględnić instrukcję M6. Sprawdź, czy w ustawieniach postprocesora Fusion 360 istnieje możliwość dodania dodatkowych poleceń do sekcji wymiany narzędzi. Możesz to zrobić, edytując postprocesor lub dodając odpowiednią sekcję w kodzie, aby wprowadzić M6 po TOOL CALL.


willsmith455
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 1
Posty: 2
Rejestracja: 09 mar 2026, 03:01

Re: Edycja postprocesora Fusion

#10

Post napisał: willsmith455 » 09 mar 2026, 03:05

maniek0019 pisze:
10 lip 2020, 23:00
Super, wszystko działa jak należy,

space waves
Niski ukłon w stronę SteryD :)
Interesting discussion. Editing the Fusion 360 postprocessor can definitely solve many machine-specific issues, especially when commands like M6 tool change are missing in the generated NC code. I’ve run into similar situations where small edits in the post file made the program much more compatible with a specific controller. It’s great to see practical solutions like inserting the command after TOOL CALL or adjusting the retract and spindle stop behavior. Threads like this are really helpful for anyone trying to customize their Fusion CAM output for different CNC machines.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Post Procesory”