<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko">
		<id>https://tcatmon.com/w/index.php?action=history&amp;feed=atom&amp;title=%EA%B0%80%EA%B3%B5%EC%A4%80%EB%B9%84%EA%B8%B0%EB%8A%A5</id>
		<title>가공준비기능 - 편집 역사</title>
		<link rel="self" type="application/atom+xml" href="https://tcatmon.com/w/index.php?action=history&amp;feed=atom&amp;title=%EA%B0%80%EA%B3%B5%EC%A4%80%EB%B9%84%EA%B8%B0%EB%8A%A5"/>
		<link rel="alternate" type="text/html" href="https://tcatmon.com/w/index.php?title=%EA%B0%80%EA%B3%B5%EC%A4%80%EB%B9%84%EA%B8%B0%EB%8A%A5&amp;action=history"/>
		<updated>2026-07-11T14:56:12Z</updated>
		<subtitle>이 문서의 편집 역사</subtitle>
		<generator>MediaWiki 1.28.0</generator>

	<entry>
		<id>https://tcatmon.com/w/index.php?title=%EA%B0%80%EA%B3%B5%EC%A4%80%EB%B9%84%EA%B8%B0%EB%8A%A5&amp;diff=29891&amp;oldid=prev</id>
		<title>2017년 1월 21일 (토) 10:34에 Maintenance script님의 편집</title>
		<link rel="alternate" type="text/html" href="https://tcatmon.com/w/index.php?title=%EA%B0%80%EA%B3%B5%EC%A4%80%EB%B9%84%EA%B8%B0%EB%8A%A5&amp;diff=29891&amp;oldid=prev"/>
				<updated>2017-01-21T10:34:53Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;새 문서&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
[목차]&lt;br /&gt;
&lt;br /&gt;
preparatory function&lt;br /&gt;
&lt;br /&gt;
== 개요 ==&lt;br /&gt;
&lt;br /&gt;
[[머시닝센터]] [[CNC]][[선반]] 등 공작[[기계]]에 가공을 하기 위해 가공 사전에 가공명령어들을 프로그래밍하는 것으로 흔히 G 코드라고 한다.  [[CNC]] 가공의 핵심적인 요소 중 하나로 대체적인 명령어는 전세계적으로 통일되어 있으나, 기계의 특성이나 공작기계의 생산회사(정확히는 콘트롤러의 생산회사)에 따라 약간의 차이가 있다. &lt;br /&gt;
&lt;br /&gt;
명령어는 한 개의 블록 단위로 구성되며 구성요소는  &lt;br /&gt;
&lt;br /&gt;
 N(블록 넘버) &lt;br /&gt;
 T(공구 지정)&lt;br /&gt;
 S(주축 회전과 관련된 기능), &lt;br /&gt;
 G(가공지령)&lt;br /&gt;
 F(가공 속도 제어 기능)&lt;br /&gt;
 M(보조 기능)&lt;br /&gt;
&lt;br /&gt;
등이 있다.&lt;br /&gt;
&lt;br /&gt;
이 중 G기능이 가장 중요하며 G와 F를 제외한 나머지들은 공작기계가 점점 발달함에 따라 조금씩 추가된 것들이다(특히 M). 그래서 가공준비기능을 G코드라고 통상적으로 부르는 것이다. &lt;br /&gt;
&lt;br /&gt;
블록의 형태는 N, (T, S,) G, F, M의 형식을 주로 취한다.&lt;br /&gt;
&lt;br /&gt;
== N ==&lt;br /&gt;
 블록에 넘버를 부여한다. 보통은 생략되나 사이클을 사용할 경우 N10, N90 처럼 특정 블럭을 지정해야 할 때는 생략할 수 없다. 기종에 따라 자동으로 넘버가 부여되는 경우도 있다.&lt;br /&gt;
&lt;br /&gt;
== T ==&lt;br /&gt;
 공구를 지정한다. ATC(Auto Tool Changer)가 부착된 기계에만 있다. 사용자가 필요에 따라 임의 장착한 공구를 호출하거나 수납할 때 사용되는 명령으로 각각의 공구에 번호를 부여하여 필요한 공구를 사용하게끔 하는 기능.&lt;br /&gt;
