Category Archives: Fanuc Turn

CNC Help Beginners Operation Modes

CNC Help, this article is about the different modes of operation on a CNC Machine

CNC Help

Depending on what mode you are in

  • Zero Return
  • Jog
  • Handwheel
  • MDI
  • Memory/Auto/Full Run
  • Drip Feed/Tape
  • Edit

This determines what you can do on the machine.

CNC Help

Learn all this and more

Zero Return

So when we turn on the machine we would need to zero return the machine. What is Zero Return you ask?

Well when you switch on the machine it’s a bit like when you wake up the next day after drinking a whole bottle of whisky.

First thing you think is where am I? Then the memories flood back of how you were dancing naked on the bar.

A CNC machine is much the same (except they don’t piss in a complete strangers cupboard). So you need to let the machine know where it is.

We move the machine back to it’s zero position and on the way it triggers a dog which is like passing over a button. This tells the machine where it is.

You’ll notice it slows down as it passes over this dog. That gives it time to sort itself out.

No dogs were harmed to create this post

Not a real dog you turkey that would be cruel I mean a switch.

You only need do this when you first turn on the machine. After that the machine always knows where it is.

Jog

Jog what’s Jog? Well in this mode you will have an X Y and Z buttons.

CNC Help

You will also have a feed control potentiometer.

(A twisty knob to you)

It’s like when you turn the music up.

CNC Help

This determines how fast your axis will move when you press X Y or Z in the plus or minus direction.

This very often has a rapid button that you can hold in to make the moves really fast if you really want to shit yourself.

So you can use this to move your axis around. You could even use it to drill a hole or face mill a part.

CNC Help Hand wheel

 

CNC Help

When you use the hand wheel you would normally be required to select an axis and an increment as below.
CNC Help

If you selected the X axis and an increment of 0.1 then each click of the hand wheel will move the X axis 0.1mm.

The hand wheel always reminds me of the robbers cracking the safe in the old movies.

Again you can use the handwheel much like jog to get the machine in the position you want and maybe drill a hole or something.

Haas handwheels have a really course setting like 1mm a click so beware!! But it’s great for quickly getting around the machines.

Also beware of over-run, because some Haas Toolroom Machines will carry on after you finished turning the hand wheel!!! Holy shit batman.

Just remember that these articles are designed as general guidelines as machines will vary.

If you use the analogy of driving a car then it’s like borrowing your mates car. It will definitely have lights and indicators. You just got to find where the switches and buttons are.

Got this off ebay only 5000 quid

Incremental Jog

Just thought I’d add this in. Some machines have an incremental jog and I suppose it’s a bit of a combination between handwheel and jog.

You select an increment and each time you press the axis button (XYZ) the machine feeds that amount.

Very useful for clocking in bores and stuff like that. Personally I like the idea and if I worked on a machine with this I’d be using it.

Read the manual and get the most out of your machine.

Safety

It’s important to remember that handwheel and jog can usually be used with the door of the machine open. They may seem gentle and there’s not much noise going on.

Please note you are using the full power of the machine and if your hand is in the way the handwheel will not stop.

MDI

Remember that these modes may have slightly different names but all CNC machines will have them.

Like on some Siemens controls MDI is called MDA (don’t google that one!!!)

Manual Data Input (I suppose it’s kind of self explanatory).

It’s just a way of writing little short bits of CNC code and it’s normally automatically deleted after use.

You could use this for things like doing a tool change or starting the spindle.

Almost anything that you would put in a program can be done in MDI.

It is usually used once and thrown away, not really environmentally friendly single use program.

CNC Help

Most controls have a way of converting this MDI program into a permanent one to keep in memory. Fanuc uses program O0000 for MDI and it’s a bit like a clipboard. You can change this program O0000 to a real program number like O0001.

There is also a parameter you can change that makes the program stick around after you used it.

Some operators only use MDI for tool changes so you might want to keep the code  there for whenever you need it.

Moan Moan Moan

