728x90
300x250
[CAM(2D,3D)] CATIA v5 R20으로 NC파일 만들기

 

실습을 위해서 간단한 예제를 하나 만들어봤습니다.

 

 

이 파일을 바탕으로 Advanced Machining이라는 기능으로 nc파일을 추출하는 방법에 대해서 몇 가지 소개하려고 합니다.

 


1. 영상

 

 

 

[참고자료]

https://youtu.be/gc-r7IVi3AA

https://www.youtube.com/watch?v=qNNsYURWUpw

 

[첨부(Attachment)]

19-1.z01

19-1.z02

19-1.z03

19-1.zip

CATIA.7z

 

반응형
728x90
300x250

[PC활용] HeeksCAD/HeeksCAM 1.3 소개

이번에 소개할 것은 HeeksCAD/HeeksCAM이라는 프로그램에 대해서 소개하려고 한다.
PC활용과도 밀접한 연관이 될 수 있어서 작성하게 되었다.

번호
(Number)

 언어
(Language)

설명(Description)

비고(Remarks)

 1

영어(English)

I would like to introduce HeeksCAD / HeeksCNC.
A topic closely related to this article is "Production", which leads to "RS274" in Machine Works.

 

 2

한글(Korean)

HeeksCAD/HeeksCNC에 대해서 소개하려고 한다.
이 글과 밀접한 주제로는 "생산"에서 기계공작법, "RS274"으로 연결된다.

 

번호

카테고리(Category)

 링크(Links)

1

생산

http://yyman.tistory.com/category/기계(Mechanical)/Manufacturing(생산)

2

RS274

 http://yyman.tistory.com/category/기계(Mechanical)/RS274(G-Code)



1. HeeksCAD/HeeksCAM

그림 1-1. HeeksCAD/HeeksCNC 프로젝트, github

번호
(Number)

 언어
(Language)

설명(Description)

비고(Remarks)

 1

영어(English)

Figure 1-1 is the home page of HeeksCAD / HeeksCNC project.
The homepage that is open is as follows.

 

 2

한글(Korean)

그림 1-1은 HeeksCAD/HeeksCNC 프로젝트가 개설된 홈페이지이다.
공개된 홈페이지로는 아래와 같다. 

 

그림 1-2) HeeksCAD 1.0 CAD/CAM 프로젝트 홈페이지, site.google.com(홈페이지)


2. HeeksCAD/CAM 프로젝트가 적용받는 라이센스

 

1. 리눅스를 사용할 경우에는 BSD 라이센스를 적용받는다.
    (If you are using Linux, you are covered by the BSD license.)
 

번호
(Number)

 언어
(Language)

설명(Description)

비고(Remarks)

 1

한글(Korean)

HeeksCAD/CAM 프로젝트가 적용받는 라이센스이다.
BSD License를 적용받고 있다. -> (리눅스에 한함.)

 

 2

영어(English)

HeeksCAD / CAM Project is a license to be applied.
under BSD License. -> (Linux only.)

 

2. 윈도우 제품을 사용할 경우 구매한 후에 사용해야 한다.
  
(If you use a Windows product, you should use it after purchasing.)

그림 2-1) 윈도우 버전
 

번호
(Number)

 언어
(Language)

설명(Description)

비고(Remarks)

 1

한글(Korean)

위의 그림은 윈도우 HeeksCNC 1.3 Trial Version에 관한 것이다.
참고하면 많은 도움이 될 것으로 보인다.

 

 2

영어(English)

The above picture is about Windows HeeksCNC 1.3 Trial Version.
References may be helpful.

 


 

 

 


3. HeeksCAD/CAM 특징 

 

 

번호
(Number)

 언어
(Language)

설명(Description)

비고(Remarks)

 1

한글(Korean)

HeeksCAD/CAM 프로그램을 소개하면, 그림과 같이 생긴 프로그램이다.

 

2

영어(English)

 If you introduce HeeksCAD / CAM program, it looks like the picture.

 

 

 

 

그림 3-1. HeeksCAD 프로그램 실행 모습 (윈도우 환경)

