Join the conversation on our Facebook Group: / titansofcncacademy
Connect with us on LinkedIn: / titansofcnc
Follow our CEO, Titan Gilroy: / titan-gilroy ___
AI Generated·May contain errors
Video Summary
AI Generated
This video demonstrates an advanced hand-programming technique for CNC machining on a Haas machine. The instructor teaches how to efficiently remove a large amount of material by combining sub-programs with incremental positioning to create a 3D \"walking\" effect up a surface, similar to adaptive roughing in CAM software.
Oh man, what's up everybody? This is Titan, Titans of CNC and I'm going to teach you a crazy
hand programming technique. But first, a word of caution. If you don't have a lot of experience,
this technique is probably not for you. And if you're going to attempt it, make sure that you
get one of your seasoned machinists to come beside you, double check your program, run your program
above the part before actually engaging that metal, all right? We're going to show you some
advanced techniques, all right? And if you do something wrong, you can crash that machine.
So don't do it. All right, before we teach some hand programming and crank off some chips,
I want to invite you to hit that subscribe button, hit the like button, and put your comments down
below. Ask me questions, ask me about techniques, and you'll probably see it in a future video.
All right, so I just want to explain a few things about the setup and the approach real quick,
okay? So we're going to actually cut into this piece of material right here. It's three and a
quarter square stock, all right? It's five inches long and then the material is going to be actually
held in this shunk vice right here, locked and loaded. All right, so when the material is locked
down in the shunk vice, we're basically the zero, the X and Y and Z is going to be upper left hand
corner, so right here, all right? So it's going to be like boom. Now when I program it, what I'm
going to do is I'm going to have a starting point that's a half an inch off this surface, okay? So
if this is three and a quarter, we're going to 3.75 and we're dropping down over here full depth,
and then this technique is going to allow me to actually start down here and basically just come
back and forth and rough at an angle, at a 45 degree angle, taking all of this material off
quickly, all right? And not only quickly, but with just a little bit of code, okay? So we start here
and then we're going to overtake it the same length, 0.5, then we're going to come back,
come back, and each time you go down and come back, it'll raise in Z. So it'll be like boom,
boom, boom, boom, boom, boom, boom, boom, boom. So this technique is going to allow us to write
just a little bit of code and machine off a lot of material, okay? And it's cool. A couple of
things that we're going to incorporate, when I said we're going to use some advanced techniques,
meaning just upper level, I don't usually teach this stuff to beginners,
is sub-programming using subs and also incremental programming, all right? So G90 to a G91,
where when you go into incremental, if you don't come right back with a G90, you can crash that
machine, all right? So you got to make sure that your numbers are perfect, that you double check
everything, and that you have a seasoned machinist come behind you and test out and check it. But
once you get this technique down, it's going to open your mind to a million other things that you
can do with G91s and sub-programs, all right? So you guys ready? Let's do this. All right, so let
me explain basically what we're going to do. We're going to create a program, then we're going to
call up a sub-program, another program. In the main, we're going to say run that sub a whole
bunch of times, over and over and over, but it's going to be an incremental. So every time you run
the sub, it's going to keep moving, keep moving, keep moving, all right? I know it doesn't make a
lot of sense, but think about this, 3D adaptive, right? Like Fusion 360, programming in adaptive
roughing, you see these steps like boom, boom, boom, or 3D, you can see a tool that just walks
up a surface. That's what I'm going to teach you manually. How do we walk up a surface in 3D
using just a few lines of code? All right, so here's the program. Let's go get tool one.
So we say M6, T1, boom. All right, sometimes I put in a block, but if you just hit enter,
it'll just put the end of the block, all right? And again, I want to mention I'm doing this on a
Haas. So the way the L's work, it works on some machines and not others. So make sure that you
change up the style to suit your machine. And you can talk to the top machinists in your shop about
how to actually do that, okay? But this works on a Haas. All right, so now I'm going to move to
location. So I'm going to hit G0, G90, absolute, G54, my work offset. Then I'm going to hit X.
I'm using a three quarter inch tool. My cut's going to be 50 thousandths in. So since half of
the tool is 375 and I'm in by 50, we're going to call the tool out at X negative 0.325, okay?
So I'm going to hit this guy and I'm going to say X negative 0.325. My stock material is three and a
quarter, so I'm going to add a half an inch to that. So we'll say Y negative 3.75, turn on my spindle,
speed, boom. All right, now I'm going to turn on my coolant, M8. Now I'm going to go grab my tool.
I'm going to call it my height offset. So I'm going to go G43, H1, Z0.1, boom.
I'm giving myself some space by hitting end of block, boom. All right, so now before I call up
the sub program, I actually want my tool to actually drop down to the proper Z starting point,
okay? So I'm going to drop it down to Z negative. So I'm going to go G1, Z negative 2.25,
speed 100 inches per minute, enter. I'm going to create space, boom. Now I'm going to call up my
sub, okay? So I'm going to call up G54, M97. Now here's a little bit of information.
You can call up a sub in a Haas with an M97 or M98. An M98 calls up a sub with an O value at the
beginning, which when it comes into the machine, it separates the program. So you'd have a main
program and all your subs would be separate. So when you want to edit, you got to go from one to
the other to the other. All right. I like M97s because the M97 calls up an N value and an N
value just shoots up and stacks in the same program below the main. So when you stop at M30,
it'll be like N1, N2, N3 for sub 1, sub 2, sub 3, okay? So we're going to say M97,
call up the sub. We call up P1 for sub 1. And now how many times do I want it to run? I want it to
run 23 times. So I'm going to hit L23, enter. So I got G54, M97, call up the sub, sub number,
the P1 calls up an N1 since I'm using an M97, and then it's going to run it 23 times.
Now in my sub, I'm going to be in incremental, okay? And that's a dangerous place because
instead of reading from an absolute number, it reads from where it's at. Boom, boom, boom, okay?
So if like you're in a pocket down below and you say Z.1, and usually you mean like top surface and
Z.1 above, if you're in a G91, it'll just go 0.1 from there. So you could be negative and still be
negative. And then if you move over, you crash. Does that make sense? So just be very careful,
use it when you need it, and always come back with a G90 as a safety code to get back in the
absolutes, all right? So because I know that the sub program is going to be an incremental,
when it finishes the 23 times, I'm instantly going to come back with a G90 to get it back
in absolute, okay? So next thing over here, I'm just going to say G90. Boom, all right?
Now I'm going to create space because I like it clean. So now let's stop the main program.
So I'm simply going to say G0, Z.1, boom. Now I'm going to raise my tool up. And since I zeroed my
tool with a probe, I'm going to hit G0, G91, G28, go to home, and then Z0, end the block.
And then what's next? I just used the G91, so now I'm going to hit a G90, get back to absolute,
boom. I'm going to shut it down, boom, M30, all right? Create space. Now what's next? Let's
actually do our sub program, all right? So let's think about what we're doing. I got my part here,
my zero is over here, I'm Y negative, I'm way over here, and then I'm down, I'm starting
in position, okay? So what I want to do from here is I simply want to just start
moving in the Y direction because my starting location is set, okay? So I'm just going to
simply hit N for sub one, one, enter, and I'm going to hit G1, G91, incremental. Now my part
is three and a quarter, or 3.25. I've added a half an inch where I brought my tool down,
so I want to actually overtake it back to zero and overtake it by a half an inch too. So I have
to say 3.75 plus 0.5 equals 4.25, okay? So I'm going Y, 4.25, feed, 300, let's get after it,
right? We're going to take small cuts, like 50,000, we're going to step up, boom, boom, boom,
boom, boom, boom, boom, boom, boom, boom, boom, boom, boom, boom, boom, boom, okay? Feed 300,
point, now G91 is modal, it just keeps going, okay, until you shut it off. So now that I went up,
I simply want to move my X and my Z, so I'm going to hit X.050, Z.050, enter, moved up.
Now let's go back to where I started, so I was at Y4.25, so let's simply go Y negative 4.25,
okay? Enter. Now we're going to go up one more time, we're going to go over an X and up in Z
at the same time, boom, so I'm going to go X.050, Z.050, boom, and that's where I'm going to leave
it. I start here, I go down, I move up, I come back and make that cut. Now I simply go over an
X and up in Z at the same time, boom, and I'm exactly where I started, okay? But I'm just over
and up. So now think about it, if you're an incremental, it's just boom, boom, boom, boom,
boom, boom, boom, boom, boom, boom, boom, boom, boom, because I told it 23 times because I
calculated those steps and how high I needed to step up. Make sense? So I'm simply going to end
my sub with an M99, enter. That's the program. Look at that, look at how small it is, right?
A lot of people say, oh, you need to put more safety lines and stuff. I put the G90 as a safety
line. I want to keep this thing nice and clean. You guys do whatever is good for your machines
as far as safety lines. Haas is when you change tools, it'll shut everything off and change that
tool, right? So you don't have to like shut everything off and do all these things. And
when you hit an M30, it's going to shut everything off anyway, right? So on a Haas, it does a lot of
that stuff for you, so I don't worry about it, okay? So let's go run the program. This is going
to be sick. Oh, let's get after it. Boom. All right, and there you have it. Check it out. Boom,
boom, boom. We just walked right up the surface 3D, kind of adaptive, but we hand programmed it
with just a little bit of code, right? We added in absolute positioning and incremental programming
and cautioned everybody, right? Make sure you come back with that G90 and here's how subs work
and you can run a whole bunch of them, right? So it's cool. A lot of people are learning CAM and
we teach CAM, but I think it's also important that you learn the G and M code so if there's ever a
mistake, you can actually see it, right? If you don't understand it, you won't see it and you
could actually crash that machine and make a big mistake, okay? And here's a message to all the
journeyman machinists out there, all the experienced guys. If you got cool techniques and you got
something to tell the young guys in the comments below, let us know what's up. Like what kind of
tricks do you use to increase productivity and speed to make things happen on a daily basis?
Let's pour into the next generation, all right? So just as a reminder, go ahead and hit that
subscribe button so you don't miss another video. Until the next vlog, I will see you guys later.
Have a great day. I am out.