On a Fanuc control you have to put an EOB (end of block or semicolon) at the end of the line of code to make it work. Otherwise you get an alarm. Drives me bonkers.

Digital punishment

Memory/Auto/Full Run

This mode can have different names but it’s the mode where you get to run your programme.

After selecting the programme you want to use select this mode.

When you press cycle start the programme will run.

CNC Help

You can run your programme in single block

And that red button at the side there is feed hold, it will halt the programme movement but it won’t usually stop the spindle from rotating.

Drip Feed/Tape

This mode is usually for running direct from a Memory Card or PC and it varies from machine to machine. Some will run direct from a floppy disc.

It is for those massive programs too big for the machine memory. Some really old machines will even run a paper tape.

Drip feed is a bit like lying under a beer tap and slowly getting pissed.

Anyway you don’t need to worry your pretty little head about that one at the moment.

Picture of a floppy disc for our younger viewers.

Let’s get on to the interesting shit.

CNC Help Edit

Edit well it’s kinda when you edit….

Yes it’s when you alter the program. In the edit mode you can look at any of your programs stored in your machine and Edit them.

There are massive differences in what you can do depending on your CNC control.  Don’t get me started on this one cos I think CNC Machines have been in the stone age on this one for years. Now I’m not going to mention names but even simple things like copying programs can be an absolute piece of shit.

So if your used to the power of editing on a PC get ready to go back in time. Most new machines are pretty good on this now but it’s taken a long time and I still find it really convoluted and counter intuitive. (I don’t know what either of those words mean).

CNC Help

Here is a short video on how to copy and paste on a Fanuc 18i it’s very similar on most oldish Fanuc controls. (Excuse the long intro on the video but I am trying to flog records as well here).

Oh and if you want to copy a program on an 18i Fanuc view this one.

Editing in its simplest form is INSERT ALTER and DELETE.

CNC Help

These are self explanatory but I have put a nice little gif above just to hold your attention.

Most modern controls will have FIND and REPLACE. It is well worth learning to use this because it guarantees that you don’t miss any figures in your programme.

Like if you had X57.65 in your program six times if you use FIND/REPLACE to change em all to X57.66.

You are sure to catch them all and you can be sure they are all accurate. Even if you altered em to the wrong figure at least they will all be the same.

Click here if your interested in training with us.

Or just get in touch.

 


G02 G03 Circular Interpolation

G02 G03 Circular Interpolation

On a Fanuc or Haas control G02 G03 are the two G codes we use to move around clockwise and counterclockwise circles. You don’t need the leading zeros so from now on I will call them G2 and G3.

And by the way never use the letter O it’s number zero

GO2 GO3 looks almost exactly the same as G02 G03. But your control will blow it’s mind and get real mad with you.

It will also do some really weird shit like trying to start a new program. Anyway just don’t do it.

If you want to know how to do this on your Heidenhain control you need to read this article.

Oh and please don’t call it interpolation as it annoys the shit out of me.

  • Linear interpolation is movement in a straight line.
  • Circular interpolation in moving in a circle.
  • Interpolation is movement.
  • CNC Training Centre Reviews

    30 five star ratings on Google (just saying)

Now that’s the telling off out of the way let’s move on. It’s ok I don’t hold a grudge.

Which one of you bastards said interpolation?

Let’ Talk About Milling A Shape

When you are milling a shape and you want to move in a circular motion you use G2 or G3

For a clockwise arc use G2 and for a counter clockwise arc use G3.

They both work the same way. On a modern control you programme the endpoint (an XY figure on a milling machine) and the radius you require.

Then your CNC controller magically creates your circle. You can programme any arc like this with one exception.

Do you know what it is?

Ok I will tell you later, it’s OK to not know. (Just means you are little thick).

Lets go back to school.

Remember construction? Of course you do.

We are going to mill the top section of this part

G02 G03

Let’s see what the control has to do to work out where the centre of the circle is.

It knows its current position and in your G3 line you tell it the end point and the radius you want.

