이글캐드를 이용하여 레이아웃을 G-CODE 로 변환
cnc를 이용하여 pcb 자작 등을 위한 G-CODE 생성을 위하여
기존 ORCAD 의 LAYOUT 을 쓰는 사람들은 K-PCB? 등의 번거로운 작업을 거쳐서 뽑아낼 수 밖에 없었는데
이글캐드의 pcb-gcode 라는 플러그인을 이용하여 손쉽게 변환할 수 있는 방법이 생겼다.
플러그인은 다음과 같은 사이트에서 받을 수 있다
http://www.brusselsprout.org/PCB-Routing/
중간에 빨갛게 표시된 here 라는 링크를 클릭하여
pcb-gcode.zip 파일을 받은 후에 이글 캐드가 설치된 폴더 밑에 ulp 폴더에 압축을 풀어준다.
여러개의 파일이 생성되는 것을 확인한다.
gcode 로 변환하기에 앞서 몇가지 설정이 필요하다.
이글 캐드에서 brd 를 열고, 메뉴바 밑의 실행창에 다음과 같이 입력한다
run pcb-gcode-setup
다음과 같은 대화창이 뜬다.
자신이 가지고 있는 머신 타입을 설정해준다.
대부분은 mach 를 쓰고 있을 것이다. 그러나 나는 LINUX-CNC 프로그램인 EMC 를 사용하고 있으므로
이를 선택해주었다.
선택해주고 Accept 를 누른다
중간 창에 okay를 누르면 다음 창이 뜬다
귀찮은 일은 영어를 해석하는 것이다.
보드의 아웃라인을 깍을지 여부.. 드릴링을 할지 여부 등을 설정하는 것이다.
Isolation 이 정확히뭔지는 모르겠으나 아마도 클리어런스를 설정하는 듯 하다.
각 탭을 클릭하여 해당 사항을 체크한다. 예를 들어 자신이 가진 머신의 z 범위 등을 적어준다.
실제 적용해보자.
이글캐드를 깔면 기본적으로 포함되어 있는 예제중에
singlesided 란 보드를 열어보았다.
메뉴바 밑의 실행창에
run pcb-gcode 를 입력하고 엔터를 친다
창이 깜빡거리는 걸 반복한 후에, 프로세스가 끝나면 brd 파일이 있는 폴더에 4개의 nc 파일이 생성된다
찾아가보면
singlesidedbd.nc
singlesidedbot.nc
singlesidedtd.nc
singlesided.top.nc
가 생겼다.
2층기판이므로 차례대로, 바텀 드릴링, 바텀 레이아웃, 탑 드릴링, 탑 레이아웃에 대한 g-code 들이다.
하나만 열어보면 다음과 같이 생성된다
-------------------------------------------------------------
singlesidedbd.nc
------------------------------------------------------------
( This gcode generated by C:/Program Files/EAGLE-6.1.0/ulp/pcb-gcode.ulp )
( Copyright 2005 by John Johnson. See readme.txt for licensing terms. )
( This file generated from the board C:/Program Files/EAGLE-6.1.0/projects/examples/singlesided/singlesided.brd )
( This file generated 2012-05-11 오후 11:31:50 )
( T01 0.609600 )
( T02 0.812800 )
( T03 1.016000 )
G21
G90
M05
G00 X0.0000 Y0.0000 Z10.0000
M06 T01 ; 0.6096
G00 Z0.5080
M03
G04 P10.000000
G82 X-36.8300 Y6.3500 Z-3.0480 F100.00 R0.5080 P10.000000
G82 X-41.2750 Y25.4000
G82 X-41.9100 Y6.3500
G82 X-45.7200 Y31.7500
G82 X-48.2600 Y31.7500
G82 X-11.4300 Y31.7500
G82 X-13.9700 Y31.7500
G82 X-13.9700 Y3.8100
G82 X-14.6050 Y1.9050
G82 X-15.2400 Y30.4800
G82 X-16.5100 Y31.7500
G82 X-17.1450 Y1.9050
G82 X-17.7800 Y26.0350
G82 X-19.0500 Y1.9050
G82 X-20.3200 Y28.5750
G82 X-21.5900 Y1.9050
G82 X-21.5900 Y24.1300
G82 X-21.5900 Y26.0350
G82 X-23.4950 Y1.9050
G82 X-24.1300 Y33.6550
G82 X-24.1300 Y30.4800
G82 X-25.4000 Y28.5750
G82 X-26.6700 Y31.7500
G82 X-26.6700 Y33.6550
G82 X-26.6700 Y25.4000
G82 X-26.6700 Y27.3050
G82 X-29.2100 Y24.1300
G82 X-29.2100 Y27.3050
M05
G00 X0.0000 Y0.0000 Z10.0000
M06 T02 ; 0.8128
G00 Z0.5080
M03
G04 P10.000000
G82 X-31.7500 Y5.0800 Z-3.0480 F100.00 R0.5080 P10.000000
G82 X-31.7500 Y7.6200
G82 X-33.0200 Y13.9700
G82 X-33.0200 Y21.5900
G82 X-35.5600 Y13.9700
G82 X-35.5600 Y21.5900
G82 X-38.1000 Y13.9700
G82 X-38.1000 Y21.5900
G82 X-43.1800 Y11.4300
G82 X-43.1800 Y13.9700
G82 X-48.2600 Y5.0800
G82 X-48.2600 Y10.1600
G82 X-48.2600 Y22.8600
G82 X-48.2600 Y27.9400
G82 X-49.5300 Y15.2400
G82 X-49.5300 Y17.7800
G82 X-50.8000 Y5.0800
G82 X-50.8000 Y10.1600
G82 X-50.8000 Y22.8600
G82 X-50.8000 Y27.9400
G82 X-51.4350 Y16.5100
G82 X-17.7800 Y5.0800
G82 X-17.7800 Y8.8900
G82 X-17.7800 Y13.9700
G82 X-17.7800 Y21.5900
G82 X-20.3200 Y13.9700
G82 X-20.3200 Y21.5900
G82 X-22.8600 Y13.9700
G82 X-22.8600 Y21.5900
G82 X-25.4000 Y13.9700
G82 X-25.4000 Y21.5900
G82 X-27.9400 Y5.0800
G82 X-27.9400 Y8.8900
G82 X-27.9400 Y13.9700
G82 X-27.9400 Y21.5900
G82 X-30.4800 Y13.9700
G82 X-30.4800 Y21.5900
M05
G00 X0.0000 Y0.0000 Z10.0000
M06 T03 ; 1.0160
G00 Z0.5080
M03
G04 P10.000000
G82 X-33.0200 Y35.5600 Z-3.0480 F100.00 R0.5080 P10.000000
G82 X-35.5600 Y35.5600
G82 X-38.1000 Y35.5600
G82 X-40.6400 Y35.5600
G82 X-43.1800 Y35.5600
G82 X-45.7200 Y35.5600
G82 X-48.2600 Y35.5600
G82 X-5.0800 Y35.5600
G82 X-50.8000 Y35.5600
G82 X-7.6200 Y35.5600
G82 X-10.1600 Y35.5600
G82 X-12.7000 Y35.5600
G82 X-15.2400 Y35.5600
G82 X-17.7800 Y35.5600
G82 X-20.3200 Y35.5600
G82 X-22.8600 Y35.5600
G82 X-2.5400 Y35.5600
G82 X-25.4000 Y35.5600
G82 X-27.9400 Y35.5600
G82 X-30.4800 Y35.5600
(File Footer)
T01
G00 Z12.7000
-------------------------------------------------------------
emc 에서 사용할 사람은 확장자만 ngc로 바꾸면될 것이다.
일단 가공한 결과는 다음에 포스팅하겠다.