584,826 active members*
5,091 visitors online*
Register for free
Login
IndustryArena Forum > CAM Software > BobCad-Cam > V27 3 axis Pro radius toolpath question
Page 1 of 2 12
Results 1 to 20 of 23
  1. #1
    Join Date
    May 2006
    Posts
    47

    V27 3 axis Pro radius toolpath question

    I have been using Bobcad for a number of years doing 2.5D work. I have a need to starting using some 3 axis work. To test a toolpath I need to cut I took a 3x3x.5" cube and cut a 2x2 pocket all the way through it using a 2axis pocket with a 1/2" flat end mill. I then want to radius that 2x2 pocket with a .250" radius up to the top of the part. I used the 3axis Z level finish toolpath to do this using a 1/2" ball nose end mill. My machine has a CAT30 spindle maxing out at 3500 RPM which is why I am using a larger end mill.

    Is there a better method to machine this pocket and radius? I know in this particular test case I could use a 1/2" corner radius end mill but since some of my work will be both convex and concave pockets I am using this to learn ways to do this before attempting on complex shapes.

    I have attached the bbcd file in a zip file. I have not set any of the feeds/speeds yet, just looking at toolpaths.

    Any advice would be appreciated.

    Thanks!
    Brian

  2. #2
    Join Date
    Sep 2012
    Posts
    1195

    Re: V27 3 axis Pro radius toolpath question

    What level of Bobcad do you have? Do you have 3 axis or 4 axis? Do you have Mill Standard or Mill Pro? Depends a lot on what you have available for strategies and these can make a huge difference as you get into 3d shapes (convex/concave) with radius'd corners where a radius profile bit / form tool won't work.

  3. #3
    Join Date
    May 2006
    Posts
    47

    Re: V27 3 axis Pro radius toolpath question

    I have version 27, Mill Pro, 3 Axis.

  4. #4
    Join Date
    Sep 2012
    Posts
    1195

    Re: V27 3 axis Pro radius toolpath question

    Here's a file with the toolpaths I'd use. I start out with an adaptive roughing strategy. You could go with the pocketing and use the adaptive portion within pocketing, but they left one crucial component out that I find is indispensible, which is the steps between depths. You'll notice that the roughing goes back and clears out material around the roundover, which makes it better prepared for the finish pass. That is the steps between depths in action. The pocketing option would not be able to do that unless you set the step down to a very small amount, which would take way too long to cut. One of the missing features of the Adaptive Roughing that Pocketing has, is the ability to set an allowance for the axial (top to bottom) direction vs. the radial (side to side) direction. The problem is that if I want to leave .5mm in Adaptive Roughing, it is going to do so at the bottom of the part as well as the sides. It's understandable since Adaptive Rough has to deal with 3d shapes, and you often want the allowance to remain the same. To overcome that, I created a planar surface at the bottom of the part, then translated it down by the same as my allowance (.5mm). I then selected "Min/Max From Machining Surfaces" so that it will take the surface into account, as well as selecting "Machine Flatlands". By doing this, I am able to get the Advanced Roughing to cut to through the part rather than leaving .5mm at the bottom of the pocket, which would otherwise require another pocketing routine to get rid of.

    I then machine the interior profile of the pocket to clean off the .5mm allowance, and then follow that up with an Equidistant Offset toolpath, which I set to be a spiral pattern. You can determine how smooth your finish is by how tightly you set the stepovers. Z-Level may also work to some degree here, but I think Equidistant will provide a smoother toolpath and better finish. Once you go to a convex or concave shape with a roundover, Equidistant will be the only way to go, since Z-Level will not follow a 3d surface. Given that you eventually want to follow 3d surfaces, I figured it would be best to show you the method that would work best for that task, even if others may work for this one.

  5. #5
    Join Date
    May 2006
    Posts
    47

    Re: V27 3 axis Pro radius toolpath question

    Thank you - that helped out a lot.

    I was able to generate NC code based on your advice - I am going to try and cut a part today and see how it turns out.

    Is it worth trying to say drill a 3/4" or a 1" hole in the middle of the part before the advance roughing to cut some of the cycle time out? I tried throwing a drill op before the advance rough op but it doesn't look like the advance rough op understands the previous op removed material already.

    Brian

  6. #6
    Join Date
    Sep 2012
    Posts
    1195

    Re: V27 3 axis Pro radius toolpath question

    The tool change would probably take as long as the spiral entry anyways, even with an auto-toolchanger, so I'd guess that it would come out about a wash if you're using a 1/2" end mill like I did. If you're machine has the power, and you can hold the part well, you could do a deeper pass with shallower step overs and that would probably reduce cycle time. Also, I made the assumption that you are cutting something like aluminum. If you are cutting wood, you could increase the helical entry angle, increase the step down without decreasing the step over, and take a generally heavier pass. Just depends what you are cutting, what kind of tooling you are using and what kind of machine you have. I would estimate that my example would be good for the average mill, but a little heavy for a lighter duty machine and a little conservative for a VMC.

  7. #7
    Join Date
    May 2006
    Posts
    47

    Re: V27 3 axis Pro radius toolpath question

    Yes, I am using a 3axis knee mill (~24"x16"x5" travel) with a 5hp NMTB30 spindle so tool changes are manual. I am running aluminum. I will let you know how the toolpaths work out.

    Brian

  8. #8
    Join Date
    Sep 2012
    Posts
    1195
    Quote Originally Posted by bseibenick View Post
    Yes, I am using a 3axis knee mill (~24"x16"x5" travel) with a 5hp NMTB30 spindle so tool changes are manual. I am running aluminum. I will let you know how the toolpaths work out.

    Brian
    That's about what I was figuring when I made the tool paths, but feeds and speeds would be different than my example file.

    I have some techniques for 3d round overs which is a bit more involved to get the tool to follow the surface smoothly. I'll post a video showing these concepts next week when I'm back from holiday vacation. I do some things with equidistant offset that I haven't found anyone else doing which address that specific application. I've been intending to get that info out anyways, so good timing. Hopefully it will help a lot of Bobcad users.

  9. #9
    Join Date
    Dec 2013
    Posts
    290

    Re: V27 3 axis Pro radius toolpath question

    I would use advanced Z level, from the bottom up. Equidistant is great for complex shapes, but it jumps around the z axis way to much and I feel it also creates sloppy Gcode.

    I am spoiled though, and have 4 axis pro with the multiaxis toolpaths, which give you far more control over surface work. They also tend to compute in seconds, rather then several minutes.
    Work: Hurco VMX42/VMX50 - Shopsabre 4896 - Bobcad V4 4axis pro
    Home: RF45 with Ajax CNC Controller - Bobcad V27 3 axis pro

  10. #10
    Join Date
    Sep 2012
    Posts
    1195
    Quote Originally Posted by MikeC8 View Post
    I would use advanced Z level, from the bottom up. Equidistant is great for complex shapes, but it jumps around the z axis way to much and I feel it also creates sloppy Gcode.

    I am spoiled though, and have 4 axis pro with the multiaxis toolpaths, which give you far more control over surface work. They also tend to compute in seconds, rather then several minutes.
    "Between 2 curves" is probably the most ideal and is part of multi axis as Mike suggests. However, the technique I use for working on round overs with equidistant offset is nearly as good since you establish a drive surface that starts it out in a smooth path, which helps all subsequent paths add stay smooth as well. Z-level can work, but the Z lifts and leadins/leadouts will be excessive on complex shapes with a lot of Z variaton. Really, you have to look at each job with fresh eyes and determine what will suit that task best based on the unique shape it has.

  11. #11
    Join Date
    May 2013
    Posts
    701

    Re: V27 3 axis Pro radius toolpath question

    Quote Originally Posted by mmoe View Post
    That's about what I was figuring when I made the tool paths, but feeds and speeds would be different than my example file.

    I have some techniques for 3d round overs which is a bit more involved to get the tool to follow the surface smoothly. I'll post a video showing these concepts next week when I'm back from holiday vacation. I do some things with equidistant offset that I haven't found anyone else doing which address that specific application. I've been intending to get that info out anyways, so good timing. Hopefully it will help a lot of Bobcad users.
    Looking forward to seeing your technique Sounds Good

  12. #12
    Join Date
    Dec 2013
    Posts
    290

    Re: V27 3 axis Pro radius toolpath question

    On a basic cylinder fillet, I use advanced z level, with the spiral option and a stepover of 0.010". The spiral option works great when your fillet connects.

    If its a fillet along the edge of a part, and does not connect. Here are the highlights of the settings I use.
    Advanced z level finish
    Start from bottom, but depending on the part you may need to start from the top.
    Method, zigzag.
    Depth of cut 0.010", with adaptive depth of cut checked.
    Depth options, set bottom of part to allow tool to cut just past the lower edge of your fillet. This is something you will need to either measure, or just take a guess and compute it. Then adjust it until it looks right.
    Cutting extents, part bottom
    Links, direct

    Advanced z level offers more control then the basic z level. I use it quite a bit, there are still times where I find it works better, or is just simplier than a multiaxis toolpath.
    Work: Hurco VMX42/VMX50 - Shopsabre 4896 - Bobcad V4 4axis pro
    Home: RF45 with Ajax CNC Controller - Bobcad V27 3 axis pro

  13. #13
    Join Date
    Apr 2009
    Posts
    3376

    Re: V27 3 axis Pro radius toolpath question

    Quote Originally Posted by bseibenick View Post
    I have been using Bobcad for a number of years doing 2.5D work. I have a need to starting using some 3 axis work. To test a toolpath I need to cut I took a 3x3x.5" cube and cut a 2x2 pocket all the way through it using a 2axis pocket with a 1/2" flat end mill. I then want to radius that 2x2 pocket with a .250" radius up to the top of the part. I used the 3axis Z level finish toolpath to do this using a 1/2" ball nose end mill. My machine has a CAT30 spindle maxing out at 3500 RPM which is why I am using a larger end mill.

    Is there a better method to machine this pocket and radius? I know in this particular test case I could use a 1/2" corner radius end mill but since some of my work will be both convex and concave pockets I am using this to learn ways to do this before attempting on complex shapes.

    I have attached the bbcd file in a zip file. I have not set any of the feeds/speeds yet, just looking at toolpaths.

    Any advice would be appreciated.

    Thanks!
    Brian

    I always use an appropriate form cutter when feasible.Much faster.

  14. #14
    Join Date
    May 2006
    Posts
    47

    Re: V27 3 axis Pro radius toolpath question

    Well, everything went well with my first attempt - other than at the very end of the program the machine decided it was going to go to y0...of the machine coordinates instead of the work coordinates. Of course it did it going through the middle of the part I just machined.

    The last couple lines of the gcode that BobCad generated are below:

    N7046 X0.8888 Y1.3174 Z-0.4871
    N7047 G00 Z0.2
    N7048 Z1.
    N7049 M09
    N7050 M05
    N7051 G91 G28 Z0.
    N7052 G91 G28 Y0.
    N7053 G90
    N7054 T1 M06

    From what I can tell the machine moved the Z axis up to 1", which is the clearance plane but from what I can tell line N7051 and N7052 are what brought the Z axis back down and then the Y axis through the middle of my part. I forgot to change the post from the standard BC_3x_Mill.MillPst to the Mach3-Mill-NoATC.MillPst post. I am going to re-post the code using the Mach3 post and see if the results are a bit better.

    Attachment 302452

    Brian

  15. #15
    Join Date
    Apr 2009
    Posts
    3376

    Re: V27 3 axis Pro radius toolpath question

    dog leg rapid ????

  16. #16
    Join Date
    Sep 2012
    Posts
    1195

    Re: V27 3 axis Pro radius toolpath question

    Quote Originally Posted by bseibenick View Post
    Well, everything went well with my first attempt - other than at the very end of the program the machine decided it was going to go to y0...of the machine coordinates instead of the work coordinates. Of course it did it going through the middle of the part I just machined.

    The last couple lines of the gcode that BobCad generated are below:

    N7046 X0.8888 Y1.3174 Z-0.4871
    N7047 G00 Z0.2
    N7048 Z1.
    N7049 M09
    N7050 M05
    N7051 G91 G28 Z0.
    N7052 G91 G28 Y0.
    N7053 G90
    N7054 T1 M06

    From what I can tell the machine moved the Z axis up to 1", which is the clearance plane but from what I can tell line N7051 and N7052 are what brought the Z axis back down and then the Y axis through the middle of my part. I forgot to change the post from the standard BC_3x_Mill.MillPst to the Mach3-Mill-NoATC.MillPst post. I am going to re-post the code using the Mach3 post and see if the results are a bit better.

    Attachment 302452

    Brian

    "G91 G28 Z0" is as follows:

    G91 tells the machine to switch to incremental moves. This means that each value given is the distance from the current position which the machine should go. G28 tells the machine to go to the Machine Zero through the current current move. Z0 tells the machine to move Z0, which in incremental means no distance from the current position (in absolute it would mean move to the coordinate Z0 in the current work coordinates). The result is that the machine moves to the Z0 of machine coordinates from the current Z position. If, for example, the code said "G91 G28 Z1", the Z axis would first move up Z1 (one increment), then move to Z0 in machine coordinates from that position, or in other words going to Machine Zero through the move of Z1. Again, Z0 is not really a move, so to go through Z0 in incremental positioning, it doen't have to move at all before going to Machine Zero. It's a very complicated command that really should not be used IMHO. The other problem is that you clearly have set your machine zero below the part zero, which should never be done. Machine zero (Z0 in absolute, machine coordinates) should be the highest position the Z axis can go, or very near it, while your work coordinates zero should therefor be below that point. That is what prevents this kind of move from damaging your part.

    In my opinion, you should first learn to home the machine to the top of the Z stroke. Then, you should use G53 instead of G91 G28. I've never understood why a person would use G28 instead of G53. G53 is a single line parameter which cancels itself on the next line automatically (non-modal) that tells the machine to make following moves in machine coordinates, and in the current mode (incremental vs. absolute). A line of "G53 G0 Z0" in absolute mode (which is obviously what you are programming in) would move the Z to Machine Zero. In your case, the result would have been the same because the homing was not done kosher (machine Z higher than work Z). However, there is less chance of getting stuck back in incremental by accident (G28 is almost always paired with incremental positioning as it is here).

    I have the following at the start and end of my programs, added in the post processor:

    G53 G0 Z0
    G53 X0 Y0

    Just my preference and I've yet to hear a reason why it would be better done with G28. G28 made more sense back when memory on the machines was limited to 25kb per program since we all programmed in incremental much more, including a lot of subroutines. With modern controllers, just about everyone now programs in absolute because there is no reason not to when you can run programs of several gigabytes in size. If you were in incremental, G28 was the way to go since it was a move to home through the current move, requiring no knowledge of the current position which is commonly hard to figure out in incremental since it's always just relative position. You also never had to switch modes to do the move, so it made more sense that way as well. In absolute, I strongly believe that G53 is the better solution.

  17. #17
    Join Date
    Sep 2012
    Posts
    1195

    Re: V27 3 axis Pro radius toolpath question

    Quote Originally Posted by jrmach View Post
    I always use an appropriate form cutter when feasible.Much faster.
    Doesn't work at all on 3d parts though. He is planning to practice on 2d parts, then apply the strategy to 3d parts. I'll be putting a video together Monday that will give more information on why 3d parts are difficult to perform this task on, particularly when you only have 3 Axis Mill Pro vs. the multiaxis strategies that Mike (MikeC8) has access to. Between 2 Curves in multiaxis is probably the best one to use, but short of that you just have to work around some compromises in 3 Axis Pro strategies. The reason it is difficult is that as the radius is being generated on more of an angled intersection of surfaces, the distance from the inside and outside joints between the radius surface and the intersecting surfaces starts to vary, closer as the angle increases, This can play tricks with 3 Axis strategies, but in multiaxis the toolpath will morph the distance between passes, essentially squishing evenly when the distance narrows and expanding when it increases. This causes the Z jaggies that Mike referred to earlier, along with the tolerances of trying to trace a near vertical edge if set to "outside -> in" as you would want it to be (moving out .001" can drop the toolpath .050", so the Z axis jumps up and down around the tolerance where Z-level keeps it even). I use a horizontal drive surface to stabilize the Equidistant Offset Z axis motion, which makes the code come out very smooth like Z-Level, and once you start the motion smooth, all the following stepovers tend to stay smooth as well since it's just offseting. If you have a jagged start, the offset will be similarly crappy, so getting that smooth start is the key.

  18. #18
    Join Date
    Apr 2009
    Posts
    3376

    Re: V27 3 axis Pro radius toolpath question

    when appropriate,,,,,,there is no better way

  19. #19
    Join Date
    May 2006
    Posts
    47

    Re: V27 3 axis Pro radius toolpath question

    Quote Originally Posted by mmoe View Post
    "G91 G28 Z0" is as follows:

    G91 tells the machine to switch to incremental moves. This means that each value given is the distance from the current position which the machine should go. G28 tells the machine to go to the Machine Zero through the current current move. Z0 tells the machine to move Z0, which in incremental means no distance from the current position (in absolute it would mean move to the coordinate Z0 in the current work coordinates). The result is that the machine moves to the Z0 of machine coordinates from the current Z position. If, for example, the code said "G91 G28 Z1", the Z axis would first move up Z1 (one increment), then move to Z0 in machine coordinates from that position, or in other words going to Machine Zero through the move of Z1. Again, Z0 is not really a move, so to go through Z0 in incremental positioning, it doen't have to move at all before going to Machine Zero. It's a very complicated command that really should not be used IMHO. The other problem is that you clearly have set your machine zero below the part zero, which should never be done. Machine zero (Z0 in absolute, machine coordinates) should be the highest position the Z axis can go, or very near it, while your work coordinates zero should therefor be below that point. That is what prevents this kind of move from damaging your part.

    In my opinion, you should first learn to home the machine to the top of the Z stroke. Then, you should use G53 instead of G91 G28. I've never understood why a person would use G28 instead of G53. G53 is a single line parameter which cancels itself on the next line automatically (non-modal) that tells the machine to make following moves in machine coordinates, and in the current mode (incremental vs. absolute). A line of "G53 G0 Z0" in absolute mode (which is obviously what you are programming in) would move the Z to Machine Zero. In your case, the result would have been the same because the homing was not done kosher (machine Z higher than work Z). However, there is less chance of getting stuck back in incremental by accident (G28 is almost always paired with incremental positioning as it is here).

    I have the following at the start and end of my programs, added in the post processor:

    G53 G0 Z0
    G53 X0 Y0

    Just my preference and I've yet to hear a reason why it would be better done with G28. G28 made more sense back when memory on the machines was limited to 25kb per program since we all programmed in incremental much more, including a lot of subroutines. With modern controllers, just about everyone now programs in absolute because there is no reason not to when you can run programs of several gigabytes in size. If you were in incremental, G28 was the way to go since it was a move to home through the current move, requiring no knowledge of the current position which is commonly hard to figure out in incremental since it's always just relative position. You also never had to switch modes to do the move, so it made more sense that way as well. In absolute, I strongly believe that G53 is the better solution.
    When I changed to the (correct for my machine) Mach3 post processor the last couple lines changed to the following:

    N7050 X.8888 Y1.3174 Z-.4871
    N7051 G00 Z.2
    N7052 Z1.
    N7053 M09
    N7054 M05
    N7055 G53 Z0.
    N7056 G53 Y0.
    N7057 M30

    It looks very close to the two G53's you recommended. I did a dry run on the machine and it seemed to behave a bit better. I hope to try cutting the part again today but first I am tweaking my chip evacuation a bit.

    Brian

  20. #20
    Join Date
    May 2006
    Posts
    47

    Re: V27 3 axis Pro radius toolpath question

    Quote Originally Posted by mmoe View Post
    Doesn't work at all on 3d parts though. He is planning to practice on 2d parts, then apply the strategy to 3d parts. I'll be putting a video together Monday that will give more information on why 3d parts are difficult to perform this task on, particularly when you only have 3 Axis Mill Pro vs. the multiaxis strategies that Mike (MikeC8) has access to. Between 2 Curves in multiaxis is probably the best one to use, but short of that you just have to work around some compromises in 3 Axis Pro strategies. The reason it is difficult is that as the radius is being generated on more of an angled intersection of surfaces, the distance from the inside and outside joints between the radius surface and the intersecting surfaces starts to vary, closer as the angle increases, This can play tricks with 3 Axis strategies, but in multiaxis the toolpath will morph the distance between passes, essentially squishing evenly when the distance narrows and expanding when it increases. This causes the Z jaggies that Mike referred to earlier, along with the tolerances of trying to trace a near vertical edge if set to "outside -> in" as you would want it to be (moving out .001" can drop the toolpath .050", so the Z axis jumps up and down around the tolerance where Z-level keeps it even). I use a horizontal drive surface to stabilize the Equidistant Offset Z axis motion, which makes the code come out very smooth like Z-Level, and once you start the motion smooth, all the following stepovers tend to stay smooth as well since it's just offseting. If you have a jagged start, the offset will be similarly crappy, so getting that smooth start is the key.
    I am looking forward to your video. I have been kicking around the idea of trying to get the 4th axis version when I upgrade to V28 as at some point I would like to build a rollover fixture for my mill but it looks like there might be reasons to get it while still running 3 axes.

Page 1 of 2 12

Similar Threads

  1. Tool Compensation Radius Value Question
    By jondojayndo in forum G-Code Programing
    Replies: 2
    Last Post: 12-17-2014, 01:52 PM
  2. Tool Radius Compensation Question?
    By jeffserv in forum Dynomotion/Kflop/Kanalog
    Replies: 1
    Last Post: 08-06-2014, 01:32 PM
  3. Fillet Radius Question
    By Fighter in forum Autodesk
    Replies: 5
    Last Post: 12-17-2012, 06:52 PM
  4. Question about expressing radius, in the form of I and K
    By cncnewbstudent in forum Education - Teachers and Students Hangout
    Replies: 5
    Last Post: 09-25-2012, 03:29 PM
  5. Simple question on programming radius
    By Balsamar in forum G-Code Programing
    Replies: 4
    Last Post: 04-30-2011, 01:09 PM

Tags for this Thread

Posting Permissions

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