EMC2에서는 G코드를 활용하여 여러 작업을 할 수 있습니다.
자동으로 툴의 끝부분을 영점을 잡을려면 CNC에 센서가 달려 있어야합니다.
센서가 없다면 http://tro.kr/20 자료를 참고하시기 바랍니다.
그리고 "EMC2 Stepconf Wizard"의 "Parallel Port Setup"부분의 "inputs"핀 설정부분에 "Probe In"을 설정 해야 됩니다.
위 그림은 필자 CNC의 프린트 포트 핀 설정부분이며 입력핀 부분에 "Probe In"인 12번 핀에 설정 되어 있습니다.
핀의 접접이 반대로 구성 되어 있다면 "Invert"부분에 체크하시면 됩니다. 자신의 CNC에 맞게 설정을 합니다.
아래는 EMC유저 메뉴얼에 있는 내용입니다.
G코드 | 스위치 상태 | Direction | Signal Error |
G38.2 G38.3 G38.4 G38.5 |
접촉 때 접촉 때 접촉이 해제 될 때 접촉이 해제 될 때 |
Toward workpiece Toward workpiece Away from workpiece Away from workpiece |
Yes No Yes No |
위는 G38코드의 설명입니다.
시스템 변수
5061-5066 Result of ``G38.2'' Probe
5161-5166 ``G28'' Home
5181-5186 ``G30'' Home
5211-5216 ``G92'' offset
5220 Coordinate System Number
5221-5226 Coordinate System 1 G54
5241-5246 Coordinate System 2 G55
5261-5266 Coordinate System 3 G56
5281-5286 Coordinate System 4 G57
5301-5306 Coordinate System 5
5321-5326 Coordinate System 6
5341-5346 Coordinate System 7
5361-5366 Coordinate System 8
5381-5386 Coordinate System 9
5061에서 5069까지의 수는 각각 X, Y, Z, A, B, C, U, V, W 축을 의미합니다.
파일 이름이 "AutoToolZero.ngc"로 하여 작성 되었다면 EMC2에서 이 파일을 불러 와서 실행하면 자동으로 툴의 영점을 잡습니다. 위의 코드를 이용해서 툴의 영점을 잡는 G코드 프로그램을 작성해 보겠습니다. (G54 사용자 좌표를 설정합니다.)
아래는 자료로 올려진 AutoToolZero.ngc의 내용입니다.
(Auto Tool Zero G-Code)
#1001=5.35 (센서의 감지 점에서 바닥까지 거리 값, 사용자의 CNC에 맞게 바꿔야 됩니다.)
#1002=-33.5 (센서가 있는 X축의 기계 좌표 값, 사용자의 CNC에 맞게 바꿔야 됩니다.)
#1003=386.2 (센서가 있는 Y축의 기계 좌표 값, 사용자의 CNC에 맞게 바꿔야 됩니다.)
#1004=1500 (센서를 찾기 위한 이송속도 값)
#1005=10 (센서를 정확하게 찾기 위해 센서 이탈 이송 속도 값)
#1006=0 (기계 좌표의 Z축의 윗쪽 끝 좌표 값, 사용자의 CNC에 맞게 바꿔야 됩니다.)
#1007=-100 (기계 좌표의 Z축의 아래쪽 끝 좌표 값, 사용자의 CNC에 맞게 바꿔야 됩니다.)
G21 G90 G94 (수치값을 mm로 인식, 절대좌표, 분당 이송속도 사용으로 지정)
G0 G53 Z[#1006-5] (5mm 여유를 두고 Z축을 위쪽으로 올립니다.)
G0 G53 X[#1002] Y[#1003] (센서가 있는 위치로 이동합니다.)
G54 (G54 사용자 좌표를 선택합니다.)
F[#1004] (센서를 찾기 위한 이송속도를 지정합니다.)
#5223=0 (G54 사용자 좌표 값을 기계좌표와 같이 합니다.)
G55 (디스플레이에 현재 설정 값이 나타나도록 G55로 갔다가 G54로 복귀합니다.)
G4 P0.1
G54
G38.3 Z[#1007] F[#1004] (센서를 찾습니다.)
G38.5 Z[#1006] F[#1005] (천천히 센서에서 벗어 납니다.)
#5223=[#5063-#1001] (현재 좌표 값에 센서옵셋을 빼서 G54에 기록합니다.)
G55 (디스플레이에 현재 설정 값이 나타나도록 G55로 갔다가 G54로 복귀합니다.)
G4 P0.1
G54
G0 Z[#1006-#5223-5] (설정을 모두 마치고 Z축을 위로 올립니다.)
M30
EMC2를 실행하여 위의 AutoToolZero.ngc를 바로 실행 할 수 있게하면 편리하게 사용 할 수 있습니다.
EMC2를 실행하면 초기에 위와 같이 "axis.ngc"파일을 불러옵니다.
이 곳에 툴 영점을 잡는 프로그램을 넣어두면 "ALL HOME"후에 바로 실행을 할 수 있어 편리 할 것입니다.
초기에 불러오는 "axis.ngc"파일은 "/usr/share/axis/image/axis.ngc"에 있습니다.
관리자 권한이 아니면 수정 할 수 없기 때문에 "프로그램" - "보조 프로그램" - "터미널"을 차례로 클릭하여 터미널 창을 엽니다.
터미널 창에 sudo gedit /usr/share/axis/image/axis.ngc 를 입력합니다. 그리고 관리자 암호를 입력합니다.
이렇게 하면 "gedit"프로그램을 관리자 권한으로 실행하기 때문에 "axis.ngc"파일을 수정 할 수 있습니다.
"axis.ngc"파일의 내용을 모두 지우고 AutoToolZero.ngc 프로그램의 내용을 넣으면 됩니다.^^