Tag Archives: conversational cnc programming

G01 — Use ME for RAPID Movement Too !!

To experienced G code programmers … we might be stating the obvious here … but for the novice, this blog post may reveal a valuable programming trick that may come in handy during your CNC programming life.

When learning G code programming … one of the first codes taught are G00 and G01. G00 is used for rapid movement … making the axis move at their top speeds … while G01 is used for moving at a feedrate in a straight line. If we take a look at some of the details of these codes … we will also reveal a few hints into how they can be manipulated beyond their basic design.

A couple of notes on G00 :

  • As stated G00 executes axis movement at their top speed … so we can get to the destination as quickly as possible.
  • Oftentimes … the two axis are not created with the same rapid traverse speed … for example the X axis may be able to travel 1200 IPM while the Y axis is only capable of 850 IPM. This is often due to the design of the machine … size of the ball screw, etc..
  • When two axis are involved in the G00 move … the distance each axis has to travel is the determining factor as to which axis reaches it’s destination first … resulting in a move that is not a straight line.
  • Oftentimes … the machine is equipped with a RAPID OVERRIDE switch / dial that allows the user to slow down the rapid movement by some percentage … 25% – 50% – 100%. BUT … there is usually no a variable setting … so the rapid movements are hard to control when working in tight corners during program prove out.

A couple of notes on G01 :

  • G01 executes axis movement at a programmed feedrate … the axis moves at a rate that we determine via the F command.
  • When two axis are involved in the G01 move … the machine’s CNC controller calcuates the speed at which each axis will move so that each axis arrives at the end point at the same time … always resulting in a move that is a straight line.
  • Oftentimes … the machine is equipped with a FEEDRATE OVERRIDE switch / dial that allows the user to slow down the feed movement by percentages … there is usually a variable setting … and allows for extensive flexibility during program prove out … even to pause the movement completely.

SOooo What??

The points outlined above lend themselves to some “bending and twisting” and result in some nice features that can be employed in our CNC programming … such as :
  • We often think of G01 movement as cutting feed or cutting movement … but using a faster feed of 200-300 IPM or higher … when not cutting can turn a G01 move into a “rapid” move.

The two main advantages of programming G01 for rapid include :

  • Programming a fast feed into a G01 block will always result in a straight line move … comes in handy sometimes when moving around the part and avoiding possible collisions that a non-linear move like G00 may cause.
  • The FEEDRATE OVERRIDE switch allows us greater flexibility during programming prove out than the RAPID OVERRIDE … but yet when running at 100% the fast feedrate doesn’t have to effect our cycletime.

Thinking Outside the Box … always produces interesting results. In this case … we can bend the intended use of G01 to assist us creating an un-intended yet beneficial cutter movement.

 Got Ya Think’in ??
Any Other Ideas ??