기능
• STEP 및 IGES 파일에서 솔리드 모델 가져오기.
• DXF 도면 가져 오기; 선, 호, 타원, 스플라인 및 폴리선이 지원된다.
• 제한된 2D 그리기 기능
• 새로운 기본 솔리드를 작성하거나 스케치를 돌출 시키거나 스케치간에 로프트 솔리드를 만들어 솔리드를 만든다.
• 블렌딩 또는 부울 연산을 사용하여 솔리드를 수정한다.
• IGES, STEP 및 STL을 저장해라.
• 드릴링, 프로파일, 포켓 작업 생성
• g 코드로 프로세스 게시
• g 코드는 그래픽 창에서 빨강 선과 녹색 선을 표시하는 백 플로트입니다.
• 편집 가능한 스크립트 파일이있는 컴퓨터에 대해 사후 처리기를 구성된다. (자세한 내용은 도움말 참조)
• 재료 제거의 견고한 시뮬레이션


4. HeeksCAD/CAM - 루분투 18.04에서 설치하기

이번에 소개할 것은 HeeksCAD/CAM을 루분투 18.04에서 설치하는 방법에 관한 것이다.

4-1. VirtualBox 복제하기

 

 

 

 

 

소프트웨어 환경 태스트를 위해 프로그램을 꾸리는 장면이다.
탈자가 있는데, "Lubuntu(루분투)"라고 표현한다.

그림 4-1-1. VirtualBox에서 Lubuntu 사용하기



그림 4-1-2. VirtualBox에서 Lubuntu 사용하기

그림 4-1-3. VirtualBox에서 Lubuntu 사용하기

4-2. VirtualBox에서 HeeksCNC/CAM 설치하기

그림 4-2-1. VirtualBox에서 Lubuntu-CNC/CAM 꾸리기

그림 4-2-2. VirtualBox에서 Lubuntu-CNC/CAM 꾸리기

그림 4-2-3. VirtualBox에서 Lubuntu-CNC/CAM 꾸리기

나는 12345678의 비밀번호로 태스트 환경에 대한 계정을 꾸렸다.
사용자가 Lubuntu를 설치할 때, 또는 계정을 설정할 때 작성한 계정은 사용자마다 다를 수 있다.

그림 4-2-3. VirtualBox에서 Lubuntu

그림 4-2-4. VirtualBox에서 Lubuntu

시작메뉴에서 "시스템 도구"-> "시냅틱 패키지관리자"를 클릭한다.
아래의 그림처럼 인증 창이 뜬다. 리눅스 계정 정보를 입력한다.

그림 4-2-5. VirtualBox에서 Lubuntu

그림 4-2-6. VirtualBox에서 Lubuntu

그림 4-2-7. VirtualBox에서 Lubuntu

잠시 기다리면, 처음 설치한 루분투 환경인 경우에는 소프트웨어 업데이터가 뜬다.
업데이트를 설치해준다. "지금 설치"를 클릭한다.

그림 4-2-8. VirtualBox에서 Lubuntu

그림 4-2-9. VirtualBox에서 Lubuntu

그림 4-2-10. VirtualBox에서 Lubuntu

그림 4-2-11. VirtualBox에서 Lubuntu

잠시 기다려야 한다. 해당 작업에 소요되는 시간은 약 40~1시간 정도 소요된다.

그림 4-2-12. VirtualBox에서 Lubuntu

그림 4-2-13. VirtualBox에서 Lubuntu

버추얼박스(이하 VirtualBox) 환경의 컴퓨터를 재부팅하면 소프트웨어 업데이터가 정상적으로 설치된다.
재부팅을 한다.

그림 4-2-14. VirtualBox에서 Lubuntu

그림 4-2-14는 재부팅 후에 수행해야 할 작업을 의미한다.
시작 메뉴에서 "시스템 도구"-> "LXTerminal"을 클릭한다.

그림 4-2-15. VirtualBox에서 Lubuntu

아래의 명령어를 입력하도록 한다.

sudo add-apt-repository ppa:neomilium/heekscnc-devel

그림 4-2-16. VirtualBox에서 Lubuntu

apt에 heekscnc-devel의 레포지터리가 추가되었다.
이를 업데이트하기 위해 아래의 명령어를 입력한다.

