Sida 1 av 1

Modifiera Post-processor till CNC? (Java)

Postat: 26 november 2017, 18:04:03
av Glattnos
I Fusion 360(CAD/CAM-program) följer det med olika postprocessorer som genererar G-kod. Jag vill modifiera lite i den för att det ska passa min maskin men behöver lite hjälp för Java är inte mitt område. Det kan bli flera frågor men jag börjar med det som är aktuellt just för tillfället. Jag har kapat ner koden och försökt posta bara den delen som verkar vara aktuell men om det krävs fler kod-bitar för att svara på frågorna så får ni säga till så postar jag fler bitar eller bifogar hela filen(hela koden var för lång för ett inlägg). Det är alltså postprocessorn fanuc.cps som brukar finnas att ladda ner här: http://cam.autodesk.com/posts/ (Dock verkar sidan inte funka just nu).

SÅ TILL FRÅGAN :)

Denna del av postprocessorkoden:

Kod: Markera allt

    writeBlock("T" + toolFormat.format(tool.number), mFormat.format(6));
    if (tool.comment) {
      writeComment(tool.comment);
    }
writeBlock ser ut såhär:

Kod: Markera allt

function writeBlock() {
  if (properties.showSequenceNumbers) {
    if (optionalSection) {
      var text = formatWords(arguments);
      if (text) {
        writeWords("/", "N" + sequenceNumber, text);
      }
    } else {
      writeWords2("N" + sequenceNumber, arguments);
    }
    sequenceNumber += properties.sequenceNumberIncrement;
  } else {
    if (optionalSection) {
      writeWords2("/", arguments);
    } else {
      writeWords(arguments);
    }
  }
}
Genererar detta i G-koden:

Kod: Markera allt

T9 M06
(6MMALU45CHAMFER)
Jag skulle vilja ha kommentaren på samma rad, såhär:

Kod: Markera allt

T9 M06 (6MMALU45CHAMFER)
Hur jag än klipper och klistrar så hamnar den antingen ovanför eller under "T9 M06". Går det att fixa?

Re: Modifiera Post-processor till CNC? (Java)

Postat: 26 november 2017, 18:18:36
av säter
Usch, är det JAWA och skit inblandat i postprocessorerna nuförtiden?

Re: Modifiera Post-processor till CNC? (Java)

Postat: 26 november 2017, 19:07:41
av sodjan
"writeBlock" och "writeComment" verkar ju vara två helt skilda funktioner.
De förutsätter sannolikt båda två att de ska skriva en komplett rad. Jag
gissar att det som "writeComment" gör behöver lyftas in i "writeBlock".

Eller att det data som "writeComment" ska skriva ut, skickas med som
en parameter till "writeBlock" så att kommentaren kan skrivas tillsammans
med det övriga.

Re: Modifiera Post-processor till CNC? (Java)

Postat: 26 november 2017, 19:10:54
av hawkan
Uschianamej som farmor sa. Tror dock inte det är lösningen här.

Testa om detta funkar, du vill nog att kommentaren skrivs ut av writeBlock

Kod: Markera allt

  writeBlock("T" + toolFormat.format(tool.number), mFormat.format(6), tool.comment);

Re: Modifiera Post-processor till CNC? (Java)

Postat: 26 november 2017, 19:27:36
av Glattnos
Tackar hawkan! Det fungerade men parenteserna kom inte med, dock lyckades jag få dit dom själv, om det blev rätt vet jag inte, men detta:

Kod: Markera allt

writeBlock("T" + toolFormat.format(tool.number), mFormat.format(6), "(", tool.comment, ")");
Gav detta:

Kod: Markera allt

T2 M06 ( 12mm Alu Endmill )
Hoppas att det funkar i maskinen, ska prova nu :)

Re: Modifiera Post-processor till CNC? (Java)

Postat: 27 november 2017, 01:04:40
av sodjan
Ja, precis så som jag menade alltså... :-) Bra att det verkade fungera.

Re: Modifiera Post-processor till CNC? (Java)

Postat: 27 november 2017, 14:00:09
av Glattnos
Sodjan: Aha, ja jag ser det nu, är rädd för att jag inte förstod exakt hur jag skulle göra innan hawkan skrev nått som gick igenom syntaktiskt(det var ju lite enklare än jag trodde, jag provade många krångligare varianter som oftast inte gick igenom). Tackar för hjälpen :)

Och det fungerade perfekt i maskinen! Själva vitsen med att T6 och kommentaren kommer på samma rad är att då får jag kommentaren(som talar om vilket verktyg jag ska sätta in) på skärmen när maskinen pausar på T6. Jag har ändrat lite fler saker också men till min förvåning har jag faktiskt kunnat lösa dessa själv hittills :)