Problem solved =o)
Hello, all =o)
I'm new to this forum and this is my first posting.
We've reicently bought an OKUMA MA40 HA horisontal with 2 pallets and are shooting in the dark on this one.
It seems that there should be a main program in the machine with variables that connects "palett 1" to "program 1.min" & "palett 2" to "program 2.min".
There is no such program in the machine, does anyone here know what it should look like?
Thanks
Magnus
Problem solved =o)
littlerob
these programs are not really necessary if you utilise a library file and register a user M-code to shuttle in or check if a certain pallet in in the machining area
These pallet1.min and pallet2.min would best be used when scheduling programs
reply if you want more info
we have MX40-HA with 2 pallets and use M201 for palete #1 and M202 for #2
Merry Xmas for all
attachment for all OKUMA's with pallets
G-codes and M-codes extras for many OKUMA machines
G111= tool measure
G112= tool re-measure
G113= tool breakage detection
G114= tool measure
M201= call in pallet#1,continue if pallet#1 is current
M202= call in pallet#2,continue if pallet#2 is current
M203= empty tool from spindle
M204= call WARMUP cycle for machine
M205= empty thru tool coolant line with air blow
all these codes should be set in "parameter set" page of control
G111 = OTOOL
G112 = OTOL1
G113 = OBREK
G114 = OTOL2
M201 = OPAL1
M202 = OPAL2
M203 = ONOT
M204 = OWARM
M205 = OM50O
they then operate like a "CALL" statement
ie M205 = CALL O5o0 ( air blow )
or M204 = same as loading the WARM.MIN file ( turn on m/c - MDI 'M204' will warm-up the spindle )
M201 = is PALLET1 in machine? NO. well bring it in, only if "W.LOAD FINISHED" button is pressed
To all the very best of this festive season
Hello, again!
This is how we did:
We made a .SDF program called AUTO.SDF and typed the following into it:
( ** schemaprogram ** )
NA10 PSELECT PM60.MIN ( ** PALLETCHANGE)
NA20 IF[VPLTK NE 1]NCK ( ** IF NOT PALETT 1 GO TO NCK)
NA30 PSELECT PROGRAM1.MIN ( ** PROGRAM 1)
NA40 PSELECT PM60.MIN ( ** PALLETCHANGE)
NCK IF[VPLTK NE 2]NEND ( ** IF NOT PALETT 2 GO TO NEND)
NA50 PSELECT PROGRAM2.MIN ( ** PROGRAM 2)
GOTO NA10 ( ** LOOP)
NEND END ( ** END)
There must be a palletchanging program.
Make a file called PM60.MIN and write the following:
%
( ** PALLETCHANGE ** )
M60
M2
%
Transfer these programs to the machine:
AUTO.SDF
PROGRAM1.MIN
PROGRAM2.MIN
PM60.MIN
The main program to run in the machine is now AUTO.SDF. One can change programs for the pallets in this program. It solved our problem for now, time will tell if we need any changing ;-)
Merry X-mas all!
Superman..you are a Superman.
Sorry Magnus for hijacking your thread but I need to hang on to Supermans attention!!
Tried the M201/M202. Worked a treat
This is our first HMC and our first Okuma. This was the first library file I have registered on the control. I needed to enter a "buffer size" to be able to store the .LIB file. I understood from the manual it had to be sufficient for the number of Bytes the programs used. I found the manual to be rather like the Fanuc manuals....they tell you how to do it but not why you need to do it. I don't like doing something without really knowing why.
So...what is the purpose of the "buffer size"?
ChattaMan
Hi Magnus,
The file "MX40HA.LIB" is registered, and resides permanently in the control with all these codes registered in "parameter set" page of control
( check your manuals "OSP7000M operation manual, pub#3754-E, section 12-23 Library Program Registration, page 347)
G111 = OTOOL
G112 = OTOL1
G113 = OBREK
G114 = OTOL2
M201 = OPAL1
M202 = OPAL2
M203 = ONOT
M204 = OWARM
M205 = OM50O
In your running program, "M201" will check if pallet#1 is in m/cing area and will only continue when it is
When finished m/cing then "M202" to call in the other pallet
an example with a few other macros included
$TEST.MIN%
(...)
(...)
()
N1 G21
N2 G0 G17 G40 G90
N3 G15 H0
N4 G30 P1
()
N5 T3
N6 M201 ( pallet #1 )
( 3.0BALL CBD 2FLUTE 4FLUTELENGTH 6SHANK 18OUT )
( TOOL - 3 ; D3 ; H3 ; TOOL DIA. - 3. )
N7 T3 M6
N8 G15 H1
N9 B0. M15
N10 G0 X366.4 Y22.775
N11 S8500 M3
N12 M50 ( thru tool coolant )
N13 G56 H3 Z80.
...
...
...
N107 G0 Z80.
N108 M9
N109 M5
N109 M205 (clear coolant lines )
N110 G17
N111 G15 H0
N112 G30 P1
N113 M202 ( pallet #2 )
N114 M203 ( empty spindle )
N115 / GOTO N1 ( continuous cycle )
N116 M30
%
Note!!
SDF schedule files not required for day to day work,
but are useful when laying out jobs on different pallets
( SCHEDULE.SDF )
N1 PSELECT PROGRAM1.MIN
N2 PSELECT PROGRAM2.MIN
N3 PSELECT PROGRAM3.MIN
( PROGRAM1.MIN = OP.1 = PALLET 1)
( PROGRAM2.MIN = OP.2 = PALLET 1)
( PROGRAM3.MIN = OP.3 = PALLET 2)
GOTO N1
END
ChattaMan, g'day
got 1/2 way through writing this post when yours popped up,
figured that this post was very interesting to you
so I put it up for all to see
This would be of interest to all OKUMA pallet machines
"buffer size" refers to a small section of control memory reserved for your .lib files, sub-routines, macros and the like.
I am not sure what value to input, but a starting point would be the size in bytes plus a bit of the .lib file ( say 5000 bytes or a bit more )
We got our m/c with some of this in place and now full on programming, some things are better forgotten
Superman, ayup.
Ok I'll just except it, that...it just, is!
Looked at schedule files but left it alone. We have all the gubbins for an FMS but it's not set up yet, so are just running two pallets. Got full simultanious B axis and Turncut function. Didn't realise how useful turncut would be but seem to use it on every new job!
This is the first job I used it on......
"http://video.google.co.uk/videoplay?docid=5641232019650543372&ei=vxVQSaHqOIvKiQL7is3KCw&q=turncut&hl=en-GB"]Turncut
Turn bore with tapers and rads, scroll face, turn O/D with corner rad.
ChattaMan, neato
swap? your code ( a look see ) for mine, you've already got mine
always wanted to know how to sync the spindle to XYZ
also have a good look at my .lib file
M205 , thru coolant line air blowout
M204 , spindle warm-up cycle ( no need to select WARM.MIN just <MDI> M204 )
G113 = tool breakage detection, if tool length alters by "PLE1=value" it alarms
good for production if ckecking a drill before tapping, also after tapping
Yeah no problem sharing code. Don't know if you can sync the spindle without turncut function! Once you've initialised the turncut you just program as on a lathe, with X & Z. Have a look at the attached prog. I used turncut for the flanges, as on the vid, also a 4.7mm face groove with 0.2mm and 0.5mm corner rads and a back bore.
Also attached are(normally .SSB files but changed to .TXT to upload on here)......
...macro for helixing holes/counterbores with a flat bottom (also useful for chamfer/deburr)
...macro for parallel internal threadmill
...macro for NPT/BSPT internal threadmill
There's lots more to learn with this control. There's just not enough hours in a day!