Strona 1 z 1

Edycja postprocesora Fusion

: 28 maja 2020, 00:19
autor: maniek0019
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

Re: Edycja postprocesora Fusion

: 28 maja 2020, 06:29
autor: maniek0019
Zapomniałem,

podsyłam plik postprocesora którego się tyczy sprawa.

Re: Edycja postprocesora Fusion

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

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

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

Pozdrawiam.

Re: Edycja postprocesora Fusion

: 28 maja 2020, 16:50
autor: Steryd
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);
    }

Re: Edycja postprocesora Fusion

: 30 cze 2020, 00:09
autor: maniek0019
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 :)

Re: Edycja postprocesora Fusion

: 30 cze 2020, 12:26
autor: Steryd
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.

Re: Edycja postprocesora Fusion

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


Niski ukłon w stronę SteryD :)