G02 G03

Well it gets out its little compasses and draws two circles at the radius you told it.

G02 G03

 

It positions the compass first on the start point and draws an arc. Then on the end point and draws an arc.

Where these two arcs cross it places the point of the compass. Now it can strike an arc that touches your start point and your end point.

Get yourself a pair of compasses and try it. It’s great fun.

 

G02 G03

 

That’s how the maths works.

Tell me did you really believe that inside your CNC machine there is a little man with a pair of compasses?

Fuckin hell I give up.

Sorry I lied it’s all done with simple trigonometry. But at least I tricked you into understanding the principle.

 

g02 g03 lathe

So you should now begin to work out why you get an alarm when the radius is too small. Your two arcs just don’t cross. In other words you are trying to fit an arc between two point that simply miss one another.

G2 G3 No Pot of Gold

Your control will give you an alarm “End Point Not Found” which makes sense because it can’t find one. It’s like the pot of gold at the end of the rainbow.

 

G02 G03

Oh Before you Go More on G02 G03

What about the question. When can you not use endpoint and radius with G02 and G03 ?

Answer: When you want to machine a full circle using G02 and G03.

You can do it but you would have to break it into two halves. I’m not going to explain anymore because this method is for wimps and peole who can’t be arsed to read my articles.

You know who you are, ordering Chicken Korma in an Indian Restaurant.

Well…… what follows is a full, blow your bollocks off, shit your pants the next day, vindaloo.

And Now Ladies and Gentlemen the Infamous I and J

At the CNC Training Centre we don’t get too excited about I and J when it comes to programming circles. That’s because you don’t need to worry your pretty head about it anymore. You almost never need it.

Did he say almost?

Well yes almost. You could programme forever and never bother about using I and J with G02 G03. So just go off and watch some porn for awhile and I will explain to the real programmers when you can use it.

In the old days I and J was the only way to programme an arc. You would tell the control where the centre of the circle is and the endpoint. This is cumbersome and a bit tricky. That’s why I’m not telling you about it.

Anyway one really good simple way to use I and J is for a full circle. Oh and it’s bloody easy. That is once I’ve explained it to you.

Click here for more info on full circle

When I was a boy hundreds of years ago I had a toy called a Spiro Graph.

Spirograph those were the days

It consisted of a series of plastic gears. You stuck your pen in a hole in the gear and rotated it around another gear. With a bit of practice you could make some really nice pictures. Kept us happy for hours. The crime rate dropped dramatically in my area when these things came out.

What’s this to do with CNC programming you ask? Well if you tried to use end point and radius for a full circle this is what you would get:

If your start point was X0 Y0 you would program G3 X0 Y0 R100. assuming radius was 100mm.

So in a full circle your endpoint is the same as your start point. There are millions of circles the computer could pick. It would be just like the shapes above. If you do the compass trick you will see what I mean. That’s why it’s impossible.

In Comes I and J

G02 G03

So some clever bloke thought fucks this I’ll invent I and J.

If we use I and J there are four options as above.

You would simply program as below for a full circle (20mm Radius)

  • G3 I-20.
  • G3 I20.
  • G3 J20.
  • G3 J-20.

And that’s it.

G02 G03

So these are the four options

 

G02 G03

So there you have a fantastic way to programme a full circle without having to break it down into two halves or be clever like a newsreader or some twat off mastermind.

Why do you only need the I and not X and Y Dave?

For fucks sake don’t call me Dave my name is David.

I had this really nice guy phone me from Africa the other day. He explained to me that he needed to get his inheritance of 10 million pounds out of England and if I helped him he would give me £20,000. All I had to do was give him all my bank and credit card details. Oh and a small one off payment of £1000.

Of course I agreed, what a bargain. Just as I was about to do this the cheeky bastard called me Dave.

I immediately told him to fuck off. I just hate being called Dave.

