I believe that I spoke too soon. I still have an error in that the post is calling "M06" at the end of each NCI operation regardless of the whether there is supposed to be a tool change or not. Removing the asterisk from in front of the "t" in the program line got rid of the multile T calls but not the multiple M06 calls.
Also, is it possible to tell the post to output only linear moves, no arcs?
The following is the affected code as it stands, I think.
psof #Start of file for non-zero tool number
pcuttype
toolchng = one
if ntools = one,
[
#skip single tool outputs, stagetool must be on
stagetool = m_one
!next_tool
]
"%", e
*progno, e
"(PROGRAM NAME - ", sprogname, ")", e
"(DATE=DD-MM-YY - ", date, " TIME=HH:MM - ", time, ")", e
pbld, n, *smetric, e
pbld, n, *sgcode, *sgplane, "G40", "G49", "G80", *sgabsinc, e
sav_absinc = absinc
if mi1 <= one, #Work coordinate system
[
absinc = one
pfbld, n, sgabsinc, *sg28ref, e
pfbld, n, *sg28ref, e
pfbld, n, "G92", *xh, *yh, *zh, e
absinc = sav_absinc
]
pcom_moveb
c_mmlt #Multiple tool subprogram call
ptoolcomment
comment
pcan
if stagetool >= zero, pbld, n, t, "M6", e
pindex
if mi1 > one, absinc = zero
pcan1, pbld, n, sgcode, sgabsinc, pwcs, pfxout, pfyout,
pfcout, *speed, *spindle, pgear, strcantext, e
pbld, n, "G43", tlngno, pfzout, scoolant, next_tool, e
absinc = sav_absinc
pcom_movea
toolchng = zero
c_msng #Single tool subprogram call
ptlchg0 #Call from NCI null tool change (tool number repeats)
pcuttype
pcom_moveb
c_mmlt #Multiple tool subprogram call
comment
pcan
pbld, n, sgplane, e
pspindchng
pbld, n, scoolant, e
if mi1 > one & workofs <> prv_workofs,
[
sav_absinc = absinc
absinc = zero
pbld, n, sgabsinc, pwcs, pfxout, pfyout, pfzout, pfcout, e
pe_inc_calc
ps_inc_calc
absinc = sav_absinc
]
if cuttype = zero, ppos_cax_lin
if gcode = one, plinout
else, prapidout
pcom_movea
c_msng #Single tool subprogram call
ptlchg #Tool change
pcuttype
toolchng = one
if mi1 = one, #Work coordinate system
[
pfbld, n, sg28ref, e
pfbld, n, "G92", *xh, *yh, *zh, e
]
pbld, n, "M01", e
pcom_moveb
c_mmlt #Multiple tool subprogram call
ptoolcomment
comment
pcan
pbld, n, t, sm06
pindex
sav_absinc = absinc
if mi1 > one, absinc = zero
pcan1, pbld, n, sgcode, sgabsinc, pwcs, pfxout, pfyout,
pfcout, speed, spindle, pgear, strcantext, e
pbld, n, "G43", tlngno, pfzout, scoolant, next_tool, e
absinc = sav_absinc
pcom_movea
toolchng = zero
c_msng #Single tool subprogram call
pretract #End of tool path, toolchange
sav_absinc = absinc
absinc = one
sav_coolant = coolant
coolant = zero
#cc_pos is reset in the toolchange here
cc_pos = zero
gcode = zero
pcan
pbld, n, sccomp, sm05, psub_end_mny, e
pcan1, pbld, n, sgabsinc, sgcode, sg28ref, scoolant, strcantext, e
pbld, n, sg28ref, protretinc, e
pcan2
absinc = sav_absinc
coolant = sav_coolant
Last edited by Shadowfaxx; 11-01-2004 at 03:25 PM.
|