sudo apt-get update



그림 4-2-17. VirtualBox에서 Lubuntu

업데이트가 완료되면 아래의 명령어를 입력하여 heeksCNC를 설치하도록 한다.

sudo apt-get install heekscnc 

그림 4-2-18. VirtualBox에서 Lubuntu

그림 4-2-18은 Lubuntu(루분투)에 HeeksCAD(국문읽기: 힉스캐드)가 설치됨을 확인할 수 있다. 


4-3. HeeksCAD 실행하기

HeeksCAD를 설치하였다면 실행하는 방법에 대해서 소개한다.
시작 메뉴-> 그래픽-> HeeksCAD를 클릭한다.

(그림)Figure 4-2-19. VirtualBox에서 Lubuntu

그림 4-3-1. VirtualBox에서 Lubuntu

그림 4-3-1과 같이 HeeksCAD/CAM이 실행된다.
 


5. HeeksCAD & HeeksCNC / 제작자 소개

HeeksCNC를 만든 제작자를 소개하겠다.

(Figure) 그림 5-1) Dan Heeks

Dan Heeks : HeeksCAD와 HeeksCNC의 설립자.
11년 동안 작은 CAD / CAM 회사에서 일했다.

그는 이제 오래된 Bridgeport Series 1 밀링 머신으로 정밀 엔지니어링 워크샵을 운영하고 있다.
= Sieg KX1 취미 밀링 머신, 다양한 수동 공구.

이메일(E-mail): danheeks@gmail.com


7. HeeksCAD/HeeksCAM이 지원하는 확장자

다음은 HeeksCAD/HeeksCAM이 지원하는 확장자에 대해서 소개한다.

 

 

 

그림 7-1. HeeksCAD / Import에서 지원하는 파일 확장자

HeeksCAD에서 Import로 불러올 수 있는 확장자이다.
다음은 파일 열기로 불러올 수 있는 확장자이다.

그림 7-2. HeeksCAD 파일 열기에서 불러올 수 있는 확장자


아래의 파일로 확장자를 정리하였다.
extension(HeeksCAD).7z


8. HeeksCAD에 사용할 예제 만들기 (선반 - Lathe)

HeeksCAD/CAM를 시연하기 위해서 예제를 작성하였다.



그림 8-1. HeeksCAD, HeeksCAM에서 사용할 예제

[첨부(Attachment)]
sample.7z

그림 8-1에 해당하는 도면을 그리는 방법입니다.

그림 8-2. 도면 그리기

선반은 크게 2축(2-Axis) 기반으로 동작하는 머시닝(생산 기계)이다.
= The lathe is largely a two-axis (2-Axis) -based machining (production machine).

그림 8-3. 회전으로 원통 구현하기

그림 8-4. CAD 형식으로 저장하기(Stp, Step) 

그림 8-5. CAD 형식으로 저장하기(Stp, Step)  


8-1. Lubuntu로 불러오기 (HeeksCAD)

그림 8-1-1. 7zip 설치하기 / 시냅틱 패키지 관리자

그림 8-1-2. 7zip 설치하기 / 시냅틱 패키지 관리자

그림 8-1-3. 7zip 설치하기 / 시냅틱 패키지 관리자

그림 8-1-4. 7zip 설치하기 / 시냅틱 패키지 관리자

그림 8-1-5. 7zip 압축 해제하기

그림 8-1-6. 7zip 압축 해제하기

그림 8-1-5. HeeksCAD에서 Import(파일 수입)으로 불러오기

그림 8-1-6. HeeksCAD로 읽어들인 파일

그림 8-1-7. HeeksCAD로 읽어들인 파일


8-2. HeeksCAD가 지원하는 가공

그림 8-2-1. HeeksCAD에서 Program을 더블 클릭했을 때 환경설정

그림 8-2-1는 HeeksCAD에서 Program 1을 더블 클릭했을 때 나오는 창이다.
가공에 사용되는 Machines 프로그램으로 "LinuxCNC, Mach3 Machine Controller, Deckel FP4Ma, HPGL2D, HPGL2DV, HPGL3D"가 있다.

이들 프로그램에 대해서 정리하면 다음과 같다.