I gave him my 96 year old mothers phone number because I thought at least she can benefit from it all. Her name is Mary so he couldn’t shorten that. She only has £1200 in savings so it would be doing her a massive favour.

 

Explanation

You don’t need to re-state the X  and Y because you are already at the endpoint

Click here for more info on full circle

If you want to do this on a Sinumeric Siemens 840D read this

Thanks For Reading

Don’t forget there’s loads more folks.

And a YouTube channel

Services offered at CNC Training Centre

Edgecam training.

Classroom programmer training.

Onsite CNC Machine Training.

CNC Training on all controls and machines.

Mazak Training Fanuc Training

Siemens Sinumerik

Don’t forget we offer training on all types of Mazak Machines and all Fanuc Controls 6m to 31i Oi old to young.

CNC Training Centre Reviews

30 five star ratings on Google (just saying)


 


CNC Turning 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 Turning M Codes
CNC turning M Codes

Download CNC Turning M Code List

This is my list of CNC Turning 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 Lathe. 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.

M8 G0 X50. Z2. G97 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 G97 S1500;

Or the end.

G97 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 Turning M Codes

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

Download CNC Turning M Code List

Sorry I’m being flippant again.

CNC Turning 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 Turning M Codes
Hand Em Over

For example this beast is a Mazak Megaturn

CNC Turning 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.

Some M codes That “Might” be Useful

Open Chuck                         (Might be M11)

Close Chuck                         (Could be M10)

Parts Catcher Up               (Mmmmm)

Parts Catcher Down         (No idea)

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 once had a boss once who actually learnt sines and cosines of angles.

Cosines of Angles

Holy shit I mean it’s fuckin impressive and I must add in the 1970’s  it was actually worth doing because we didn’t even have calculators. We just had bits of paper, pencils and Ford Capris.

The Market Online Classic Car Auctions

Mine was just like this but mine was a P reg three litre, vinyl roof handled like a cow on a march. Very fast at the time. Dream car, loved it.

Hope you enjoyed reading my article on CNC Turning 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 Turning M Code List

 

 

 

 

 


Leading Zeros Programme Numbers

CNC Training Call David: 07834 858 407

30 Five Star Reviews

CNC Training Centre Reviews

Contact CNC Training Centre

Leading Zeros Programme Numbers

Next time you call up a programme on your Fanuc or Haas control. Instead of typing O0001

Just type O1

I know it’s daft but just add up all the time you wasted (Three presses of your Zero key no wonder it’s worn out)

Training Courses

Fanuc Haas Training


Jump Around Using M99 Plus Block Skip

CNC Training Call David: 07834 858 407

30 Five Star Reviews

CNC Training Centre Reviews

Contact CNC Training Centre

Using M99 Plus Block Skip


Call David 07834 858 407


M99 Plus Block Skip, M99 on a Fanuc, Haas or Mazatrol ISO control can be used to jump sections of code.

Learn to use this in conjunction with the block skip command to switch it off and on.

Now I know you are all thinking “Dave you’re wrong it’s the end of a sub-program”. (Please in the name of holy shit do not call me Dave.)

Well you are right and you are wrong.

Yes it means continue and is used at the end of a sub program.

But it also has another nifty use.

Imagine you want to skip a complete section of program in the case below it’s the Spot Drill.

Let’s See Some Crap Ways Of Doing This

(If you want to do this on a Toshiba Tosnuc 888 or similar control go to the end of the article)

In this example it’s a spot drill we want to miss out.

M99 Plus Block Skip
Standard Code

You could delete it and make two programmes (sounds like hard work and loads of errors). Not to metion wear on your finger tips. Truth is it’s just a shit way to do it.

M99 CNC Code
Block Skip

The programme above  contains BLOCK SKIPS sometimes called BLOCK DELETES.

When you switch on your BLOCK DELETE/BLOCK SKIP switch, each time a forward slash (/) is seen that block will not be processed and the control will move on to the next block.

M99 Plus Block Skip