&lt;br /&gt;
== S ==&lt;br /&gt;
 주축의 회전을 제어하는 기능으로 주축의 회전 수 지정, 주축의 최대 회전 수 지정, 주축의 일정가공 속도 지정)의 3가지의 용도로 주로 사용된다. &lt;br /&gt;
&lt;br /&gt;
== G ==&lt;br /&gt;
 실질적인 가공지령을 하는 명령어로 G00부터 G99까지의 명령어가 있다.[* 최신 기계는 3자리 수 이상의 G코드가 있기도 한다.] 하지만 실질적으로 사용되는 것은 20~30가지로 그 구성은 대부분 동일하나 가공용도, 기종이나 제작회사에 따라 조금씩의 차이가 있다. 가공준비기능의 핵심을 담당하며 관련 [[자격증]] 준비자들을 좌절로 빠뜨리는 주범이기도 하다. &lt;br /&gt;
&lt;br /&gt;
 중요한 G 코드의 명령어들은 다음과 같다.&lt;br /&gt;
&lt;br /&gt;
 G00 - 급속이송, 위치결정이라고도 한다. 가공과 가공사이 공구를 빠르게 이송시키는 역할을 한다.&lt;br /&gt;
 G01 - 직선보간, 일직선을 가공할 때 사용하는 명령어&lt;br /&gt;
 G02 - 시계방향의 원호 가공&lt;br /&gt;
 G03 - 반시계방향의 원호 가공&lt;br /&gt;
 G04 - 휴지(dwell) 이송 일시 정지 기능&lt;br /&gt;
 G17 - X-Y평면 설정(머시닝센터)&lt;br /&gt;
 G18 - X-Z평면 설정(머시닝센터)&lt;br /&gt;
 G19 - Y-Z평면 설정(머시닝센터)&lt;br /&gt;
 G28 - 기계 원점으로 복귀&lt;br /&gt;
 G30 - 제2 원점(공구 교환 지점)으로 복귀&lt;br /&gt;
 G40 - 공구 경보정 취소&lt;br /&gt;
 G41 - 공구 좌측 경보정&lt;br /&gt;
 G42 - 공구 우측 경보정&lt;br /&gt;
 G43 - 공구 길이 보정+&lt;br /&gt;
 G44 - 공구 길이 보정-&lt;br /&gt;
 G49 - 공구 길이 보정 취소&lt;br /&gt;
 G50 - 주축 최대 회전수 제어/공작물 좌표계 설정(선반) S 명령어가 반드시 따라와야 한다.&lt;br /&gt;
 G54 - 공작물 좌표계 1번 선택&lt;br /&gt;
 G55 - 공작물 좌표계 2번 선택&lt;br /&gt;
 G56 - 공작물 좌표계 3번 선택&lt;br /&gt;
 G57 - 공작물 좌표계 4번 선택&lt;br /&gt;
 G70 - 정삭 사이클(선반) 사이클 과정이 될 N을 반드시 지정해야 한다.&lt;br /&gt;
 G71 - 내, 외경 황삭 사이클(선반) N지정 필요&lt;br /&gt;
 G73 - 고속 심공 드릴 사이클&lt;br /&gt;
 G74 - 왼나사 태핑 사이클&lt;br /&gt;
 G76 - 나사 사이클(선반),정밀 보링 사이클(머시닝센터)&lt;br /&gt;
 G80 - 사이클 취소&lt;br /&gt;
 G81 - 드릴 사이클(머시닝센터)&lt;br /&gt;
 G82 - 카운터 보링 사이클(머시닝센터)&lt;br /&gt;
 G84 - 태핑 사이클(머시닝센터), 암나사를 내기 위한 사이클&lt;br /&gt;
 G90 - 내, 외경 황삭 사이클(선반), 절대 좌표 지령(머시닝센터)&lt;br /&gt;
 G91 - 증분 지령/상대 좌표 지령&lt;br /&gt;
 G92 - 나사 절삭 사이클(선반)/공작물 좌표계 설정(머시닝센터)&lt;br /&gt;
 G94 - 단면 절삭 사이클(선반)/분당 이송 지령(머시닝센터)&lt;br /&gt;
 G96 - 절삭 속도 일정 제어(선반) 속도 S가 반드시 지정되어야 한다.&lt;br /&gt;
 G97 - 회전수 일정 제어&lt;br /&gt;
 G99 - 회전당 일정 속도 이송 지령&lt;br /&gt;
