Tool Length Offsets Beginners CNC

CNC Training Call David: 07834 858 407

30 Five Star Reviews

CNC Training Centre Reviews

Contact CNC Training Centre

 

This article will explain all you need to know about tool length offsets and setting tool length offsets Fanuc

Ok so you managed to write a CNC Programme for your CNC Milling Machine, well done.

A CNC program is a set of instructions telling your CNC Machine exactly how to machine your component.

It contains all the necessary tool paths XY position and Z depths.

It also contains on off signals to do things like starting the spindle (M3 clockwise M4 counterclockwise).

The progam will have all the feeds and speeds for your tools. You may have performed a simulation using the graphics on your machine.

 

tool length offsets

Lots of software like Edgecam can perform full collision detection. You have a model of every tool and it’s holder. There is full model of the machine and all the work-holding.

tool length offsets

Edgecam will even tell you if the flute length of the tool is too short!

Ok so that is all great so far but when we put this program in the machine to run there are three things the machine doesn’t know.

Can you guess what they are?

No it doesn’t know jackpot winning lottery numbers (that would be four things it didn’t know).

  1. It doesn’t know where the part is in the machine coordinate system.

  2. It doesn’t know how long the tools are (tool length offsets).

  3. It doesn’t know the diameter of the tools.

Vital information wouldn’t you say?

So first of all we use the Work Offsets to tell the machine where the part is.

Read this for more CNC Help if you want to learn how Work Offsets are used.

Please don’t worry if you don’t know how to do this after all this is beginners help with tool length offsets .

Your mates don’t know your reading it, you can tell them you already knew all this shit.

tool length offsets

So in the picture above we would touch the spindle nose onto the Z datum of our work-piece. This would tell the machine where the part is in the Z axis.

 

tool length offsets

 

This distance is input into our work offset table (in this case G54).

If we now program G0 G54 Z0 the spindle would rapid down to this position (G54 is where the values are stored).

We wouldn’t do this by the way cos the machine would crash.

tool length offsets

Now The Tool Length

What we now need to do is take into account the length of the tool.

We would measure each tool length and store it in our tool length offsets file.

tool length offsets
This is how they look on a Haas Machine

This tool length offsets file stays in the machine and is independent of your CNC Programs. So now any program can access this file.

So how does it do that?

It uses G43 and G43 says “ok get me a tool length offset”

G0 G43 Z3. H1

Which tool offset?? Well that’s the H number.

So the line above says to the machine rapid to Z3. Oh and by the way allow for the length of Tool 1 before you get there.

That’s the H1

So it gets the tool length from the tool length offsets file. It then does all the maths for you.

Actually it’s just a bit of simple arithmetic. Your (G54) work offset) minus your tool length.

Your tool will arrive 3mm above your component.

So whatever tool you called into the spindle with your M6 command you need to use the corresponding H number.

M6 T5                                                  (Get tool 5 in the spindle)
G90 G0 G54 X0 Y0 S1500 M3    (Rapid to X0 Y0 and start the spindle)
G43 Z3. H5                        (Rapid to Z3. but allow for the length of tool 5)

How do you measure the tools?

tool length offsets

Well some people use a bit of paper!!!

And some buy one of these little babies.

“It’s just a light on a fuckin stick” I hear you say. But it’s so much more. I comes on at an exact distance above your part. And because it’s all spring loaded, if the tool carries on a bit it don’t bust anything.

Only cheap but do a great job.

setting tool length offsets fanuc

And if your a very good boy you might get one of these for Christmas.

tool length offsets

Auto tool measurement (yes it’s all done for you)

In the cases above we are storing the actual tool length in the offset file.

Now let’s take a look at that tool file again.

tool length offsets

Some of my readers are very astute but before you start writing me an email or commenting on this article. “oh David it looks like you fucked up again”

I know……

Why are the tool lengths (Under Geometry) minus figures?

That’s because as always there are several ways to do this. What some people do (and I am not one of them) is……

They bring each tool down from zero return and touch on the part. This figure is then recorded in the tool length offsets file. And yes it’s a minus figure. Of course the G54 work offset would be zero in the case of Z.

tool length offsets

 

Now I am not prepared to argue with you about this (your doctor told me not to). It’s just bad.

Maybe you might want to read this?

That figure has no relation to the actual tool length and you need to reset every tool for every Job!!

I’m saying no more I’ll just wait for the comments.

There is Only One Way

Actually there is something else to consider. (I know I
said I’m saying no more).

By setting your tool length the correct way (my way), the stored offset is the actual tool length and you can do a rough check with your steel ruler before proving your program.

Auto tool length measurement will always give actual tool length and so will a tool pre-setter. That means you can swap tools between machines.