On most Fanuc controls it’s B.D.T not to be confused with CBT (Cock and balls torture) please do not google this in company time.

It works ok but it is very time consuming. If you want to skip a big section of code you will have to write in loads of block skips.

Call me a lazy bastard but I definitely couldn’t be arsed with that.

Some controls even have two three and four block skips so you can switch on any combination of these switches, mmmm complicated. Good luck with that one.

Do You Have Adequate Life Insurance?

M99 CNC Code (Now let’s use it)

The next example is the easiest way.

You probably normally see an M99 at the end of a sub programme.

In the case below it tells the control to jump to N100 (M99 P100).

The P part is the N number you want to jump to.

M99 P600 (Jump to N600)
M99 P6666 (Jumps to N6666)

 

M99 Plus Block Skip
M99

If you put the BLOCK SKIP/BLOCK DELETE on it will not jump the spot drill.

You would have a choice. If you temporarily want to skip a section of code.

Be careful what N Numbers you choose so as not to mix them up.

Maybe you broke all the taps and you don’t have anymore so you want to skip the tapping. In this case I’d just jump with M99 and then take it out before saving the program.

However, see the next Example.

For this last example you might have to think a bit. Call me finicky but I like the BLOCK SKIP/BLOCK DELETE as a default to be off.

Most machines now don’t have a mechanical switch for BLOCK DELETE/BLOCK SKIP so when you turn on the machine block skip will always be off.

That means the default would be to jump the code.

My way of looking at it, is that you would want the default to be running the whole program as normal.

So We Are Agreed

The default should really be the way the programme was originally done.

In the example below if the block skip is off, which it will be when you start up your machine.

The first thing it will do is jump over the bit that tells it to jump the code.

Meaning it runs as normal not jumping any tools.

The Clever Shit (M99 Plus Block Skip)

M99 Plus Block Skip
What’s This?

Now I know this is a bit confusing and maybe I didn’t explain it too well. Trust me it works.

What’s the matter with you lot just take some time to fuckin read it.

Sorry I’m losing my temper a bit here, the dog’s just pissed on the TV remote again. Just read through it a few times and the penny will drop.

CNC Training Centre Classroom Training

Where the teacher is never angry.

DO NOT PASS GO DO NOT COLLECT £200

Yes you can do this with GOTO

This is my pet Cockroach his name is Boris

GOTO 100
Same as M99 P100

To do this you must have the Macro Option if you don’t then this is where M99 comes in handy.

Best way to see if you have macro is to try using it in MDI.

In MDI Type in #1=6 if you have macro it will work if you don’t you’ll get an alarm and your machine will self destruct in 15 minutes.

Jumping Sections of Code on a Toshiba Tosnuc 888 or Similar

This is how you do it on a Toshiba (the blue bit).

Don’t forget it’s GO (that’s G and letter O) not G0 which is G and number zero (Rapid Command).

Don’t get your letter O’s and your number zeros mixed up.

/M99 P50                                   /[GO,50]               (JUMP TO N50)
M99 P100                                    [GO,100]            (JUMP TO N100)
N50                                              N50                      (ARRIVE HERE
THE CODE
THE CODE
THE CODE
ETC
ETC
ETC
ETC
N100                                            N100                      (ARRIVE HERE)

Without Fancy Shit  (Just jump some code)

M99 P100                                    [GO,100]            (JUMP TO N100)
THE CODE
THE CODE
THE CODE
ETC
ETC
ETC
ETC
N100                                            N100                      (ARRIVE HERE)

If you have macro you can do a similar thing on Mazak, Haas or Fanuc.

Services offered at CNC Training Centre

Edgecam training.

Classroom programmer training.

Onsite CNC Machine Training.

CNC Training on all controls and machines.

Mazak Training Fanuc Training

Don’t forget we offer training on all types of Mazak Machines and all Fanuc Controls 6m to 31i Oi old to young.

Call 07834 858 407


Careers in CNC

View all current vacancies in CNC

Click here

Call David: 07834 858 407