0% found this document useful (0 votes)
1K views19 pages

Citizen Mcode

The document provides information on various M-codes used on Mitsubishi CNC machines. It notes that up to 4 M-codes can be commanded in a single block to save time. Certain M-codes like M6, M7, M10 are macros that need to be alone on a line. The codes are also different between the K16F and K16EVII control systems. M-codes like M00, M01, M02 provide program stopping functions while M03, M04 control spindle rotation and M05 stops the spindle. M06 and M07 are used for collet open/close. M08 shifts bar loader control and M09 cancels it. M108 is used for bar

Uploaded by

devin
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views19 pages

Citizen Mcode

The document provides information on various M-codes used on Mitsubishi CNC machines. It notes that up to 4 M-codes can be commanded in a single block to save time. Certain M-codes like M6, M7, M10 are macros that need to be alone on a line. The codes are also different between the K16F and K16EVII control systems. M-codes like M00, M01, M02 provide program stopping functions while M03, M04 control spindle rotation and M05 stops the spindle. M06 and M07 are used for collet open/close. M08 shifts bar loader control and M09 cancels it. M108 is used for bar

Uploaded by

devin
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

M-codes

Note: Up to 4 M-codes can be commanded in a single block. It saves time


to
command as many M-codes as possible in the same block. Some M-codes
are macros and need to be alone on a single line. See (macro) below.
Also the K16E-VII has a diff code base from the K16VII(Fanuc) .
Please
make note.

The following codes are different.

K16F K16EVII

G650 M1 G650 (M1 not used)


M12
M32 M320
M84-85 M86-87
M90-91 M92-93
M241 M140-141
M176/177
M380-381-382 M180-181-182
M350-351
M360-361
M204-205
G25/G26 M94/M95
G25/G26 M96/M97
G66 G114.2
G899 no code / now done by prep buttons
T ARGUMENTS ARE DIFFERENT

M00- Program stop. Force the program to stop. Press Cycle start and the
program
M0- starts again.

M01- Optional stop


M1- If the OPTIONAL STOP button is on the executing line $1 or $2 will
stop until the CYCLE START button is pressed again, then operation in
that line starts running again. If the OPTIONAL STOP button is not on
the M01 command is skipped.

M02- (macro) One cycle stop


M2- M2 will queue lines $1-$2 then stop execution of the program if in
ONE CYCLE MODE. This also sets like G600 when completed.

M03-
M3- Main spindle forward rotation "M3 S1=1000" If commanded wrong "M3
S1000"
without "S1=" then the main spindle is commanded by default.
10000 RPM max 200 RPM min
M04-
M4- Main spindle reverse rotation "M4 S1=500"

M05-
M5- Main spindle stop

M06-
M6- (macro) Collet close (main spindle). Use it alone on the line
because it is a macro!

