CNC 프로그램 종류 - CNC peulogeulaem jonglyu

가. CNC 프로그램의 정의

CNC 프로그램이란 주어진 도면의 제품을 가공하기 위하여 가공 공정을 CNC 장치가 이해할 수 있는 표현 형식으로 바꾸는 작업이다.

CNC 프로그램은 부품의 일부분을 가공하는 프로그램의 조합에 의하여 완성품이 이루어지는 것이 대부분이므로 일명 파트 프로그램이라고 한다.

가공이 이루어질 때에는 기계에 따라 공작물은 고정되어 있고 공구가 이동하는 방법과 공구는 고정되어 있고 공작물을 고정한 테이블이 이동하는 방법이 있지만 CNC 프로그램을 작성할 때에는 항상 공작물은 고정되어 있고 공구가 공작물 주위를 움직인다고 가정하고 프로그래밍 한다.

나. NC 프로그램의 방법

NC 프로그램은 수동 또는 자동으로 작성할 수 있다.

수동 프로그래밍이란 간단한 부품의 경우 도면을 보고 프로그래머가 직접 손으로 작성하는 것을 말하며, 자동 프로그래밍이란 형상이 복잡해지면 공구 위치의 산출 및 프로 그래밍에 많은 시간이 소요되므로 컴퓨터와 CAM 소프트웨어를 사용하여 작 성하는 프로그래밍 방식을 말한다. 프로그램을 작성하기 위하여 다음과 같은 가공 계획을 수립하여야 한다.

① 가공할 범위와 사용할 기계의 선정 : 도면을 분석하여 그 부품을 가공하기에 적합한 기계를 선정한다.

② 가공물의 고정 방법 및 필요한 치공구의 선정

③ 가공 순서 결정 : 공정의 분할 및 공구의 출발점, 공구의 경로 등을 결정한다.

④ 공구의 선정 : 공구 홀더와 인서트 팁의 종류 및 공구의 고정 방법을 선정한다.

⑤ 절삭 조건의 결정 : 절삭 속도 또는 주축의 회전수와 이송 속도, 절입량, 절삭유의 사용유무 등을 결정한다.

⑥ 프로그램 방법 결정 : 간단한 형상의 도면은 수동 프로그래밍을 이용하 고, 복잡한 형상의 도면은 자동 프로그래밍을 이용한다.

다. NC 프로그램의 구성

CNC 프로그램은 주소(address)와 수치(data)의 조합에 의하여 이루어진 단어들이 조합되어 블록(block)을 구성하며, 이 블록의 조합으로 프로그램이 구성되어 있다.

NC 프로그램은 주프로그램과 보조프로그램으로 나눌 수 있으 며 블록 단위로 실행된다.

프로그램은 일반적으로 주프로그램에 따라 실행되지만 주프로그램에서 보조프로그램을 호출하는 명령(M98)이 있으면 보조프로그램에 따라 실행되며, 보조프로그램 종료(M99) 명령이 있으면 주프로그램으로 복귀하여 작업을 진행한다.

(1) 주소(address)

주소는 영문 대문자(A~Z) 중의 한 개로 표시되며, 각 주소의 기능은 다음의 표와 같다.

CNC 프로그램 종류 - CNC peulogeulaem jonglyu

주소(address)의 기능

(2) 수치(data)

수치는 주소의 기능에 따라 2자리, 4자리의 수치를 사용하였으나, 근래에는 확장되는 추세이다.

수치 값의 처음에 나오는 0과 소수점 다음의 마지막에 나오는 0은 생략할 수 있다.

예) G00, G01 ……… 2자리 수

(수치값 처음에 나오는 0은 생략 가능 : G0, G1)

T0111 ……… 4자리 수

좌표값을 나타내는 주소에 사용되는 수치는 최소 명령 단위에 따라 0.001mm까지 표시할 수 있다.

예) X10.015 Z100.005 …………… 소수점 이하 3자리 수

X100000 = X100.000 = X100. … 소수점 다음의 마지막에 나오는 0은 생 략 가능

소수점은 거리와 시간 속도의 단위를 갖는 것에 사용되는 주소(X, Y, Z, A, B, C, I, J, K, R, F)의 수치에만 가능하다. 단, 파라미터 설정에 따라 소수점 없이 사용할 수도 있다.

이들 이외의 주소와 사용되는 수치는 소수점을 사용하면 에러가 발생된다.

예) X100. = 100mm, X10.05 = 10.05mm

X100 = 0.1mm, X1005 = 1.005mm

(최소 명령단위가 0.001mm 이므로 소수점이 없으면 1/1000mm로 간주한다.)

S2000. …… 알람 발생(소수점 입력 에러)

(3) 단어(word)

단어는 NC 프로그램의 기본 단위이며, 주소와 수치로 구성된다. 주소는 알 파벳(A~Z) 중 1개를 사용하고, 주소 다음에 수치를 사용한다.

(4) 블록(block)

몇 개의 단어가 모여 구성된 한 개의 명령 단위를 블록이라고 하며, 각각 의 블록은 블록 끝(EOB : end of block)으로 구분하며, 제작 회사에 따라 “ ; ” 또는 “ # ”과 같은 부호로 표시한다.

한 블록에 사용되는 단어의 수에는 제한이 없다. 근래 컴퓨터에서 프로그래밍 하는 경우에는 엔터키를 치면 EOB로 인식되므로 부호는 생략해도 무방하다.

