Friday, January 11, 2008

What is GCode?

-Code is the common name for the programming language of CNC Machines. Somewhat of a generic, catch-all type of term for CNC programming language. Very few machines adhere to this standard today. There are as many variations as there are manufacturers. This is how I think of G-Code. It is a simple language built off of the Cartesian Coordinate System for motion control. That is a mouthful.

I don't know if that is exactly right, but you will get my meaning in a second when we go through some code line by line. You will remember your High School Geometry soon enough. For the real pros out there, you know there is much more to G-Code then that, but it is a good place to start thinking about it.

You will see many variations of the G-Code name like:

Gcode
gcode
G-Code
g-code
G Code
G-Code

Are there other "Codes?"

In a word...Yes. We will get to that in a moment. G-code is also the name of any command in a CNC program that begins with the letter G. G-Codes generally tell the machine to perform an action. G-Codes can tell machines to move a certain distance in the X-Axis for example. Or, make a rapid move to another location. Or, move in an arcing fashion while milling. An on and on and on.

Here are some examples of G-Codes:

Remember these codes change to a certain degree between CAM Software packages and CNC Machine Manufacturers.

G00 Rapid positioning
G01 Linear interpolation
G02 CW circular interpolation
G03 CCW circular interpolation
G04 Dwell
G20 Programming in inches
G21 Programming in mm
G28 Return to home position
G40 Tool radius compensation off
G41 Tool radius compensation left
G42 Tool radius compensation right
G43 Tool offset compensation positive
G44 Tool offset compensation negative

Why does G-Code Change?

We humans like flexibility. We also like standards. G-Codes are standardized in a certain sense. Once you start to be able to read it, you can read just about any flavor of it. That is the standardized part. All machines are not created alike. Even identical machines are different to a certain degree. They may not have the same tools loaded or they have been slightly modified to produce a certain type of part. Interesting how people like to customize.

That is why G-Codes are not the same. You need some flexibility in the programming to accommodate all situations. Couple that with the fact that every manufacturer thinks their version is the best and you get a myriad of G-Codes out there.

Many manufacturers also try to force you to only use their code. For example, they give you a design interface to make parts and a CAM interface to produce code. They lock you into their "Black Box" so you can't go elsewhere for service and support. They lock you in their "Family." Sometimes they make up a completely different kind of G-Code language that no one can understand but them. They do that to keep your hands tied up.

What is an M-Code?

M-Codes are related to G-Codes. M-Codes control different machine functions. Some of these functions are turning the machine on and off. Turning the spindle on or off. Turning a plasma torch on or off. Turning coolant on or off. You get the idea. When programming your CNC machine you may need to perform these functions.

Like G-Code, M-Codes vary from manufacturer to manufacturer and from machine to machine. As you can imagine you would need an M-Code for turning a plasma torch on and off on a CNC Plasma Cutting Machine. You wouldn't need an M-Code to turn a spindle on and off though. Hey, the machine doesn't even have a spindle. It's a plasma cutter!

Ivan is active in Gcode and CNC Programming.

G-Code is one of his expertise.

Labels: , , ,

Monday, December 3, 2007

The Mini CNC Machine

 

The mini CNC machine gives the manufacturer a way to reduce cycle time. The mini CNC machine helps the manufacturer to avoid a long void between the end of one operation and the start of the next operation. The manufacturer who decides to purchase a mini CNC machine has chosen to apply the principles of cycle time to the area of production machinery.

The nature of the mini CNC machine creates three ways by which miniaturization can pave the way for cycle time reduction. This article will list three ways by which a manufacturer can reduce cycle time. It will also provide details concerning how the mini CNC machine permits the manufacturer to apply the principles of cycle time reduction to the operation of the mini CNC machine, and ultimately to the process of machine production.

The effort to reduce the manufacturers cycle time begins with an attempt to minimize the amount of time that operators spend loading and unloading various materials. The operator of a CNC machine will work more efficiently if he or she is able to minimize the workplace loading and unloading. This minimization is achieved through use of the mini CNC machine.

The operator of the mini CNC machine can save time by using large bed sizes and a small footprint. The operator of a mini CNC machine will save money by loading into the machine a wide piece of material and then limiting each process (cutting, engraving, routing, and drilling) to a small footprint.

The operator of a CNC-based piece of equipment can reduce cycle time by reducing the tool maintenance time. Such a reduction is made possible by the mini CNC machine. The small size of the miniaturized machines facilitates the creation of multiple design options. The large number of options leads to creation of a generous number of spare parts. Meanwhile the surplus of spare parts guarantees the ready replacement of any malfunctioning parts.

The operator of a mini CNC machine also reduces cycle time by decreasing the program execution time. The clamping of small elements to the mini CNC machine and the automation of the tiny machine parts leads to a lowering of operator intervention. Whenever operators can afford to devote less time to matching the quality of a previous result, then the manufacturer saves money.

It thus becomes obvious that the characteristics of the mini CNC machine guarantee the application by the operator of the principles of cycle time. Three aspects of any CNC program fall under the control of the product manufacturer.

1) The time required for workplace equipment to accomplish the loading and unloading of the material that requires a transformation (a cutting, drilling, routing or engraving),
2) The length of the program execution time,
3) The length of the tool maintenance time.

The ability of a mini CNC machine to substantially alter any of the above three aspects could lead to a reduction in cycle time. A reduction in cycle time could improve performance of the process machinery. Peter Vermeeren is the owner and webmaster of: Machines and Tools - Airsoft GOT | Tactical Gear and Kamikaze Martial Arts

Labels: , , ,