다음은 공구 설정에 관한 것이다.
Tool Definition은 도구를 오른쪽 버튼 클릭하면 생성할 수 있다.

그림 8-2-2. HeeksCAD의 툴 정의하기

툴 정의가 의미하는 것은 공구는 결정하는 것이다.
예를 들면, 엔드밀, 슬롯 커터, 볼 엔드밀 등을 결정하는 것이다.

그림 8-2-3. HeeksCAD에서 지원하는 Tool Type

공구를 수작업으로 하나 만들어야 하는 것으로 보입니다.


9. HeeksCAD에 사용할 예제 만들기 (밀링 - Milling)

이번에 작성할 예시 도면입니다.

그림 9-1. 밀링 도면 예제 만들기

그림 9-2. 밀링 도면 예제 만들기

그림 9-3. 밀링 도면 예제 만들기

그림 9-4. 밀링 도면 예제 만들기

그림 9-5. 밀링 도면 예제 만들기

그림 9-6. 밀링 도면 예제 만들기

그림 9-7. 밀링 도면 예제 만들기

아래에 첨부한 파일은 밀링 예제 도면이다.

[첨부(Attachment)]
sample_miling.7z


9-1. HeeksCAD/CAM에서 밀링 생성코드 만들기

HeeksCAD/CAM으로 밀링 생성코드를 하나 작성해보겠다.

 

 

그림 9-1-1. 주어진 도면(Milling)

그림 9-1-2. 파일->임포트(파일 수입)으로 불러오기, HeeksCAD

그림 9-1-2는 파일->임포트(파일 수입)으로 8에서 작성한 도면을 불러온 것이다.

그림 9-1-3. 도면 선택 후 스케치 상태로 만들기

도면을 선택한다. 오른쪽 버튼을 눌러서 페이스 메뉴를 클릭하면, "Make a sketch from face"라는 게 있다.
클릭한 면(Face / 국문읽기: 페이스)을 스케치 상태로 만들어주는 기능이다.

클릭한다.

그림 9-1-4. 도면 선택 후 스케치 상태로 만들기 (표시된 삭제라는 메뉴가 존재하지 않은 경우)



그림 9-1-5. 오브젝트 창, STEP 솔리드와 스케치1, HeeksCAD

HeeksCAD 옆에 창을 자세히 관찰하면 STEP 솔리드와 스케치1이 존재한다.
앞서 생성한 스케치1이다.

그림 9-1-6. 공구 만들기

그림 9-1-6은 공구에 관한 것이다.
Material(읽기: 메테리얼 / 뜻: 재질)을 클릭하면 종류가 있다.
HSS(고속도강)과 카바이드가 있다.

여기에서는 따로 소개하진 않는다.

그림 9-1-7. 프로그램(Program) 더블 클릭 시 환경설정, HeeksCAD

오브젝트 트리에서 Program(읽기: 프로그램)을 더블 클릭하면 위의 창이 뜬다.
머신에 관한 프로그램이다.

그림 9-1-8. 페이스의 면을 선택한 경우 (STEP 솔리드), HeeksCAD

HeeksCAD의 오브젝트 탭->STEP솔리드의 하부 내용에 보면 페이스들이 존재한다.
그 중의 일부를 선택하였다.

그림 9-1-9. Machining 메뉴 -> 포켓 작업

그림 9-1-9는 포켓 작업을 하기 위해서 들어갔다.
Machining-> 포켓 작업을 클릭한다.



그림 9-1-10. 포켓 작업(Pocket Operation)

Sketches에 스케치1의 도면이 선택된 것을 확인할 수 있다.
Tool에서는 공구를 결정할 수 있다.

여러 사항을 확인한 후에 확인을 클릭한다.

그림 9-1-11. 오브젝트 트리에 작업 "포켓3"의 생성, HeeksCAD

앞서 확인을 누른 결과는 오브젝트 트리에 "작업"->"포켓"에서 확인할 수 있다.

그림 9-1-12. G코드 생성하기, HeeksCAD

그림 9-1-12는 HeeksCAD로 NC코드(RS274 또는 G코드)를 생성하는 방법이다.
Machining을 클릭하면, "G-코드 만드는 법"이라는 메뉴가 있습니다. 이를 클릭한다.