기계는 블록의 순서대로 움직이므로 프로그램을 작성할 때에는 가공 순서에 따라 블록을 구성하여야 한다.

일반적인 블록의 구성은 다음과 같다.

블록의 구성

(5) CNC 프로그램의 주요 주소(address) 기능

(가) 프로그램 번호(O)

CNC 기계의 제어 장치는 여러 개의 프로그램을 CNC 메모리에 저장할 수 있다.

이와 같이 저장된 프로그램을 구별하기 위하여, 서로 다른 프로 그램 번호를 붙인다.

프로그램 번호는 주소 “O” 다음에 4자리 숫자(0001~ 9999)를 사용한다.

(나) 블록 전개 번호(N)

블록의 순서를 지정하는 것으로 주소 “N” 다음에 네 자리 숫자(1~9999) 로 번호를 표시한다.

전개 번호는 점차 증가하는 수치를 사용하고 있으나 N01, N02, N03, … 의 순서로 하는 것보다는 N10, N20, N30, … 과 같이 일정한 간격을 두고 번호를 붙이면 프로그램을 작성하다가 필요에 따라 다른 한 블록을 삽입할 수 있어서 좋다.

전개 번호는 블록을 탐색할 때 주로 이용되는데, 생략할 수도 있지만 복합 반복 사이클(G70~G76)을 사용할 때는 반드시 사용해야 한다.

예) N10 G50 X150.0 Z200.0 S1500 T0100 ;

N20 G96 S120 M03 ;

N30 G00 X62.0 Z0.0 T0101 M08 ;

N40 G01 X-1.0 F0.1

(다) 준비 기능(G)

준비 기능은 제어 장치의 기능을 동작하기 위한 준비를 하는 기능으로 주소“G”와 두 자리의 숫자로 구성되어 있다. 다음의 표와 같이 2가지로 구 분된다. G코드의 종류와 기능 및 명령 방법은 KS B 4206에 규정되어 있다.

준비 기능의 구분

예) G01 X50.0 F0.2 ;

Z50.0 ; G01 유효(G01은 연속 유효 G코드)

X60.0 Z30.0 ; G01 유효

G00 Z50.0 ;

G04 P1000 ; G04는 이 블록에서만 유효(G04는 1회 유효 G코드)

X70.0 ; G00 유효(G00이 연속 유효 G코드이므로)

(라) 주축 기능(S)

주축의 회전 속도를 명령하는 기능으로 주소 “S”를 사용하며, G96(절삭 속도 일정 제어) 또는 G97(주축 회전수 일정 제어)과 함께 명령해야 한다.

효율적인 절삭이 이루어지려면 절삭 속도를 일정하게 유지해야 한다.

절삭 속도는 가공물 또는 공구의 지름에 영향을 받으므로 프로그램 내에서 가공물이나 공구의 지름을 알 수 있는 조건일 때에는 절삭 속도 일정 제어(G96)를 사용하는 것이 바람직하다.

예를 들어 CNC 선반에서 명령되는 X값은 가공물의 지름 정보를 CNC 장치에 제공할 수 있으므로 G96을 명령할 수 있으나, 머시닝 센터는 사용 공구의 지름 정보를 제공할 수 없으므로 프로그래머가 사용 공구에 적합한 절삭 속도를 얻을 수 있는 주축 회전수를 계산하여 G97로 명령하여야 한다.

일반적으로 전원을 공급할 때 CNC 선반과 머시닝 센터는 안전을 위하여 G97이 설정되도록 파라미터에 지정하여 사용한다.

주축 G코드

예) G96 S100 M03 ; 주축 속도 100m/min로 시계방향 회전

G97 S1000 M03 ; 주축 회전수 1,000rpm으로 시계방향 회전

(마) 이송 기능(F)

이송 속도를 명령하는 기능으로 주소 “F”를 사용하며, 준비 기능의 회전 당 이송(mm/rev) 또는 분당 이송(mm/min) 명령과 함께 사용해야 한다.

일반적으로 전원을 공급할 때 CNC 선반에서는 회전당 이송을, 머시닝 센터에서는 분당 이송을 초기 설정하여 사용한다. CNC 선반과 머시닝 센터에서 사용하는 회전당 이송과 분당 이송의 구분 코드는 다음 표와 같다.

분당 이송과 회전당 이송의 구분

(바) 공구 기능(T)

공구를 선택하는 기능으로 주소 “T”와 두 자리 숫자를 사용한다. 선반계 와 밀링계에서 사용하는 방법에는 다소의 차이가 있다.

CNC 선반에서는 공구의 선택 및 공구 보정 번호를 선택하는 기능을 하며, 머시닝 센터에서 는 공구를 선택하는 기능을 담당하며 M06(공구 교환)을 함께 명령해야 한 다.

M06 명령 없이 T 명령을 하게 되면 에러가 발생한다.

CNC 선반과 머시닝 센터에 사용되는 공구 기능의 예는 다음과 같다.

● CNC 선반의 경우

(사) 보조 기능(M)

보조 기능은 스핀들 전동기를 비롯한 기계의 각종 기능을 수행하는데 필요한 보조 장치(각종 스위치)의 ON/OFF를 수행하는 기능으로 주소 “M”과 두 자리 숫자(00~99)를 사용한다.

보조 기능은 종전에는 한 블록에 하나만 사용할 수 있고, 만일 한 블록에 하나 이상 사용하면 뒤에 명령한 블록만 유효하였다.

그러나 최근의 제어장치에는 한 블록에 복수의 M코드 사용이 가능하게 되었다.