603,347 active members*
3,253 visitors online*
Register for free
Login
Results 1 to 12 of 12
  1. #1
    Join Date
    Jan 2007
    Posts
    17

    G66 macro parameters

    Hi all! I've been reading for a while, but this my first post.

    I have inherited an MH-40 Mori Seik with a MF-M6 NC controller. I am at least the 4th programmer for this machine by looking at the different styles on existing programs. I want to decrease cycle time with improved sequencing. CAM is not an option.

    G66P26 is being used to call out a generic drill/bore/tap Pcall macro. Here are three applications...

    G66P26C83.Z-.293R.5975Q.375F45.A3. (pecking)

    G66P26C81.Z-.564R-.1215F41.A1.2285 (drilling)

    G66P26C84.Z-.150R.5719F83.A1.2219S1992 (tapping)

    Here is the macro...

    O0026(DRILL MACRO)
    G0Z#1
    IF[#19NE#0]GOTO20
    N10G98G#3Z#26R#18Q#17F#9P#7
    IF[#525EQ1]GOTO15
    G91Y-7.75
    Y-7.75
    N15GOTO30
    N20M29S#19
    G98G#3Z#26R#18F#9
    IF[#525EQ1]GOTO30
    G91Y-7.75
    Y-7.75
    N30G80
    G0G90Z12.5
    M99

    Here's what i get from the callout...
    The S in the Pcall just sets it to the tapping section.
    C#3 calls out the G code number
    Z#26 calls out the bottom of the hole, tap, etc
    Q#17 calls out the depth of each peck

    Here's what i don't get...
    R#18 calls out the R location over the part. Fine. But isn't it not used on the G81 since the G99 isn't used?

    F#9 i think calls out feed. But F isn't the 9th character for a local parameter. How do they correlate?

    P#7 call out dwell. Except you can't call out a P anything in the Pcall for the G66 or it barfs. I saw some other poor guy go thru something similar on the boards. For dwell (if it's applicable) i'll create a specific subprogram and add the P there.

    A (???) nothing in the progamming manuals for this machine tell me anything about A. It doesn't seem to be additive, suctractive, or related to anything in the program. This is the brain melter.

    Thanks in advance!

  2. #2
    Join Date
    Oct 2006
    Posts
    586
    well i can tell you "A" is to controlle your fourth axis A90.0 would be 90. degrees
    as for sub programs i dont use them ,and i have a MV-40 with the same controlle and i think if you tried it it would blow up LOL.
    individual who perceives a solution and is willing to take command. Very often, that individual is crazy.

  3. #3
    Join Date
    Jan 2007
    Posts
    17
    Our fouth axis the B. We run a tombstone with four fixture locations and two passes. I'm thankful the gentlebeings who preceded me didn't try to incorporate the tombstone rotation into the subs.
    Life is pain, Highness. Anyone who says differently is selling something.

  4. #4
    Join Date
    Oct 2006
    Posts
    586
    oh well then i have no idea what the A is, Do u have to run a sub program
    individual who perceives a solution and is willing to take command. Very often, that individual is crazy.

  5. #5
    Join Date
    Jan 2007
    Posts
    17
    It's used 28 times per part. I'll keep the sub in until I rewrite the programs by hand. That's the only way i'll be able to make my toolpaths more efficeint. BTW, anyone know how large a file this controller can take?
    Life is pain, Highness. Anyone who says differently is selling something.

  6. #6
    Join Date
    Mar 2005
    Posts
    988
    Here's what i don't get...
    R#18 calls out the R location over the part. Fine. But isn't it not used on the G81 since the G99 isn't used?

    F#9 i think calls out feed. But F isn't the 9th character for a local parameter. How do they correlate?

    P#7 call out dwell. Except you can't call out a P anything in the Pcall for the G66 or it barfs. I saw some other poor guy go thru something similar on the boards. For dwell (if it's applicable) i'll create a specific subprogram and add the P there.

    A (???) nothing in the progamming manuals for this machine tell me anything about A. It doesn't seem to be additive, suctractive, or related to anything in the program. This is the brain melter.
    "R" is still effective in canned cycles for the rapid or reference plane (the start point of cycle).

    "F" is not the 9th character per se... BUT, F does correlate to local variable #9. And yes, it is calling out the feed rate in this case.

    "P" will bomb out on the macro call because you've already used P be designating the sub program number to use. That is the only use for P. However, in the macro itself, the P is looking at #7. #7 is D. Therefore, to use dwell, just add a "D" to the macro line like this:
    G66P26C82.Z-.564R-.1215F41.A1.2285D500 (drilling)

    "A" in this case is being used as a "clearance" plane for approach. It gets pulled up in your first line of the sub as:
    G0Z#1
    Local variable #1 is "A". It is not being used as a rotary command for a 4th axis.

    For note, it looks like the "other programmers" have been butchering what the macro was originally written for. I've written similar macros for parts that have a bunch of common holes (but not necessarily on a particular pattern like a bolt circle or grid). Then, I combine the use of the macro with another subcall (M98) for the pattern to be able to run different cycles, different tools over the same set of holes.

    I your case, for what you're using this for, I think its unnecessary. You can accomplish the same with simple canned cycle calls and be straight up with the code. And it wouldn't take up much more space unless this program also has a hole position sub.... which it might since I don't see a G67 anywhere with whats posted.
    It's just a part..... cutter still goes round and round....

  7. #7
    Join Date
    Oct 2006
    Posts
    586
    psychomill,
    that is what i was thinking, but like i said i dont use subs, i have no use for them
    and as for your memory i only keep one program in the controlle at one time and i have some pretty long so not sure the bite cappasity i will have to look
    individual who perceives a solution and is willing to take command. Very often, that individual is crazy.

  8. #8
    Join Date
    Mar 2005
    Posts
    988
    BTW, anyone know how large a file this controller can take?
    That's going to depend on the option bought for the machine. Most machine/control builders have 3 or 4 (some have more) different levels of memory capacity. The best way to tell is to look at your control on the machine. Go to the program directory (or library) page on the control. It should show a value for memory used and memory free (or max memory available).
    It's just a part..... cutter still goes round and round....

  9. #9
    Join Date
    Dec 2006
    Posts
    51
    When using G65 or G66 here is how the Local Variables get passed.
    Up to 33 Variables can be passed depending on Type 1 or Type 2
    Type 1
    G65 or G66 A B C I J K D E F H J K M Q R S T U V W X Y Z
    Type 2 Up to 10 repeats of I J K
    G65 or G66 A B C I J K I J K I J K I J K I J K I J K I J K I J K I J K I J K
    The First I J K will be I1 J1 K2 the second I J K will be I2 J2 K2
    Local--Type--Type
    Variable--1--2

    #1--------A----------A
    #2--------B----------B
    #3--------C----------C
    #4--------I-----------I1
    #5--------J----------J1
    #6--------K----------K1
    #7--------D----------I2
    #8--------E----------J2
    #9--------F----------K2
    #10------------------I3
    #11--------H--------J3
    #12------------------K3
    #13--------M--------I4
    #14------------------J4
    #15------------------K4
    #16------------------I5
    #17--------Q--------J5
    #18--------R--------K5
    #19--------S--------I6
    #20--------T--------J6
    #21--------U--------K6
    #22--------V--------I7
    #23--------W-------J7
    #24--------X--------K7
    #25--------Y--------I8
    #26--------Z--------J8
    #27-----------------K8
    #28-----------------I9
    #29----------------J9
    #30----------------K9
    #31----------------I10
    #32----------------J10
    #33----------------K10

    You mentioned trying to use a dwell...
    You would add a "D" to your G66 line to add a Dwell

    The Line of your macro
    N10G98G#3Z#26R#18Q#17F#9P#7

    Assigns #7 or D to P which is the dwell

    And Yes, F when Passed by G66 or G65 is local Variable #9

  10. #10
    Join Date
    Jan 2011
    Posts
    0
    dear sir,

    when we try to input the # it is not taking.remain inputs means in the same button * / # symbols are there.* and / symbols are taking place in the system.

  11. #11
    Join Date
    Sep 2010
    Posts
    1230
    Quote Originally Posted by samba siva rao View Post
    dear sir,

    when we try to input the # it is not taking.remain inputs means in the same button * / # symbols are there.* and / symbols are taking place in the system.
    It indicates that the control may not have the User Macro option, or that the Key Pad with that control does not access that character.

    What make and model of control is it? From your description of the Key, I'd guess that its a Fanuc OM or OT control. It's often the case with some Fanuc controls, particularly the O series controls, to not be able to access #, [, and other characters using the Key Pad, but you are able to prepare a program containing these characters using a computer and successfully upload the program to the machine. This is only the case if the control actually has the User Macro option.

    To determine if the control has User Macro programming, you will have a page in the control where Macro variable values can be input, or viewed, similar to how you can view or input tool offsets. For a Fanuc control, you access the Macro registry page by pressing the Offset Key, there should then be reference to navigating to the Macro page via other Soft Keys.

    If you don't have the Macro registry page, then the control does not have the option.

    Regards,

    Bill

  12. #12
    Join Date
    Feb 2006
    Posts
    1792
    You mat have a SHIFT key. Press it first, and see if # is coming now.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •