부가축 머신 환경에서 작업평면을 활용한 다축 드릴 가공(네이버 마캠뽀개기 질문 게시글 관련)

반응형

 

 

 이번에는 마캠 뽀개기 네이퍼카페에 올라온 질문 게시물에 대하여 늦은 답변으로 해당 가공물(작업평면 활용 부가축 가공)의 캠작업에 대하여 알아보겠습니다.


* 사실 이러한 작업평면 활용 다각도 가공 캠작업은 여러 번 설명해서 사실상 중복된 내용입니다........ㅠ

https://cafe.naver.com/mcampokegi/152252

 

로타리가공에서 센타에서 편심된 가공 어떻게 프로그램짜나요?

대한민국 모임의 시작, 네이버 카페

cafe.naver.com

 

 먼저 작업 내용은 아래와 같은 링가공물에 링 중심축(회전축)에 어긋나 있는(공구 축이 링 회전체 회전 중심점에 향해있지 않는 경우)의 경우입니다.


* 이러한 반복적인 작업(일정한 가공패턴을 일정한 회전각도로 배열되는 경우는 무척(?) 간단합니다.......(작업정의만.....)

 


 우선 설명을 위하여 해당 가공물의 모델링합니다.

 먼저 가공물 규격을 보면 가공물 외경 156.5 Ø 가공홀 3 Ø을 16군데 관통하는 형태입니다.
* 배열은 22.5도 간격(360/16=22.5)입니다.

\


 대충 모델링하고 작업환경은 인덱스 작업하는 것으로 하였습니다.


 인덱스에는 이렇게 소재 체결하여 작업합니다.

 

 

 

 우선 질문자는 수기로 작업하신다고 하였습니다.

 그런데 저희 마스터캠을 사용하므로 비슷하게 경로를 생성해 보겠습니다.

 먼저 해당 가공정의는 사실 먼저 엔드밀류 공구로 드릴링 작업을 위한 자리 잡기 면가공(?), 또는 드릴 센터링 작업 후 실제 드릴 가공작업, 그리고 홀입구의 면취 작업등을 해야 하는데....

 일단 수기 설명의 예제를 들기 위하여 단순드릴 작업만 예제를 들겠습니다.
(마스터캠으로 작업 시는 전부 하는 것으로....)

 우선 해당 소재를 인덱스에 체결하면 우선적으로 가공정의 원점은 소재의 회전축 원점이 됩니다.

 그것을 기준으로 해당드릴 공정의 위치값(X, Y값은 간단하지만, Z값은 조금 생각해야 합니다.)을 도면을 그려서 산출합니다.



* 위 이미지로 보면 해당드릴 공정 사이클은 X-3, Y-46.74Z값은 Z 64.5 ~ 50.5까지가 드릴 가공깊이값이 됩니다.

 그럼 드릴 사이클(G81로 예제)은 "G98 G81 Z50.5 R64.5 FXXX"이 됩니다.

 그럼 이 드릴 사이클을 계속 복사하여 인덱스 회전값만 계속 넣어주면 기본적인 가공프로그램이 됩니다.


* 이렇게 심코에디터 같은 G코드 편집프로그램에서 생성하면 간단한 것은 어렵지 않게 됩니다.

 

 


 이것을 마스터캠에서 가공프로그램을 생성하는 것을 알아보겠습니다.

 먼저 이것을 할 때 고려해야 할 사항이 있습니다.

 캠생성 방식인데....

1. 해당드릴공정을 생성후 중간 중간에 수동입력 기능으로 인덱스 회전 각도를 입력합니다.

2. 해당 드릴공정을 작성 후 이를 보조프로그램(SUB PROGRAM)을 생성하여 이를 호출하고 수기로 인덱스 회전각도를 입력합니다.
* 해당 호출 보조프로그램은 수기로 작성하여하는 방법도 있고 선형배열 시 서브프로그램으로 출력하는 방법을 선택할 수 있습니다.
* 선형배열로 서브 프로그램 출력하는 방법은 착오의 가능성(출력좌표값이 틀릴 수 있는..)이 있어 권장하지 않습니다.

3. 해당드릴공정을 작성 후 이를 선형배열 기능으로 회전배열하는 방법으로 마치 수기로 작성(맨 처음 방식과 같은 형식)한 것처럼 가공프로그램을 생성합니다.

* 여기까지 의 방법은 한 가지 큰 문제가 있습니다.
(그것은 1~3번 설명을 하고 나서 다시 4번 설명시 하겠습니다.)

4. 해당 공정에 대한 작업평면을 생성하여 가공정의에 적용하여 자동적으로 가공 프로그램(좌표값이 적절히 배치된..)을 생성합니다.
* 요것이 오늘의 주제입니다.....

 

 


 그럼 다시 처음부터 얘기 해서...

1. 해당드릴공정을 생성 후 중간중간에 수동입력 기능으로 인덱스 회전 각도를 입력합니다.

 이 방식은 간단하게 해당드릴공정 생성 후 인덱스 회전 코드는 수동입력 기능을 이용하여 단순하게 배열하는 방법입니다.

 즉 해당드릴가공정의(해당 소재 회전축 원점을 기준하여 해당드릴공정 체인용 도형요소를 위치함)를 생성한 후 인덱스의 회전기능은 마스터캠의 수동입력(코드로 실행) 기능으로 해당 회전지령을 입력합니다.


* 위 이미지처럼 드릴 공정 체인 선택을 위한 도형요소를 생성하고 (공구 진입, 관통깊이 고려하여) 그에 따라 드릴 가공정의를 생성합니다.


 그리고 반복되는 공정 횟수(타공 홀 개수 : 16개)에 따라 가공정의를 복사하여 배열후 그 드릴 가공정의 사이사이에 "수동입력" 기능으로 인덱스 회전 지령을 각각 추가하였습니다.


* 수동 입력은 해당 문자열(가공정의 사이에 추가되는)은 지령문(실행되어야 할 코드)이므로 NCI 파일 내 출력형태 항목을 코드로 지정하셔야 합니다.


 

 그러면 해당 가공정의 그룹을 선택한 후 포스팅하여 출력해 보면 다음과 같은 가공 데이터가 출력됩니다.


* 이렇게 생성된 가공정의 또는 가공데이터(G 코드)는 드릴공정은 마스터캠이 인식하여 경로확인이나 모의가공에 반영되어 표현이 되나 수동입력은 기본적으로 단순 문자열(실행이 안되는)로 인식하여 해당 지령이 인식이되지 않아 실제로는 경로확인 이나 모의가공이 되지 않습니다.

* 동일한 이유로 심코에디터 백플롯에서 드릴공정만 인식되고 회전해야 할 소재 규격(회전축 위치?)을 인식 못하여 조금 실제와 다른 형태 백플럿 표시가 됩니다.

* 이 방식은 가공형태 자체가 간단한 경우는 무리 없이 진행이 가능하나 반복적인 작업이 아니거나 불규칙적인 가공규격인 경우 적용하기에는 작업자에게 작성부하(?)가 많이 걸리고 검증이 어려운 단점이 있습니다.



2. 해당드릴공정을 작성 후 이를 보조프로그램(SUB PROGRAM)을 생성하여 이를 호출하고 수기로 인덱스 회전각도를 입력합니다.

 이 방법은 해당드릴공정을 보조프로그램으로 별도 생성하고 본프로그램에서 호출하여 (동일공정 이므로) 각 공정별 인덱스 회전값만 수기로 입력합니다.

* 즉 같은 CNC메모리 내에서 메인프로그램과 서브프로그램(드릴공정)을 저장하고 M98지령으로 해당드릴공정 프로그램을 불러드려서 가공 후 인덱스 회전 지령을 내리는 것으로 생성합니다.



* 이 방법도 마스터캠 내에서 경로확인이나 모의가공이 적용되지 않고 심코에디터에서도 살짝 다른 형태 백플롯이 표시됩니다.


* 그런데....... 이렇게 할 것이면 수기로 추가 수정할바에 처음부터 마스터캠에서 전부 생성하도록 해볼 수 있습니다.

 선행배열 기능에서 서브프로그램 생성 기능으로 처리 가능합니다.

 


 우선 드릴공정을 생성한 후 이를 기준으로 선행배열 기능을 적용합니다.

 



선형배열 방식 : 부가축 회전 배열 이므로 회전 방식을 선택합니다.
 회전 방식 항목 설명은 다음에 있습니다.

적용방법 : 회전 선행배열 방식(지금 적용하는 가공형태)은 작업평면(공구평면)을 각기 적용하여 선형배열 하는 방식 이므로 공구 평면을 선택합니다.


* 하단의 옵션 항목 중 WCS포함을 선택하시면 안 됩니다.
 선택하시면 이 작업평명은 WCS에 속한 공구평면(즉 하나의 공구 평면만 인정)만 인식하여 적용되므로 회전 배열 자체가 안됩니다.


* 나머지는 적용하셔도 의미가 없습니다.

원본 : 선형배열되는 대상물이 NCI 인지 도형요소(2D 와이어프레임)인지 둘 중 하나를 선택하여야 하는데. 도형요소를 선택하면 해당 도형요소(체인 선택한)도 같이 선행배열(중복 복사)되므로 NCI(수치제어 조작 : 마스터캠에서는 작업자가 작성한 가공정의 내용을 마스터캠이 이해할 수 있게 풀이된..) 자체를 선형배열의 대상물로 선택하여야 좀 더 간편한 가공경로 연산이 가능합니다.

서브프로그램 : 해당 선형배열된 경로를 서브프로그램(SUB) 형식으로 절댓값 / 증분값으로 선택 출력해 줍니다.
* 가공 프로그램 메인 프로그램과 서브프로그램(호출)을 같이 붙여서 출력하므로 실 사용 시 별도로 분리하여 따로 저장하여 사용하셔야 합니다.

작업 오프셋 번호 부여방식 : 원칙적으로 선형배열은 동일한 가공정의를 구분되는 작업평면(공구평면) 별로 구분되어 출력하는 것(작업 오프셋 번호)이 원칙입니다.


 그렇지만 현 작업은 단순히 각도분할로 이루어지는(실제 작업평면은 하나만 사용되는) 공정이라서 이러한 자동적으로 변화하는 작업 오프셋 번호를 고정시켜야 합니다.

 그러므로 해당 작업 오프셋 번호 부여방식 항목 중 새 번호 부여(시작값 "0", 증분값 "0")로 지정하여 증분이 안되도록 정의하여야 합니다.


 선형배열 옵션 항목은 이와 같이 지정하고... 회전 선형배열 항목으로 들어갑니다.



회전 #(개수) : 가공 데이터 출력 시 선행배열 정의만 산 택하고(원래 드릴공정 정의는 미선택) 할 예정이라서 전체 수량 16개를 지정하였습니다.

최하단 각도 표시 : 첫 번째는 회전할 전체 각도값의 입력(작업범위 입력) 항목입니다.
전체 16개소(360도) 할 예정 이므로 "360"을 입력합니다.

 두 번째는 첫 번째 입력한 값을 기준으로 각배열된 요소 간 간격 각도값입니다.

 360도 회전의 16개소 이므로 360/16 = 22.5 이므로 각 배열될 가공정의 간격(각도값)은 22.5도가 되므로 "22.5"를 입력합니다.

 그러면 최종적으로 회전 선형배열은 360도 내 범위에서 22.5도 간격으로 총 16개 가공정의를 배열합니다.라는 의미가 됩니다.

 그리고 회전 선형배열이므로 선택한 가공정의(드릴공정)를 회전 배열 기준이 될 평면을 회전 평면으로 선택하여 회전 선형배열이 생성되도록 합니다.

 이때 부가축(X축 방향)으로 볼 때 좌우측면 평면을 선택할 수 있는데 통상 CW방향을 기본으로 하니깐 CW방향으로 회전된다고 할 때(좌측면도 선택 시 Z 축 방향 기준) 좌측면으로 선택하였습니다.


* 이때 좌측면 선택하면 부가축 회전 지령이 "+" 플러스 방향으로 증분 출력되고 반대쪽 우측면을 선택하면 반대방향으로 회전 (회전 지령이 "-"마이너스 방향으로 증분 출력)합니다.

 


 이러한 선형배열 기능을 사용하면 해당드릴공정이 자연스럽게 배열되어 가공 데이터가 출력됩니다.

* 주의 사항 : 이러한 부가축 형태 선형배열 시 해당 마스터캠 머신정의(장비 설정(마스터캠 내부의))이 필히 부가축 적용 머신정의 이어야만 하고 또한 동시에 해당 출력용 포스트가 부가축을 지원하여야 합니다.


 당연한 애기이지만 마스터캠에서 현재 적용 중인 머신정의가 부가축(4축 : A 축)이 되는 장비설정이어야지 출력 시(포스팅) 부가축에 대한 좌표값도 같이 출력됩니다.


 일반 3축 장비 머신정의 상태이면 당연히 부가축이 없는 것으로 인식하여 부가축(A 축) 좌표가 출력되지 않습니다.

 또한 마스터캠에서 이러한 부가축 좌표값이 출력된다 해도 포스팅 시 해당 포스트(post)가 부가축 출력상태가 아니면 가공데이터 출력 시 부가축 좌표(A 축)가 출력되지 않거나 다른 형태로 출력됩니다.


3. 해당드릴공정을 작성 후 이를 선형배열 기능으로 회전배열하는 방법으로 마치 수기로 작성(맨 처음 방식과 같은 형식)한 것처럼 가공프로그램을 생성합니다

 위 2번 선행배열과 마찬가지인데 출력방식을 서브프로그램이 아니고 전체 출력(일반적인 방식)으로 하는 것을 말합니다.


 2번 선형배열 항목과 서브프로그램 비활성화(체크해제)만 틀리고 동일합니다.


2번 서브프로그램 출력과 달리 이상태에서 경로확인, 모의가공 실행이 가능합니다.
* 부가축 적용 관련(선형배열은 부가축 적용이 좀 어렵습니다.)으로 소재가 회전하고 공구가 제자리 이송되는 것은 시현 불가능합니다.

 

 일단 선형배열로 해당 가공경로를 생성하면 경로확인에서 소재가 회전 안 함 상태에서 경로만 확인 가능합니다.

 

 

 

 

 

4. 해당 공정에 대한 작업평면을 생성하여 가공정의에 적용하여 자동적으로 가공 프로그램(좌표값이 적절히 배치된..)을 생성합니다.
* 사실 이것이 이 게시글의 핵심인데.. 다축가공 시(부가축 포함) 작업평면 적용방식으로 하면 거의 모든 다축 가공이 가능합니다.
(동시 다축제어 가공 외)

 

 

 논외로 이러한 형태(공구 축이 회전체 중심으로 지향하지 않은 경우)는 기본적으로 롤가공(로터리축 적용) 방식으로 가공정의를 생성할 수 없습니다.


 그래서 이러한 가공형태를 캠작업 하려면(인덱스 등으로 부가축 회전에 의한 가공형태) 작업평면 적용 방식으로 작업하여야 합니다.

 



 다시 본론으로 돌아와서...

 간단하게 얘기하면 앞서 선형배열에서 생성한 공구평면(작업평면)을 작업자가 각 가공정의 평면 파라미터항목에 적용하는 애기입니다.

 우선 예로서 다시 보면...
* 이번에는 상세 설명을 위하여 1차 평엔드밀로 드릴가공 영역 자리가공, 2차 드릴 센터링 공정, 3차 본 드릴 공정, 4차 외측 홀 모서리 면취 가공(내쪽 홀 면취 가공은 생략..)으로 진행하겠습니다.

 

 우선 해당 공정에 해당하는 가공물(홀)에 해당하는 작업평면을 생성하고(그 작업평면기준으로 공구평면을 적용한다는 의미이므로 해당 작업평면은 홀 가공이 용이하게끔 홀축과 수직 되는 평면을 생성하여야 합니다.) 그 작업평면기준 가공정의를 생성하여야 합니다.

 


 우선 편하게 현재 위치에서 WCS와 동일한 평면(같은 각도)의 홀을 적용해 봅니다.
* 기본적으로 작업평면을 먼저 생성하고 가공정의를 적용하는 것이 편합니다.

 


아래와 같은 위치의 홀을 선택하여 어떻게 작업할 것 인지 궁리해 봅니다.



 우선 해당 작업평면은 우측 이미지 같은 위치에 가공 작업평면상 Z0.0으로 인식하고 작업하기로 하였습니다.

 작업평면 생성 방법은 우선 평면을 생성하는 것이므로 평면관리자 창에서 새 평면 생성 기능으로 작업하여야 합니다.
 

 그러려면 해당 평면의 위치선택을 위하여 도형요소(2D 와이어프레임), 또는 솔리드 요소가 필요합니다.

 


 그럼 먼저 여기서는 도형요소(원호)를 생성하는 것을 먼저 설명하겠습니다.

 우선 해당 홀의 축방향에 맞게 작업평면을 생성하여야 하므로 그 기준이 될 원호(또는 다른 요소도 가능합니다.)를 홀축 생성 기능으로 생성합니다.



 홀축 생성기능으로 해당홀의 축선과 상단부 원호를 생성하였습니다.
* 이때 상단부 원호를 그대로 작업평면 생성 기준으로 잡으셔도 문제없으나 여기 예제에서는 홀과 제품 외경이 만나는 지점을 작업평면 Z0.0을 설정합니다.



 이렇게 원하는 위치에 생성시킨 원호(크기는 별 관계없습니다.)를 이용하여 작업평면을 생성합니다.



 평면관리자 창에서 새 평면 생성(도형으로부터)을 선택하여 해당 원호를 선택합니다.

 

 그러면 현재 평면의 좌표계 방향 선택 선택창이 표시되면 이것으로 알맞은 좌표계방향을 선택합니다.
* 이때 생성되는 평면의 좌표계 방향이(X, Y, Z 축) 실제 출력되는 가공경로 좌표값이 됩니다.
* 현재 WCS 평면과 틀어져있는 각도의 평면은 해당 새 평면 생성 선택 도형요소의 형태(면)를 따라갑니다.

 


 이것을 반복하면(16개소) 다음과 같이 됩니다.



* 사실 16개소을 일일이 홀축 생성으로 원호를 생성하지는 않고 각 16개소가 전부 동일한 조건의 도형요소 이므로 1개 도형요소 생성 후 회전 이동 기능으로 복사하였습니다.


 그 후 작업평면 생성은 할 수 없이 하나하나 선택하여 각 공정별 작업평면을 생성하였습니다.
(이것은 동일한 형태의 가공물(홀)이라 가능한 것이 만일 각기 다른 형태의 가공 홀이면 전부 각기 선택하셔야 합니다.)

 


 회전이동 과정

 


 이와 같이 작업평면을 생성해야 하는데....... 홀축 생성하는 과정이 어려우신 분은 그냥 이렇게도 가능합니다.

 

 

 

 다시 본론으로 돌아와서 우선 각 공정별 작업평면을 생성완료 하였습니다.



조금 힘들어 보이는 이미지이지요....

 


 이러한 과정을 좀 편리하게(?) 할 수 있는 방법(사실 불규칙한 다각도 작업 시)이 있습니다.

 각 홀의 축선을 생성하여 원호 생성하여 작업평면 작업하는 것이 불편(실제 홀가공이 아니고 포켓이나 기타 가공 시 불편함(평면 선택이..)이 있습니다.)하시면 아래와 같은 작업평면 선택용 솔리드(평면용 지그(?))을 생성하여 그 솔리드의 면을 선택하여 작업평면을 생성하는 방법도 있습니다.
 



 위와 같이 각 홀 가공 축과 수직 되는 부분의 면을 가진 솔리드를 생성합니다.



 이후 평면관리자 창에서 새 평면 생성 기능(솔리드 면으로부터)으로 해당 작업평면 대상 솔리드면을 선택하여 해당 공정별 작업평면을 생성합니다.


* 참고로 작업평면은 선형배열 또는 회전이동 등 다수의 복사 기능이 없습니다.
(한 번에 1개씩만.....)



 이후 하나의 작업평면을 선택하고 해당 홀 가공정의를 생성합니다.

 

 

* 주의사항으로 현재 생성되는 작업평면은 각기 작업오프셋 번호값(선형배열 시 G54,55,56,57...)을 가지게 되므로 해당 작업평면 생성 시 평면 관리자 창에서 해당 평면 오프셋 번호값을 전부 "0"으로 하셔야 합니다.


 아니면 가공정의 생성시 해당 파라미터 항목 중 평면 항목에서 작업오프셋 번호값을 수동 "0"값으로 입력하셔도 무방합니다.



 해당 공정 가공그룹(홀 공정-01)을 생성 후 해당 평면관리자 창에서 해당 작업평면(공정별)을 미리 작업/공구 평면(C/T)으로 선택하고 가공정의를 생성하면 자동적으로 해당 작업평면으로 작업(C), 공구(T) 평면이 선택됩니다.

 해당 홀 공정은 간단하게 플렛드릴로 드릴작업할 자리가공(Z0.0)해주고 센터링 작업 후 3파이 드릴 작업한 후 3파이 볼엔드밀로 홀외곽부 면취 가공 해주는 것으로 진행하였습니다.


 * 홀 가공공정 자체는 예제로서 큰 의미 없습니다.

 

 


 전체 홀가공 공정 가공정의는 다음과 같이 됩니다.


 각 홀 별로 16개소 가공정의가 생성됩니다.

 

 

 

* 물론 이러한 일정한 패턴으로 생성되는 가공형태는 1개소 홀 가공공정만 생성하고 선행배열 하셔도 무방합니다.
(오히러 이것이 전체 공정으로만 보면 더 효율적일 수 있습니다.)



 모의가공을 해보면 아까와 달리(홀 가공 1개소씩 종료) 1개 공구 호출 시 그 공구로 할 작업은 전부 완료하고 다음공구로 넘어가는 것을 볼 수 있습니다.


*이것은 당연히 선행배열 항목 중 가공관리자 대화상자 적용 기준 옵션 중 작업순서(공구별 분류) 선택 시 생성됩니다.

 

 

 

 그럼 마지막으로 여기서 작업평면 활용된 예를 하나 더 알아봅니다.

 이번 홀가공 면취를 3파이 볼엔드밀로 면방향 가공을 하였습니다.

 이유는 현재 가공 축에 거의 45도 꺾인 형태 홀입구이라 일반 챔퍼밀 공구로 3D 윤곽 면취 기능을 적용하면 원하는 면취량도 고사하고 적당한 형태의 면취 형태를 생성하기 어렵습니다.



* 위이미지 처럼 홀 외곽선을 3D윤곽으로 면취 경로를 생성하여 모의가공을 해보면 홀 외곽선의 접선형태와 면취공구(챔퍼밀)의 형태(45도) 때문에 홀 상단부의 과절삭과 홀 하단부의 축소절삭되는 것을 볼 수 있습니다.
(사실 홀 최하단부 면취량이 의도된 면취량입니다.)



* 위 이미지처럼 선택한 체인에 맞추어(홀 입구 형태에 관계없이) 동일한 접선(면취경로)을 유지하려는 특성 때문입니다.

 그래서 여기 에제에서는 홀 입구를 모따기 모델링 후 그 모따기 곡면을 기준으로 볼엔드밀로 면방향 가공경로(경로 종류는 형태에 따라 그때그때 다릅니다.) 가공하는 것을 권합니다.


 즉 홀 면취면을 3D 곡면가공 하는 것입니다.

 


 다소 여러 번 경로가 생성되므로 일반 면취보다는 복잡하고 가공시간이 길어질 수 있는 문제가 있으나 제일 확실하게 면취 형태를 유지할 수 있는 방법입니다.

 

 

 그런데 만일 반드시 면취공구(45도 챔퍼밀)를 사용해서 빠르게 면취를 하기 바라는 경우......

 역시 작업평면을 활용한 면취 가공경로를 생성할 수 있습니다.

 


 방식은 간단합니다.

 해당 면취 공구로 면취 가공 하기 용이한 각도(?) 위치로 해당 소재를 회전시키면 됩니다.
* 즉 면취 하는 홀 입구의 외곽선이 현재 공구축과 수직 되는 위치로 이동후 면취공정을 실행합니다.)



 위 이미지처럼 홀 입구(외곽)에 접하는(수직으로) 평면을 생성한 후 이 작업평면 기준으로 면취 가공경로를 생성합니다.



 우선 면취 가공정의를 생성한 후 해당 작업평면(면취경로에 적합한)을 적용 후 홀의 외곽선을 체인 걸어 일반 2D 또는 3D 윤곽 모따기 경로를 적용하여 해당 경로를 생성합니다.


* 위 이미지 우측처럼 모의 가공 시 약간 한쪽이 쏠리는 면취량(이것은 홀의 각도(위치)에 따라 변화합니다.)이 문제시된다면 모따기 경로의 체인 도형요소를 조금 변형(면취량이 많은 쪽 원호를 살짝 안쪽으로 오프셋)하면 약간 이나마 면취량을 조절할 수 있습니다.

 

반응형