A Few Other Things About Tool Length Offsets

If you have a Mazak. Mmmmm if you have a Mazak.

Well it’s easy. Mazak machines have active offsets so the minute you do a tool change and get your tool in the spindle the tool lengths offsets are active. They also nearly always have an auto tool measurement system

.

Sorry if you are a Mazak user and you are thinking “this dozy bastard has made me read all this gratuitous shit for nothing”

Now’s the time to leave. Go on off you go.

Ok so what.

Mazaks also do this…….

When you write a G code type program for a Mazak you don’t need a G43 and you don’t need the H

M6 T5                                                  (Get tool 5 in the spindle)
G90 G0 G54 X0 Y0 S1500 M3    (Rapid to X0 Y0 and start the spindle)
Z3.                        (Rapid to Z3. but allow for the length of tool 5)

Forget the G43 H5 shit…. soooo easy.

Those Mazak guys just don’t believe in stating the obvious and wasting your precious finger tips typing in a load of bollocks that the machine should know anyway.

Just remember you can change this by parameter if you want it to work the same way as your Fanuc or your Haas. Oh and you don’t care about increasing your carbon footprint with those extra finger presses.

That way you can put programs from your Fanuc into your Mazak and vice versa.

One other thing

 

Haas have a little trick up their sleeve.

You can alter the settings on a Haas machine so that if your H and your T are not the same you get an alarm.

M6 T5                                                 
G90 G0 G54 X0 Y0 S1500 M3   
G43 Z3. H1                       

Remember our program. If you changed the tool number but forgot to change the H you would be using the length of T1 for T5

 

 

Yes you just bent your machine.

Of course if it’s a Haas you just get an alarm.

Learn all this and more

 


Hurco Training, Getting the Most from Your Hurco Machines?

CNC Training Call David: 07834 858 407

CNC Training Centre Reviews

Contact CNC Training Centre

Unleash the full potential of your shop with onsite Hurco training

Investing in Hurco machinery is a smart business decision, but to truly maximise your return, your team needs the right expertise. While Hurco’s WinMax control is celebrated for its intuitive conversational programming, unlocking its full power and advanced features requires specialised training.

Old and Young All Welcome

I recently worked on a 15 year old Hurco and it’s striking how advanced this control always was. When you are from a G code background you are almost looking for the catch because it is so simple.
The CNC Training Centre can come onsite and conduct your Hurco Training. Unlock the hidden features. Technology is often underused and proper training will unlock these extra powers.
Hurco Training
Our expert-led, onsite Hurco training brings knowledge directly to your shop floor, offering advantages that standard classroom training may not provide.

The power of onsite Hurco training

Onsite training allows your team to learn on the specific Hurco machines they use daily. This approach ensures that operators understand the capabilities of your equipment without needing to adjust to different machines.
Training is customised to your team’s skill level and your applications.
Covering conversational programming, integrating G-code or CAM software.
Advanced techniques like 5-axis programming or solid model import.

Training Brought To You

Bringing the training to your location minimises disruption and costs associated with off-site training.
Trainees can apply new skills immediately using your parts and applications, receiving relevant feedback. This leads to fewer errors, reduced waste, and improved production quality.
Training teams together fosters consistent knowledge and best practices, enhancing teamwork and productivity.

Invest in your profitability

Proper training is a strategic investment that improves machine utilisation and productivity.
Onsite Hurco training gives your team the skills to optimise your machinery, speeding up the process from design to finished part.
Contact us today to discuss a customised onsite training plan and maximise the potential of your Hurco machines.

CNC Training Call David: 07834 858 407

CNC Training Centre Reviews
Contact CNC Training Centre

 


Edgecam Associativity How it Works

CNC Training Call David: 07834 858 407

30 Five Star Reviews

CNC Training Centre Reviews

Contact CNC Training Centre

This tutorial is about Edgecam Associativity it’s not really a tutorial.

Edgecam Associativity

It’s about the concept of Edgecam Associativity in solid modelling. It shows how you can create a model in your solid modelling system which can be transferred straight through to your programming system.

Edgecam Training

Don’t watch the video about Edgecam Associativity yet, it took me ages to write all this.

https://youtu.be/9yxwhVEAsYI

“Read More”

G80 G-code Fanuc

CNC Training Call David: 07834 858 407

CNC Training Centre Reviews

Contact CNC Training Centre

I noticed a common search in google is G80 G-code Fanuc.

CNC Machines use what we call canned cycles in a nutshell G80 cancels a canned cycle.

What is a canned Cycle?

To be honest I think it is a funny choice of words “Canned Cycle”.

My guess would be that all the information to drill a hole would be kept together in a “Tin Can” to use whenever you want.

