Programming of CNC machines, basic parametric programming for Fanuc and Sinumerik controllers, tips, tricks, useful formulas and tables, the basics of CAD / CAM and CNC simulators.

G02, G03 - interpolacja kołowa

G02, G03 - circular interpolation

Making bows using circular interpolation G02 / G03, is one of the basic programming functions for CNC machine tools. The key to proper programming of such treatment is the knowledge of several components: the plane on which we work - XY (G17), XZ (G18), YZ (G19) plotting the direction of the arc, in accordance with the G02 clockwise, counterclockwise ...
Tabela otworów pod gwint


Holes for screw threads - selection table drill into the threads version in pdf format download Metric (M) Metric fine (MF) Thread-inch Whitworth (BSW) Whitworth Pipe thread (BSP) Thread Size Drill diameter [mm] Thread Size Drill diameter [mm] Thread Size ["] Drill diameter [mm] Thread Size ["] ...
Alfabet CNC

Alphabet CNC

Knowledge of CNC alphabet, ie gkodu (g code) is something without which you can not think about professional programming of CNC machines. Of course, being a good programmer is also having knowledge of material science, or mathematics, but gkod is kind, glue 'that combines all these elements into one functional unit - the program ....

As we know, the operation consisting in the repetition of the same action / processing, we can easily use a simple subroutine. Macro offers us for the opportunity to use the parameters, arithmetic and logical functions and conditional loops, and the macro itself can call in the same simple way as a subroutine.

At the beginning of the fitting to mention how to define variables Fanuc controllers in our macro. For Sinumerik we performed this by assigning specific values ​​of R parameters, eg R10=25 . The Fanucach proceed similarly, except that instead of the letter R, used, # ', e.g.: #10=25 . More as a curiosity must be given to the fact that the number of our variable can be represented also in the form of an arithmetic expression, which is included in square brackets, for example:
 N10 # 1 = 10
 N15 # 2 = 1
 N20 # [# 1 + # 2-8] = 5 // which in our case is 
                     equivalent to # 3 = 5

Variables can be set to zero, and the values ​​in the range (-10 47 -10 -29) ∪ (10 -29, 10 47). Values ​​outside this range will trigger the alarm No. 111.
In the program, to specify the variables referenced in the following way:

 N10 # 2 = 10 # 5 = 100
 N15 G90 G1 X # 2 F # 5 // equivalent to G90 G1 X10 F100
 N20 G90 G1 X # 2 // equivalent to G90 G1 X-10 
 N25 G90 G1 Y [# 1 + # 5] // mandatory in square brackets.
                        equivalent to G90 G1 Y110

When defining the values ​​of the variables do not need to use commas as decimal values, so important when programming for Fanuc controllers, ie .:

 N10 # 1 = 5 // definition of a variable without a point / comma 
 N15 G90 G1 X5.  // Here no dots for the X5.  will cause an error 
 N20 G90 G2 // X # 1 even though the value was not 
                     dot, it will not cause a program error

Arithmetic and logical variables make very straight

  • sum #1+#2
  • difference #1-#2
  • product #1*#2
  • quotient #1/#2

The values ​​define the angle in degrees, which is for example an angle of
90 degrees 30 minutes: # 1 = 90.5

  • Sine SIN[#1]
  • Cosine COS[#1]
  • Tangent TAN[#1]
  • arc tangent ATAN[#1]
  • Square root SQRT[#1]
  • absolute value ABS[#1]
  • rounding the ROUND[#1]
  • rounding down FIX[#!]
  • rounding up FUP[#1]
  • boolean OR #1 OR #2
  • boolean XOR #1 XOR #2
  • boolean AND #1 AND #2

We can make nesting operations and the order of execution is defined by using square brackets. We can nest up to 5 arithmetic functions, such as:

 N10 # 1 = SIN [[[# 2 + # 3] * # 4 + # 5] * # 6]

Previous Entry G74: a series of deep drilling for CNC Fanuc Next post G02, G03 - circular interpolation

1 comment

  1. Widget says:

    September 28, 2012

    Regarding decimal commas, where you moved on, it is to your advantage to change the parameters that the machine read the number without a decimal as mm, and not as micrometers. Unfortunately, I can not remember at the moment who is responsible for this parameter. But a lot more convenient to write programs without those unnecessary commas.


You must be logged in to power komentowaæ ..