I'm really glad the shop I work for uses dedicated fixture plates on schunk tables for almost everything we do. There's no probing necessary on all those individual parts when you already know exactly where they are! We mostly only use vises for prep cuts and op1's on certain parts.
Another handy use for M97, is for multi tool holemaking. Just put all the xy coordinates i the sub, and call up the sub program for location for spot, drill, tap, countersink, etc. This method has two advantages, one it reduces the size of the program, and two makes use of one set of coordinates, which means any location tweaks carry over to all operations, so theres no possibility of missing a coordinate on one of the operations.
Dang, this guy is so good to watch, so informative, entertaining and a great teacher, and I don't even have any machines yet and I love watching his vids! Awesome job Mark!
I agree with the subroutine calls, but I personally like using M98. It allows for making edits to only one subroutine and not messing with the main program. I know...everyone has their preferences. I also prefer to run the part to completion. This shows only running the first op, but many parts are cut on 2, 3, 4, or even all 6 sides. Using the same technique, use work offsets / vises, and group the program by tool to reduce tool changes. The big advantage (comes from "LEAN MANUFACTURING") is that every time the doors are opened, a completely machined part (or set of parts) is removed. This eliminates wasted time in excess handling. Just another way to reduce time and improve productivity. PS-by using M98 (M97) subroutine calls, we have been able to reduce our cycles times by 20-40% (versus single-part running).
G52 is your friend here. One work coordinate and a limitless amount of parts can be made. Another key factor is subplates, tomstones and pallets. If you want to run high numbers, yet still be nimble enough to jump in with small batch runs, you have to get away from the vise. Haas' M97 feature is literally one of the slickest items they ever put into a controller. I've been using them simce 1994, running as many as 260 pieces at a time on a VF2 with a 4th axis tombstone. All with one work coordinate. For the naysayers that say you can't pick up where you left off on a broken tool or scrapped part, that is simply not true. With G52 I can restart the machine and begin at part number 88 on a 120 part run without skipping a beat. It always amazes me how many machinist do not know how to do this. Great vid that will hopefully open some eyes.
What I have found working in a production shop for 18 years now is running tons parts at the same time isn't always faster then running one or a few parts. Tool changes is only a small part of lost time in large production runs. You have to first mount multiple vices them tram them in, setup multiple work offsets which will always change each time you run that job. Once you have all that set and parts running you have to then load and unload multiple parts after blowing them all down of coolant and swarf. We used to run a part with runs of 300-600 very basic flat mild steel with 2 17mm holes in runs of 50 parts stacked in a few piles on the table and found running 4 at a time was more productive because it took so long to blow all the swarf and coolant off each part so as not to make a mess of the floor and tables. There is also the risk of a tool wearing out mid cycle and tolerances change so you risk rejecting multiple parts instead of 1 or 2. Don't get me wrong there are many ways to be more productive running multiple parts as you said using fixture plates where you load and unload parts outside of the machine while the spindle keeps running and making you money but running multiple vices isn't as efficient as you want them to be. I try to make as many fixture plates as I can for this reason alone to keep the spindle running as long as possible and thats working great for me so far. What I really like is 2 of the mills I run have partitions in the middle of the table so while one side is running I'm loading the other side and the program just repeats over and over until the job is done so the spindle rarely stops during the day.
Sometimes running a part would take more than one hour and when you want to make several of them, then you can set up all of them and do other jobs for hours.
It's certainly application specific. But I'll say this, the time savings boils down to a percentage...so the time saved in going from 1 to 2 workpieces is a drastic improvement; much more compared to going from, say, 12 to 16 workpieces (in which case the savings each successive part is negligible). I think it might mainly depend on the quantity and the workholding methods available at hand. If you can fill up a subplate with many small items then it might be a good choice so long as the number doesn't get too crazy, but if you run standard mill vises then maybe adding a few more workpieces to the same vise can't hurt. I'm always confused when I see people making individual 2" workpieces one at a time in a single 6" vise...
Yep I totally agree with you there that it works in certain situations and time savings certainly change depending on the work holding method your using for sure. We find we are most efficient when running 4-10 parts per cycle which is a very basic setup usually 2 piles of parts stacked 2 to 5 parts high depending on the thickness of the material and usually just 1 or 2 clamps holding them down so change over time is quite fast .
That's why it's ludicrous to not buy the probing systems. I have added probing to multiple programs. One of our big runners that uses 12 offsets used to take 1.5 hours to set up. Now it's 40 minutes and all but 4 minutes is switching jaw plates to the nesting and pinned ones I made. I added in a bunch of G10 commands to set all Z offsets at the end of the probing program. They stay within three or four thou, so why not. You can write custom macros to shut down if a tool measures beyond a set limit from what I understand. Possibly change to a different tool. I intend to explore the addition macros in many ways.
I am just a wannabee, but Haas looks like a really well-ran company with probably the best value. This guys videos are awesome. I like what he said at the end of the video. It is how fast you can finish the last part that counts.
You may be new to CNC or Haas, but there are much more efficient systems/controls made by competitors that easily outperform all Haas machines. There's a lot of hype around this brand for good reason, but Hurco, DMG Mori and many others are much faster and easier to setup and run day in, day out.
As someone who's worked as a setup guy in factories for a while, it amazes me that this isn't common sense to some people. I've walked into factories and had cut run times down to a faction of what they previously were, buy setting up 4,5,6 separate operations on the table at once. You have multiple sets of work offsets.... use them
You can set in MDI G10 Q2 P1 (G54) G10 Q2 P2 (G55) etc ..... All excellent points for saving time, but you need to factor in setting up a vice, parallels, stops, a work coodinate per part, and make work shift or TLO changes for different heights. For lights out running large quantities definitely worth the set up / program time. Good video
I love these "Tip of the Day" videos!! Keep em' coming! Also, could you do one for a G18/G19 plane shift? I have a 90 degree Lyndex head that I would like to get some more use out of.
While it's implied, the video didn't mention all of the time needed to place the multiple parts across the multiple vices, then running the probing cycles that establishes each part location (center of the blocks, or x,y origins, and z surface heights.) These processes add to the setup time initially to be able to run multiple parts. I suppose it's still less significant in a production environment but worth a mention?
First time watching your videos Mark, they are awesome! In addition to machining multiple parts with G97 or G98 subs, more time can be saved by choosing the order in which the parts get machined, to shorten up travel on any of the axis. For instance, on your video, start all spotting, drill, tapping, etc from left to right, since the left vise is taller you can move the initial Z plane closer to the top of each part and use G99 on all of the parts. Furthermore, if this setup is for production parts and will run for a decent period of time, it is worthwhile to review each sub and change the order on which the features are machined. Once again, with the purpose of minimizing the travel of the machine from one part to the next. Even a split second saved adds up at the end of the week. Great video, Thanx !!!
Alex - Great ideas. Every second counts, and once you start thinking about these things, it becomes a good habit. I’ve seen some, on large machines with slower rapids, use long holders for their drilling operations so those tools don’t have to rapid as far in the Z. Good stuff. Get’s me thinking. - Mark, Haas Tip of the day
Hi Keith! Wow. I looked up our correspondence from years ago, and the emails could have been the script for this video. Thanks for your great question, input and feedback, now and years ago! - Mark, Haas Tip-of-the-day
This is ok for 10 parts but I am running 6 pallets with 24 parts on each pallet. This would take 144 different offsets. Here is a way to do it with macros and g52's. I have a row of parts 2.7 inches apart in Y. I can set my G54 right in the program then use a coordinate shift (G52) for each part. #5221= -13.814 (G54 X) (this sets your G54 offset in X) #5222= -3.6 (G54 Y) (this sets your G54 offset in Y) #5223= -16.35 (G54 Z) (this sets your G54 offset in Z) #5201= 0 (G52 X) (this cancels any G52 coordinate shift in X) #5202= 0 (G52 Y) (this cancels any G52 coordinate shift in Y) #5203= 0 (G52 Z) (this cancels any G52 coordinate shift in Z) G00 G54 G52 Y0 M97 P1004 (goes to line 1004 and runs 1st part at g54) G00 G54 G52 Y-2.7 M97 P1004 (goes to line 1004 and runs 2nd part shifted by -2.7 inches in Y) G00 G54 G52 Y-5.4 M97 P1004 (goes to line 1004 and runs 3rd part shifted by -5.4 inches in Y etc.) G00 G54 G52 Y-8.1 M97 P1004 G00 G54 G52 Y-10.8 M97 P1004 G00 G54 G52 Y-13.5 M97 P1004 M01 And repeat for each tool. This way all the part positions stay with the program.
Thanks for sharing these daily tips. As a student currently learning machining to become an operator with cnc machines this video was a wonderful look into increasing efficiency
make sure you get into programming and setup, cnc operators are poorly paid and are essentially just button pushers. Most shops will train their operators only for a few days.
This is exactly what I was asking the people who sold us the HAAS, how to do program with subprograms for multiple parts. They could not answer. This video is great, I only wish it came out 7 years ago. I do multiple parts all the time and now will utilize this program. Would be nice if you would go into more details. On how to do Fixture offset, how to set up tool. More details on programming, step by step so to speak. Please.
Anshel - Check out this video we did on setting those offsets, th-cam.com/video/uNjMIIRttFE/w-d-xo.html. We’ve left links to all of these setup videos in the description of this Complete-Part-Setup video as well: th-cam.com/video/gbcMm-rSXZY/w-d-xo.html. Thanks for the comment. - Mark, Haas Tip-of-the-day
Thank you, I have seen those videos. I still do not understand how you set up the fixture offset for that many parts? I probably missed something in the video. Are they all 154 P1, 154 P2 and so on?
Anshel - I typically use Work Offsets G154 P1 through G154 P99. Our G154 expanded Work Offsets are listed on the Work Offset page below G54-G59, and work just like G54-G59 do, with one Work Offset per part. We set each Work Offset manually, or with the probe. The “Complete Part Setup” video, shows how to set each Work Offset. The example program at th-cam.com/video/NutStjpWJck/w-d-xo.html shows the code we’ll need to run 2 parts, with 2 tools. This can be expanded. Shoot me an email at TOD@haascnc.com and I can answer any question you might still have. - Mark, Haas Tip-of-the-day
how are you changing your z values. when i do this i usually just copy and past my toolpath for each tool calling a different workoffset. i also turn off h and t code agreement (dont like to) and use different h values on the same tool.
this is only valid in an ideal world. without errors. and without tools breaking. especially restarting a program somewhere in the middle after fixing an error. (machine error i mean)
These are excellent videos, I really appreciate the content and the time to make them. This is first time I've seen an a bad practice in one. It is never a good idea to hammer a part down in gripper jaws.
Curtis - That is awesome. Great comment. Makes sense. If I hammer things down with dovetail or gripper jaws, after I’ve tightened them, all I can be doing is loosening things up. Maybe snug, tap down, fully tighten? Thanks for the comment. - Mark, Haas Tip-of-the-day
This is basic machining productivity information that should be commonplace. We've been making dedicated pallets and using "M97" type programming since we got our first high end VMC in 2008. Hurco and Siemens controls both make this type of programming extremely easy. You don't need to use an M97 command, nor do you write any sub program calls. Just probe (or program if you designed/made the pallet in house) your coordinates of each setup and tell the control which program to run. In fact, we save even more time by reducing tool changes to the bare minimum by taking this concept one step further. This can be done by posting each tool as it's own program, then add them in your pattern setup on the control. Add tool probe check to protect against broken tools and sister tooling for a lights out operation. By the way, mounting all these vises directly to the table is insanely inefficient as well. Invest in a Pierson Workholding Pallet system and mount all of your vises to pallets for 30 second changes that require no indicating. And create your own dedicated fixtures when the production run is more than 50 parts. My 2 cents from years of making it happen...
Sorry to hear hurco most junk machine tywain made had 5 axis that was throwed in with big dmg as we said was corvett but hurco was a chevett been try sell cant give away software contol glitch and spindle is chisle use so we only hack with hurcos
Richard, these videos go into that process more in depth. th-cam.com/video/uNjMIIRttFE/w-d-xo.html and th-cam.com/video/AyMsFtwzrmI/w-d-xo.html for more information
Sorry for my bad english... Generally great advice... but... You haven't told: as a lot of time will be required to set offset for all details. At small quantity of details in party it can not justify.
Right. I'm sure that if you are running multiple parts that those height offsets will hold relatively true for part 1--1000. Taking the time to set up for a large part run will save significant time throughout the run and as was seen you can do other things while the parts run.
I think what they meant was that if you're only doing a short run, setting up tons of different workholding solutions and doing a mish-mosh batch of stuff on there might cost you more time in getting all the different offsets locked in than just working off one vise and sticking with running simple jobs.
QUESTION: how do you offset each tool to be a different height? does the same tool have different H values in the tool offset page? for example the first sub program tool(vice style 1) will touched off the top of the stock, with th H1 call out, for the next sub program will i have to touch off the top of the stock(vice style 2) and use H2 instead?
We will set all of our Tools at one spot, and record their Tool Offsets, we will then set a Work Offset for each Workpiece (Part). Each Part is given it's own Work Coordinate System, like G54, G55. The method differs if you are setting manually, or with a probe. We have videos on both. th-cam.com/video/uNjMIIRttFE/w-d-xo.html, and th-cam.com/video/5I1eG49XnTA/w-d-xo.html, and we will be posting another video on this in the next month, so check back.
Jenacbxx - Great comment. Reversing toolpaths, between parts (or even just between long rows of holes) can save a lot of time in wasted rapids. Thanks for the comment. - Mark, Haas Tip-of-the-day
I like too finish the parts complete before moving too the next. small shop no second shift half way through, stop the machine pull out the finished ones load it back up and go home.
Working for a small-medium sized company most of the parts I get range from 1-2 or maybe a dozen of any particular part. most of which are one time runs or something I might make twice a year if a recurring contract. It gets annoying as management gets restless because of the slow pace, I get annoyed because every day is like starting from scratch having to program an entirely new part and having to make yet another one time fixture widget. Parts that are not complicated but sometimes require 3-5 different operations on a vertical mill. Cycle times are short but the setup/tear own/reset for the next part eats so much time.
I really like this stuff, been doing this kind of thing for 20 years, I do wish all controls did internal sub calls. I also wish Haas had something equivalent to a G66 modal macro call. Then you would just do 1 macro call per tool and a list of work offsets, and that list could be put in a sub so you only need to edit 1 list and it gets used by all tools.
Andre Blanchard - Thanks for the comment! I’m with you. M97 is just one of those things that Haas has really done a good job with. Very nice code. As far as the G66 Modal Macro Call, I hear you. This has been submitted as a Software Enhancement Request. I’ve just added your comment to the request as well! Thanks again. - Mark, Haas Tip-of-the-day
That setup is way overkilled, you're right it's more productive to run multiple parts but there's sill room for improvement. what I would do is setup a multiple vises and run many parts in a single material bar, if double vises are available you can run 2 bars and doubles your productivity, all toolpaths can be programmed to fit as many parts on the material bar.
Armando - Check out the fixture, on the left, at 09:30, I think this is what you are describing. That’s a great method for making lots of small parts. For that kind of setup, you might still use an M97 for the second operation on the parts, so we can make minor offset adjustments for each precision part. Thanks for the comment. - Mark, Haas Tip-of-the-day
Mark I have a question for you? when are you going to teach how to use a dial indicator on a D-hole because on a regular hole is easy to do and how does D-hole gets dial in? Thank you from Nevada
Hi, love your videos! Question, how do you set the work offsets for each p value, and when would this style of programming be beneficial over standard g54, g55 ect offsets and using a canned cycle. Thanks!
RiskyEndeavor - G154 Pxxx Work Offsets work in exactly the same way the G54-G59 Work Offsets do. We typically use them when we are needing to work with more than a few Work Offsets on the machine at once. We have a couple of videos that show how to set Work Offsets, th-cam.com/video/uNjMIIRttFE/w-d-xo.html, th-cam.com/video/AyMsFtwzrmI/w-d-xo.html, and th-cam.com/video/5I1eG49XnTA/w-d-xo.html. Thanks for the comment. - Mark, Haas Tip-of-the-day
It used to be that you could only use external sub programs on those machines, using an M98. I’m not sure if things have changed recently. We’d have to reach out to their applications people and see if things have changed. Internal subs are really handy on Haas machines.
Mark, how do you program the location of each pice? If I finish the first batch then new pieces must be 100% at exact location as the previous ones. Do I have to check new each location? Thank you.
33years machining the haas contol stay pretty much the same seen the orange crt screen to the led used today but buttons stay same no other machines are like this and proves haas best control over my 33years as have run makinos to dmg best to run haas machines as may not been as fast machine but was much fast pushing programing the haas as every type prg i saved a generic copy that to new prg then just change what needed by minimum speed feeds and location and z detpth you off and run n like quick code but at your desire this way you build custom one off part and to do this on fanuc or heidihine control was much more in depth and time consuming
That is the real question isn't it. As production managers we really have to run some kind of Break-Even Analysis and decide if we are running enough parts to recoup our setup time. Some quick math, scratched on the back of an old print and we should be able to get a good feel as to which jobs are worth the work. For higher volumes, this can really save you some time, by increasing your unattended runtime and allowing you to step away from the machine for a longer amount of time, even getting a full table worth of parts finished while running lights-out. Great comment, we have to ask the question.
2:13 yeah but you need still same time each part to manual replace new stock. if one part has failed probpably all part on setup is failed. if run one part you can inspect after hit green. oh wait something wrong red button
Last time I checked there are not 2 ways to call subs M97 & M98 as said in the video. There is also G65, this is an external sub call much like the M98 but with an important difference, the G65 allows the addition of an argument to be added to the command... Any of you boys with a renishaw probe that understand how to use it should know this. So a correction that there are in fact 3 ways to call a sub!
when your doing your probe routine instead of doing 54 for g54 you type in 154.01 for g154 p01 and 154.02 for g154 p2 etc etc and so on make sure you type 154.01 if you type 154.1 it will set offset at g154 p10
Daniel - We’ll set the G154 P1, P2, P3, in the same way we would any regular part that uses a G54 or G55 Work Offset. For more information on how to do this with a probe, edgefinder or indicator, check out the Complete Mill Setup video we put together: th-cam.com/video/gbcMm-rSXZY/w-d-xo.html. - Mark, Haas Tip-of-the-day
I believe you take datums on every part at dedicated coordinate offsets in the machine one time, then use those offsets in your g-code. At least that's how it worked on my sinumerik machine.
Wouldn't you have to re-probe each part in each of the vises after the first run if you did it this way? I'm probably missing something. I'm an amateur. Thanks!
Jackson im a machinist. You just make your X offsets on the very edge of the vise. Then just hang it off a very little bit. Your Y would continue to be the same. Always leave room for human error when cutting your work.
When I worked a Butler Industries we made almost exclusively Aircraft components. Now none of our machines came close to the one in the video but those guys couldn’t hardly look away and I’d hear words that blistered my ears as the end mills went woogady and ate the part, fixture and clamps. What happens if this computer get a power spike or just forgets what to do?
Abby - It is all about repeatable processes isn’t it. If we can get something to repeat with good fixturing, tools, programs and machines, it can be automated. Things have gotten a lot easier with modern tools and tool coatings, and the continuous improvements we’ve made on the machines. We sell a lot of machines into parts of the world where the power grids aren’t particularly stable, Haas has come up with some clever Tap/Tool Recovery options to get things up and going quickly even when the machine automatically detects a power issue and shuts down. Great comment. - Mark, Haas Tip-of-the-day
I'm really glad the shop I work for uses dedicated fixture plates on schunk tables for almost everything we do. There's no probing necessary on all those individual parts when you already know exactly where they are! We mostly only use vises for prep cuts and op1's on certain parts.
Easily my favorite commercial videos, thank you haas tip of the day!
Cory - Thanks. We are glad to hear that people are getting some real benefits from our videos. - Mark, Haas Tip-of-the-day
Another handy use for M97, is for multi tool holemaking. Just put all the xy coordinates i the sub, and call up the sub program for location for spot, drill, tap, countersink, etc. This method has two advantages, one it reduces the size of the program, and two makes use of one set of coordinates, which means any location tweaks carry over to all operations, so theres no possibility of missing a coordinate on one of the operations.
Dang, this guy is so good to watch, so informative, entertaining and a great teacher, and I don't even have any machines yet and I love watching his vids! Awesome job Mark!
How to adjust part 1 cycle time 6 parts haas 3 same level some time plug gage is high and low no same level
I agree with the subroutine calls, but I personally like using M98. It allows for making edits to only one subroutine and not messing with the main program. I know...everyone has their preferences. I also prefer to run the part to completion. This shows only running the first op, but many parts are cut on 2, 3, 4, or even all 6 sides. Using the same technique, use work offsets / vises, and group the program by tool to reduce tool changes. The big advantage (comes from "LEAN MANUFACTURING") is that every time the doors are opened, a completely machined part (or set of parts) is removed. This eliminates wasted time in excess handling. Just another way to reduce time and improve productivity. PS-by using M98 (M97) subroutine calls, we have been able to reduce our cycles times by 20-40% (versus single-part running).
G52 is your friend here. One work coordinate and a limitless amount of parts can be made.
Another key factor is subplates, tomstones and pallets. If you want to run high numbers, yet still be nimble enough to jump in with small batch runs, you have to get away from the vise.
Haas' M97 feature is literally one of the slickest items they ever put into a controller. I've been using them simce 1994, running as many as 260 pieces at a time on a VF2 with a 4th axis tombstone. All with one work coordinate.
For the naysayers that say you can't pick up where you left off on a broken tool or scrapped part, that is simply not true. With G52 I can restart the machine and begin at part number 88 on a 120 part run without skipping a beat.
It always amazes me how many machinist do not know how to do this.
Great vid that will hopefully open some eyes.
I still lose it every time i see Mark feeding the birds. I love it
I love feeding the birds! 03:33
Terryberry is my favorite host
What I have found working in a production shop for 18 years now is running tons parts at the same time isn't always faster then running one or a few parts. Tool changes is only a small part of lost time in large production runs. You have to first mount multiple vices them tram them in, setup multiple work offsets which will always change each time you run that job. Once you have all that set and parts running you have to then load and unload multiple parts after blowing them all down of coolant and swarf. We used to run a part with runs of 300-600 very basic flat mild steel with 2 17mm holes in runs of 50 parts stacked in a few piles on the table and found running 4 at a time was more productive because it took so long to blow all the swarf and coolant off each part so as not to make a mess of the floor and tables. There is also the risk of a tool wearing out mid cycle and tolerances change so you risk rejecting multiple parts instead of 1 or 2.
Don't get me wrong there are many ways to be more productive running multiple parts as you said using fixture plates where you load and unload parts outside of the machine while the spindle keeps running and making you money but running multiple vices isn't as efficient as you want them to be. I try to make as many fixture plates as I can for this reason alone to keep the spindle running as long as possible and thats working great for me so far. What I really like is 2 of the mills I run have partitions in the middle of the table so while one side is running I'm loading the other side and the program just repeats over and over until the job is done so the spindle rarely stops during the day.
Sometimes running a part would take more than one hour and when you want to make several of them, then you can set up all of them and do other jobs for hours.
It's certainly application specific. But I'll say this, the time savings boils down to a percentage...so the time saved in going from 1 to 2 workpieces is a drastic improvement; much more compared to going from, say, 12 to 16 workpieces (in which case the savings each successive part is negligible).
I think it might mainly depend on the quantity and the workholding methods available at hand. If you can fill up a subplate with many small items then it might be a good choice so long as the number doesn't get too crazy, but if you run standard mill vises then maybe adding a few more workpieces to the same vise can't hurt. I'm always confused when I see people making individual 2" workpieces one at a time in a single 6" vise...
Yep I totally agree with you there that it works in certain situations and time savings certainly change depending on the work holding method your using for sure. We find we are most efficient when running 4-10 parts per cycle which is a very basic setup usually 2 piles of parts stacked 2 to 5 parts high depending on the thickness of the material and usually just 1 or 2 clamps holding them down so change over time is quite fast .
That's why it's ludicrous to not buy the probing systems. I have added probing to multiple programs. One of our big runners that uses 12 offsets used to take 1.5 hours to set up. Now it's 40 minutes and all but 4 minutes is switching jaw plates to the nesting and pinned ones I made. I added in a bunch of G10 commands to set all Z offsets at the end of the probing program. They stay within three or four thou, so why not. You can write custom macros to shut down if a tool measures beyond a set limit from what I understand. Possibly change to a different tool. I intend to explore the addition macros in many ways.
Hopefully you'll see the light in the next 18 years ;)
I am just a wannabee, but Haas looks like a really well-ran company with probably the best value. This guys videos are awesome. I like what he said at the end of the video. It is how fast you can finish the last part that counts.
You may be new to CNC or Haas, but there are much more efficient systems/controls made by competitors that easily outperform all Haas machines. There's a lot of hype around this brand for good reason, but Hurco, DMG Mori and many others are much faster and easier to setup and run day in, day out.
It's sheer joy watching the insane precision of those machines in 60fps
Spend the time to make a fixture plate, and that will reap rewards when it comes to clocking up the parts and teaching the tools.
Agreed as long as every part comes out the same.
As someone who's worked as a setup guy in factories for a while, it amazes me that this isn't common sense to some people. I've walked into factories and had cut run times down to a faction of what they previously were, buy setting up 4,5,6 separate operations on the table at once.
You have multiple sets of work offsets.... use them
i get paid by the hour
You can set in MDI G10 Q2 P1 (G54)
G10 Q2 P2 (G55)
etc .....
All excellent points for saving time, but you need to factor in setting up a vice, parallels, stops, a work coodinate per part, and make work shift or TLO changes for different heights.
For lights out running large quantities definitely worth the set up / program time.
Good video
My favorite TH-cam channel. I love the the way he explains 😍😍😍
Thank you so much for sharing your valuable experience with us
I love these "Tip of the Day" videos!! Keep em' coming! Also, could you do one for a G18/G19 plane shift? I have a 90 degree Lyndex head that I would like to get some more use out of.
Austin - Check out this right-angled-head we did. It covers the basics. th-cam.com/video/URO3ETG18bs/w-d-xo.html. - Mark, Haas Tip-of-the-day
I had this exact question recently and what great timing
While it's implied, the video didn't mention all of the time needed to place the multiple parts across the multiple vices, then running the probing cycles that establishes each part location (center of the blocks, or x,y origins, and z surface heights.) These processes add to the setup time initially to be able to run multiple parts. I suppose it's still less significant in a production environment but worth a mention?
Love your videos mark. Wish I could afford the 10 grand worth of vises you have on your machine. 😀
First time watching your videos Mark, they are awesome!
In addition to machining multiple parts with G97 or G98 subs, more time can be saved by choosing the order in which the parts get machined, to shorten up travel on any of the axis. For instance, on your video, start all spotting, drill, tapping, etc from left to right, since the left vise is taller you can move the initial Z plane closer to the top of each part and use G99 on all of the parts.
Furthermore, if this setup is for production parts and will run for a decent period of time, it is worthwhile to review each sub and change the order on which the features are machined. Once again, with the purpose of minimizing the travel of the machine from one part to the next.
Even a split second saved adds up at the end of the week.
Great video, Thanx !!!
Alex - Great ideas. Every second counts, and once you start thinking about these things, it becomes a good habit. I’ve seen some, on large machines with slower rapids, use long holders for their drilling operations so those tools don’t have to rapid as far in the Z. Good stuff. Get’s me thinking. - Mark, Haas Tip of the day
Mark, you taught me this years ago when you were still in tech support. It has helped me endlessly, thanks again.
Hi Keith! Wow. I looked up our correspondence from years ago, and the emails could have been the script for this video. Thanks for your great question, input and feedback, now and years ago! - Mark, Haas Tip-of-the-day
This is ok for 10 parts but I am running 6 pallets with 24 parts on each pallet. This would take 144 different offsets. Here is a way to do it with macros and g52's. I have a row of parts 2.7 inches apart in Y. I can set my G54 right in the program then use a coordinate shift (G52) for each part.
#5221= -13.814 (G54 X) (this sets your G54 offset in X)
#5222= -3.6 (G54 Y) (this sets your G54 offset in Y)
#5223= -16.35 (G54 Z) (this sets your G54 offset in Z)
#5201= 0 (G52 X) (this cancels any G52 coordinate shift in X)
#5202= 0 (G52 Y) (this cancels any G52 coordinate shift in Y)
#5203= 0 (G52 Z) (this cancels any G52 coordinate shift in Z)
G00 G54 G52 Y0 M97 P1004 (goes to line 1004 and runs 1st part at g54)
G00 G54 G52 Y-2.7 M97 P1004 (goes to line 1004 and runs 2nd part shifted by -2.7 inches in Y)
G00 G54 G52 Y-5.4 M97 P1004 (goes to line 1004 and runs 3rd part shifted by -5.4 inches in Y etc.)
G00 G54 G52 Y-8.1 M97 P1004
G00 G54 G52 Y-10.8 M97 P1004
G00 G54 G52 Y-13.5 M97 P1004
M01 And repeat for each tool. This way all the part positions stay with the program.
Yes, this is much smarter than the video example. We do the same thing in our shop every day.
Thanks for sharing these daily tips. As a student currently learning machining to become an operator with cnc machines this video was a wonderful look into increasing efficiency
make sure you get into programming and setup, cnc operators are poorly paid and are essentially just button pushers. Most shops will train their operators only for a few days.
Sooooo setting 51 needs to be put back?
3:09 is my life.
Hey Mark sir,
Just keep posting such useful videos . I just love your tip of the day videos.
This is exactly what I was asking the people who sold us the HAAS, how to do program with subprograms for multiple parts. They could not answer. This video is great, I only wish it came out 7 years ago. I do multiple parts all the time and now will utilize this program. Would be nice if you would go into more details. On how to do Fixture offset, how to set up tool. More details on programming, step by step so to speak. Please.
Anshel - Check out this video we did on setting those offsets, th-cam.com/video/uNjMIIRttFE/w-d-xo.html. We’ve left links to all of these setup videos in the description of this Complete-Part-Setup video as well: th-cam.com/video/gbcMm-rSXZY/w-d-xo.html. Thanks for the comment. - Mark, Haas Tip-of-the-day
Thank you, I have seen those videos. I still do not understand how you set up the fixture offset for that many parts? I probably missed something in the video. Are they all 154 P1, 154 P2 and so on?
Anshel - I typically use Work Offsets G154 P1 through G154 P99. Our G154 expanded Work Offsets are listed on the Work Offset page below G54-G59, and work just like G54-G59 do, with one Work Offset per part. We set each Work Offset manually, or with the probe. The “Complete Part Setup” video, shows how to set each Work Offset. The example program at th-cam.com/video/NutStjpWJck/w-d-xo.html shows the code we’ll need to run 2 parts, with 2 tools. This can be expanded. Shoot me an email at TOD@haascnc.com and I can answer any question you might still have. - Mark, Haas Tip-of-the-day
Thank you. That was my question. Appreciate your help.
how are you changing your z values. when i do this i usually just copy and past my toolpath for each tool calling a different workoffset. i also turn off h and t code agreement (dont like to) and use different h values on the same tool.
Been running multiple Parts on multiple offsets since the 80s
this is only valid in an ideal world. without errors. and without tools breaking. especially restarting a program somewhere in the middle after fixing an error. (machine error i mean)
As to be expected from HAAZ, magic demystified!
These are excellent videos, I really appreciate the content and the time to make them. This is first time I've seen an a bad practice in one. It is never a good idea to hammer a part down in gripper jaws.
Curtis - That is awesome. Great comment. Makes sense. If I hammer things down with dovetail or gripper jaws, after I’ve tightened them, all I can be doing is loosening things up. Maybe snug, tap down, fully tighten? Thanks for the comment. - Mark, Haas Tip-of-the-day
You always do a great job with your videos, Mark. Keep up the great work and all the great videos....
This is basic machining productivity information that should be commonplace. We've been making dedicated pallets and using "M97" type programming since we got our first high end VMC in 2008. Hurco and Siemens controls both make this type of programming extremely easy. You don't need to use an M97 command, nor do you write any sub program calls. Just probe (or program if you designed/made the pallet in house) your coordinates of each setup and tell the control which program to run. In fact, we save even more time by reducing tool changes to the bare minimum by taking this concept one step further. This can be done by posting each tool as it's own program, then add them in your pattern setup on the control. Add tool probe check to protect against broken tools and sister tooling for a lights out operation. By the way, mounting all these vises directly to the table is insanely inefficient as well. Invest in a Pierson Workholding Pallet system and mount all of your vises to pallets for 30 second changes that require no indicating. And create your own dedicated fixtures when the production run is more than 50 parts. My 2 cents from years of making it happen...
Sorry to hear hurco most junk machine tywain made had 5 axis that was throwed in with big dmg as we said was corvett but hurco was a chevett been try sell cant give away software contol glitch and spindle is chisle use so we only hack with hurcos
Hurco jerco
@@jodygwiinn1233 Are you doing alright over there?
I like the production quality of this video, it seems fitting for a company like yours.
Great vid, leaves me wondering how each individual part is indicated, and how the code is modified accordingly. thx!
Richard, these videos go into that process more in depth. th-cam.com/video/uNjMIIRttFE/w-d-xo.html and th-cam.com/video/AyMsFtwzrmI/w-d-xo.html for more information
Sorry for my bad english...
Generally great advice... but...
You haven't told: as a lot of time will be required to set offset for all details. At small quantity of details in party it can not justify.
Actually you have to set it once for all parts. Because you are a smart guy and you use workpiece stopper.
Right. I'm sure that if you are running multiple parts that those height offsets will hold relatively true for part 1--1000. Taking the time to set up for a large part run will save significant time throughout the run and as was seen you can do other things while the parts run.
I think what they meant was that if you're only doing a short run, setting up tons of different workholding solutions and doing a mish-mosh batch of stuff on there might cost you more time in getting all the different offsets locked in than just working off one vise and sticking with running simple jobs.
I'm confused on locating.
QUESTION: how do you offset each tool to be a different height? does the same tool have different H values in the tool offset page? for example the first sub program tool(vice style 1) will touched off the top of the stock, with th H1 call out, for the next sub program will i have to touch off the top of the stock(vice style 2) and use H2 instead?
We will set all of our Tools at one spot, and record their Tool Offsets, we will then set a Work Offset for each Workpiece (Part). Each Part is given it's own Work Coordinate System, like G54, G55. The method differs if you are setting manually, or with a probe. We have videos on both. th-cam.com/video/uNjMIIRttFE/w-d-xo.html, and th-cam.com/video/5I1eG49XnTA/w-d-xo.html, and we will be posting another video on this in the next month, so check back.
@@markterryberry4477 where is the video mark?
Огромное спасибо за качественные субтитры, а именно в Tip of the Day, у других программах этого не наблюдается.
Always Very brilliant usefull and funny. Ty. I would only suggest to reverse the path with 2nd 4th tool and so on
Jenacbxx - Great comment. Reversing toolpaths, between parts (or even just between long rows of holes) can save a lot of time in wasted rapids. Thanks for the comment. - Mark, Haas Tip-of-the-day
I like too finish the parts complete before moving too the next. small shop no second shift half way through, stop the machine pull out the finished ones load it back up and go home.
This video is so good and informative. But I have a question that how to execute G97 on machine and measure one tool at different heights?
We will follow this method after mechine will be accident or product dimensions are change then what will do?
You could also use g52 instead of all those offsets
Please I wanna know how to control the tools change arm speed to make it fast or slow?
Working for a small-medium sized company most of the parts I get range from 1-2 or maybe a dozen of any particular part. most of which are one time runs or something I might make twice a year if a recurring contract. It gets annoying as management gets restless because of the slow pace, I get annoyed because every day is like starting from scratch having to program an entirely new part and having to make yet another one time fixture widget. Parts that are not complicated but sometimes require 3-5 different operations on a vertical mill.
Cycle times are short but the setup/tear own/reset for the next part eats so much time.
Could you tell us about the G12 / G13 cycle, please?
id use a fixture to save time on setting the home for each part every time you load a new one
I really like this stuff, been doing this kind of thing for 20 years, I do wish all controls did internal sub calls.
I also wish Haas had something equivalent to a G66 modal macro call.
Then you would just do 1 macro call per tool and a list of work offsets, and that list could be put in a sub so you only need to edit 1 list and it gets used by all tools.
Andre Blanchard - Thanks for the comment! I’m with you. M97 is just one of those things that Haas has really done a good job with. Very nice code. As far as the G66 Modal Macro Call, I hear you. This has been submitted as a Software Enhancement Request. I’ve just added your comment to the request as well! Thanks again. - Mark, Haas Tip-of-the-day
M97 may be my favorite code
very good advice, greetings from Mexico
That setup is way overkilled, you're right it's more productive to run multiple parts but there's sill room for improvement. what I would do is setup a multiple vises and run many parts in a single material bar, if double vises are available you can run 2 bars and doubles your productivity, all toolpaths can be programmed to fit as many parts on the material bar.
Armando - Check out the fixture, on the left, at 09:30, I think this is what you are describing. That’s a great method for making lots of small parts. For that kind of setup, you might still use an M97 for the second operation on the parts, so we can make minor offset adjustments for each precision part. Thanks for the comment. - Mark, Haas Tip-of-the-day
So you need to set different toll height offsets for every different vise which are not at the same height? And also indicating every vise?
Hello, what Mill are you using at time 7:57? Thanks
Mark I have a question for you? when are you going to teach how to use a dial indicator on a D-hole because on a regular hole is easy to do and how does D-hole gets dial in? Thank you from Nevada
That's kinda cool. I wonder what programming the tool paths looks like.
Our company used fanuc robot arm with robodrills for parts over 200, never seen haas using these.
Great video, Mark! Complicated subject...clearly explained.
Golden words! Bravo! Золотые слова! Браво!
Hi, love your videos! Question, how do you set the work offsets for each p value, and when would this style of programming be beneficial over standard g54, g55 ect offsets and using a canned cycle. Thanks!
RiskyEndeavor - G154 Pxxx Work Offsets work in exactly the same way the G54-G59 Work Offsets do. We typically use them when we are needing to work with more than a few Work Offsets on the machine at once. We have a couple of videos that show how to set Work Offsets, th-cam.com/video/uNjMIIRttFE/w-d-xo.html, th-cam.com/video/AyMsFtwzrmI/w-d-xo.html, and th-cam.com/video/5I1eG49XnTA/w-d-xo.html. Thanks for the comment. - Mark, Haas Tip-of-the-day
Thank you sir for this video,im asking if this M97 can use in Fanuc?
It used to be that you could only use external sub programs on those machines, using an M98. I’m not sure if things have changed recently. We’d have to reach out to their applications people and see if things have changed.
Internal subs are really handy on Haas machines.
amazing video
thanks for sharing
where can i buy those small vises (the gold ones)
Thanks
sir, may i ask what about the tool lenght compensation each vise how do you compute?
I have this problem, will fix this, thanks.
Very informative Thanks for sharing!!
Mark, how do you program the location of each pice? If I finish the first batch then new pieces must be 100% at exact location as the previous ones. Do I have to check new each location? Thank you.
Can I use an M98 subprogram call out in my M97 subroutine? Or will the M99 for one cancel the both?
Awesome video, nice editing and good vulgarizing. I wish I have the money to get a HAAS CNC, maybe one day!
I'm liking the 60hz video. It looks good.
Pardon my ignorance of CNC programming, but is there a "for" or "foreach" loop available? Can subs be given more descriptive names?
Would you be able to make a video about SSV? A bit more in depth than the other SSV videos?
What is that little vise at the beginning?
what is the brand of that little gold vise thats on the table at the start of the video ??
5th axis is the brand fifthaxis.com
33years machining the haas contol stay pretty much the same seen the orange crt screen to the led used today but buttons stay same no other machines are like this and proves haas best control over my 33years as have run makinos to dmg best to run haas machines as may not been as fast machine but was much fast pushing programing the haas as every type prg i saved a generic copy that to new prg then just change what needed by minimum speed feeds and location and z detpth you off and run n like quick code but at your desire this way you build custom one off part and to do this on fanuc or heidihine control was much more in depth and time consuming
Great video as always from HAAS team
I am from india,
Haas Tip of the day
Hey Would that work on my 2002 VF2? or is my controller not capable of doing this?
How to use more then 6 coordinate on machine?
How many work offsets do you get with a haas?
What about all the extra set up time to load vices and set 30 different work offsets?
That is the real question isn't it. As production managers we really have to run some kind of Break-Even Analysis and decide if we are running enough parts to recoup our setup time. Some quick math, scratched on the back of an old print and we should be able to get a good feel as to which jobs are worth the work. For higher volumes, this can really save you some time, by increasing your unattended runtime and allowing you to step away from the machine for a longer amount of time, even getting a full table worth of parts finished while running lights-out. Great comment, we have to ask the question.
Does it work in only memory mode?
I'm curious if "M97" also works on DNC/Remote mode.
2:13 yeah but you need still same time each part to manual replace new stock. if one part has failed probpably all part on setup is failed. if run one part you can inspect after hit green. oh wait something wrong red button
Thiis is amazing, tip of the day rules, thats why we bought Haas vf4SS
awesome... can we use G52
Thank you Mark from Nicaragua. We love you brother.
Great video as always!
Is that stainless steel?
What tool and rpm are you running. Metric if possible
Thanks.
Aluminium
Last time I checked there are not 2 ways to call subs M97 & M98 as said in the video. There is also G65, this is an external sub call much like the M98 but with an important difference, the G65 allows the addition of an argument to be added to the command... Any of you boys with a renishaw probe that understand how to use it should know this. So a correction that there are in fact 3 ways to call a sub!
I was thinking about making some videos and calling them saah's tech tip of the night.
This is good stuff. Thanks guys!
what about thoes yellow vices brand???
But, what about the tool height for each part .... Its different for each vice
Im trying to understand this aswell. if you find the annsweer please let me know. im guessing he has diffeerent H values for each sub routine?
how does the machine know the distance between the vices?
sometimes the tie rods are so long weve got an E1 and E2 (g54 and 55) for each end
Excellent video.
Great video Mark..
how do you set your work shifts or g154 p1 p2 p3 p4 and so on
when your doing your probe routine instead of doing 54 for g54 you type in 154.01 for g154 p01 and 154.02 for g154 p2 etc etc and so on make sure you type 154.01 if you type 154.1 it will set offset at g154 p10
Daniel - We’ll set the G154 P1, P2, P3, in the same way we would any regular part that uses a G54 or G55 Work Offset. For more information on how to do this with a probe, edgefinder or indicator, check out the Complete Mill Setup video we put together: th-cam.com/video/gbcMm-rSXZY/w-d-xo.html. - Mark, Haas Tip-of-the-day
How do you tell the machine where the part is, probing? If so could you show that being demonstrated?
I believe you take datums on every part at dedicated coordinate offsets in the machine one time, then use those offsets in your g-code. At least that's how it worked on my sinumerik machine.
Wouldn't you have to re-probe each part in each of the vises after the first run if you did it this way? I'm probably missing something. I'm an amateur. Thanks!
Jackson im a machinist. You just make your X offsets on the very edge of the vise. Then just hang it off a very little bit. Your Y would continue to be the same. Always leave room for human error when cutting your work.
When I worked a Butler Industries we made almost exclusively Aircraft components. Now none of our machines came close to the one in the video but those guys couldn’t hardly look away and I’d hear words that blistered my ears as the end mills went woogady and ate the part, fixture and clamps. What happens if this computer get a power spike or just forgets what to do?
Abby - It is all about repeatable processes isn’t it. If we can get something to repeat with good fixturing, tools, programs and machines, it can be automated. Things have gotten a lot easier with modern tools and tool coatings, and the continuous improvements we’ve made on the machines. We sell a lot of machines into parts of the world where the power grids aren’t particularly stable, Haas has come up with some clever Tap/Tool Recovery options to get things up and going quickly even when the machine automatically detects a power issue and shuts down. Great comment. - Mark, Haas Tip-of-the-day
Haas Automation, Inc. Thank you for the response.