585,733 active members*
4,918 visitors online*
Register for free
Login
Page 3 of 5 12345
Results 41 to 60 of 98
  1. #41
    Join Date
    Sep 2010
    Posts
    1230
    Quote Originally Posted by Kiwi View Post
    As it appears that nobody is able to supply accurate usable code, and take Psycho advise and code the complete circumference, it looks like you will be "plotting point code all day long....".
    If Steve uses the 0.5 dia. cutter that he's already alluded to, that would make 32 coordinates he will have to determine, plus a couple to get the tool into initial position. He has Acad, so he should be able to get all these points in a few minutes. Even to calculates the points manually won't take long. Once he has the procedure for getting the first point, the remaining calculations are repetitive. It's not such a complex part to program.

    Judging from Steve's replies I've seen to questions in other threads, I'd say that he's up to the task.

    Regards,

    Bill

  2. #42
    Join Date
    Mar 2005
    Posts
    988
    Stevo,

    I went back and took a look at your macro and it's looks close. At the time of that post you didn't know yet or it wasn't stated yet but the code for the B-axis is really the only hitch with it. In Polar mode, you are no longer using actual table angle values, it's an "axis name swap" that the machine will use to calculate and rotate.

    To explain, this is all Polar programming is: The contol will exchange one linear axis with a rotatary axis. This happens when a rotary axis name is used in the code. The code values being used still uses linear positioning. So all you need to do is swap the linear axis name with the rotary axis name. Then as Bill mentioned, there may be some parameters that will associate the proper "linear to rotary" connection. For example: X to A, Y to B, Z to C, etc. You and I can go over this in more detail outside of this thread if you'd like. But for you machine, is likely already set up correctly and I believe you mentioned running a 'test code' for G12.1..... so I think it's just a matter of getting the outputs to it's liking.

    Anyhow, the one last hitch here... Your macro is running this in incremental. Personally, I've never ran polar in incremental on a part. I know it's possible as I've gone through the motions but that was still running a complete profile. On top of incremental, you've posted it as a loop which adds to the questions of "will this work?". BTW, I know you're just shooting ideas here and not forcing this to be this way..... FYI, some machines won't run Polar in incremental or they require a totally different set of axis names for incremental (such as using U, V, or W for example but I've seen odd ones like "H" and stuff). So your incremental process idea is new territory for me...

    I've tweeked your macro and posted below the possibilities. The first program (O1111) is an incremental loop similar to your posted macro. I adjusted the G12.1 outputs so you can give this a whirl. I know the positioning might look funky but once you see where the value range is supposed to come from, what I'm doing here will make sense... just not sure if it works or is correct for the reasons stated above with being in incremental.
    The 2nd program, I reworked your macro to run this in absolute mode. This program (O1112) is the entire profile complete. I couldn't find my old HMC post so I used my existing post configuration and simply renamed the axes accordingly. If you're up to it, try them out..... we gotta be in the ballpark here.....

    note: This still has the lugs on center with the O/D. I'm not interested in this placement right now. My goal is to get you functional code and to get you the understanding of what Polar is, how to work with it and gain comfort to move forward from there.

    Incremental Loop
    O1111(G91 PROVEOUT)
    #1=.5(TOOL DIAMETER)
    #2=33.466(DIA TO CUT)
    #4=.01(DEPTH OF TOOL)
    #5=11.2(RADI FEED RATE)
    #6=192(ROTARY FEEDRATE)
    #3=100(SPEED)
    #10=0(COUNTER)
    G0G90G59G18X0Y3.Z[[#2+#1]/2]B0M3S#3
    G91X-.5Z.15
    G90Y.1
    G1Y-#4F50.
    G91G2X.5Z-.15R2.F#5
    G1B9.2025F#6
    N1G12.1

    G3B.6204Z.3709R.665F#5
    G3B.6068Z-.3928R.665

    IF[#10GE15]GOTO2
    #10=#10+1
    G13.1
    G1B18.405F#6
    GOTO1
    N2G1B9.2025F#6
    G2X.5Z.15R2.
    G0G90Y4.
    M30


    Absolute mode, complete profile
    O1112(G90 PROVEOUT)
    #4=.01(DEPTH OF TOOL)
    #6=192(ROTARY FEEDRATE)
    #3=100(SPEED)
    G0G90G59G18X0Y3.Z17.583B0M3S#3
    G90Y.1
    G18Z17.583B0.
    G12.1
    G1Z17.583B-.5F200.
    Y-#4F50.
    Z17.483F#6
    G2Z16.983B0.R.5
    G3Z16.7644B2.716R16.983
    Z17.0314B3.3878R.665
    Z16.5277B3.9062R.665
    Z14.4489B8.9247R16.983
    Z14.4385B9.6475R.665
    Z13.7747B9.9337R.665
    Z9.9337B13.7747R16.983
    Z9.6475B14.4385R.665
    Z8.9247B14.4489R.665
    Z3.9062B16.5277R16.983
    Z3.3878B17.0314R.665
    Z2.716B16.7644R.665
    Z-2.716R16.983
    Z-3.3878B17.0314R.665
    Z-3.9062B16.5277R.665
    Z-8.9247B14.4489R16.983
    Z-9.6475B14.4385R.665
    Z-9.9337B13.7747R.665
    Z-13.7747B9.9337R16.983
    Z-14.4385B9.6475R.665
    Z-14.4489B8.9247R.665
    Z-16.5277B3.9062R16.983
    Z-17.0314B3.3878R.665
    Z-16.7644B2.716R.665
    B-2.716R16.983
    Z-17.0314B-3.3878R.665
    Z-16.5277B-3.9062R.665
    Z-14.4489B-8.9247R16.983
    Z-14.4385B-9.6475R.665
    Z-13.7747B-9.9337R.665
    Z-9.9337B-13.7747R16.983
    Z-9.6475B-14.4385R.665
    Z-8.9247B-14.4489R.665
    Z-3.9062B-16.5277R16.983
    Z-3.3878B-17.0314R.665
    Z-2.716B-16.7644R.665
    Z2.716R16.983
    Z3.3878B-17.0314R.665
    Z3.9062B-16.5277R.665
    Z8.9247B-14.4489R16.983
    Z9.6475B-14.4385R.665
    Z9.9337B-13.7747R.665
    Z13.7747B-9.9337R16.983
    Z14.4385B-9.6475R.665
    Z14.4489B-8.9247R.665
    Z16.5277B-3.9062R16.983
    Z17.0314B-3.3878R.665
    Z16.7644B-2.716R.665
    Z16.983B0.R16.983
    G2Z17.483B.5R.5
    G1Z17.583
    G13.1
    G0Y4.
    M30



    Let me know! :cheers:
    It's just a part..... cutter still goes round and round....

  3. #43
    Join Date
    Jun 2008
    Posts
    1511
    Psycho,
    I was typing and putting out fires while you where posting. I will try your code and let you know. I figured I would throw out the below even though you posted more stuff for me.

    Bill,
    I believe that they are 1032 and 1033 in my control. I have attached the PDF of the axis control parameters. Below I posted the actual settings in my control. The first time I used 12.1 I had an alarm that said “improper use of 12.1/13.1”. I then proceeded to change parameter 1032=1 (from 0) and 1033=5 (from 0). Now I no longer get the alarm when programming the 12.1.

    I have not had a chance to look at these parameters in detail.

    N1020A1P88A2P89A3P90A4P65A5P66A6P87
    N1021A1P0A2P0A3P0A4P0A5P0A6P0
    N1022A1P1A2P2A3P3A4P0A5P0A6P0
    N1023A1P1A2P2A3P3A4P4A5P5A6P6
    N1024A1P0A2P0A3P0A4P0A5P0A6P0
    N1025A1P0A2P0A3P0A4P0A5P0A6P0
    N1030P67
    N1031P1
    N1032P1
    N1033P5
    N1034P0

    FYI. The manual attached is for a 15series model B and the machine I have is a model A. I did however confirm that the parameter settings are the same. This just happened to be the manual I had in PDF format.

    I also attached a new layout of the part as Kiwi has stated about the .415rad of the lug. It is off the 33.400”BC diameter of the small holes, not the OD of the part.

    Steve
    Attached Files Attached Files

  4. #44
    Join Date
    Mar 2005
    Posts
    988
    Cool stevo.... you're on your way.
    I must make a correction however to my program notes of my last post....

    I did in fact "correct" the geometry last night based on your macro position outputs. Looking at your new drawing, I believe I have the lugs postitioned accordingly.....


    .... or perhaps I'm also going "bi-polar" right along with ya' .... LOL....
    It's just a part..... cutter still goes round and round....

  5. #45
    Join Date
    Jun 2008
    Posts
    1511
    Psycho,
    Quick update. I ran the Incremental loop real quick and it moves the X and Z axis along with the B-axis acting real strange. It moves fast then slow until an alarm kicks the machine out. OT512 Excess Velocity.

    Don’t know if I will get a chance to run the Absolute code yet today. Everyone and their brother needs something today and this is the worst week as I can’t put in my normal midnight hours.

    Steve

  6. #46
    Join Date
    Mar 2005
    Posts
    988
    Oh yeah.... Yes, it will do that.

    On top of the B moving as it does, the machine will also "recalculate" your feedrates depending on the movement distance vs. the "linear arc" and the programmed feed. Your gains settings for the table will come into play and yes, if the rate is calced "agressively", the servo will bomb out from it. Change the feed numbers around slower (especially any lead in/out with short arc movements) and see if you can get beyond the velocity errors. This also may be exagerated by the fact your true G12.1 segment is extremely short so the machine running the calcs may react with velocity error (which is really coming from velocity and positioning mixed in).

    My machines are fairly new and I have all them go through an additional "tweak and tune" session with the servos to maximize the acc/decs so I rarely run into that problem. I've always thought about using G95 in this mode to see if the control is any better or different.... but again, my servo parameters are all 'hot rodded"....
    It's just a part..... cutter still goes round and round....

  7. #47
    Join Date
    Jun 2008
    Posts
    1511
    Ok. I turned down the feedrates. The incremental program does some crazy stuff. The B-axis rotates to some crazy number even if I turn my overrides down to 0 it keeps moving like it is trying to position itself. My overrides always turn everything off. The crazy part is at the start of this motion my distance to go says something like 6.034 in the B but when the B is moving the distance to go does not change. Once it gets there then the B rotates – and + about 5deg back and forth while the Z and X moves at a very slow rate. I never did finish the cycle.

    I loaded and ran the absolute code. The B-axis moves back to 270deg to position and the X moves to .5 and once the first G2Z16.983B0.R.5 line if bombs out with “over tolerance of radius” alarm.

    Steve

  8. #48
    Join Date
    Mar 2005
    Posts
    988
    I figured the incremental program wouldn't know what to do. I was taking some guesses there and being that it's a loop program, I wasn't confident that the machine was going to like that.

    As for the absolute program, try this.... Don't use G18. Run the same code in G17. The program isn't running comp anyway so this shouldn't matter.....


    Sorry for the 'trial and error' session Stevo... Trying to drive a machine by 'remote' is a little difficult at times.... (chair)


    My other thought is your axis signed directions.... Is this machine "reversed"? I'm curious about you asking for G2/3 code. In my mind, if you're running the profile in G3, you would be conventional cutting the profile.
    It's just a part..... cutter still goes round and round....

  9. #49
    Join Date
    Jun 2008
    Posts
    1511
    No worries. Trial and error, all hands on is my style. I would have to say it accounts for probably about 80% of my work expertise/experience over the years. It really does explain how I always manage to get things to work but have no idea how to explain to someone how I actually got it. Not something you typically want to hear from your manuf eng……”well I changed a bunch of numbers, adjusted about 50 parameters and it worked”.

    I apologize for not giving much feedback from my own common sense of what to try. I feel like a newbie because all I have had time to do is……get a suggestion from you guys, try it, then report back it didn’t work. No real time to figure why it didn’t work. I am trying to get off work tomorrow and Friday to spend some time with the kids but with everything going on it is unlikely. I am half temped to just come in on Sunday when no one is here and spend the flippen hours and get it going. I know I can get it to work if I can put my head in it with no discractions.

    Tried G17 and the notes below are the anomalies that are happening.
    O1112
    (P1112)
    #4=.01(DEPTH OF TOOL)
    #6=192(ROTARY FEEDRATE)
    #3=100(SPEED)
    G0G90G59G17X0Y3.Z17.583B0M3S#3
    G90Y.1
    G17Z17.583B0.----rotates to B270 with distance to go saying 4.693 and overrides disabled
    G12.1
    G1Z17.583B-.5F200.----moves X.5
    Y-#4F50.
    Z17.483F#6
    G2Z16.983B0.R.5----alarms out radius over tolerance

    Thanks,
    Steve

  10. #50
    Join Date
    Mar 2005
    Posts
    988
    OK so .... Here's the way I read this.....

    G2Z16.983B0.R.5----alarms out radius over tolerance
    This makes sense because the machine isn't where it's supposed to be to begin the arc anyway....

    G1Z17.583B-.5F200.----moves X.5
    Your display might show the machine moved .5 but did it actually move? In G12.1 mode, your table should have rotated ever so slightly to simulate the .5 lead in move along with the Z axis backing up a tiny bit. May still have a parameter thing going on here as well. The axis swapping seems to be happening but the motion isn't right. X should never move.... only Z and B

    G17Z17.583B0.----rotates to B270 with distance to go saying 4.693 and overrides disabled
    This makes no sense. Why is the table moving to B270 area when you're not even in Polar mode yet anyway? and it shouldn't be doing that in Polar mode. This is just a straight up positioning move and should be in position to standard machine coordinates. Do you have a shift in your B axis offset? What axis does the distance to go show up in?

    When you have your head rotates to A-90., is there some other stuff being activated that the program doesn't show? For example, machine goes into 3D-G68 mode, machine does axis switching, or some tool tip control mode becomes active (like G43.4 or something)... or some other form or coordinate rotation?
    The machine rotating the table around on that particular command line makes zero sense because there's nothing being altered yet. It should physically be positioning to Z(blah blah) and the B remains at "0"

    Also, I didn't notice any table unclamp codes but I assume you'll need this?
    It's just a part..... cutter still goes round and round....

  11. #51
    Join Date
    Jul 2003
    Posts
    1220
    Quote Originally Posted by stevo1 View Post
    ... No real time to figure why it didn’t work. I am trying to get off work tomorrow and Friday to spend some time with the kids but with everything going on it is unlikely....
    The offer is still open for about 700 lines (5 miles) of point to point code if that will help you get some time with the Kids.

  12. #52
    Join Date
    Jun 2008
    Posts
    1511
    I apologize. It was in the same line but executed independently and I thought the program advanced. The X does physically move with the B-.5 command but only after the B rotates to 270deg. I changed the B to an X and it physically moved the B-axis .5

    I have no rotational code like G68 or G43.4 active. I only have a macro I wrote to track the tool tip whenever the A is moved to a specified degree. I did this with just trig and tool lengths and plugged the data into a workcoordinate. Never had to use it yet but have it if I need it. I never every bit of code in the macros because when I got this machine it was so FU that I just stripped every single program out of the control and rewrote them from scratch. Tool offsets, tool change, pallet change, head rotation, etc.

    #4=.01(DEPTH OF TOOL)
    #6=192(ROTARY FEEDRATE)
    #3=100(SPEED)
    G0G90G59G18X0Y3.Z17.583B0M3S#3
    G90Y.1
    G18Z17.583B0.
    G12.1
    G1Z17.583B-.5F200.---moves B to 270deg and X-.5
    Y-#4F50.
    Z17.483F#6
    G2Z16.983B0.R.5

    Thanks,
    Steve

  13. #53
    Join Date
    Sep 2010
    Posts
    1230
    Quote Originally Posted by stevo1 View Post
    Ok. I turned down the feedrates. The incremental program does some crazy stuff. The B-axis rotates to some crazy number even if I turn my overrides down to 0 it keeps moving like it is trying to position itself. My overrides always turn everything off. The crazy part is at the start of this motion my distance to go says something like 6.034 in the B but when the B is moving the distance to go does not change. Once it gets there then the B rotates – and + about 5deg back and forth while the Z and X moves at a very slow rate. I never did finish the cycle.

    I loaded and ran the absolute code. The B-axis moves back to 270deg to position and the X moves to .5 and once the first G2Z16.983B0.R.5 line if bombs out with “over tolerance of radius” alarm.

    Steve
    Hi Steve,
    As stated in an earlier post regarding plane setting, you will experience funny results if you don't have that right. I suspect that you have these set incorrectly.

    This thread, I believe will now develop into how Polar Interpolation works, rather than the original question. Kiwi’s solution, that is, small line segment moves, will work without Polar Interpolation, but you will have to have a lot of small line segment moves to machine the circular path between the lugs. I don’t think Kiwi’s posted code included that area, but his concept will get the job done and give you some breathing space. You may find that the feed rate will be quite slow no matter how fast a feed rate is used. This is because of acceleration/deceleration at the start and end of each small line segment. However, I couldn’t let a situation like this rest until I’d found a solution to the Polar Interpolation task. This is a very useful function, and it’s a bit like having a dog and barking yourself not to use it in this type of application.

    The settings, in my opinion, aren't that logical. I’m away from my office until next week to be able to refer to my notes on Polar Interpolation Axis setting; accordingly, I can’t give you an example specifically.

    If you think about this logically, you may ask why is there a requirement to set the axes in parameters when they are clearly stated in the program. It’s because it’s an axis swap situation and the axis chosen doesn’t always seem logical. I know the settings for Cylindrical Interpolation off the top of my head so I’ll use that as an example.

    On a four axis vertical machine that has an A axis, the center line of its spindle running parallel with the X axis, and perpendicular to the Y axis, will use either Y or Z (either can be used, as both are correct) as the axis setting for the rotary axis. Yet in the program, A is programmed. I will post drawings that make this all make sense next week.

    Sorry I can’t be more help at the moment, but at least its heads up on where you could be looking.

    Regards,

    Bill

  14. #54
    Join Date
    Jul 2003
    Posts
    1220
    Quote Originally Posted by angelw View Post
    .....Kiwi’s solution, that is, small line segment moves, will work without Polar Interpolation, but you will have to have a lot of small line segment moves to machine the circular path between the lugs. I don’t think Kiwi’s posted code included that area, but his concept will get the job done and give you some breathing space.
    The I code posted was for one lug only. I can supply code for all the lugs.
    My suggested method is for segment moves (using B axis and Z travel) around the lugs and the B axis to rotate between the lugs.

  15. #55
    Join Date
    Mar 2005
    Posts
    988
    Actually... what Angel is stating about parameters for axis swapping makes sense. Cylindrical and Polar use the same basic platform in dealing with linear/rotation swaps.
    This may explain why B is going to 270 when it shouldn't and X still moves when it shouldn't.

    1032/1033 seems suspect here....it could either or both. The Jenglish might be have some effect....
    Maybe 1033 needs to be a 1 or 3?

    I no longer have any FANUC machines with this need so maybe I can find some old parameter backups on the machines I did have to check this out....
    It's just a part..... cutter still goes round and round....

  16. #56
    Join Date
    Sep 2010
    Posts
    1230
    Quote Originally Posted by Kiwi View Post
    The I code posted was for one lug only. I can supply code for all the lugs.
    My suggested method is for segment moves (using B axis and Z travel) around the lugs and the B axis to rotate between the lugs.
    Hi Kiwi,
    Yes, I should have realised that the move between the lugs could be carried out with a rotary axis move; it’s been a long plane flight. If the moves for the lug detail were coded in incremental you need only program one lug and move absolutely between them.

    I would still pursue the Polar Interpolation, given time, as it makes this application simple once you get your head around the settings aspect.


    Regards,

    Bill

  17. #57
    Join Date
    Sep 2010
    Posts
    1230
    Quote Originally Posted by psychomill View Post
    Actually... what Angel is stating about parameters for axis swapping makes sense. Cylindrical and Polar use the same basic platform in dealing with linear/rotation swaps.
    This may explain why B is going to 270 when it shouldn't and X still moves when it shouldn't.

    1032/1033 seems suspect here....it could either or both. The Jenglish might be have some effect....
    Maybe 1033 needs to be a 1 or 3?

    I no longer have any FANUC machines with this need so maybe I can find some old parameter backups on the machines I did have to check this out....
    Hi Psycho,
    Just to give you an idea of how the axis for the rotary axis in Cylindrical Interpolation is determined, consider the following.

    1. 4 axis VMC
    2. A axis with spindle parallel to the X axis lead screw.
    3. Unwrap the cylindrical surface and lay it flat on the table, its edge is parallel to the Y axis. In this case Y is set as the rotary axis.
    4. Unwrap the cylindrical surface and stand it vertical on the table, its edge is now parallel to the Z axis. In this case Z is set as the rotary axis.

    In the above example the difference in the program code is that the circular interpolation commands are reversed to achieve the same direction circular path on the workpiece, that is G02 is replace for G03 and visa versa to give the same cutter path.


    Regards,


    Bill

  18. #58
    Join Date
    Jul 2003
    Posts
    1220
    Quote Originally Posted by angelw View Post
    Hi Kiwi,
    Yes, I should have realised that the move between the lugs could be carried out with a rotary axis move; it’s been a long plane flight. If the moves for the lug detail were coded in incremental you need only program one lug and move absolutely between them.
    I would still pursue the Polar Interpolation, given time, as it makes this application simple once you get your head around the settings aspect....
    Using Polar Interpolation for a one-off job looks to me like more trouble than it's worth, just for the sake of the length of the program.
    I can generate the lug code in increment form which would make the program not much longer the the Polar Interpolation code.

  19. #59
    Join Date
    Mar 2005
    Posts
    988
    1. 4 axis VMC
    2. A axis with spindle parallel to the X axis lead screw.
    3. Unwrap the cylindrical surface and lay it flat on the table, its edge is parallel to the Y axis. In this case Y is set as the rotary axis.
    4. Unwrap the cylindrical surface and stand it vertical on the table, its edge is now parallel to the Z axis. In this case Z is set as the rotary axis.
    which is my thought....

    So, 1033 probably needs to be a 3. 1032 seems to be a toss up between 1 or 3 ...
    OR maybe.... a 2 then a 3.... or .....

    LOL... Well, there's 3 to choose from for either setting... MAN!



    I generally have all my machines come in the door with the options up and running so I don't normally go through initial parameter set ups for this type of thing.... but once it's set, it's set and it's all free wheeling from there....
    It's just a part..... cutter still goes round and round....

  20. #60
    Join Date
    Sep 2010
    Posts
    1230
    Quote Originally Posted by Kiwi View Post
    Using Polar Interpolation for a one-off job looks to me like more trouble than it's worth, just for the sake of the length of the program.
    I can generate the lug code in increment form which would make the program not much longer the the Polar Interpolation code.
    Yes, I understand that. I too use home grown software to generate code and often write custom routines to generate code for specific operations. I have a complete 2.5D CAD/CAM package and I and a colleague developed. But Steve doesn’t have this and from his comments, prefers to long hand code his programs.

    Like many features of a machine control, polar interpolation can become more than a one shot exercise, once it’s discovered and learnt how it’s used. I would rather be in control of my own destiny and be able to write a program myself than reply on someone else supplying the program. But I appreciate help in finding my way if the situation comes around. From other comments Steve’s made, I believe he operates along the same lines. With Polar interpolation under his belt, he will be able to write programs for applications such as the focus one with no more than a calculator and an understanding of trig; and I'm sure he has that.

    Regards,


    Bill

Page 3 of 5 12345

Similar Threads

  1. A 5-axis CNC machine including a rotary axis
    By synthetiklone in forum CNC Wood Router Project Log
    Replies: 20
    Last Post: 07-12-2013, 09:32 AM
  2. rotary axis, y, c, and axis substitution
    By 60rock in forum Mastercam
    Replies: 1
    Last Post: 08-02-2011, 05:45 AM
  3. Tipping rotary haas rotary axis
    By mfpuller in forum Mastercam
    Replies: 1
    Last Post: 04-04-2011, 04:16 PM
  4. 5 Axis CNC with Rotary Axis on Table
    By Shooter7 in forum Commercial CNC Wood Routers
    Replies: 1
    Last Post: 09-20-2010, 04:33 PM
  5. Rotary head development 3 axis -> 5 axis
    By Mr Helmut in forum Mechanical Calculations/Engineering Design
    Replies: 1
    Last Post: 08-03-2010, 11:26 PM

Posting Permissions

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