Jump to content

Welcome to eMastercam

Register now to participate in the forums, access the download area, buy Mastercam training materials, post processors and more. This message will be removed once you have signed in.

Use your display name or email address to sign in:

cncchipmaker

Verified Members
  • Posts

    190
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by cncchipmaker

  1. Do guys think something like this would work? Right now it would only do 1 straight line but the logic could be written for vertical rows too.

    O0001(MAIN PGM)
    T1M06
    G65P0002STX
    X0Y0
    T2M06
    G65P0002STX
    Y0Y0
    T3M06
    G65P0002STX
    Y0Y0
    ECT...

    O0002(POPULATE TOMBSTONE IN ONE STRAIGHT LINE)
    (FORMAT G65STX)
    (S = #19 - SUB PROGRAM #)
    (T = #20 - TOTAL # OF PARTS)
    (X = #24 - INCREMENTAL X POSITION)
    (********************************)
    #100=#20
    #101=0
    WHILE[#100GE1]DO1
    #101=#101+1
    M98P#19
    IF[#20EQ1]GOTO100
    G91G0X#24
    (COUNTER)#100=#100-1
    N100
    END1

    (PG#19 SUB POSTED IN INCREMENTAL)
    GOTO#101
    N1(INCREMENTALLY POSTED PGM FOR TOOL 1)

  2. 1 hour ago, C^Millman said:

    Depends on the control and how deep it will allow you to go into a sub loop. In the middle of a while do loop I would suggest calling a N Block number and let the N Block number have the M98 call and not in the middle of the While do loop. The while do loop is to check a condition depending on how you structure it. Using the N Block process after the While Do loop is completed allows you to define things and change them verse being in the middle of a while do loop and running into trouble if a reset is hit or any other thing happens that doesn't support the while do loop process to be completed correctly.

    Can u then get back to the while-do using a GOTO after the M98 is complete?

  3. 28 minutes ago, nickbe10 said:

    #101 = #5223 - #5263

    ABS[#101]

    IF[#101GE.0015]THEN#3006=1(CHECK LOAD RESTART PROGRAM)

    IIF[#101LT.0015]THEN#3006=1(CONFIRM LOAD)

    Still gives address not found. Have I got the code right here? I can certainly see how this would work

     

     

    #101 = #5223 - #5263

    IF ABS[#101] LT.0015  GOTO1

    IF ABS[#101] GE.0015  GOTO2

    N1#3006 = 1 (CONFIRM LOAD)

    GOTO2

    N2#3006 = 1(CHECK LOAD RESTART PROGRAM)

    N3

    Now gone back to Format error. I can also see how this should work......

    I know what you are doing wrong now. The ABS[#101] needs to be #101=ABS[#101].  You have to assign a variable when you are using the absolute function in this way.

  4. 10 minutes ago, nickbe10 said:

    That would definitely explain the Address Not found error. Will try at next opportunity, appreciate the help.

    I have the Smit and Sinha books. I guess my Holiday reading is taken care of......

    #3000=1 should work for you too. This is what we use in the shop all of our programs.

  5. As far as work holding is concerned you could qualify one face of your block with a face mill, drill and tap some holes, and ream some holes for tooling. You would have to make a fixture to mount the block to. This is how we handle all of our large parts and I am sure you would have room to do this, especially if you are going to be removing most of the material anyways for the mold features.

Join us!

eMastercam - your online source for all things Mastercam.

Together, we are the strongest Mastercam community on the web with over 56,000 members, and our online store offers a wide selection of training materials for all applications and skill levels.

Follow us

×
×
  • Create New...