그림 9-1-13. G코드 출력 결과, Program 코드 생성 결과(Python), HeeksCAD

그림 9-1-13은 G코드 출력 결과와 변환에 사용한 Python코드를 출력한 결과이다.
Output에는 NC코드(RS274)가 출력되었으며, Program 탭에는 파이썬(Python) 코드가 생성되었다.



그림 9-1-14. 스케치 만들기 위한 페이스 선택하기, HeeksCAD

특정 영역을 스케치로 만들기 위해 페이스를 선택하였다.
"Make a sketch from face"를 누르면 스케치를 생성할 수 있다.



그림 9-1-15. HeeksCAD로 작업하기, Dodo(도도)

그림 9-1-16. HeeksCAD로 작업하기, Dodo(도도)

그림 9-1-17. HeeksCAD로 작업하기, Dodo(도도)

그림 9-1-18. HeeksCAD로 작업하기, Dodo(도도)

그림 9-1-19. HeeksCAD로 작업하기, Dodo(도도)

그림 9-1-20. HeeksCAD로 작업하기, Dodo(도도)

그림 9-1-21. HeeksCAD로 작업하기, Dodo(도도)

그림 9-1-22. HeeksCAD로 작업하기, Dodo(도도)

그림 9-1-23. HeeksCAD로 작업하기, Dodo(도도)

그림 9-1-24. HeeksCAD로 작업하기, Dodo(도도)

그림 9-1-25. HeeksCAD로 작업하기, Dodo(도도)

[첨부(Attachment)]
sample_cnc_milling.7z

이 코드는 완벽하지 않은 코드이다. 사용하다가 문제가 발생할 경우, 책임지지 않는다.
HeeksCAD/CAM 프로그램을 학습하는 목적으로만 사용해주셨으면 한다.

그림 9-1-26. HeeksCAD/CAM으로 생성한 NC코드

그림 9-1-26은 HeeksCAD/CAM(이하 힉스캐드/캠)으로 생성한 NC코드이다.
왼쪽은 포켓이 2가지가 적용된 코드이며, 오른쪽은 포켓 1개로 진행한 NC코드이다.


10. 맺는말

머시닝센터의 작업 공구 등에 대해서 많이 소개되었다.
실제 현실에서는 정면밀링커터, 엔드밀, 볼엔드밀, 롱 볼엔드밀, 테이퍼 볼 엔드밀, 롱 드릴, 스트레이트 드릴, 탑 솔리드 드릴 등 정말 많은 공구가 존재한다.
이에 대해서 추가적인 개선이 필요할 것으로 보인다.

또 NC코드(RS274)의 최적화도 하나의 중요한 이슈이다.

지금 생성된 코드들은 예를 들면 G71과 같은 명령어가 아니라 반복적인 코드 작업이 존재한다. 예를 들면, 황삭(Roughing)을 하더라도 절입량을 줘서 다듬을 수도 있는 것이다. 프로그램의 기능을 다 다뤄본 것은 아니다. Pattern 등의 기능이 존재하는 것도 보인다.

공구교환에 필요한 ATC(Auto Tool Changer)가 지원되는 것으로 보인다.
조금 더 개선 등을 한다면 충분히 좋은 프로그램이라고 보여진다.


11. 참고자료(Reference)

1. HeeksCAD, 위키피디아, https://en.wikipedia.org/wiki/HeeksCAD, Accessed by 2018-07-24
2. HeeksCAD & HeeksCNC, https://sites.google.com/site/heekscad/, Accessed by 2018-07-24
3. Ubuntu: Installation · Heeks/heekscad Wiki · GitHub, https://github.com/Heeks/heekscad/wiki/Ubuntu:-Installation, 접속일자 2018-07-24
4. People - HeeksCAD & HeeksCNC, https://sites.google.com/site/heekscad/home/people-1, Accessed by 2018-07-24
5. MachSupport(마흐서포트), http://www.machsupport.com/software/mach3/, Accessed by 2018-07-24

6. LinuxCNC, http://linuxcnc.org, Accessed by 2018-07-24
반응형

+ Recent posts