&lt;br /&gt;
== F ==&lt;br /&gt;
 이송 속도를 제어하는 기능. G01, G02, G03 등 가공(보간) 명령 이후 반드시 한 번 이상은 지령되어야 하며 한 번 속도가 지령되면 다음 보간 명령에는 별도의 F 명령이 있지 않은 한 맨 마지막에 입력된 가공 이송 속도를 따라간다. &lt;br /&gt;
&lt;br /&gt;
CNC선반의 경우 공작물은 회전하고 공구는 이송되므로 공작물의 회전에 따라 F의 단위가 변화한다. 공작물이 일정한 회전수를 가지는 G97에서는 mm/1회전(G99)을 사용하고 공작물의 직경(=공구의 Z 위치)에 따라 회전수가 변화하는 G96[*  공작물의 직경이 달라질 때 같은 회전수를 가지고 있다면 직경에 따른 원주의 변화로 같은 가공값을 기대하기 힘들기 때문에 G96을 사용한다. G96을 사용하면 공작물의 직경이 작아질수록 회전수가 빨라진다. 단 이렇게 되면 공구가 X0. 즉 공작물의 중심에 가까워질수록 회전수가 기하급수적으로 빨라지기 때문에 반드시 G50(주축 최고 회전수 지정)을 지정하여 그 이상 회전하지 않도록 해야 한다. ]  m/min(G98)을 사용한다.&lt;br /&gt;
&lt;br /&gt;
머시닝센터는 가공시 공작물은 가만히 고정되어 있고 공구가 회전과 이송을 모두 담당하기 때문에 mm/min를 대부분 사용한다. 다만 암[[나사]] 작업 등 예외는 있다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 예) &lt;br /&gt;
 G97 S120 M03 = 주축을 120 RPM 으로 정회전시킨다.&lt;br /&gt;
 G99 G01 Z10. F0.2(선반)= 현재 위치로부터 Z10 .지점까지 1회전당 0.2밀리미터의 이송속도로 절삭한다.&lt;br /&gt;
 &lt;br /&gt;
 예2) &lt;br /&gt;
 G50 S2000= 주축의 RPM이 2000을 넘지 않도록 한계를 설정한다.&lt;br /&gt;
 G96 S1200 M03= 주축을 공구의 위치에 따라 1200mm/min의 절삭속도를 유지하도록 정회전시킨다.&lt;br /&gt;
 G98 G01 X10. Z10. F0.2(선반) = 현재 위치로부터 X10. Z10. 지점까지 분당 0.2미터의 속도로 절삭한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 예3) &lt;br /&gt;
 G02 X10. Y10. F200(머시닝센터) 현재 위치에서 X10. Y10.의 지점까지 1분에 200밀리미터의 이송속도로 시계방향으로 원호를 그리며 절삭한다.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== M ==&lt;br /&gt;
 보조 기능, 공작기계에 보조적으로 붙어있던 장치들이 점점 자동화, 프로그램화 되면서 부가적으로 들어간 기능들이다. 초반에는 그 수가 적었지만 공작기계가 점점 발달하면서 G기능 못지않게 중요성이 부각된 기능들로 대체적으로 다음과 같이 구성되어 있다.&lt;br /&gt;
&lt;br /&gt;
 M00 프로그램 정지. &lt;br /&gt;
 M01 프로그램 일시 정지.&lt;br /&gt;
 M02 프로그램 종료.&lt;br /&gt;
 M03 주축 정회전&lt;br /&gt;
 M04 주축 역회전&lt;br /&gt;
 M05 주축 정지&lt;br /&gt;
 M06 공구 교환(머시닝센터) 호출할 공구 번호 T가 필요하다.&lt;br /&gt;
 M08 절삭유 ON&lt;br /&gt;
 M09 절삭유 OFF&lt;br /&gt;
 M16 공구 수납(머시닝센터) 현재 사용중인 공구를 툴 매거진에 수납한다.&lt;br /&gt;
 M30 프로그램 종료 후 프로그램 맨 선두로 되돌린다.&lt;br /&gt;
 M98 보조 프로그램 호출&lt;br /&gt;
 M99 보조 프로그램 종료&lt;br /&gt;