M6M3(M3 won't work)


M3M6(Will work but as a habit, use M6 alone.)

M07-
M7- (macro) Collet open (main spindle). Use it alone on the line!

M7M5(M5 won't work)


M5M7(Will work but as a habit, use M7 alone.)

M08-
M8- Short cut program. Used when using a bar loader. M8 shifts control
of the BLOCK DELETE button to the bar loader end of bar switch. This
lets one section of a program, or a sub-program, run only if the end
of
bar switch on the bar feeder is tripped.

Main Program

M9(beginning- safety)
"
" O8000(BAR CHANGE SUB)
G1X-.1F.002(CUT-OFF) M3S1=300M53
M8 G0 X#814+#815 W-2.(Z OUT OF GB/X ABOVE
STOCK)(or X.85)
M8(CONFIRM M8) M54(STOP BAR PUSH)
/M98P8000(if EOB) M7
M9 M55(START LOAD/WAIT UNTIL DONE)
M6
M3S1=#817(or S1=any RPM)
(M26) (ONLY IF HEX OR SHAPED STOCK)
G99G1W2.F.01
M52
X#824F#822(or X=-.1 F=.002)
M99

Note: I used custom variables to have one program do all!

M108-(macro)
This has the same function as the B12 series machines
Used when using a bar loader. If the loader sends a signal that the
bar is done then the remnant is de-burred, pulled out, and a new bar
is loaded. If the bar is still there then M108 is skipped. The RPM
and IPR are taken from the Mach Data for the cut-off opperation.
M108 U.04 C.005 D.04 B.23 S1000 W1.5 F.02 A1. R1 K1 M1 T

-CDB are used only if de-burring the remnant before removing from
GB.

U.04 = Amount above the stock size from the data page, to position
before changing bars (diam value)
C.005 = Feed in IPR(mm/rev) for de-burring.
D.04 = Z axis movement for de-burring.
B.23 = X axis position to go to for de-burring.
S1000 = Spindle speed used while pulling out remnant.
W1.5 = Z axis amount of pull back from GB to remove remnant.
F.02 = Feed in IPR(mm/rev) for pulling out of GB.
A1. = Dwell after bar load before closing collet.
R1 = R1 or R0 If R1 then spindle runs during bar change.
K1 = Use K1 to keep the coolant on ommit to tuen coolant off
M1 = Use M1 to perform phasing for the GB and spindle
T1 = Dwell time in seconds to allow the coolant to come on. If
omitted 3 seconds is used.

-If any or all options are omitted then default values are used.
If all defaults are OK, you can use M108U W S F R1 alone on the
line.

O1234(MAIN PROGRAM)
M9
G99/M52
M6
G4U.5(SOME BARLOADERS)
G50Z-.005
""
""
T100(CUT-OFF)
G50W-.094
M3S1=3500M24S2=3500
G0Z.5T1
G650
!1!2L650
G231X-.1A-.03F.001
G50W.094
(STILL NEEDS TO BE TESTED BUT SHOULD NOT NEED M8 M8 / )
(M8)
(M8)
(/)M108 S200 W1.5 F.02 A1 R1 T1(S = less than 2000)
M9
M7
G4U.5(SOME BARLOADERS)
G0X-.05Z-.005T0
G999
(M6)(SOME BARLOADERS WANT THE COLLET CLOSED/NO DWELL IS NEEDED HERE)
N999
M56
M2
or

This style of code is from the manual and will also work but the
'M8 M8 / ' is not needed.

M8
M8
/M108 S200 W1.5 F.02 A1 R1 T1(S = less than 2000)
M9

M09-
M9- Cancels M8. Returns control of the BLOCK DELETE to the BLOCK DELETE
button. If using M8 then put a M9 at the beginning of your program as
a safety command if starting the program after a problem bar change.

M10-(macro) Moves the knock-out rod forward to eject the part from the
back
spindle. If the back spindle is running or the collet is closed M10
won't work. M10 moves an air cylinder to performe the knock out.

M11-Moves knock-out rod reverse. Back in!

M12-RGB(Rotary Guide Bushing) Torsion correction on. If running hex or


odd
shaped stock, the stock can have a twist. When the spindle and GB are
alligned and running and the twist is encountered, S1 and S9 can
fight
and make errors even at M5. So we can use M12 to adjust the sync and
relax the 2 spindles sync. Use M12 when the spindle is running and at
a satable speed. Maybe you need a dwell to confirm the spindle speed
before M12.

M3S1=3500
T300
G4U.5
M12
(rest of program)

M15-Back spindle collet close.

M16-(macro) Back spindle collet open. If in spindle sync and the spindle
speed
is still changing, the M16 will wait for the spindles to reach speed
before
opening.

M18-(macro) (only with "C" axis option) References the "C" axis and goes
to
position specified. Only used if simple indexing in 1 deg increments
and
to enable the axis.

(M5 -is not needed)


M18 C0
G1 XYZ
M18 C180.(M18 issued a G0 C180. internally)
XYZ

-If we want to use "C" axis and rotate it then


M18 C0
G98G1C150.F1000. (feed=DPM -Deg Per min)
C180.Z1.1 (feed DPM)
Z1.3F10. (feed IPM)
H120.F1000.(incremental Feed=DPM)

M20-C-Axis off. But not needed as M3/M4/M5 will turn off C-Axis also.

M23-Back spindle forward rotation "M23 S2=1000" 8000 RPM max


min 200

M24-Back spindle reverse rotation "M24 S2=500"

M25-Back spindle stop

M26-G/B phase adjustment. Used in the sub program when using a bar loader
with hex or odd shape stock. M26 will line up the spindle and the GB
so when the stock is pushed into the GB it is lined up properly.
See M8. "Phasing" in preperation is used with the hex chuck sleeve to
set the
GB zero position with the spindle 0 position. The hex chuck sleeve is
an
option.

M28-(macro) (non "C" axis machine only) Spindle indexing.

1 degree increments only. Only absolute commands.


M28 S15
M28 S0
M28 S180

Incremental example... 24 indexes in a loop saves many program lines!

#100=0 (SET VARIABLE TO 0)


WHILE [#100 NE 360] DO1 (MACRO LOOP)
G0 X Z (dummy move or you get macro alarm)
M28 S#100 (INDEX DIFF. EACH TIME)
G1 X.3 F6. (FEED TOOL INTO PART)
G0 X.7 (RAPID OUT)
#100=#100+15 (INCREMENT VARIABLE BY 15 DEG)
END1 (LOOPS TO WHILE, UNTIL #100 IS NOT EQUAL TO 360)
(#100 = 0,15,30,45,60,75,90,105,120,135,150,165)
(180,195,210,225,240,255,270,285,300,315,330,345)

See the white Mitsubishi programming manual for more details on


WHILE DO1 END1 in the macro section.

M31-Work conveyor on.(option) If needed the timer setting is PLC conts


timer
#18016 and can be changed if desired.

M320-(macro) Parts catcher command. Used when the parts catcher is


attached
to the sub spindle and the sub spindle is not used. To use this
command
you need to have Machining Data set to "Catcher". Also we have to be
in
G600 mode. Use M320 in $1 only. At this time M320 does not work while
in
G610 so if using M320, you must use G600 mode.

M320 X.2 W0 U24.881 Z5.708 R1 F708.

M320 -nothing else on line then catcher move up to catch part with
default positions. This usually works fine.

X.2 -When X1 gets to .2 then bring the catcher up. Less chips
in the catcher.
W -After the part is caught then the catcher moves back to Z0
or the amount of W from Z0. Used if Parts per 1/chucking is
used to save time. Normally not used.
U -Used to change the position of X2 . 24.881 positions the
catcher into a standard position. Normally don't use.
Z -Used to change the position of Z2 . 5.708 positions to the
GB.
Normally don't use.
R -"1" or "0" If "1" then Z2 positions back a little to
accommodate
for a left hand cut-off tool. You could use Z instead of R.
Normally not used.
F -Feed rate for the Z2 axis. Usually rapid so don't use.

$1 $2
(No T3?00 in $2 or $1 M34 won't work)
G600 G600
"
T0200(ANY GANG TOOL)
M34(dump part/ see M34)
"
T0100(CUT-OFF)
G50W-.094
G0X1.1Z1.T01
(if chamfer put here)
M320X.2 (catch part when X=.2)
G1X-.1F.002
M141(MOVE Z2 BACK)
G50W.094
G600 G600
G50Z0

M33-(macro) Parts ejection from sub spindle without knock-out. This


similar
to M34 but doesn't dump the part into the tray. This is left for you
to
do your own unique way. M33 will move Z2 to home position then to the
parts eject position. Now you can program how you want the part to
eject.
M33 can only be commanded from $2. The only reason to use M33 is to
save
cycle time, or to have a special ejection routine.

M33 W0 D708. U.156 E708.

M33 -Nothing else on the line then move as explained above.


W -After the part is caught then the catcher moves back to Z0.
or the amount of W from Z0. Normally not used.
D -Feed rate for Z2 to move away from GB.
U -Used to change the position of X2 at the dump position of
"0.0" . Normally don't use.
E -Feed rate for X2 to move to the dump position.

$2
M33 (position to dump)
G0Z1.279(33mm move into parts
chute)
M16(open PO chuck)
M10(knock out)
G4U.2(confirm M10)
Z0M11

M34-(macro) Series of commands needed for parts ejection from the P.O.
spindle all in one command. Collet open, parts catcher in/out, knock
out
forward, air ect. This can be commanded from $1 or $2 but has two
very
different functions. If M34 in $1 then dump the part from the catcher
mounted on the sub spindle. If M34 from $2 then eject the part from
the
sub spindle into the parts box. There are many command options that
can
be used but usually just "M34" is all you need. See the different
command options below.

If M34 from $1 and the part is in the catcher basket by using M320 then
...
You must be in G821 mode. See M32. Also there can't be any "T3?00" in
the $2 program or M34 will function like in $2 and try to knock out a
part.

M34 W D U E Z F T S B X

M34 -nothing else on line then catcher moves away and dumps the part.

W -After the part is caught then the catcher moves back to Z0


or the amount of W from Z0. Used if Parts per 1/chucking is
used to save time. Normally not used.
D -Feed rate for Z2 to move away from GB. IPM
U -Used to change the position of X2 at the dump position of
"0.0" . Normally don't use.
E -Feed rate for X2 to move to the dump position. IPM
Z -Move to Z position inside collection box.
F -Feed rate when moving into position inside collection box.
IPM
T -Timer for rotation while back spindle is dumping the part.
2.0
S -Spindle speed while dumping the part. RPM 30
B -When finished move Z2 to amount B from Z0.
X -X pos. to go to when finished. If not used then X2 goes to
the
Main Spindle Center. Normaly not used.

If M34 from $2 and part is in the sub spindle then ...


M34 W D U E Z F B T X

M34 -nothing else on line then catcher moves away and ejects the
part.

W -After the part is caught then the catcher moves back to Z0


or the amount of W from Z0. Normally not used.
D -Feed rate for Z2 to move away from GB. IPM
U -Used to change the position of X2 at the dump position of
"0.0" . Normally don't use.
E -Feed rate for X2 to move to the dump position. IPM
Z -Move to Z position inside collection box. Z1.28 if omited.
F -Feed rate when moving into position inside collection box.
IPM
B -When finished move Z2 to amount B from Z0.
T -Timer for air blow after part is ejected. 1.0 if omited.
X -X pos. to go to when finished. If not used then X2 goes to
the
Main Spindle Center. Normaly not used.

M38-(CAV)Bar loader synchronization on and torque off. Only used with


special Citizen CAV bar loader. This will make the barfeed pusher
axis A7, mirror Z1. We don't have to use this command, it is
used internally in the M6-M7 commands.

M39-(CAV)Bar loader synchronization off and torque on. See M38.


This will now hold position. We don't have to use this command, it
is used internally in the M6-M7 commands.

M43-CAV barloader tip detection flag reset.

M46-CAV barloader torque set to 0%

M47-CAV bar end detector enabled (flipped up)

M48-(macro) Back spindle "C" axis on. (only with "C2" axis option)
References
the "C" axis on the PO spindle and goes to position specified. Only
used
if simple indexing in 1 deg increments and to enable the axis.

M48 C0
G1 XYZ
M48 C180.(M48 issued a G0 C?? internally)
XYZ

-If we want to use "C" axis and rotate it then


M48 C0
G98G1C150.F1000.(feed=deg per min)
H120.(incremental)

M50-Check cut-off tool breakage by spindle RPM. You command the main
spindle
and then use M50. M50 will check if S2 is turning, if so then alarm.
If
you don't have spindle sync. then you need to free wheel the sub
spindle
or you get alarms just turning the spindles off.

(with spindle sync.)


$1 $2

T0100 T3000
G0Z2.T1 G50Z0
M3S1=300M24S2=300
G114.1H1D-2
G650 G650Z-.1
!L1 G98G1Z.5F50.
S1=3500 M77
G1X-.1 M15
M5M25 !L1
G113 G600
M3S1=100 G50Z0
G4U1.
M50(IF S2 IS TURNING THEN CUT-OFF IS BROKE! ALARM)
(ELSE IF S2 NOT TURNING THEN OK, SKIP OVER M50)
G600
M5

(without spindle sync.)


$1 $2

T0100 T3000
G0Z2.T1
G650 G650Z-.1
!L1 G98G1Z.5F50.
M3S1=100 M15
G4U.7 !L1
M3S1=500 600
G4U.7 G50Z0
M3S1=1000
G4U.7
M3S1=1500
G4U.7
M3S1=2000
"
"
G1X-.1F.001(CUT-OFF PART)
M5M25
G4U2.
M3S1=300
G4U.5
M50(IF S2 IS TURNING THEN CUT-OFF IS BROKE! ALARM)
(ELSE IF S2 NOT TURNING THEN OK, SKIP OVER M50)
G600
M5

M51-(option) Tool breakage detection, by using a switch. After cut-off


move Z back a little then position over the switch. This will check
if the part is gone. If not then Alarm.

M51 X.3 Z-.2

X= The X position to move to after the switch is positioned above


the bar stock. If no X is commanded then X-.04(1mm) is used.
Z= The INCREMENTAL amount to move so the switch contacts the proper
spot of the part and away from the cut-off tool. If no Z is used
then Z stays where it is for the check.

$1
G50Z-.005
M6
M51 Z-.02 X.3

T200 (continue on)

M52-Coolant oil ON

M53-Coolant oil OFF

M54-Bar loader feeding pressure stop -BAR LOADER ONLY

M55-Bar loader material replace -Tells bar loader to load a new bar.
Then waits until the new bar is in position. See M8.

M56-Counter- Increments parts counter by one if in CONTINUOUS CYCLE MODE


This can be changed to any CYCLE MODE by changing Bit Select #1 bit 2
to a 1 . #6401 bit 2.

M57-Cycle stop while in a sub program. Same as M2 but used in a sub. If


running multiple parts with one chucking, one cycle would be multiple
parts. Use M57 only in the sub.

(M58-) no longer supported See M80


(M59-) no longer supported See M81

(M60-) no longer supported See M82

M61-
M62-
M63- EXTRA M-CODES FOR SPECIAL CUSTOMER USE
M64-
M65-
B1- B1 to B256 are also available if using a PLC to read the signals.
With M61-M65 there are 5 possible functions. B has 256!

M72-Back spindle air blow ON -clears chips from P.O. collet surface.

M73-Back spindle air blow OFF

M77-Used with G114.1/G814 to wait for spindle synch. See G114.1/G814

M78-(macro) (option) Back spindle indexing 1 deg. "M78 S30."


Incremental example... 24 indexes in a loop saves many program lines!

#100=0 (SET VARIABLE TO 0)


WHILE [#100 NE 360] DO1 (MACRO LOOP)
G0 X Z (dummy move or you get macro alarm)
M78 S#100 (INDEX P.O. DIFF. EACH TIME)
G1 X.3 F6. (FEED TOOL INTO PART)
G0 X.7 (RAPID OUT)
#100=#100+15 (INCREMENT VARIABLE BY 15 DEG)
END1 (LOOPS TO WHILE, UNTIL #100 IS NOT EQUAL TO 360)
(#100 = 0,15,30,45,60,75,90,105,120,135,150,165)
(180,195,210,225,240,255,270,285,300,315,330,345)

See the white Mitsubishi programming manual for more details on


WHILE DO1 END1 in the macro section.

M80-Live tool spindle forward. "M80 S3=2000" 5000 RPM max

M81-Live tool spindle reverse.

M82-Live tool spindle off.

M86-Cutting block start interlock ON. Used to save time by not waiting
for Spindle codes completion.

M87-Cutting block start interlock OFF. This will wait for S1 to reach
speed.

M88-Interference checking OFF. Safety zones of all axis are turned off to
work very close to the back spindle collet. (Be careful)
Don't just command in the beginning of your program!

M89-Interferance check enable.


M92-Modal exact program stop. Used so corners are not rounded off while
turning at high feed rates. This gives small dwells to confirm
corners. See also G9

M93-Exact stop cancel. Cancels M92

M94-Back spindle fluctuation detection ON- Checks extra load or


fluctuation
on the spindle. If too great load then alarm. This version is not
programmable.

M95-Back spindle fluctuation detection OFF (When power on is M94)


If you will use G96(CSFM) then you must first command M95. M95 is
also
needed for G84/G32 threading. Any programming that will be changing
spindle speed in it's use will need M95

M96-Main spindle fluctuation detection ON- Checks extra load or


fluctuation
on the spindle. If too great load then alarm. This version is not
programmable.

M97-Main spindle fluctuation detection OFF (When power on is M96)


If you will use G96(CSFM) then you must first command M97. M97 is
also
needed for G84/G32 threading. Any programming that will be changing
spindle speed in it's use will need M97

M98-Sub program call. If commanded "M98 P1111 L5" from line $1 of a main
program then the line $1 of sub program O1111 is looped 5 times.
If "M98 P1111" is in line $2 of a main program then program line $2
of program O1111 is looped only one time. When the sub is finished
M99 returns to the line after the M98 command in the main program.
There is one other option to M98. "M98 H1" This command jumps down
in the programming line you are in to sequence number N1 and returns
when M99 is commanded, to one line after the "M98 H1" command. This
is
special to make the G999-N999 command easier. Search G999- Also if
you
use sub programs a lot, this helps to only have one program number to
upload/download for your file storage system.
-A new argument ,D1 allows to call a sub program stored on a flash
card!

M98 P H L ,D1

P = Sub Program Number to call


H = Line Number in the main program to go to for the sub
L = Loops or number of times to run the sub program. No L = L1
,D1 = Used to enable the flash card to hold the sub program.

O1234(main program) O1111(sub program)


$1 $2 $1 $2

" " (loop 5 times)


M98P1111L5
M98P1111 (loop 1 time)
M99
" " (return to $1) M99
M2 M2 (return to $2)
M99 M99

O1234(main program no sub)

$1 $2
G99M52
M98H1 (goes to line sequence # N1)
(M99 returns to here)

M56
G999 G999(only if in one cycle mode)
M98H1 (goes to line sequence # N1)
N999 (M99 returns to here)
N999
M2
M99 M2
M99(returns to beginning of $2)

N1
T3100 (CODES NEEDED TO COMPLETE THE PART)
T3000
M99(return to line after M98H1)

NEW for the Mits M70 control!!!

M98P1234L3,D1 = ,D1 to run a program stored on an external Compact


Flash Card.

NOTE** The programs can be called and executed ONLY as a


subprogram. They
CANNOT be used as a main programs. You use the CNC edit
mode and the
sub prg is converted to a special format and stored in a
\PRG folder
on the flash card and run from there.

**Do NOT remove the CF card during operation!**

M99-If commanded in sub program then return from sub program to main
program. If commanded in the main program then return to the
beginning.
If using "M98 H1" then return to the line after "M98 H1"
Also:
M99 P100

P= Return to a diff line number in the program that had the M98
call
instead of the line after M98.

M100-(CAV)Barfeed gripper closed


M101-(CAV)Barfeed gripper open
M102-(CAV)Barfeed gripper open quickly(don't wait for confirmation)
M103-(CAV)Barfeed release bar stock and slide channel forward
M104-(CAV)Barfeed slide channel forward
M105-(CAV)Barfeed slide channel back
M106-(CAV)Barfeed stabilizer close
M107-(CAV)Barfeed stabilizer open

M108-

M112-G/B phase storage. Used by system macros. Normally not used.

M120-Back spindle phase storage. Used by system macros. Normally not


used.

M122-Back spindle torque limit 25% ON. Used with G114.1 to help eliminate
marking on the part from diff. spindle power. 75% of the torque of
the back spindle is cut.

M123-Back spindle torque limit 50% ON. Used with G114.1 to help eliminate
marking on the part from diff. spindle power. 50% of the torque of
the back spindle is cut.

M124-Back spindle torque limit OFF. Cancel M88 or M89

M125- Forced reset of NC from within the program.(normally not used)

M127- Recalculation request. Used in macros.(normally not used)

M212- Y1 axis mirror image on. If you have the GSE1110 working on the
front or
face, inside the T1100-1300 call, M212 is used.

M211- Y1 axis mirror image off

If used after a T-call use a dwell or move it a couple lines down.

T1100
G4
M212

M140-(macro) 3 drills on Z2 forward position. This rapids Z2 to a


position
all the way up near the G.B.(Z2=7.0866) M140 only works when you are
in special mode G610 and in line $1. Make shure you have called a
T2?00 tool before M140. The sub spindle will come in!
See G610 for more details.

M140 Z___ W___

M140 Z-?? If you want to change the position the Z2 axis rapids up
to instead of all the way up. The Z2 position is based
off
of the Z1 axis position's currant location.

M140 W-.5 If you want to change the position the Z2 axis rapids up
to instead of all the way up. The Z2 axis moves to the
Z2 machine position less the W value.

M141-(macro) 3 drills on Z2 rear position. This rapids back to Z2 home


position. Must be in line $1.

M141 Z___ W___

M141 Z-?? If you don't want Z2 to go all the way back because you
want to leave it near the G.B. Z-1. = 1" away from part
based off the Z1 axis position's currant location.

M141 W1. If you don't want Z2 to go all the way back because you
want to leave it in near the GB W1. = 1" away from the
Z2 rear position.

M151-(macro) Gang tool post retract. Move the X1 axis to return position.
After commanding M151 the X1 axis cannot be commanded until after
the
next G600 or G800 command.

M160-s1 cUTTING START iNTERLOCK oN -wait for S1 to get to commanded speed


before an axis feeds.
M161-s1 cUTTING START iNTERLOCK oFF -Do Not wait for S1 to get to
commanded
speed before an axis feeds.

M162-s2 cUTTING START iNTERLOCK oN -wait for S2 to get to commanded speed


before an axis feeds.
M163-s2 cUTTING START iNTERLOCK oFF -Do Not wait for S2 to get to
commanded
speed before an axis feeds.

M164-s3 cUTTING START iNTERLOCK oN -wait for S3 to get to commanded speed


before an axis feeds.
M165-s3 cUTTING START iNTERLOCK oFF -Do Not wait for S3 to get to
commanded
speed before an axis feeds.

M168-s5 cUTTING START iNTERLOCK oN -wait for S5 to get to commanded speed


before an axis feeds.
M169-s5 cUTTING START iNTERLOCK oFF -Do Not wait for S5 to get to
commanded
speed before an axis feeds.

M176-Rotary Guide Bushing torque reduction ON. This will set the GB toque
to 0%. This is used if you are getting vibration from the GB motor
holding position servo gain.

M177-Rotary Guide Bushing torque reduction OFF. This will set the GB
toque
to 100% if used M176 above.

M180-Back tool spindle (U153B)forward.


M180S5=2000
5000 RPM max.

M181-Back tool spindle (U153B) reverse.

M182-Back tool spindle off.

M190- C2-C1 superimpose ON. Used to hold parts with both spindles and
be able to move C1 to do secondary work and C2 stays supporting.
Inside M190 is "G156C2=C1"

$1 $2

M80S3=3000
G98
T700
G0X1.1Z2.5+.59 M16
M18C0 M48C0
G650 G650
M72
G0Z-.05
G98G1Z.5F80.
M15
M73
!1!2L650 !1!2L650
M190(C2 follow C1)
G50W-.59
G0X1.1Z2.5T7
"
G0 C180.(or M18C180.)
"
G0X1.1T0
G50W.59
M82
!1!2L651 !1!2L651
M191(off in $2)
M79

M191- C2-C1 superimpose OFF M191 needs to be commanded in $2


Inside M191 is "G156C2"
M204- Thread Chamfering On. To have an exit chamfer while threading with
G92. Chamfering can also be turned on or off by operator switch
#17.
Using the "M" code will allow setting changes from the program.

M205- Thread Chamfering Off

M260-M269 EXTRA M-CODES FOR SPECIAL USE RELAY ON/OFF.

M260- oN
M261- OFF

M262- oN
M263- OFF

M264- oN
M265- OFF

M266- oN
M267- OFF

M268- oN
M268- OFF

M350-Rapid Feed Rate Setting


The K16E rapid traverse for all axis except 32-MPM or 1249-IPM,
this is extreamly fast.
Many customers and many parts are normal or have a tolerance of more
than or near (+- .0005-.001"). So the rapid rate is fine. But
some customers desire to hold tighter tolerance and the thermal
characteristics of the ball screws running at the fast rapid rate
could possibly make longer warmup times. Short time cutting
and many tool changes could increase thermal growth. For these
reasons
we have the ability to programmabley change the rapid feed rate. We
do
not have data yet as when exactly this is needed or not, as all part
processes are different and more tool changes and less cutting vs
low
tool changes and long cutting creates totaly different thermal
conditions.
If you have termal issues, try this function. Also
when used, the overall cycle time will increase but very small
amounts.

M350 X800 Y800 Z800

X Y Z = Ipm(per minute feed rate)

$1

M350Z800 (800IPM)
T1200(drill)
G0Z-.05T12
G83 Z1. F.003 Q.1
G80G0Z-.05T0
M351(set X1 Y1 Z1 back to full default rapid)

$2

M350Z800 (800IPM)
T3200(drill)
G0Z-.05T32
G83 Z1. F.003 Q.1
G80G0Z-.05T0
M351(set X2 Z2 back to full default rapid)

M351-Rapid Feed Rate Setting Reset


Set the rapid rates for all axis back to default. Also when
pressing RESET this is reset to default values.

M360-Rapid Feed Acceleration/Deceleration Time Constant Setting ON.


This is used for X1-Y1-Z1 only. The K15E rapid traverse for Y1-Z1
axis
is 32-MPM or 1259-IPM, this is extreamly fast.
Many customers and many parts are normal or have a tolerance of more
than or near (+- .0005-.001"). So the rapid accel/decel rate is
fine. But
some customers desire to hold tighter tolerance and the thermal
characteristics of the ball screws running at the short time
accel/decel could possibly make longer warmup times. Short time
cutting
and many tool changes could increase thermal growth. For these
reasons
we have the ability to programmabley change the rapid accel/decel
time constant. We do not have data yet as when exactly this is
needed or
not as all part processes are different and more tool changes and
less
cutting vs low tool changes and long cutting creates totaly
different
thermal conditions. If you have termal issues, try this function.
Also
when used, the overall cycle time will increase but very small
amounts.

M360 x3. Y3. Z3.

X3. = set X1 accel/decel time multiplier to 3x or (90*3=270 msec)


Y3. = set Y1 accel/decel time multiplier to 3x or (225*3=675
msec)
Z3. = set Z1 accel/decel time multiplier to 3x or (158*3=474
msec)
M361-Rapid Feed Acceleration/Deceleration Time Constant Setting OFF
Set the time constant back to default on each axis. Also when
pressing RESET this is reset to default values.

X1= 50 msec
Y1= 50 msec
Z1= 66 msec

You might also like