I made this…….G80 G-code Fanuc

First of all we program the cycle this is a G81:

G81 G98 Z-10. R1.5 F200. X55. Y55. F250.

The machine will move to the position X55. Y55. then it will rapid to 1.5mm above the part (this is the R1.5). It will then feed down to Z-10. at a feed-rate of 250 mm per minute F250.

Finally it will use rapid to come out of the hole.

It then sits ready for the next move.

 

All you do now is just give more positions.

G81 G98 Z-10. R1.5 F150. X56. Y56. F200.
X70.
X85.
X90.
X95. Y65.
G80

Every time it moves to a position it will do whatever you stated in the canned cycle (G81)

You don’t add anything else to these positions.

G80 G-code Fanuc

“Read More”

CNC Milling M Codes List For Beginners

CNC Training Call David: 07834 858 407

30 Five Star Reviews

CNC Training Centre Reviews

Contact CNC Training Centre

 

CNC Milling M Codes
List of M Codes for a CNC Milling Machine

Download CNC Milling M Code List

This is my list of CNC Milling M Codes and you will notice there aren’t many.

That’s because you don’t actually need many.

M Codes are used to turn things on and off on a CNC Milling Machine. Sometimes known as miscellaneous functions.

A typical M Code would be M03 which would start your spindle forwards.

M04 would be reverse and guess what?

M05 is stop the spindle.

There, you learned three already.

You don’t need the extra zero so I advise you leave it out, program M3 M4 M5.

It really doesn’t matter but….. You could be wasting memory space or wearing out the tips of your fingers.

Here’s what I think about leading zeros.

M codes are the Snow Leopards of CNC Machining

Snow Leopards are Solitary Animals

Snow Leopards only ever get together to mate, they don’t even have a Christmas party or get pissed on a stag night.

With M codes they hate being on the same line of code. If they are then they will fight to the death.

Tigers Playing

Please note no animals were hurt in the making of this post.

There are exceptions to this rule, M Codes that is, but please don’t overload yourself with this at the moment.

Just trust me.

The first one in the block usually wins but I can’t  guarantee it. So you could get some crazy shit happening.

G90 M8 G0 G54 X0 Y0 S1500 M3;

You wouldn’t even get an alarm on most controls and it may just obey the first M Code it sees and ignore the last one.

The other thing to note with M Codes is that it makes no difference where they are in a block of code.

So if you put your M Code at the front of a block of code.

M3 S1500 G0 X0 Y0;

Or the end.

G0 X0 Y0 S1500 M3 ;

The spindle will start according to the logic of the machine not where the M Code is in the block of code.

The Boring CNC Milling M Codes

That’s my list of M Codes the rest are really boring doing stuff like changing gear ranges and stuff.

Download CNC Milling M Code List

Sorry I’m being flippant again.

CNC Milling M Codes Where Are The Rest?

Sorry you can’t have them. The reason for this is that they are different depending on what machine they are on.

CNC Milling M Codes
Hand Em Over

For example this beast is a Mazak Megaturn

CNC Milling M Codes
Mazak Megaturn

It Has a Gearbox.

To change gear you program M41 M42 and M43 for the different gears

M40 is neutral. Now on machines with gearboxes they do normally use these same M Codes.

However they can be different.

M10….. mmmm well that’s normally a clamp.

I think you get the picture. It is up to the machine tool builder.

It is best to get a specific set of M Codes from your machine manual.

The manual by the way is that book that nobody ever reads, it’s usually at the bottom of a bent up old filing cabinet.

Please Don’t Read It

I’ll read it for you then charge you a shit load of money for training.

Click here for CNC Training

Joking aside please don’t be arsed to learn a load of M Codes you will probably never use.

Well Commented Programs

Try to put M Code descriptions in your program. That way you won’t need to keep looking them up. A part transfer on a CNC Lathe is a good example, there are an absolute shit load of em.

They are everywhere. If you put a meaning to each one in brackets it will make proving the program out really easy. Oh and if you have a CAM system then change your post processor to output them for you.

M11 (OPEN CHUCK)

M10 (OPEN CHUCK)

etc etc

I had a boss once who actually learnt sines and cosines of angles.

Cosines of Angles

Holy shit I mean it’s impressive and I must add in 1975 it was actually worth doing because we didn’t even have calculators.

Hope you enjoyed reading my article on CNC Milling M Codes.

Please remember that it keeps me occupied and while I’m writing these articles I am not holding you up in the supermarkets queue trying to find a coupon for 10p off my incontinence briefs.

Download CNC Milling M Code List

 

 

 

 


Careers in CNC

View all current vacancies in CNC

Click here

Call David: 07834 858 407