Heidenhain Programming
(Read to the end for Heidenhain Programming tips)
The Heidenhain control is very easy to learn because it gives the operator prompts right from the outset. Follow these ten easy Heidenhain Programming steps to create your first working CNC program.
(1) Start your Heidenhain Programming.
input a Program Number when asked. On starting a new program you are asked if you want millimetres or inches.
(2) Create some stock for the graphics. You go on to create what is known as a blank form (BLK FORM). This is optional but is the blank shape for the graphics.
The first figure 0.1 is the bottom left hand corner and the second figure 0.2 is the top right. Take your datum figure into account when you dimension the blank.

This is a blank 110 x 110 x 10 and the datum is in the centre. If your datum was in the bottom left hand corner then it would be like this.

Hope this does not confuse you but I will be machining a 100mm square so this blank would leave me 5mm all round and you will see it removed when the graphics run..
Now we Need A Tool
(3) Define the tools to use. 

Above is the tools defined in the programme. The length has not been put in yet.
In Heidenhain programming tool offsets can be defined inside the program, which is traditionally how these controls worked. You can have them in an external file the same way as Fanuc and Mazak controls. These offsets are controlled from outside of the program.
In Heidenhain Programming work offsets (datums) again can be embedded in the program or external. If you use the external work offsets then each one has a number that you can call out to use it. It’s a bit like G54 to G59 on a Fanuc Control
It’s All So Easy On This Control.
You can just zero the display to set your datum position if you wish.
There is an advantage to everything being self-contained within a program. It means that when you recall the program everything is set and ready to go. Tools are defined in the program using the TOOL DEF button and you can either define all tools at the beginning or on the fly as you use them.
If your machine has an automatic tool changer the these will usually be in an external table.
You’re doing Well, So Far so Good
(4) Get the tool. 

Call Tool 1
The tool call button will ask for a tool number and a spindle speed which you input. Once this line is read the tool is active. You may need to add an M6 if you have a tool changer. The M6 will instigate the tool change in this case Tool 1.
(5) Make a move to where you want to drill your first hole. 

At the end of this line 5 you will need an M3 to start your spindle. The second line 6 brings your Z axis down to the component (3mm above).
Linear moves are programmed by using the L key which then prompts the operator for and X Y and or Z input. As you enter each figure you are prompted for the next input. It doesn’t take long to get the idea of how this is done.
Later controls have help screens.
After the XYZ input you are prompted to choose for RO RL or RR which is the choice of cutter compensation cancel or compensation to the left or right. You won’t need this because you are only drilling holes. So skip it or use RO.
There is no actual rapid on these controls you just program maximum feed (F9999). On the newer controls there is a FMAX soft key which does this for you.
You can input all the values in a line or press the END key which will complete the line. I recommend you play around with different keys to get the hang of how it all works. You can then just delete the program and have a go at a real one.
Let’s Tell It what We Want To Do
(6) Define your drilling cycle use. 
Drilling is done from the CYCL DEF button. When pressed you pick your cycle from the soft keys. Select the drilling cycle and the control will ask for all the information about a drilled hole.
- Set up clearance.
- Depth.
- Peck.
- Dwell
- Feed rate.

The above cycle has:
- Q200 clearance value of 3mm
- Q201 a depth of -20mm (Minus sign is important)
- Q206 the feed rate is 150mm per minute
- Q202 a peck of 20mm (same as depth so no peck)
- Q210 no dwell at the top of the hole
- Q203 is the surface which in this case is Z zero.
- Q204 is the clearance
- Q211 no dwell at the bottom of the hole
- Q395 set this to 0
Once these are input the cycle is ready to use.
Here We Go Now Let’s Cut Metal.
(7) Drill your hole. 
You then press the CYCL CALL button and a hole is drilled. You can then repeat this process. Move to a position and CYCL CALL. The CYCL CALL will always remember the last cycle you defined.

In the above you have a CYCL CALL for the position that you are already at.
Then three more positions each followed by a CYCL CALL to drill the pre-defined hole in the CYCL DEF.
(8) Move the tool away from the workpiece.
You can use an M25 to do this which will take the tool upwards to the tool change position.
(9) End your program.
(10) Test your program using the graphics test run button.



Congratulations
And that’s it folks Heidenhain Programming in ten steps you have a working program.
Programming circular moves is just as easy with the CC and C buttons. See explanation.
Easy what?
I recommend you play around with different keys to get the hang of how it all works. You can then just delete the program and have a go at a real one.
Some Heidenhain Programming Tips
If for example an X figure is highlighted and you press the lower cursor
you will jump to the next X figure.

This can be really useful if you wanted for example to edit all the feed rates in a program. Just move your cursor to the first one and each time you press the lower cursor
it will jump to the next one. This can be really confusing if your not expecting it because you can jump miles ahead in your program.
Get uses to this to avoid a shit-storm of confusion.
To escape a line press the end key.

There is More……
Use the GOTO key to quickly jump to a line number.


Oh by the way, if you use GOTO and input O for the search you will go to the head of the programme.
If you have the option put loads of comments in your programme just like this but try not to be rude to your operators like this programmer.

Please contact me if you require:
Don’t forget to watch my Videos
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.