G & M Code - Advanced Manual Programming Trick - TITANS of CNC Vlog #51
Vložit
- čas přidán 7. 02. 2019
- CNC Machining - Titan teaches you how to hand program an advanced 3D tool path using subs and incremental techniques.
Subscribe for daily content and expert knowledge: bit.ly/SUBTITANS
___
___
FREE CNC Machining Academy. Join the Revolution:
academy.titansofcnc.com
Follow us on Instagram:
/ titans_of_cnc_academy
Like us on Facebook:
/ titansofcnc
Join the conversation on our Facebook Group:
/ titansofcncacademy
Connect with us on LinkedIn:
/ titansofcnc
Follow our CEO, Titan Gilroy:
/ titan-gilroy
___
___
THANK YOU to our Partners who make this content possible:
Kennametal - bit.ly/TIKennametal
Autodesk - bit.ly/TIAutodesk
Blaser Swisslube - bit.ly/TIBlaser
Mitee-Bite - bit.ly/TIMiteeBite
Royal Products - bit.ly/TIRoyalProducts
Schunk - bit.ly/TiSCHUNK
JobBOSS - bit.ly/TIJobBOSS
Tormach - bit.ly/TOCtor
#cnc #machining #programming
MB01YOR4V3EVDL0 - Zábava
Study that G and M code as much as possible. While it runs, watch what it does, the moves it makes. Google the codes you want to know. Learn what they do. Print a cheat sheet out. It's what separates the operators from the machinists. Thanks Titan!
Its not sad at all what @fraxz2006 said. People shouldnt just learn from their leaders as you put it. Whats sad is people expect to learn EVERYTHING they need to know from their leaders. Hes 100% right. I learned a huge majority of what i know by doing exactly what he said, reading books, watching youtube videos, watching the gcode and the machines movements, picking peoples brains until the point it would annoy them. The sad part is most people dont have the real initiative and motivation to learn on their own. Theyre waiting for handout learning sessions. People are running businesses, not schools…. Of course you stumble upon great piers (as did i) who are willing to freely share some of their knowledge. But i didnt rely on that. Whats sad is most people arent willing to put in the time to educate THEMSELVES and dedicate their time to becoming better. Instead they go home and watch reality tv and play video games. I now work in engineering at a smaller shop making well above 6 figures. I started at $9/hr 15 years ago as a very ambitious button pusher who didnt know anything. And im still learning
@@machinistjeffI absolutely agree, I’m 24 and got a job two years ago as an operator but took on the initiative and have exactly what you have stated here. After two years I have slowly become a cnc setter but I want to become a programmer. Is there any advice you could give me that would quicken and further my knowledge with programming as I am fairly new to it.
@@joelstanley5188 hey Joel. I would say to keep gaining as much knowledge as you can on how different cutters and toolpaths work in various materials, cutting techniques and processing strategies . I say this because it’s important for a good programmer to first be an excellent machinist. (Not saying youre not already an excellent machinist because you may be)
From there its never too late to download a student version (free) of fusion360 and just start playing around with it at home. Just start with simple projects and learn of course how to navigate the software. Watch youtube videos when you get stuck or just to learn things in general. Do some of the free projects/courses that titansofcnc offer. If you are lucky to have someone who is an experienced programmer that is willing to share their knowledge then pick their brain too. Good luck to you 👍
Edited : i forgot to mention to study G and M code as the OP stated. Thats a big one…. Haas manual has pretty awesome descriptions on most of the main and common codes and explain what they mean and how they work
Love this thank you I used G10 code with with same x and y with a different z depths and I think I used m98 m99 to go back and forth from the main to each sub. I love this technique tho and miss the mills I just started grinding on the studers and gleason curvic . Love all the info tho keep it coming Titan rocks
Titan I have a similar story to yours. I’m from flint mi. Got a 8th grade education. Got locked up for 2 years. That was over 30yrs ago. Got into machining from a guy in AA. The trade changed my life. Your doing a great job. Keep up the great work.
Same here I'm a high school dropout with a felony from my late teens and I learned machining and this is the only education I need in my life😂 I have certifications from NIMS and a trade school that didn't require a H.S diploma and now I make more than some college graduates😂
I learned the trade doing manual work but I can say that in this day and age expert CNC programming is a must, and crucial to being a must have employee in just about any shop. I understood your program as you explained it. Good stuff Titan. I am becoming a big fan. If I was 20 years younger I would be knocking on your door everyday until you let me in.
Not too shabby! At the risk of being a troll, I need to point out that you're confusing the terminology "sub program" and "sub routine". You correctly identify the requirements for M98 sub programming, but you're also calling the M97 callout as a sub program, where that is actually a sub routine. By correctly identifying the sub structure, it is much easier to understand whether the additional code should reside within the source program or externally.
Keep up the good stuff!
Not a troll, this guy is awsome and your clarification just makes it that much easier to grasp!👍
I try to think of them both as sub programs but the identification of the two is either externals vs internals might be how it's written in a book I read once
You can add to that another sub with a ball endmill. This sub would have ZX motion with minimal Y stepover and smooth the surface. Boom..!
The y motion isn't a step over. It is the length of cut and will remain the same. The x and z movements are the step over movements and if he changed them from 50 thou down to say 5 thou is would be much more smoother. The only other thing he would need to change is the number of loops, the L value. Just divide the total depth of cut by whatever z step over value your using to determine the L value.
That's what I was thinking.
Couldn't you just use U, V, and W and skip all the G90, G91 switchovers?
Great video Titan. I would love to see more videos of you interacting with the controls and showing us more tips . Thank you for your knowledge. It is very much appreciated.
The real beauty of M97 is all your sub-routines stay with the Main Program when you write them back to where ever you save/archive your programs!!!
its so hot to see technical industry stuff in an entertaining way, love it
Nice tip, I am gonna try that one tomorrow. Gotta make some sort of rake tooth gadget. But I do prefer the g53 to the 91/28 bit, being on a Haas mill....
UPDATE: I left the initial comment over a year ago. I use this constantly now. Not only the incremental stuff but the sub routines. I never use the G54 in front of the M97. I recently made a BUNCH of closer tooling for my company for pressing the internal bore rings on the composite material for making automotive head gaskets. We don't have a cnc lathe (a small import lathe the owner of the company bought years ago to polish crankshafts with lol) so I had to get creative on how it was done. Closer tooling fits on a small press with a "toolholder" with a 1" bore you stick the shaft into and lock it down with a set screw. The closer was designed to close a 3.56" bore ring. Shaft was 1.75" long. I was using a 2" sq shoulder face mill on a 4140 billet sized 4" x 4" x 2.5". X & Y was picked up dead center of the billet.
G0 G90 G54 X0. Y3.5
...
G01 Z-0.05 F100.
M97 P1 L34
....
N1
G01 Y2.5 F60.;
G02 X0. Y2.5 I0. J-2.5;
GO1 Y1.5
G02 X0. Y1.5 I0. J-1.5
G01 Y3.5
G01 G91 Z-0.05
G90
M99
The cut took about 15-20 minutes to remove a TON of material. Spinning the cutter at 1250 rpm left a very, very good finish. Done on a Haas TM1, circa 2006.
Titan! Awesome video! I program 2 Mitsubishi CNCs. Your style of keeping the code clean is exactly like I do. I'm obsessed with this style of coding. Also I work making parts, not molds, and never can use CAM for this type of machining.
Thank you very much. Cheers from Argentina. Thumbs up for Titan!
Boom! This was awesome! Keep this type of content coming. It like visiting a friends shop on lunch and picking up a new trick.
When you get good at doing simple L repeat sub-routines, you can start experimenting with conditional statements and let the control calculate how many times to repeat the sub-routine. For example, you can use a WHILE [#3 LT #30] execute a sub-routine or a sub-program. The control will repeat the sub-routine as long as variable #3 (my Z depth variable) is less than #30 (my finish Z level). This format works with Haas and Fanuc controls that have macros enabled. It's been several years since I've written macros, but I have used them to automate thread milling and pocketing with tapered walls. WARNING!!! this is high level programming and like Titan said, you can really crash your machine badly if you don't dry run you new sub-routine very carefully!!!
Could you share a simple code showing this as a example
@@johnl5177
Here is a small Makro Program you can use to machine simple geometries.
If you understand the concept of this you can slowly add more variables do advance the Makro.
Sorry for my english skills.
Also take a look in your Programming Manual :)
#1=0(START DEPHT)
#2=-10.(FINISHED DEPHT)
#3=0.5(DEPHT OF CUT)
G0 X.. Y.. (MOVING TO START POSITION)
G0 Z..
WHILE[#1GT#2]DO1
G0Z#1
(CONTOUR)
(NOTE THAT YOU ALWAYS END ON THE START POSITION!)
#1=#1-#3
END1(THE CONTROL WILL LOOP WHILE #1 IS GREATER THAN #2)
(I RECOMMEND THAT YOU DO THE CONTOUR ONE LAST TIME AT FINISHED DEPTH)
(BECAUSE IN THIS EXAMPLE THE CONTROL WILL LEAVE THE WHILE LOOP AT Z-9.5)
G0Z#2
(CONTOUR)
@@emule1989 Oh, I like macro, it's a cool thing! )
In one of my job, i'v used that kind of loop to broch keyways whit small carbide boring bar on CNC lathe.... worked perfecly.... And on many machines u can use FOR, IF, ELSE WHILE and many other form of loop, input some variables and some math stuff (like coding in C++ or VisualBasic for computer apps) and u can create what i call parametric fonctions...Or how to be lazy efficently and get paid for it. Knowledge is power....
@@huguestalbot4543 Parametric functions meaning you can pass variables I take it? I run a machine that isn't networked, and the memory is completely full. I started making custom macros to do all of the repetitive operations, so I can go through and replace huge blocks of code with single lines. Like to drill a hole on the lathe I call my custom G code
G105 S(SFM) C(Cutter Dia) F(Feed) D(Depth)
My macro calculates the correct spindle speed and divides the depth into an even number of pecks, drills the hole, and then moves the turret home. I have a boring macro that does the same. You can pass it whatever depth, diameter, and rough opening you want, and it will bore a hole that size. Now I have plenty of memory space, but my number of programs is limited to 63 for some reason. I guess the only thing to do is combine multiple parts into one program, because our IT people can't seem to figure out the networking issue.
I know nothing about CNC etc but since I started engineering and even before I always had the question of ''How do the people make all those complex shapes and how do they program all these robots ?'' But I have to say that I hugely appreciate and respect people who work in manufacturing and make things come to life and often having pressure from the designers etc.. You are a true Professional Sir !
Titan, I am building a custom machine for CNC machining glass for a customer. I was teaching this technique to one of their techs just this past weekend, thanks for posting, now they can watch it over and over and practice
Used to do stuff like this decades ago (before all the cool CAM systems). Nice to see people still do this kind of stuff. Thanks!!
Great video titan I'm actually at the point where I understood what you were doing as you were typing it thanks for sharing that was fantastic
Thank you for this video and others like it! As a relatively new machinist, I have been breaking away from some of the slow conventional methods I have seen and been taught thus far. Your content gives me inspiration that I apply at work; I recently received a large pay increase as a direct result of me cutting cycle time drastically by applying high-speed techniques. My eyes are being opened and I am seeing how much these tools can really take! My finishes are even improving as well since I am having more consistent tool pressure with a good chipload and less vibration and better heat dissipation. Fortunately, the more experienced machinists I work with have been very kind to me in their acceptance of my way of doing things. Worrying about stepping on toes seems like a sure way to limit my potential though, so thanks again!
That’s awesome! Keep up the good work!
I use M97 and M98 to Create menus out of my codes. For Example making 1-2-3 blocks, i used M98 on a Fanuc machine to jump to each individual side to drill and tap my holes and because all of my codes were at the top and the line after each M98 was an M01 so i could stop the program and select whichever side i liked! I love Programming like this and here is an example of what i mean.
(Side 1)
/M98 P1;
/M01;
;
(Side 2)
/M98 P2;
/M01;
;
/G91 G28 Z0.;
/M30;
Second set of end codes at the bottom so if i tun on block skip i skip my menu and run the program like normal for less experienced machinists. Hope you guys find this interesting!
Just use g53 to send home better than using g91 g28 to send home.
I also see slot of programs use m3 with speed when tapping. No need for M3 or M4 tap code G84 automatically knows spindle direction. This will keep spindle from turning on at z home position won't turn on spindle until reference point to start tapping. Also with Haas you use m13 when tapping with smaller taps. This will keep spindle in high gear and takes less time to stop spindle at tap depth to change spindle direction.
I teach some CNC at a high school, lucky enough to have a HAAS. I am no pro, but I love it. I learn alot from your videos .THANKS! My students don't know why I say BOOM so much :')
It's good you show this! We use this kind of programming very often, saves a lot of time and I find it very easy to do with HEIDENHAIN. I really love the fact you're teaching this, and now I know a thing or two about 'normal' gcode too! Keep up the good work and greetings from the Netherlands!
Thanks for the great video Titan. As a 30 year manual machinist, I am now teaching myself CNC programming from the good old HAAS manual and videos like this. I recently used M97 for a program, but could have saved time with the techniques in this video. I can't wait to give this a shot!
Thank you for this! Ya make understanding machining pretty easy. Will definitely be utilizing this very soon!
It’s old but when I viewed this I remembered looping from years ago, it’s been awhile. Thanks Titan!!!
Modified it to do something different but close enough!
Love these tips videos, I now use the invisible stop all the time!
This is great stuff!!! I absolutely LOVE the way you teach and explain how to do this!! Not only are you a master machinist you're a great teacher as well!!! Love it
That was awesome!😁 Sweet method! You know I'm trying that when I get back to work next week!😂
Awesome video and perfect timing. I've just started to teach myself Macro/ Sub programming. Some of our controls have memory space issues, so figuring out Subs was essential.
Great stuff use this daily, can loop sub programs to do pretty much anything using loops.
I think manual coding videos like this are extremely helpful. Not just for new programmers but for guys like me that use use a refresher..keep this comin! Thanks
I run two fanuc turning centers with live tooling. I adapted a helix milling and flats milling macros into gcodes. I also do custom macros on the fly for repeating features at different angles. Lot of the older guys did not like this at first, but it made things so much easier to program.
Great video! I use the same process when I do cnc broaching of keyways on a HAAS VF4SS.
today I learned something new.
Thanks! TITAN GILROY I'm a big fan.
Thank you. I appreciate it!
Also I was able to make a V block and custom soft jaws that hold square stock vertically and horizontal using this technique
Thanks 😊 again.
Nice job titan i love the vids keep em coming one day i will own my own shop im determined to be able to give my kids the life they deserve thanks for all you do
Live these vids you do titan give me a good insight into what I can do better at with myself when I'm machining, BOOM brother 👍
Great tutorial , Titan has big heart
I use the hell out of sub programs and macros on the G code machines. On the hiedenhain controlled machines I use Q parameters. What you just did you could do in 4 lines with hiedenhain. It's super powerful.
Hey man we just got a machine with hiendenhain control and I would love to chat about the programming for it if you'd be interested.
After I started programing with Macros by hand, there is very little I need to do in the CAM apart from the very complex parts. I love to make programs in the machine and learning Macros was the very best thing I did, it makes your like A LOT easier. Trully recommend to everyone.
Agree. I wouldn't call this demonstration "advanced" manual programming. Switching from absolute to incremental mode and running sub routines are basic functions used daily in most job shops. Macro programming is by far the most advanced code base used and is extremely powerful. He could have shown a simple example of using macros by having multiple parts in the machine and once the first part is complete a macro statement would execute the machining of all parts.
Still an informative video for those learning the basics.
@@Jas0nAnders0n I personally never change to incremental since it's very dangerous if you somehow leave it on, never needed it anyway after learning macros.
I agree with you, that is basic, but today where everyone uses CAM, things like that became advanced since not everyone uses hand programming anymore.
But it is always nice to see new videos like this for the people that doesn't know how to do it.
I would like to see CAM programming together with Macros, which is the next thing I'm learning little by little.
@@bruno100cdz Incremental and macros go hand in hand. It allows you and the control to do less math, therefore resulting in shorter programs and generally much easier to read/understand. CAM with macros is the best of both worlds, all the power and flexibility at your fingertips.
Used it many times. A time saver.Tool change is one I like. Have seen so much time lost in tool change.
Just starting this coarse and I would like a playlist from beginner to advance
Awesome video Titan sir,
Keep posting such Fantastic contents and I would love to see a separate playlist for advanced manual programming G and M codes.
Waiting for more such interesting contents ahead thank U 🤘BOOM
Amazing trick! Titan please make a video about how to achieve 3D surface smoothness when machining with ball end mills!
Great video, Not many videos out there in this much detail. I like to use helical cycles when I program on the haas machine. Program below is an example of a 20mm hole using the loop system on haas control to mill a hole (won’t work on Fanuc machine)
(Helical milling);
G00 G17 G21 G40 G49 G80 G90;
G53 Z0;
T1 M06
M03 S15000;
G54 X Y ; (x & y being the centre of the hole you want to mill)
G43 Z50 H01;
G01 Z2 F4000;
G91 G41 D01 X0 Y10 F6000;
G02 Z-2 X0 Y0 I0 J-10 L31;
G02 Z0 X0 Y0 I 0 J-10;
G90 G01 G40 X Y;( x&y being the centre of the hole you want to mill)
G00 Z50 M5 M8;
G53 Z60;
G53 X-750 Y0;
M30;
Great video, this is stuff I wish I would have learned in school. I was just starting to get the knack of running and tweaking when I had to leave to take care of my baby boy. I feel so rusty now...
Awesome little snippet. Your dedication boosts my confidence everytime I see your videos. BOOM!
Just a though: Ramping Z will add better finish and shallow scallops.
Lots of variations, just wanted to teach something cool
I have used this hand programming method a zillion times, and there are many times it's easier than using cad simply because it can be quicker, without having to draw and then write a path, download, etc. Especially handy for one off stuff. I also use it with any shape, circles, and some simple curves etc. Just remember to take his advice on G90/91 issues. Run above the part first! Good video!
Please keep bringing manual programming. I have a lot of catching up--- I spent 15 years in prison. It's really tough to compete with people that have a better understanding--- and my criminal record prevents me from getting the top or any job.
Thank you so much!
Titan did time. He seems to be doing alright. Keep grinding keep learning. You'll be alright.
I sure do appreciate you Titan. I practice Fusion 360 daily. I watch your videos and other machining videos. You add value to the whole country. God smiles on service to people. God bless you.
Does Fusion 360 automatically does this style of program? Or would it work from the top, where it makes a plunge, works in the XY axes. Once that z plane is complete, it takes a deeper plunge and repeats until the cut is complete?
Excellent question.
He programmed it that way because his tool was long enough to take the full depth but not the full width of the material being removed. To cut from the top down he would need more cutting passes along the X axis and when looping the cuts with a sub program the way he did, would have ended up cutting alot of air the further it stepped down in Z. The program would easily have taken 3 times as long to run with a lot of wasted moves toward the bottom of the part. Bottom up programming in this case is simply the fastest way to get the part made and keeps the program the shortest.
I do not use Fusion 360 personally but most CAM software can cut from the top down or bottom up. I would expect Fusion 360 to be no different.
NIce video, I did never used the M97 and I think I will love it
Back in the day, i used to use a sub incr z+, prog loop, works a treat, in heidenhain, or m98 /m99 also incr scale factor to produce pyramids, you can work out the tangent and create the x/y stepovers to create the angle, also linear polar and angles can do loads for way less code, just link the subs together
Most Miller's would have a bunch of subs tucked away
This was back when cad was only used for more advanced profiles
Mate!
Cnc shop I worked at, was running for years without subs, programs a mile long on repeater parts...
I reprogrammed everything with subs...
Everything is so much easier to adjust.
40 parts on a jig.. female 36mm between flats hexagon,fully deburred, 4 holes on the OD, chamfered and back chamfered.
1 main program, 5 subs.. done.
Boom.🤘
Great little video!👍, glad it’s not just me that likes to keep things clear by throwing in some EOB’s, Nothing worse than trying to trawl through a program that’s all bunched together. Look forward to your next vlog. 👍
Love from India 😍❤️ u r awesome
love every single video on your channel. i wish you would do some more lathe videos though :) but mill is good knowledge too. One of the coolest channels on youtube BOOM BOOM BOOM!!
Haas' use of M97 is and has always been a fantastic feature. Try using G52's for multipart positioning, incorporating M97's for the subs. In other words, you can either hand program or use cam for the subroutines and position multiple parts with just one work offset(G54-G59). I've set up jobs with over 250 parts on a 4th axis tombstone, sitting in a vertical haas this way.
Thanks for the great lesson!
This technique is used on the turret punch press machine in our shop to repeat features with an incremental shift to make a bunch of parts on a piece of sheetmetal. Controller is a bit older though, LOL. 1984 FANUC GN-6.
Later Fanucs in lasers and punches, you can use a G98 code to set origin, pattern spacing and xy repetitions. I use it all the time on an EMK Amada Turret Punch press for each tool.
Man, i wish i could afford to get lessons . I like this kind of stuff.
Titan - master of machining Simple and easy way how to ramp 45 degrees
like it !
I have used macros to do something similar, except it milled a conical chamfer on the top of a bore with a ball end mill, and the angle was specified for the macro. The G91 is the perfect way to do many different ops with very little code.
Sub programming is where it’s at great technique 👍🎯
Titan! Please! Do more tutorials like this. When you dont have to make difficult part in cam and / or you dont have time to sit and do it in CAM in office.. Just by hand fast and efficient.. Many of us have kinda simpler parts than that aero space which are insane! Appreciate the vid! soo cool!
On a siemens 848D it is quit easy to do. This controller lets you rotate the axis and that is on a 3 axis machine.
That works well on a lathe if you have multiple sized spacers you can use sub programs
Although i am not good at English but you explain quite clear thank you so much.
Nice video as always. :)
I'm now a Heidenhain guy. I make programms only by hand. The subs are the best way to make programming easier.
I think you can have a video about macros (on HH Q parameters). The whole world changes with them. On the older HH CNC234 (20+ years old) I make nearly all the cycles that my TNC640 have by hand programming, with subs and macros for 4 axis and I can do helical milling and ramping with only few lines of codes.
I don't know how it works now on Haas controller because it was 3 years ago I last worked on a Haas but on a the Fanuc basis controllers I'm working on (NCT for examlpe but if I remember right Fanuc can do it, but I need to check it) I can use "I" before the axis letter and don't need G91. It is a more safer way. For examlpe IX, IY, IZ and so on.
Used to work in an aircraft place and alot of the guys did this in HH, macros are very cool if you can get your head around them, q defs allow so many variables
But most shops run down the line now, off m/c with setters/ops.. Its all changed :)
Hello from Romania! GREAT video Titan, I was very excited to discover M97 on HAAS :D
I usually use variables on haas and fanuc machines and do the same thing
So the program will looks like:
M6 T1;
G00 G90 G54 X-0.325 Y-3.75 M3 S12000;
M08;
G43 H1 Z0.1;
#1=-2.25; (Z START POSITION)
#2=-0.325; (X START POSITION)
N1 G00 G90 Z#1 X#2 F100;
G01 G91 Y4.25 F300;
#1=#1+0.05;(WARNING INCREMENT NEED TO BE SUBDIVISION OF Z FINAL POSITION)
#2=#2+0.05;
G90 Z#1 X#2;
G91 Y-4.25;
#1=#1+0.05;
#2=#2+0.05;
IF [#1 GE 0.05] GOTO 1; (Z FINAL POSITION 0.05 above the surface)
G00 G90 Z0.1 M9;
M5;
G28 G91 Z0.;( BOOM!)
M30;
I work on a fanuc machine so instead of a M97 i use a while loop instead of a M98, the beauty of the while loop is that you can increment variable values using X#1 Y#2 and z#3 making it a very powerful technique to use
Jean I also work on Fanuc Robo drlls.Could please explain how to use the x#1 y#2 z#3 technique or @ least where to find it to study it. Thank You.
@@reusmc You need to read up on macro programming. The while loop works as follows demonstrating a simple square:
#1=0 (counter);
#2=10 (x value);
#3=10 ( y value);
while[#1LT10] do1; (LT=less than LE=less or equal)
N1 g1 g90 x#2.; (pass1= 10mm x+, 2nd pass= 11mm x+ etc)
y#3.; (pass1= 10mm y+, 2nd pass= 11mm y+ etc)
x-#2.; (pass1= 10mm x-, 2nd pass= 11mm x- etc)
y-#3.; (pass1= 10mm y-, 2nd pass= 11mm y- etc)
#1=#1+1; (loop counter when it gets to 10 the loop stops)
#2=#2+1; (10+1=11, 11+1=12 etc)
#3=#3+1; (10+1=11, 11+1=12 etc)
end1;
so this could be used in a pre drilled hole and then ramp it up to a bigger shape from inside, or starting outside and using "-" and reducing the size of a block etc. good luck :)
Very Nice. I'm always doing manual part programing for just like this, conical shape cutting, 3D "V" shape in segmental of circle, spiral grooving, part of circular segment with variable depth, scroll grooving etc. etc.
My shops setting up a couple VF2's do I can start running production while programming and running intricate parts!! BOOM!
Ahh your sub program is a label on Heidenhain which I programme and operate! We can also write complete different programs and also call them up in a singular programme! Very enjoy these videos keep up the good work!😊
Gotta love Heidenhain. I also run 5 of them at our shop, big horizontal machines.
You can run this code on a Heidenhain in ISO. It also uses YASNAC just like the HAAS does. If you are really cute then use a DO_WHILE loop.
The thing about Heidenhain is that it is more expensive and these HAAS machines are cheap to buy.
I use m97 subs all the time, i sometimes even use subs in subs for boring cycles or for canned cycles.
A nice one i use is say imagine have a plate with multiple holes some drilled through and some tapped ect... I will enter a canned cycle then L0 on the same line and the next line having my sub but the sub will have just be for hole centres so that way i can seperate the holes to what I want. When writing the program and i change tools i just pick which sub i want to use with each set of holes but put the canned cycle just before calling up the sub
E.g.
T1 M06; (centre drill)
G43 H1 D1 z200.;
G17 g21 g40 g54 g80 g90 g94;
X0. Y0. M8;
S5000 M03;
Z10.;
g81 g98 R3. Z-1. F100 L0;
M97 p100; (6mm through)
M97 p110; (M8 tap)
G80 z200. M9;
M01;
T2 M06; ( 6mm drill)
G43 H1 D1 z200. M8;
S1200 M03;
Z10.;
G83 g98 R0. Z-30 I10. J2.5 k2.5 F80 L0;
M97 p100 (6mm through)
G80 z200. M09;
M01;
Ect..
N100;
X-50. Y50.;
X50.
M99
N110;
X-25. Y0.
X25.;
M99
i will use subs to pick the hole centres then enter another sub for the boring/ramping cycle e.g. 20O/D hole 10mm deep with a 10mm cutter
N100;
X-50. Y50.;
M97 p150;
X50.;
M97 p150;
M99
N150;
G0 g90 z0.5;
G01 g41 g91 x10. F500;
G03 I-10. Z-0.5 L21;
G03 I-10.;
G01 G40 x-10.;
G0 g90 z10.;
M99
I only started learning cnc programming a couple of years ago, i was a conventional machinist before that,
My sub programming knowledge is self taught
That’s Awesome. Thank you!
We use this technique all the time when broaching internal keyways... Exact same programming at the machine.. GREAT VIDEO!
You broach with the cnc?
@@therussianmachinists2409 Guessing they are plunging in the Z axis with the spindle oriented and not turning. Just clock your broach in the spindle with an indicator and it should orient pretty close. Then you just plunge, come up, move over, repeat.
I do this in the lathe, works great. Edge Precision has a good video on it too.
@@ashleyaewells if you use the haas lathe with c axis spindle/brake just use g71 much easier. (Parameter 315 bit 1 Set to 1)
internal spline or keyway broaching
@@Innov8cnc I'm running a Mazak QTN350, no C axis. I lock the spindle by turning it on at zero rpm and use my own macro for broaching
Incremental booms are the best booms. Boom, Boom, Boom, Boom!
Great video awesome tip! Hey I just picked up an Mlock vise from ASI Mechanics. Wicked fast setup and 12,000lbs clamping force BOOM!
Hey titan it’s me again! I really enjoy your videos, and I found a HAAS vf3! It’s been great so far but I’m only set up for 3 Axis parts right now. I’m wondering what is your best and fastest multi vice, multi operation set up and tips! Thank you.
Use same formula with a G13 for boaring a hole or pocket with I,J,L and Q...(depending on application) 1 line 1 hole or pocket minus tool pickup, homing lines, ect. Great time saver for any machine use it a lot
It would be great to see the material being cut alongside the machine control. Then we can follow along with the coding.
It goes to position then repeats the lines from n1 to m99 right up left up repeat
Awesome, great video.
Great job brother, I teach at a University and I would love to take some training with you! Very similar style, meat and potatoes.
you are outstanding me and my brother went to Hass open to day little BOB showed us your site wow we have struggled for years and argued over the running of these machines
I run wire EDM machines and use sub programs quite often. We made fixtures for machining multiple parts one after another, and my predecessor used to program the fixture in one long string with the CAM software. 10 or more parts in one long program. Just program it once, move over, and run it again, boom! 😉
It's a whole lot easier to follow that way, and if you have only a few parts left to do (and you're not going to be around) you can VERY quickly stick in a stop so you don't waste wire machining thin air (water)
This is a great trick and useful for learning sub programs.
Are going to do any video about how to use sub programs for multiple parts with M97 and G154? It would be awesome to learn.
I use this a lot. So quick and handy!
The god among the cutting machine operators. 💪
Funny thing is before I got into the programming part of cnc I always thought this is how programming is like and I thought that is just crazy who have the time to put all those numbers in 😂.
Make it parametric so that it can be used in more situations.
Or should I do it and post the code here?? And you can explain it later
Good video Titan 👍
I teach my guys to use a sub for safe start and another for safe end so like M98P1 safe start
M98P2 safe end
Both progs the same but P1 leaves table where it is P2 parks table at load position or door.
Sub should have all you cancels in even mirror and rotation and G52 X0Y0Z0 G40 G90 M9 if you follow.
So then at the start it
M98P1
Call tool and all that
Then cycle or whatever
M98P2
M30
BOOM 💥
best to use P8001 & P8002 so you call lock it out so it can’t be changed with the parameters.
It’s good with 5Axis as well.
Keep it real my man! 👊
Looks like this on a Fanuc UK
O8001(safe start sub)
G17 G21 G40 G80 G90
G94G98
G0 G52 X0 Y0 Z0
G69
M5
G0G91G28Z0M9
G28X0Y0
M201 (cancel thru spindle coolant)
M69M72
G0G28A0C0
G40G90G49
M99
Works perfect 👌 Boom 💥
I’ve been running Kuraki HBM for 15 yrs now. Can you make a video using any of your Horizontal Boring Mills? Love to see how you guys demonstrate any sort of Cogsdill U axis heads for contouring. By the way, I just found your channel 2 days ago and subscribed. I’m a fan! Titan, keep up the great work man! Cheers from Houston,TX 🤘🙂🤘
Probably best programming video you’ve released yet!
Great video. I use M98 a lot for sub programs (mainly Renishaw probe programs) but I've not used M97 before so thanks for that. Every day is a school day in engineering!
"Every day is a school day in engineering" good stuff!!
The difference between shorthand and longhand
I dont have enough time in my day now yet to teach my guys programming. I will get there because in order to grow I need more machinist to know how to program. I make them watch me program while I explain what I'm doing. Baby steps. Equipment is not cheap .. I refer them to your videos all the time. They keep showing me videos of some of your tool paths and ask me to program their next job that way. If the tooling will allow it I will. I spend good money on tooling to test new methods everyday. I'd rather go broke trying than go broke old skewl
Ive been working in a machine shop for 10 years now and i thought i wanted to do something new but now since watching your videos ive taken it upon myself to re organise machine areas and seek the fastest most efficient way to machine parts, nothing will compare to your absolute perfection of a machine shop but every little bit helps at work thanks mate
Superb Titan, give me a shout if you're ever over in the UK or thinking of starting up in the UK...lol!! Would love to work for you. Keep up the good work😉👍
Absolutely great
I am CNC machinest
And i operate CNC optical profile grinding,,,and the machine is waida,,,,
I put program is only, radius,line,champer, y,x.f. but G code i never use thats why i want learn more,,, actually my machine is
5 axis x,y,z,c,b,
your machine and your tutorial is very good and gave a lot of information from you sir,,thank you more blessings and God bless you
Always watching
#philippines
I prefer using G92 for this sort of thing. That way my subprogram stays in G90 for easier visualisation, and the only increment I need to keep track of is the tool position at the end of each subprogram..
I always enjoy watching it. I am using haas machine vf-2 vf-5 ec400 in Japan. It's a very motivating video that I use for my work. boom! boom! boom!
We had two old cnc lathes that had to have their entire program written in incremental. The new programmer and newer supervisors kept crashing it thinking they knew more than us older experienced operators. Rather than admit they could learn a thing or two from the old guys on the shop floor they blamed the crashes on the machine being old to the plant manager. Their solution was to scrap both cnc machines and replace them with something they understood. A boat load of money later and the two new machines produce 3/4 the amount the old ones did with experienced operators.
If your running a part where one critical feature such as a groove is dimensioned off another feature that needs constant tweaking because of tool wear, that's a good place for a few lines of incremental code. You only need to adjust for wear and the incremental feature remains locked where you want it. They can be dangerous if you have a new guy trying a machine restart in the middle of a program if he's unaware incremental has been implemented in the program.
i like the subs i used them when doing alot of drilling you can use the subs to break up tapped holes and counterbored and thru holes in different subs lots of copy paste and i also used G91 and broached in the mill locked spindle and up and down in Z stepped over in X or Y
Happy to be with you guys.
Sir, u r the best
Good video. Maybe show the team a simple program for cutting a round circle in aluminum softjaws. Many times you need to hold a round part upright in the machine.
Haas is easy, simple one line G13Z-.5I1.Q.2K2.D01;
brother publishes a good table to locate revolution and advance depending on the blade and the material please, gong video thank brother
Knowledge of G/M code programming and macros is crucial to proof CAM generated data. In my shop, I do not allow hand programming unless there is no CAM solution possible. The reason I do this is data management is far easier in the CAM environment compared to the G-code environment. To keep up with revisions of model data and programming changes - everything is in one place. As soon as a machinist or operator starts making improvements to the G-code on the machine - I have to manage those changes separately from the CAM based changes.
The time saved by 'fixing' it at the machine control is a fraction of the time wasted trying to manage changes coming from two sources. It is critical that the machinists know G-code very well, but only for the purpose of interpretation during setup and developing post processors IMHO. It is all about speed as Titan always points out.....
I agree in a production environment, but in a short run piece environment it takes a programmer too long to draw a part, tool and make a program. I can do it much faster my way.