G3 Selca S3045

Sezione dedicata al Cad/Cam.
Subforum:
Artcam
Rispondi
Avatar utente
darkgt1983
Member
Member
Messaggi: 494
Iscritto il: giovedì 23 ottobre 2014, 14:40
Località: latina

Re: G3 Selca S3045

Messaggio da darkgt1983 » sabato 10 settembre 2016, 11:29

Prova a farlo senza compensazione potrebbe essere quella che gli dà fastidio
solidcam e solidworks fino ad ora non esiste di meglio per me.

farotol
Junior
Junior
Messaggi: 51
Iscritto il: martedì 9 settembre 2014, 14:59
Località: Perano

Re: G3 Selca S3045

Messaggio da farotol » sabato 10 settembre 2016, 12:16

ho preso il manuale della macchina è ho capito l'inghippo

grate a te ho capito anche come editare il post process e credo di aver corretto l'errore cosi per adesso funziona!

Codice: Seleziona tutto

function onLinear(_x, _y, _z, feed) {
  var x = xOutput.format(_x);
  var y = yOutput.format(_y);
  var z = zOutput.format(_z);
  var f = feedOutput.format(feed);
  if (x || y || z) {
    if (pendingRadiusCompensation >= 0) {
      pendingRadiusCompensation = -1;
      var d = tool.diameterOffset;
      if (d > 9999) {
        warning(localize("The diameter offset exceeds the maximum value."));
      }
      writeBlock(gPlaneModal.format(17));
      switch (radiusCompensation) {
      case RADIUS_COMPENSATION_LEFT:
        //writeBlock(gFormat.format(49), "K" + dFormat.format(d));
        writeBlock(gFormat.format(49), "I" + (d));
        writeBlock(gFormat.format(41), "K2");
        writeBlock(gMotionModal.format(1), x, y, z, f);
        break;
      case RADIUS_COMPENSATION_RIGHT:
        //writeBlock(gFormat.format(49), "K" + dFormat.format(d));
        writeBlock(gFormat.format(49), "I" + (d));
        writeBlock(gFormat.format(42), "K");
        writeBlock(gMotionModal.format(1), x, y, z, f);
        break;
      default:
        writeBlock(gFormat.format(40), "K2");
        writeBlock(gMotionModal.format(1), x, y, z, f);
      }
    } else {
      writeBlock(gMotionModal.format(1), x, y, z, f);
    }
  } else if (f) {
    if (getNextRecord().isMotion()) { // try not to output feed without motion
      feedOutput.reset(); // force feed on next line
    } else {
      writeBlock(gMotionModal.format(1), f);
    }
  }
}
Non hai i permessi necessari per visualizzare i file e le foto allegati in questo messaggio. Per visualizzare tali file devi registrarti ed effettuare il Login

Avatar utente
darkgt1983
Member
Member
Messaggi: 494
Iscritto il: giovedì 23 ottobre 2014, 14:40
Località: latina

Re: G3 Selca S3045

Messaggio da darkgt1983 » sabato 10 settembre 2016, 13:03

Meglio così almeno tu impratichisci sulle modifiche personalizzate sul selca che penso userai per lavoro, ciao e buon lavoro
solidcam e solidworks fino ad ora non esiste di meglio per me.

farotol
Junior
Junior
Messaggi: 51
Iscritto il: martedì 9 settembre 2014, 14:59
Località: Perano

Re: G3 Selca S3045

Messaggio da farotol » giovedì 15 settembre 2016, 18:46

Rieccomi!
sono andato avanti con altre modifiche al Post Process Selca S3045, ma adesso mi sono bloccato al ciclo di foratura "G81" in cui mancava la "Q" ma l'ho aggiunta, solo che il parametro che il valore non è quello corretto! a me serve l'altezza "Retract Height"
allego anche il Post Process con le mie ultime rev.

Codice: Seleziona tutto

[ 1001
[ T1  D=10. CR=0. TAPER=118DEG - ZMIN=-1. - CENTER DRILL
G90
G94
G17
G62 K1
G71
[ DRILL11
M9
G0 Z150 M5
T1 M6
G97 S2000 M3
O1
M8
G0 X32.5 Y88.
G0 Z65. H1
G0 Z30.
G81 X32.5 Y88. Z-1. J1. Q1. F120.
Y53.
X37.5 Y25.
X127.5
X217.5
X307.5
X312.5 Y53.
Y117.
G80
G0 Z65.
M9
M30
Non hai i permessi necessari per visualizzare i file e le foto allegati in questo messaggio. Per visualizzare tali file devi registrarti ed effettuare il Login

farotol
Junior
Junior
Messaggi: 51
Iscritto il: martedì 9 settembre 2014, 14:59
Località: Perano

Re: G3 Selca S3045

Messaggio da farotol » venerdì 16 settembre 2016, 8:57

Ha mente fresca ho riletto le prove che ho fatto alle modifiche del Post Process ed ho notato una parentesi di troppo,
per adesso funziona.
le modifiche sono queste:

Codice: Seleziona tutto

function getCommonCycle(x, y, z, r, q) {
  forceXYZ();
  return [xOutput.format(x), yOutput.format(y),
    zOutput.format(z),
    "J" + xyzFormat.format(r),
    "Q" + xyzFormat.format(q)];
}

function onCyclePoint(x, y, z) {
  if (isFirstCyclePoint()) {
    repositionToCycleClearance(cycle, x, y, z);
    
    // return to initial Z which is clearance plane and set absolute mode
    writeBlock(gAbsIncModal.format(90));

    var F = cycle.feedrate;
    var K = (cycle.dwell == 0) ? 0 : clamp(0.001, cycle.dwell * 10, 99999.999);

    switch (cycleType) {
    case "drilling":
      writeBlock(
        gCycleModal.format(81),
        getCommonCycle(x, y, z, cycle.retract, cycle.clearance),
        feedOutput.format(F)
      );
      break;
    case "counter-boring":
      writeBlock(
        gCycleModal.format(81),
        getCommonCycle(x, y, z, cycle.retract),
        conditional(K > 0, "K" + kFormat.format(K)), // optional
        feedOutput.format(F)
      );
      break;
/*
    case "chip-breaking":
      // cycle.accumulatedDepth is ignored
      if (K > 0) {
        expandCyclePoint(x, y, z);
      } else {
        writeBlock(
          gCycleModal.format(73),
          getCommonCycle(x, y, z, cycle.retract),
          "Q" + xyzFormat.format(cycle.incrementalDepth),
          feedOutput.format(F)
        );
      }
      break;

Rispondi

Torna a “Cad/Cam”