&lt;br /&gt;
그외 M기능은 기계 제조사에서 별도로 지정한 기능이 있을수 있는데 그 예로 국내 H사 머시닝센터의 경우 M200 을사용하면 공구 길이 보정을 자동으로 실행한다.[* 테이블에 이를위한 센서가 장착되어 있다.]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CAM ==&lt;br /&gt;
&lt;br /&gt;
 과거에는 저 명령어들을 일일히 외워 많게는 수백, 수천줄에 달하는 명령어를 직접 입력하여 가공 프로그램을 작성해야 했으나 기술의 발달로 [[CAD]]에서 알아서 G코드를 추출해 주는 프로그램들이 속속히 등장했는데 이것을 CAM(Computer Aided Manufacturing)[* 물론 CAM이 이것만을 의미하는 것은 아니지만 가장 많이 사용되는 것은 이것이다. ]이라고 한다. 그러나 CAM만으로는 기계가 알아서 움직여 주는 것은 또 아니기 때문에 현재의 산업 현장에서는 과거 공작기계의 모든 부분을 전담하던 오퍼레이터가 CAM만을 전문으로 추출하는 CAD 직원과 CAM이 실질적으로 기계에 사용될 수 있도록 기계를 세팅하는 세팅맨으로 점점 분화되고 있는 추세이다.&lt;br /&gt;
== CNC밀링/머시닝센터 NC 프로그램 예시 ==&lt;br /&gt;
G40 G80 G49 G90; (경보정 취소, 반복사이클 취소, 길이보정 취소, 절대좌표 지령)&lt;br /&gt;
G91 G28 Z0.; (Z축 원점복귀)&lt;br /&gt;
G30 (G91)X0.Y0.Z0..(공구 교환지점으로 이송)&lt;br /&gt;
M06 T01; (현재 공구를 1번공구로 교환, CNC밀링은 ATC가 없으므로 오류발생)&lt;br /&gt;
G90 G54 G00 X10. Y10. M03 S3000; (G54좌표계 절대좌표 x10,y10 으로 이동하면서 3000RPM으로 주축회전) &lt;br /&gt;
G43 Z50. H01 M08; (길이보정 1번을 적용시켜 Z좌표50으로 이동. 절삭유분사)&lt;br /&gt;
G04 P3000; (3초간 대기)&lt;br /&gt;
G98 G83 Z-22. Q3. R2. F500; (Z2.까지 급속이송 내려간 후 팩드릴링 사이클로 1회3mm 분당500mm로 z-22.까지 가공. 가공후 초기점 복귀)&lt;br /&gt;
G80 M09; (반복사이클 취소, 절삭유급유 정지)&lt;br /&gt;
G91 G30 Z0.; (공구 교환지점으로 이송) &lt;br /&gt;
M06 T02; (2번공구 교환)&lt;br /&gt;
G90 G54 G00 X10. Y10. M03 S800; (G54좌표계 절대좌표 x10,y10 으로 이동하면서 800RPM으로 주축회전) &lt;br /&gt;
G43 Z50. H02 M08; (길이보정 2번을 적용시켜 Z좌표50으로 이동. 절삭유분사)&lt;br /&gt;
G04 P3000; (3초간 대기)&lt;br /&gt;
G98 G84 Z-20. R2. F1200; (Z2.까지 급속이송 내려간 후 태핑 사이클로 분당1200mm로 z-20.까지 가공. 가공후 초기점 복귀)&lt;br /&gt;
G80 M09; (반복사이클 취소, 절삭유급유 정지)&lt;br /&gt;
M05; (주축정지)&lt;br /&gt;
G91 G28 Z0.; (Z원점복귀)&lt;br /&gt;
G91 G28 x0. y0.;(x,y 원점복귀)&lt;br /&gt;
M30; (프로그램 종료)&lt;br /&gt;
&lt;br /&gt;
어느정도 경험이 있다면 드릴(1번공구)직경이 6.8mm / 2번공구가 M8x1.25 탭 이라는 것을 짐작할수 있다. &lt;br /&gt;
[[추가바람]]&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>	</entry>

	</feed>