KR102028203B1 - 워크피스의 기계가공의 시뮬레이션 - Google Patents

워크피스의 기계가공의 시뮬레이션 Download PDF

Info

Publication number
KR102028203B1
KR102028203B1 KR1020120123675A KR20120123675A KR102028203B1 KR 102028203 B1 KR102028203 B1 KR 102028203B1 KR 1020120123675 A KR1020120123675 A KR 1020120123675A KR 20120123675 A KR20120123675 A KR 20120123675A KR 102028203 B1 KR102028203 B1 KR 102028203B1
Authority
KR
South Korea
Prior art keywords
cutting tool
cutting
volume
trajectory
workpiece
Prior art date
Application number
KR1020120123675A
Other languages
English (en)
Other versions
KR20130049164A (ko
Inventor
니꼴라 몽타나
마르끄 몽테이으
로멩 노젠조
앙드레 리유티에
Original Assignee
다솔 시스템므
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 다솔 시스템므 filed Critical 다솔 시스템므
Publication of KR20130049164A publication Critical patent/KR20130049164A/ko
Application granted granted Critical
Publication of KR102028203B1 publication Critical patent/KR102028203B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4069Simulating machining process on screen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/04Architectural design, interior design
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Numerical Control (AREA)

Abstract

절삭부 및 비절삭부를 갖는 절삭 도구를 이용한 워크피스의 기계가공을 시뮬레이션하는 컴퓨터 구현 방법이 제공된다. 이 방법은 워크피스를 나타내는 모델링된 볼륨 및 절삭 도구의 궤적을 제공하는 단계 (S10); 절삭 도구의 충돌 스위프를 결정하는 단계 (S20) 로서, 충돌 스위프는 절삭 도구가 궤적을 따라가는 경우에 절삭 도구의 비절삭 프론트에 의해 스위프된 볼륨을 나타내는, 상기 결정하는 단계; 결정하는 단계 (S20) 에 따라 상기 워크피스와의 충돌을 테스트하는 단계 (S30) 를 포함한다. 이러한 방법은 절삭 도구를 이용한 워크피스의 기계가공의 시뮬레이션을 개선한다.

Description

워크피스의 기계가공의 시뮬레이션{SIMULATION OF THE MACHINING OF A WORKPIECE}
본 발명은 컴퓨터 프로그램들 및 시스템들의 분야에 관한 것이고, 더 상세하게는 절삭부 및 비절삭부를 갖는 절삭 도구를 이용한 워크피스 (workpiece) 의 기계가공을 시뮬레이션하는 방법, 시스템 및 프로그램에 관한 것이다.
다수의 시스템들 및 프로그램들이 오브젝트들의 디자인, 엔지니어링 및 제조를 위해 시중에 제공된다. CAD는 컴퓨터 지원 설계 (Computer-Aided Design) 의 머리글자이며, 예컨대 오브젝트를 디자인하기 위한 소프트웨어 솔루션들에 관련된다. CAE는 컴퓨터 지원 엔지니어링 (Computer-Aided Engineering) 의 머리글자이며, 예컨대 미래의 제품의 물리적 거동을 시뮬레이션하기 위한 소프트웨어 솔루션들에 관련된다. CAM은 컴퓨터 지원 제조 (Computer-Aided Manufacturing) 의 머리글자이며, 예컨대 제조 프로세스들 및 오퍼레이션들을 정의하기 위한 소프트웨어 솔루션들에 관련된다. 이러한 시스템들에서, 그래픽 사용자 인터페이스 (GUI) 는 기법의 효율성과 관련하여 중요한 역할을 담당한다. 이들 기법들은 제품 수명주기 관리 (Product Lifecycle Management; PLM) 시스템들 내에 임베딩될 수도 있다. PLM은 기업들이 확장 기업의 개념 전체에 걸쳐서, 제품 데이터를 공유하며, 공통 프로세스들을 적용하고, 제품들의 개발을 위한 기업의 지식에 구상에서부터 제품들의 수명의 끝까지 영향력을 행사하는 것을 돕는 경영 전략을 말한다.
다솔 시스템므 (Dassault Systemes) 에 의해 (CATIA, ENOVIA 및 DELMIA라는 상표들 하에서) 제공되는 PLM 솔루션들은, 제품 엔지니어링 지식을 편성하는 엔지니어링 허브, 제조 엔지니어링 지식을 관리하는 제조 허브, 그리고 엔지니어링 및 제조 허브들 양자 모두로의 기업 통합 및 연결을 가능하게 하는 기업 허브를 제공한다. 동시에 이 시스템은 제품들, 프로세스들, 자원들을 연결하는 개방형 오브젝트 모델을 전달하여 최적화된 제품 정의, 제조 준비, 생산 및 서비스를 도출하는 동적인 지식 기반 제품 창작 및 결정 지원을 가능하게 한다
이들 시스템들 중 일부는 절삭 도구를 이용한 워크피스의 기계가공의 시뮬레이션을 허용한다. 그러나, 이들 시스템들은 종종 부족한 시뮬레이션으로 이어진다.
이러한 시스템들의 예들은 다음에서 제공된다:
- 논문, 제목 "Precise global collision detection in multi-axis NC-machining", Oleg Ilushina, Gershon Elberb, Dan Halperin, Ron Wein, Myung-Soo Kim, Computer-Aided Design 37 (2005) 909-920; 및
- 논문, 제목 "The sweep plane algorithm for global collision detection with workpiece geometry update for five-axis NC machining", T.D. Tang, Erik L.J. Bohez, Pisut Koomsap, Computer-Aided Design 39 (2007) 1012-1024.
일부 시스템들은 덱셀들의 세트를 이용한 모델링된 볼륨의 표현을 허용한다. 여러 문서들은 특히, 기계가공 시뮬레이션 또는 상호작용적 스컬프팅 (sculpting) 을 위해 덱셀 표현을 이용할 것을 제안한다.
이러한 문서들의 예들은 다음과 같다:
- 논문, 제목 "A Virtual Sculpting System Based on Triple Dexel Models with Haptics", Xiaobo Peng 및 Weihan Zhang, Computer-Aided Design and Applications, 2009;
- 논문, 제목 "NC Milling Error Assessment and Tool Path Correction", Yunching Huang 및 James H. Oliver, Proceedings of the 21st annual conference on Computer graphics and interactive techniques, 1994;
- 논문, 제목 "NC milling simulation and dimensional verification via dexel representation", Oliver, J.H. 및 Huang, Y., US Patent 5,710,709 - 1998;
- 논문, 제목 "Online Sculpting and Visualization of Multi-Dexel Volumes", Heinrich Muller, Tobias Surmann, Marc Stautner, Frank Albersmann, Klaus Weinert, SM '03 Proceedings of the eighth ACM symposium on Solid modeling and applications;
- 논문, 제목 "Virtual prototyping and manufacturing planning by using tri-dexel models and haptic force feedback", Yongfu Ren, Susana K. Lai-Yuen 및 Yuan-Shin Lee, Virtual and Physical Prototyping, 2006;
- 논문, 제목 "Simulation of NC machining based on the dexel model: A critical analysis", Sabine Stifter, The International Journal of Advanced Manufacturing Technology, 1995;
- 논문, 제목 "Real time simulation and visualization of NC milling processes for inhomogeneous materials on low-end graphics hardware", Konig, A.H. 및 Groller, E., Computer Graphics International, 1998. Proceedings;
- 미국특허 5,710,709;
- 미국특허 7,747,418.
GPGPU (General-Purpose computing on Graphics Processing Units) 는 중앙 처리 유닛 (CPU) 에 의해 전통적으로 다루어지는 애플리케이션들에서의 컴퓨테이션을 수행하기 위해 컴퓨터 그래픽들만을 위한 컴퓨테이션을 통상 다루는 그래픽 처리 유닛 (GPU) 을 사용하는 기법이다. 일부 논문들은 덱셀 표현에 대한 현대의 그래픽 처리 유닛들 (GPU) 의 컴퓨테이션 파워를 이용하는 것을 고려한다. 이들 논문들은 특정 메모리 모델에 연관되는 LDNI (Layered Depth-Normal Images) 알고리즘을 이용한다.
이러한 논문들의 예들은 다음과 같다:
- 논문, 제목 "GPGPU-based Material Removal Simulation and Cutting Force Estimation", B. Tukora 및 T. Szalay, CCP: 94: Proceedings Of The Seventh International Conference On Engineering Computational Technology;
- 논문, 제목 "Layered Depth-Normal Images: a Sparse Implicit Representation of Solid Models", Charlie C. L. Wang 및 Yong Chen, Proceedings of ASME international design engineering technical conferences. Brooklyn (NY).
이런 맥락 내에서, 절삭부 및 비절삭부를 갖는 절삭 도구를 이용한 워크피스의 기계가공을 시뮬레이션하기 위한 개선된 솔루션이 여전히 필요하다.
하나의 양태에 따르면, 그러므로 절삭부 및 비절삭부를 갖는 절삭 도구로 워크피스의 기계가공을 시뮬레이션하는 컴퓨터 구현 방법이 제공된다. 이 방법은 워크피스를 나타내는 모델링된 볼륨과 절삭 도구의 궤적을 제공하는 단계를 포함한다. 이 방법은 또한 절삭 도구의 충돌 스위프 (colliding sweep) 를 결정하는 단계를 포함한다. 충돌 스위프는 절삭 도구가 궤적을 따라가는 경우에 절삭 도구의 비절삭 프론트에 의해 스위프되는 볼륨을 나타낸다. 이 방법은 또한 결정하는 단계에 따라 워크피스와의 충돌을 테스트하는 단계를 포함한다.
이 방법은 다음들 중의 하나 이상을 포함할 수도 있다:
- 이 방법은 절삭 도구의 보호 프론트를 결정하는 단계를 포함하고, 충돌 스위프를 결정하는 단계는 비절삭부에 의해 스위프된 볼륨과 보호 프론트에 의해 스위프된 볼륨을 결정하는 단계를 포함한다;
- 워크피스는 각각의 덱셀이 라인과 상기 워크피스 사이의 교차부를 나타내는 적어도 하나의 세그먼트의 세트를 포함하는 덱셀들의 세트에 의해 표현되고, 충돌을 테스트하는 단계는, 개별 덱셀에 대해, 보호 프론트에 의해 스위프된 볼륨을 교차하는 개별 덱셀의 세그먼트들을 결정하는 단계, 이에 따라 개별 덱셀을 업데이트하는 단계 및 업데이트된 상기 개별 덱셀의 세그먼트들이 상기 비절삭부에 의해 스위프된 볼륨을 교차하는지를 평가하는 단계를 포함한다;
- 절삭부는 볼록형이며, 개별 덱셀의 세그먼트들은 오더링되고, 개별 덱셀을 업데이트하는 단계는, 보호 프론트에 의해 스위프된 볼륨을 교차하는 최저 순서의 세그먼트를 단축시키는 단계, 보호 프론트에 의해 스위프된 볼륨을 교차하는 최고 순서의 세그먼트를 단축시키는 단계, 및 최저 순서의 세그먼트 및 최고 순서의 세그먼트 사이의 모든 세그먼트들을 제거하는 단계를 포함한다;
- 상기 충돌 스위프를 결정하는 단계는 상기 절삭 도구가 상기 궤적을 따라가는 경우에 절삭 도구의 비절삭 프론트에 의해 스위프된 볼륨을 결정하는 단계를 포함한다.
위의 방법을 수행하기 위한 명령들을 기록하고 있는 메모리, 메모리에 커플링된 프로세스, 및 프로세서에 연결되고 명령들의 실행에 적합한 적어도 하나의 그래픽 사용자 인터페이스를 포함하는 CAM 시스템이 추가로 제안된다.
이 프로세서는 GPU (Graphical Processing Unit) 일 수도 있다.
위의 방법을 수행하기 위한 명령들을 포함하는 컴퓨터 프로그램이 추가로 제안된다.
위의 컴퓨터 프로그램이 기록된 컴퓨터 판독가능 저장 매체가 추가로 제안된다.
이러한 방법은 절삭 도구를 이용한 워크피스의 기계가공의 시뮬레이션을 개선한다.
본 발명의 실시예들은 비제한적인 예로서 다음의 첨부 도면들을 참조하여 이제 설명될 것이다.
도 1 은 이 방법의 일 예의 흐름도를 도시한다;
도 2 는 그래픽 사용자 인터페이스의 일 예를 도시한다; 그리고
도 3 은 클라이언트 컴퓨터 시스템의 일 예를 도시한다;
도 4 내지 21 은 이 방법의 예들을 도시한다.
도 1 은 절삭부 및 비절삭부를 갖는 절삭 도구로 워크피스의 기계가공을 시뮬레이션하는 컴퓨터 구현 방법의 일 예의 흐름도를 도시한다. 이 방법은 워크피스를 나타내는 모델링된 볼륨과 절삭 도구의 궤적을 제공하는 단계 (S10) 를 포함한다. 이 방법은 또한 절삭 도구의 충돌 스위프를 결정하는 단계 (S20) 를 포함한다. 충돌 스위프 (colliding sweep) 는 절삭 도구가 궤적을 따라가는 경우에 절삭 도구의 비절삭 프론트에 의해 스위프되는 볼륨을 나타낸다. 이 방법은 결정하는 단계에 따라 워크피스와의 충돌을 테스트하는 단계 (S30) 를 더 포함한다. 이러한 방법은 절삭 도구를 이용한 워크피스의 기계가공의 시뮬레이션을 개선한다.
이 방법은 제조 오브젝트를 나타내는 CAD 모델링된 오브젝트를 디자인하는 프로세스에 포함될 수도 있다. 제조 오브젝트는 임의의 물리적 제품일 수도 있고, 워크피스에 대해 수행되는 기계가공 프로세스에 따라 제조될 수도 있다. 예를 들어, 제조 오브젝트는 스톡 (stock) 을 절삭 도구로 기계가공함으로써 획득될 수도 있다. 워크피스는 기계가공 동안 그대로 스톡으로 구성된다. 이 방법은 이러한 기계가공을 시뮬레이션한다.
"CAD 모델링된 오브젝트를 디자인한다는 것"은 모델링된 오브젝트를 정교화 (elaboration) 하는 프로세스의 적어도 부분인 임의의 액션 또는 일련의 액션들을 나타낸다. 예를 들어, 이 방법은 워크피스를 스톡으로 나타내는 모델링된 볼륨을 제공하는 단계, 및 모델링된 볼륨의 절삭을 시뮬레이션함으로써 워크피스의 기계가공을 시뮬레이션하는 (따라서 스톡의 절삭을 시뮬레이션하는) 단계를 포함할 수도 있다. 모델링된 볼륨은 워크피스에 의해 점유되는 3D 공간을 정의한다. 따라서, 모델링된 볼륨은 모델링된 고형물 (solid) 이다. 이 방법이 절삭부 및 비절삭부를 갖는 절삭 도구로 워크피스의 기계가공의 시뮬레이션을 개선하기 때문에, 이 방법은 또한 제조 오브젝트를 나타내는 CAD 모델링된 오브젝트의 디자인을 개선시킨다.
모델링된 오브젝트는 컴퓨터 시스템의 메모리에 저장된 데이터에 의해 정의되는 임의의 오브젝트이다. 확장에 의해, "모델링된 오브젝트(modeled object)"라는 표현은 데이터 자체를 가리킨다. CAD 모델링된 오브젝트는 CAD 시스템의 메모리에 저장된 데이터에 의해 정의되는 임의의 오브젝트이다. 이 시스템의 유형에 따르면, 모델링된 오브젝트들은 상이한 종류들의 데이터에 의해 정의될 수도 있다. CAD 시스템은 모델링된 오브젝트의 그래픽 표현을 기초로 하여 모델링된 오브젝트를 디자인하는데에는 최소한 적합한 임의의 시스템, 이를테면 CATIA이다. 그래서, CAD 모델링된 오브젝트를 정의하는 데이터는 모델링된 오브젝트의 표현 (예컨대, 공간에서의 상대 위치들을 예를 들어 포함하는 기하 데이터) 을 포함한다.
이 방법은, 이 방법을 수행한 후, 이 방법에 의해 시뮬레이션된 기계가공 프로세스에 따라 제조 오브젝트를 생산하는 제조 프로세스에 포함될 수도 있다. 다르게 말하면, 테스트하는 단계 (S30) 후에, 예컨대 테스트하는 단계 (S30) 가 충돌이 없다는 결과를 내면, 이 방법은 궤적에 따라 절삭 도구로 워크피스 (모델링된 볼륨에 의해 표현됨) 를 실제로 절삭하는 단계를 포함할 수도 있다. 제조 오브젝트는 제품, 이를테면 부품, 또는 부품들의 어셈블리일 수도 있다. 이 방법이 모델링된 볼륨의 디자인을 개선하기 때문에, 이 방법은 또한 제품의 제조를 개선하고 이에 따라 제조 프로세스의 생산성을 증가시킨다. 이 방법은 CAM 시스템, 이를테면 DELMIA를 사용하여 구현될 수도 있다. CAM 시스템은 제조 프로세스들 및 동작들을 적어도 정의하며, 시뮬레이션하고 제어하기에 적합한 임의의 시스템이다.
이 방법은 컴퓨터로 구현된다. 이는 이 방법이 적어도 하나의 컴퓨터, 또는 유사한 임의의 시스템 상에서 실행된다는 것을 의미한다. 달리 언급되지 않는 한, 이 방법의 모든 단계들은 컴퓨터에 의해, 즉, 사용자의 개입 없이 수행된다. 예를 들어, 결정하는 단계 (S20) 및 테스트하는 단계 (S30) 는 단독의 컴퓨터에 의해 수행될 수도 있는 반면, 제공하는 단계 (S10) 는 단독의 컴퓨터에 의해 또는 사용자-상호작용을 통해 수행될 수도 있다. 이 방법은 이에 의해 기계가공의 자동 테스팅을 허용한다.
이 방법의 컴퓨터 구현의 전형적인 예는 이 목적에 적합한 시스템으로써 이 방법을 수행하는 것이다. 이 시스템은 이 방법을 수행하기 위한 명령들을 기록하고 있는 메모리를 포함할 수도 있다. 다르게 말하면, 소프트웨어가 즉각적인 사용을 위해 메모리에 미리 준비된다. 이 시스템은 따라서 임의의 다른 소프트웨어를 인스톨하지 않고 이 방법을 수행하기에 적합하다. 이러한 시스템은 또한, 메모리에 연결되어 명령들을 실행하는 적어도 하나의 프로세서를 포함할 수도 있다. 다르게 말하면, 이 시스템은 프로세서에 연결된 메모리 상에 코딩된 명령들을 포함하며, 이 명령들은 이 방법을 수행하기 위한 수단을 제공한다. 이러한 시스템은 모델링된 볼륨을 디자인하기 위한 효율적인 도구이다.
이러한 시스템은 CAD 또는 CAM 시스템일 수도 있다. 이 시스템은 또한 CAE 시스템일 수도 있고, 모델링된 오브젝트는 또한 CAE 모델링된 오브젝트 및/또는 CAM 모델링된 오브젝트일 수도 있다. 사실상, CAD, CAE 및 CAM 시스템들은 하나를 다른 하나로부터 배제하지 않는데, 모델링된 오브젝트가 이들 시스템들의 임의의 조합에 상응하는 데이터에 의해 정의될 수 있어서이다.
이 시스템은, 예를 들어 사용자에 의해 명령들의 실행을 론칭 (launching) 하는 적어도 하나의 GUI를 포함할 수도 있다. 주목할 만하게도, GUI는, 모델링된 볼륨을 디자인하고/하거나 스크래치로부터 절삭 도구의 궤적을 정의함으로써, 그리고/또는 시스템의 메모리, 또는 시스템의 외부이지만 예컨대 네트워크 서비스에 의해 시스템에 연결된 모델링된 볼륨 및/또는 절삭 도구의 궤적을 취출함으로써, 제공하는 단계 (S10) 를 사용자가 론칭하는 것을 허용할 수도 있다. GUI는 GPU를 포함할 수도 있다. 이러한 경우에, 프로세서는 GPU 일 수도 있다. 다르게 말하면, 적어도 이 방법의 단계들, 특히 결정하는 단계 (S20) 및/또는 테스트하는 단계 (S30) 를 실행하는 프로세서는 GPU 일 수도 있다. 이러한 시스템은 사용자에 의해 모델링된 볼륨을 디자인하기 위한 효율적인 도구이다. 이는 모델링된 볼륨이 덱셀들의 세트로서 제공되는 경우에 특히 유리하다. 덱셀 기반 알고리즘들이 대용량 (massively) 병렬 하드웨어에 매우 적합할 수 있으므로, 현대의 그래픽 처리 유닛 (GPU) 의 컴퓨테이션 파워의 이용을 고려하는 것은 당연하다.
모델링된 볼륨은 3D (즉 3 차원) 일 수도 있다. 이는 모델링된 볼륨이 그것의 3D 표현을 허용하는 데이터에 의해 정의된다는 것을 의미한다. 3D 표현은 표현된 볼륨의 모든 각도들로부터의 관람을 허용한다. 예를 들어, 모델링된 볼륨은, 3D 표현될 때, 3D 표현의 축들 중의 임의의 것을 중심으로 또는 그 표현이 디스플레이되는 스크린의 임의의 축을 중심으로 핸들링 및 회전될 수도 있다. 이는 특히, 3D 모델링되지 않은 2D 아이콘들을 배제한다. 3D 표현의 디스플레이는 디자인을 용이하게 한다 (즉, 디자이너들이 그들의 태스크를 통계적으로 달성하는 속도를 증가시킨다). 이는 업계에서 제조 프로세스의 속도를 높이는데, 제품들의 디자인이 제조 프로세스의 일 부분이기 때문이다.
도 2는 전형적인 CAD 시스템의 GUI의 일 예를 도시한다.
GUI (2100) 는 표준 메뉴 바들 (2110, 2120) 뿐만 아니라 바닥 및 측면 툴바들 (2140, 2150) 을 갖는 통상적인 CAD 형 인터페이스일 수도 있다. 이러한 메뉴 바들 및 툴바들은 사용자 선택가능 아이콘들의 세트를 포함하며, 각각의 아이콘은 이 기술분야에서 알려진 바와 같은 하나 이상의 동작들 또는 기능들에 연관된다. 이들 아이콘들 중의 일부는 GUI (2100) 에 디스플레이되는 3D 모델링된 오브젝트 (2000) 에 대한 편집 및/또는 작업에 적응된 소프트웨어 도구들에 연관된다. 이 소프트웨어 도구들은 작업대 (workbench) 들로 그룹화될 수도 있다. 각각의 작업대는 소프트웨어 도구들의 서브세트를 포함한다. 특히, 작업대들 중의 하나는, 모델링된 제품 (2000) 의 기하학적 특징들을 편집하기에 적합한 편집 작업대이다. 동작 시, 디자이너가 예를 들어 오브젝트 (2000) 의 부품을 미리선택한 다음 적절한 아이콘을 선택하는 것에 의해 동작 (예컨대, 스컬프팅 동작, 또는 임의의 다른 동작 이를테면 치수, 컬러 등의 변경) 을 개시하거나 또는 기하학적 제약들을 편집할 수도 있다. 예를 들어, 전형적인 CAD 동작들은 스크린 상에 디스플레이되는 3D 모델링된 오브젝트의 펀칭 또는 폴딩 (folding) 의 모델링이다.
GUI는 예를 들어 디스플레이된 제품 (2000) 에 관련된 데이터 (2500) 를 디스플레이할 수도 있다. 도 2의 예에서, "특징 트리"로서 디스플레이된 데이터 (2500) 와, 그것들의 3D 표현 (2000) 은 브레이크 캘리퍼 및 디스크를 포함한 브레이크 어셈블리에 관련된다. GUI는, 예를 들어 오브젝트의 3D 배향을 용이하게 하거나, 편집된 제품의 동작의 시뮬레이션을 트리거링하거나 또는 디스플레이된 제품 (2000) 의 여러 속성들을 렌더링하기 위한 갖가지 유형들의 그래픽 도구들 (2130, 2070, 2080) 을 추가로 나타낼 수도 있다. 커서 (2060) 는 사용자가 그래픽 도구들과 상호작용하도록 햅틱 디바이스에 의해 제어될 수도 있다.
도 3은 클라이언트 컴퓨터 시스템, 예컨대 사용자의 워크스테이션인 시스템의 아키텍처의 일 예를 도시한다.
클라이언트 컴퓨터는 내부 통신 버스 (1000) 에 접속된 중앙 처리 유닛 (CPU) (1010), 또 이 BUS 에 접속된 랜덤 액세스 메모리 (RAM) (1070) 를 포함한다. 클라이언트 컴퓨터에는, BUS 에 접속된 비디오 랜덤 액세스 메모리 (1100) 에 연관된 그래픽 처리 유닛 (GPU) (1110) 이 추가로 제공된다. 비디오 RAM (1100) 은 또한 이 기술분야에서 프레임 버퍼로서 알려져 있다. 대용량 저장 디바이스 제어기 (1020) 가 대용량 메모리 디바이스, 이를테면 하드 드라이브 (1030) 에 대한 액세스들을 관리한다. 컴퓨터 프로그램 명령들 및 데이터를 유형적으로 수록하기에 적합한 대용량 메모리 디바이스들은, 예로서 반도체 메모리 디바이스들, 이를테면 EPROM, EEPROM, 및 플래시 메모리 디바이스들; 자기 디스크들, 이를테면 내장형 하드 디스크들 및 착탈식 디스크들; 자기 광 디스크들; 및 CD-ROM 디스크들 (1040) 을 포함하는 모든 형태의 비휘발성 메모리를 포함한다. 전술한 것들 중의 어느 것이라도 특별히 디자인된 ASIC들 (application-specific integrated circuits) 에 의해 보충되거나, 또는 그 ASIC들에 통합될 수도 있다. 네트워크 어댑터 (1050) 가 네트워크 (1060) 에 대한 액세스들을 관리한다. 클라이언트 컴퓨터는 또한 커서 제어 디바이스, 키보드 등과 같은 햅틱 디바이스 (1090) 를 포함할 수도 있다. 커서 제어 디바이스는, 도 2를 참조하여 언급된 바와 같이, 사용자가 스크린 (1080) 상의 임의의 원하는 위치에 커서를 선택적으로 위치시키는 것을 허용하기 위해 클라이언트 컴퓨터에서 사용된다. 스크린에 의하면, 이것은 디스플레이가 수행될 수 있는 임의의 서포트, 이를테면 컴퓨터 모니터를 의미한다. 또한, 커서 제어 디바이스는 사용자가 갖가지 커맨드들을 선택하고, 제어 신호들을 입력하는 것을 허용한다. 커서 제어 디바이스는 제어 신호들을 시스템에 입력하기 위한 다수의 신호 생성 디바이스들을 포함한다. 통상, 커서 제어 디바이스는 마우스일 수 있고, 이 마우스의 버튼이 신호들을 생성하는데 사용된다.
시스템으로 하여금 이 방법을 수행하도록 하기 위해, 이 목적을 위한 수단을 포함하는 명령들을 컴퓨터에 의한 실행을 위해 포함하는 컴퓨터 프로그램이 제공된다. 이 프로그램은 예를 들어 디지털 전자 회로로 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어로, 또는 그것들의 조합들로 구현될 수도 있다. 본 발명의 장치는 프로그램가능 프로세서에 의한 실행을 위해 기계 판독가능 저장 디바이스에 유형적으로 (tangibly) 수록되는 컴퓨터 프로그램 제품으로 구현될 수도 있으며; 그리고 본 발명의 방법 단계들은 입력 데이터에 대해 동작하고 출력을 생성하는 것에 의해 본 발명의 기능들을 수행하기 위하여 프로그램의 명령들을 실행하는 프로그램가능 프로세서에 의해 수행될 수도 있다. 명령들은 데이터 저장 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령들을 수신하고 데이터 및 명령들을 그것들로 송신하도록 연결되는 적어도 하나의 프로그램가능 프로세서를 포함한 프로그램가능 시스템 상에서 실행가능한 하나 이상의 컴퓨터 프로그램들로 유리하게 구현될 수도 있다. 애플리케이션 프로그램은 원한다면 하이-레벨 절차적 또는 객체 지향 프로그래밍 언어로 또는 어셈블리 또는 기계어로 구현될 수도 있으며; 그리고 어떤 경우에, 이 언어는 컴파일링 또는 인터프리팅된 언어일 수도 있다. 프로그램은 완전한 인스톨 프로그램, 또는 업데이트 프로그램일 수도 있다. 후자의 경우에, 프로그램은 기존 CAD 시스템을 시스템이 방법을 수행하기에 적합한 상태로 업데이트한다.
이 방법은 워크피스를 나타내는 및 모델링된 볼륨과 절삭 도구의 궤적을 제공하는 단계 (S10) 를 포함한다. 모델링된 볼륨은 임의의 볼륨 모델링을 이용하여 제공될 수도 있다. 예를 들어, 모델링된 볼륨은 대수적 공식 (algebraic formulation) 으로서 제공될 수도 있다. 대안으로, 모델링된 볼륨은 B-Rep (경계 표현, 즉 모델링된 볼륨의 경계 표면(들) 에 대한 공식들) 로서 또는 다면체로서 제공될 수도 있다. 모델링된 볼륨은 또한 덱셀들의 세트로서 제공될 수도 있는데, 이는 나중에 논의될 것이다. 모델링된 볼륨의 표현, 예를 들어 3D는 또한 이 방법 동안 언제나 사용자에게 디스플레이될 수도 있다. 절삭 도구의 궤적은 워크피스의 기계가공 동안 절삭 도구에 의해 취해질 포지션들의 임의의 순서형 (ordered) 세트이다. 절삭 도구의 표현, 예를 들어 3D는 또한 사용자에게 디스플레이될 수도 있다. 궤적의 제공 (provision) 은 사용자에 의해, 예컨대 스크린 상의 절삭 도구의 표현을 핸들링하는, 예를 들어 절삭 도구를 디스플레이된 모델링된 볼륨 쪽으로 이동시켜 워크피스 절삭을 시뮬레이션하는 사용자에 의해 수행될 수도 있다. 이 방법은 절삭 도구의 궤적에 따라 모델링된 볼륨을 업데이트할 수도 있다. 예를 들어, 이 방법은 모델링된 볼륨에 대한 절삭을 수행하는 단계를 포함할 수도 있고, 그 동안에 또는 미리, 결정하는 단계 (S20) 및 테스트하는 단계 (S30) 를 예컨대 충돌이 검출되는 경우에 절삭을 예컨대 실시간으로 중단시키기 위해 실행할 수도 있다. 이러한 경우에, 이 방법은 사용자에게 충돌이 검출된다는 정보를 디스플레이하는 단계를 포함할 수도 있다.
이 방법은 또한 절삭 도구의 충돌 스위프를 결정하는 단계 (S20) 를 포함한다. 충돌 스위프는 절삭 도구가 궤적을 따라가는 경우에 절삭 도구의 비절삭 프론트에 의해 스위프된 볼륨을 나타내는 데이터이다. 대체로, 절삭 도구는 절삭부 및 비절삭부를 가지며, 그것들은 또한 각각 "절삭 볼륨" 및 "비절삭 볼륨"으로 지칭될 수도 있다. 절삭부 및 비절삭부 사이의 경계는 가변될 수도 있다, 즉, 이에 의해 어쩌면 절삭 도구의 절삭부 및 비절삭부으로 구성된 다른 쌍을 정의하는 상이한 경계들이 있을 수 있다. 절삭 도구는 밀링 머신, 드릴 프레스, 또는 심지어 나이프일 수도 있다. 어떤 경우에, 절삭 도구는 예컨대 사람 작업자 또는 로봇에 의해 절삭 도구를 예를 들어 핸들링 및 이동시키는 비절삭부 (예를 들어 핸들) 을 가진다. 절삭 도구는 사실상 절삭부 및 비절삭부의 강성 어셈블리이다. 이 도구의 궤적은 예컨대 사용자에 의해 정의되는 포지션들의 시퀀스이다. 비절삭부는 재료를 절삭 (cut) 하지 않는, 그러므로 그것이 맞닥뜨리는 임의의 고형물와 충돌하는 절삭 도구의 부분이다. 절삭 도구가 궤적을 따라가는 경우의 절삭 도구의 비절삭 프론트는, 궤적 상의 절삭 도구의 주어진 포지션에서, 절삭 도구가 궤적을 따라가는 경우에 이러한 포지션에서 고형물와 충돌할 (절삭 도구가 궤적을 따라가는 것을 시작하기 전에 이러한 포지션에 고형물은 존재했었을 것이다) 절삭 도구의 포인트들의 서브세트이다. 비절삭 프론트의 정식 공식들은 나중에 제공될 것이다. 비절삭 프론트에 의해 스위프되는 볼륨은 (예컨대 워크피스가 이러한 스위프된 볼륨에 놓이는 워크피스의 적어도 부분을 가진다면) 잠재적인 충돌이 있는 볼륨이다. 충돌 스위프는 이러한 볼륨 (어쩌면 스위프되는 볼륨 자체 또는 그 근사물) 을 나타내는 임의의 볼륨 데이터이다. 이 방법은 이에 의해 절삭 도구의 포인트들 중 충돌 포지션들을 궤적의 함수로 나타내는 3D 공간의 볼륨의 결정을 허용한다.
이 방법은 결정하는 단계 (S20) 에 따라 (즉 결정 완료된 충돌 스위프의 함수로) 워크피스와의 충돌을 테스트하는 단계 (S30) 를 추가로 포함한다. 테스트하는 단계 (S30) 는 그것이 (잠재적인 충돌의 경우) 충돌을 또는 역으로 부정적인 결과를 검출하는 경우에 긍정적인 결과를 낼 수도 있다. 예를 들어, 테스트하는 단계 (S30) 는 충돌 스위프 및 워크피스 사이에 교차부가 있는지를 결정하는 단계를 포함할 수도 있다. 이 방법은 따라서 충돌 스위프 (에 의해 표현되는 볼륨) 가 워크피스를 교차하는지의 여부를 결정할 수도 있다. 만약 그렇다면, 충돌이 이 방법에 의해 검출된다.
이 방법의 콘텍스트는 컴퓨터 지원 설계 시스템 또는 컴퓨터 지원 제조 시스템을 사용하는 실시간 기계가공 시뮬레이션이다. 이 방법은 절삭부 및 비절삭부를 갖는 절삭 도구로 워크피스를 기계가공하는 신뢰성 있는 시뮬레이션을 제공한다. 사실상, 이 방법은, 약간의 폴스 네거티브 (false negative) 결과들이 있는, 고속 방식으로 충돌들을 검출한다 (즉 약간의 가능한 충돌들이 테스트하는 단계 (S30) 에 의해 누락됨). 이는 절삭 도구의 궤적이 충돌 스위프를 결정하는 (S20) 경우를 고려하기 때문이다.
결정하는 단계 (S20) 는 궤적을 기본적인 (elementary) 단계들로 분할하는 단계를 포함할 수도 있다. 이러한 경우, 결정하는 단계 (S20) 및 테스트하는 단계 (S30) 는 각각의 기본적인 스텝에 대해 수행될 수도 있다. 이는 충돌 스위프가 쉽게 결정되기 때문에, 고속 테스팅 (S30) 을 허용한다. 또한, 이는 테스트하는 단계 (S30) 의 폴스 포지티브 (false positive) 의 결과를 가질 기회를 감소시킨다. 도구 궤적의 기본적인 스텝은 2 개의 연속적인 포지션들 사이에서의 도구의 움직임일 수도 있다. 도구 궤적의 각각의 기본적인 스텝에서, 절삭부에 의해 보호되는 비절삭 가동 부분의 페이스들 (faces) 에 의해 스위프되는 볼륨은 비절삭부에 의해 스위프된 볼륨으로부터 뺄 수도 있다. 결과가 현재의 워크피스를 교차하지 않는다면, 격돌 (clash) (즉 충돌) 이 이 기본적인 움직임에 대해 발생하지 않았다고 결정될 수도 있다. 이 점검 후, 현재의 워크피스는 (이 기본적인 움직임에 따라 모델링된 볼륨의 부분을 절삭함으로써) 업데이트될 수도 있다. 이는 속력의 이득 및 신뢰도의 이득 양자 모두를 초래한다. 사실상, 이 방법은 각각의 기본적인 궤적 단계를 리파이닝 (refine) 할 필요가 없고 (따라서 양호한 성능을 허용하고), 신뢰도는 임의의 수치 정밀도 값에 의존하지 않는다. 성능 및 신뢰도는 변위 벡터의 방향에 의존하지 않는다.
분할하는 단계는 미리결정된 시간 단계에 의존할 수도 있다. 예를 들어, 이 방법은 각각이 미리결정된 시간 단계 동안 사용자에 의한 절삭 도구의 표현의 핸들링에 대응하는 기본적인 스텝들로 궤적을 분할할 수도 있다. 대안으로, 이 방법은 궤적을 미리결정된 길이의 기본적인 스텝들로 분할할 수도 있다. 대안으로, 이 방법은 궤적을 동일 길이의 미리결정된 수의 기본적인 스텝들로 분할할 수도 있다.
대안으로, 이 방법은 궤적을 각 기본적인 스텝이 정규 (regular) 궤적을 정의하는 기본적인 스텝들로 분할할 수도 있다. 정규 궤적에 의하면, 그것은 절삭 도구의 각각의 주어진 포인트에 대해, (절삭 도구가 궤적을 따라가는 경우에) 주어진 포인트의 포지션들의 시퀀스에 의해 정의되는 곡선이 커스프 (cusp) 를 가지지 않음 (즉 특이점 (singular point) 이 없음) 을 의미한다. 예를 들어 기본적인 스텝은 스컬프팅 도구들의 운동학 (kinematic) 의 설명을 위한 선형, 원형, 나선 호 (helicoidal arcs) (즉 코일 부분들) 또는 곡선들일 수 있다. 이러한 분할하는 단계는 테스트하는 단계 (S3) 에서의 다수의 폴스 포지티브를 효율적으로 감소시킨다.
절삭 도구는 일부 경계부 (boundary) 들이 절삭이고 일부 다른 경계부들이 비절삭인 볼록형일 수도 있다. 이는 테스트하는 단계 (S30) 의 더욱 신뢰성있는 결과를 보장한다.
이 방법은 도구의 절삭부의 움직임과 도구의 비절삭부의 움직임을 워크피스를 업데이트하는 동안 분리시킨다. 이는 이 방법을 적용하는 일 예를 보여주는 도 4-6을 참조하여 예시된다.
이 예에서, 방법은 절삭부 (42) 및 비절삭부 (44) 을 갖는 절삭 도구 (40) 의 표현, 뿐만 아니라 워크피스를 나타내는 모델링된 볼륨 (46) 을 사용자에게 디스플레이하는 단계를 포함한다. 도 4 에서, 모델링된 볼륨 (46) 은 업데이트 전의 워크피스를 나타낸다. 도 5-6 에서, 모델링된 볼륨 (46) 은 업데이트 후의 워크피스를 나타낸다.
절삭부 (42) 은 도구 (40) 의 반구형 부분인 반면 비절삭부 (44) 은 도구 (40) 의 원통형 부분 (예컨대 도구 생크 (shank)) 이다. 절삭 단계 전의 워크피스는 도 4의 사다리꼴 형상 (46) 이다.
도구 (40) 가 우상단에서부터 좌하단으로 내려가면, 도 5에 예시된 바와 같이 (실제 기계가공 프로세스에서) 절삭 프론트가 도구 생크에 앞서기 때문에, 충돌이 발생하지 않을 것임을 관찰할 수도 있다. 반대로, 좌하단에서부터 우상단으로 올라가면, 도 6에 의해 예시된 바와 같이, (실제 기계가공에서) 도구 생크가 절삭 프론트에 앞서기 때문에 도구 생크 (44) 및 워크피스 사이의 충돌 (48) 이 발생할 것이라는 결과를 초래할 것이다.
이 방법은 따라서 이 비대칭 거동을 예측하기 위해 디자인되고, 도 6의 경우에서 충돌을 효율적으로 검출하는 반면, 그것은 도 5의 경우에서는 충돌 없음을 효율적으로 검출한다. 더욱이, 궤적은 이러한 경우에 단일의 기본적인 스텝을 포함할 수도 있다. 그러므로, 이 방법은 테스트하는 단계 (S30) 를 전체 궤적에 대해 빠르게 수행할 수 있다.
이 방법의 예들이 이제 도 7-21을 참조하여 논의된다. 이들 예들은 도 4-6을 참조하여 논의된 일 예와 조합가능하다.
가동 절삭 도구 (40) 는 절삭 볼륨 (42) 및 비절삭 볼륨 (44) 으로 분해된다. 절삭 볼륨 (42) 및 비절삭 볼륨 (44) 들에 의해 공유되는 내부 경계부 (72) 는 실용적 중요성이 없고 재료 제거, 또는 충돌 거동에 영향을 주지 않는다는 점에 주목한다. 따라서, 이 경계부 (72) 표면은 컴퓨테이션의 편의를 위해 선택되고, 임의로 설정될 수도 있다. 일 예의 경우에, 경계부 (72) 는 편의상 디스크로서 선택된다.
제 1 예에서, 충돌 스위프를 결정하는 단계는 절삭 도구 (40) 가 궤적을 따라가는 경우에 절삭 도구 (40) 의 비절삭 프론트에 의해 스위프된 볼륨을 결정하는 단계를 포함한다. 다르게 말하면, 이 방법은 절삭 도구 (40) 가 궤적을 따라가는 경우에 절삭 도구 (40) 의 비절삭 프론트에 의해 스위프된 볼륨을 실제로 결정하고, 충돌 스위프는 이렇게 결정된 볼륨과 동일할 수도 있다.
일 예에서, 도구 (40) 는 절삭 볼륨 (42) 및 비절삭 볼륨 (44) 을 포함한 강성 (rigid) 이동 어셈블리이다. V 를 비절삭 볼륨 (44) 의 값으로 둔다. 나이브 (
Figure 112012090208242-pat00001
) 접근법은 V 의 스위프되는 볼륨과 워크피스가 교차하는 것을 고려할 수도 있다. 궤적을 함수
Figure 112012090208242-pat00002
에 의해 정의하며, 여기서 각각의
Figure 112012090208242-pat00003
에 대해,
Figure 112012090208242-pat00004
는 아이소메트릭 (isometric) 변환이며, V 의 스위프되는 볼륨은 다음과 같다:
Figure 112012090208242-pat00005
각각의
Figure 112012090208242-pat00006
에서, 아이소메트릭 변환
Figure 112012090208242-pat00007
은 회전
Figure 112012090208242-pat00008
및 병진
Figure 112012090208242-pat00009
에 의해 정의되며, 3 차원 공간의 포인트 x가 포지션
Figure 112012090208242-pat00010
에서 이동되는 것을 의미한다.
나이브 스위프된 볼륨 개념 대신, 이 방법은 이른바 선진 외부 프론트들 (advancing outer fronts) 의 유니언 (union) 을 이용하여 더 복잡정교한 정의를 고려한다. Souter 를 절삭 볼륨 (42) 의 경계로 두며, 이 경계는 또한 도구 참조 (tool referential) 에서 정의되는 도구 (40) 의 외부 경계이다. 예를 들어 도 7에서, 도구는 절삭 볼륨 (42) 및 비절삭 볼륨 (44) 으로 분해된다. 도 8은 대응하는 Souter 경계를 실선 (점선 아닌 선) 으로 예시한다. 임의의 포인트
Figure 112012090208242-pat00011
에서, 외부 법선 벡터는 도 9에 예시된 바와 같이 n(x) 로 표시된다.
주어진
Figure 112012090208242-pat00012
에 대해,
Figure 112012090208242-pat00013
에 의해 표현되는 도구 (40) 의 비절삭 프론트를, 다음에 의해 정의된 Souter 의 서브세트라고 둔다:
Figure 112012090208242-pat00014
여기서
Figure 112012090208242-pat00015
는 벡터들 uv 사이의 스칼라 적 (scalar product) 을 나타내고,
Figure 112012090208242-pat00016
는 궤적
Figure 112012090208242-pat00017
의 회전 성분이다. 다르게 말하면,
Figure 112012090208242-pat00018
는 시간 t에서의 순간 속력 벡터가 가동 도구 (40) 의 외부 쪽으로 지향하는 Souter의 포인트들의 세트이다.
예를 들어, 도 10 에 예시된 바와 같이, 도구 (40) 는 포인트 P1에서 포인트 P2로 라인 세그먼트 (100) 를 따라 이동할 수도 있다. 결과적으로,
Figure 112012090208242-pat00019
인데 모든 t에 대해
Figure 112012090208242-pat00020
이기 때문이다. 그러면 모든 t에 대해
Figure 112012090208242-pat00021
이다. 그래서, t = 0에서,
Figure 112012090208242-pat00022
는 도 10 에서 두꺼운 선에 의해 도시된 수직 세그먼트 (102) 이다.
도 11 에서 역 L자-형상의 두꺼운 선들 (112) 에 의해 도시된 바와 같이, P2에서 P1 로의 역 궤적 (110) 은 다른
Figure 112012090208242-pat00023
를 유도한다.
이 방법은 "충돌 스위프"를
Figure 112012090208242-pat00024
에 의해 스위프되는 볼륨으로서 결정 (S20) 할 수도 있다:
Figure 112012090208242-pat00025
이 방법은 현재의 워크피스에 대한 비절삭 볼륨 스위프를 점검하는 것이 아니라, 현재의 워크피스에 대한 충돌 스위프를 점검한다.
도 12 는 내려가는 궤적에 따라 컴퓨팅된 충돌 스위프 (120) 를 예시한다. 명확히, 충돌 스위프 (120) 및 모델링된 볼륨 (46) 은 분리되므로, 궤적의 이 부분 동안 도구 (40) 의 비절삭 볼륨은 모델링된 볼륨 (46) 과 격돌하지 않음을 의미한다.
이제, 도 13 은 올라가는 궤적에 따른 충돌 스위프 (120) 를 예시한다.
Figure 112012090208242-pat00026
의 형상으로 인해, 충돌 스위프 (120) 는 다르고 워크피스 (46) 에 겹쳐진다. 이는, 궤적의 이 부분 동안 도구 (40) 의 비절삭 볼륨 (44) 이 모델링된 볼륨 (46) 과는 실제로 격돌함을 의미한다.
제 2 예에서, 방법은 절삭 도구의 보호 프론트를 결정하는 단계를 포함한다. 절삭 도구의 보호 프론트는, 절삭 도구가 궤적을 따라가는 경우 궤적 상의 절삭 도구의 주어진 포지션에서, 절삭 도구의 다른 포인트들이, 절삭 도구가 궤적을 따라가는 경우에 그러한 포지션에 있는 고형물 (이 고형물은 절삭 도구가 궤적을 따라가는 것을 시작하기 전에 그러한 포지션에 존재했었을 것임) 과 충돌하는 것을 방지하는 절삭 도구의 포인트들의 서브세트이다. 보호 프론트의 정식 공식들은 나중에 제공될 것이다.
충돌 스위프를 결정하는 단계 (S20) 는 이러한 경우에, 비절삭부에 의해 스위프된 볼륨과 보호 프론트에 의해 스위프된 볼륨을 결정하는 단계를 포함할 수도 있다. 그러면, 이 방법은 상기 2 개의 볼륨들 사이의 차이를 결정할 수도 있다. 테스트하는 단계 (S30) 는 상기 볼륨 차이가 모델링된 볼륨을 교차하는지를 평가하는 단계를 포함할 수도 있고, 만약 그렇다면 긍정적인 결과, 또는 그렇지 않으면 부정적인 결과를 낼 수도 있다. 이는 고속 및 강건한 (robust) 결정 단계 (S20) 를 허용한다.
이 예들은 편의를 위해 2D 로 예시되어 있다. 그러나 실제는 앞서 논의된 바와 같이 3 차원이다. 도 14-15 는 이 예들의 3D 예시를 제공한다. 도 14 는 비절삭 볼륨 (44) 을 원형 실린더 (사각형이 아님) 로서 나타낸다. 도 15 는 경사진 궤적을 따라 절반의 실린더 플랭크에 의해 스위프되는 볼륨인, 충돌 스위프 (120) 를 나타낸다.
이 방법의 구현은, 이 제 2 예에서뿐만 아니라 제 1 예에서, 멀티-덱셀 모델일 수도 있다. 다르게 말하면, 워크피스는 덱셀들의 세트 (이에 의해 모델링된 볼륨을 나타냄) 에 의해 표현될 수도 있다. 다르게 말하면, 모델링된 볼륨은 이 예에서 덱셀들의 세트로서 제공된다. 각각의 덱셀 (덱셀들의 세트의 각각의 덱셀) 은 적어도 하나의 세그먼트의 세트를 포함한다. 이러한 세그먼트들은 라인 및 워크피스 사이의 교차부를 나타낸다.
워크피스를 나타내기 위한 덱셀들의 세트들의 사용은 가벼운 (light) 표현 (적은 메모리 공간을 이용함) 을 허용한다. 이는 또한 쉽게 핸들링될 수도 있는 워크피스의 표현을 허용한다. 주목할 만하게도, 절삭은, 덱셀들의 세트의 데이터 구조로 인해, 워크피스가 덱셀들의 세트에 의해 나타내어지는 경우에, 특히 효율적으로 수행될 수도 있다. 사실상, 디자인 동작들은 고 응답성 (responsiveness) 및 고 강건성 (robustness) 으로 수행될 수도 있다. 주목할 만하게도, 덱셀들의 세트에 대한 동작들은 효율성에서의 이득을 위해, 라인 단위 기반으로, 병렬 처리를 통해 수행될 수도 있다. 그러므로, 시스템의 프로세서는 효율적으로 GPU 일 수도 있다.
용어 "덱셀 (dexel)" 은 "깊이 엘리먼트 (depth element)" 에 대한 단축키 (shortcut) 로 알려져 있다 (용어 "픽셀" 은 "픽셀 엘리먼트" 에 대한 단축키로 알려진 것과 같음). 덱셀의 개념은 다수의 연구 논문들에서 언급되어 있다. 이 방법의 관점에서, 덱셀은 적어도 하나의 세그먼트의 세트, 즉, 한 쌍의 3D 포인트들을 포함한다. 일 예에서, 모델링된 볼륨은, 적어도 2 개의 세그먼트들의 세트를 포함하는 (예컨대 덱셀들의 초기 세트 및/또는 덱셀들의 새로운 세트는 적어도 2 개의 세그먼트들을 포함함) 적어도 하나의 덱셀을 포함한다. 덱셀의 세그먼트들은, 여러개라면 오더링되거나 (이러한 경우에 덱셀은 리스트임), 또는 무오더링되지 않을 수도 있다. 덱셀의 세그먼트들은 라인 및 워크피스 사이의 교차부를 나타낸다. 다르게 말하면, 워크피스와 교차하는 가상 선들을 고려하면, 덱셀은 주어진 선으로부터 유래하고 교차부의 컴퓨테이션으로부터 생기는 세그먼트들의 세트이다.
덱셀들의 세트들이 컴퓨터 구현된 데이터로서 제공된다는 것에 주목하는 것은 중요하다. 따라서, 모델링된 볼륨에 관해 위에서 및 아래에서 제공되는 정의들은 데이터 구조 관점에서 의미를 가진다. 예를 들어, 세그먼트는 한 쌍의 3D 포지션들 (예컨대 서로 링크된 2 개의 3D 포지션들) 로서 제공될 수도 있다. 3D 포지션은 자체가 참조 3D 프레임에 연관된 3 개의 좌표들 (예컨대 부유 (floating) 포인트들) 의 리스트로서 제공될 수도 있다. 덱셀은 세그먼트들이 세트 구조에서 서로 링크됨을 의미하는 세그먼트들의 세트이다. 덱셀들의 세트 중의 덱셀들 또한 서로 링크될 수도 있다. 적어도 하나의 세그먼트의 세트를 스스로 포함하는 덱셀들의 세트에 의해 모델링된 볼륨을 표현하는 것은, 모델링된 볼륨의 고속 테스팅 단계 (S30) 뿐만 아니라 고속의 이면 (ulterior) 업데이팅을 허용한다.
충돌을 테스트하는 단계 (S30) 는, 개별 덱셀에 대해, 보호 프론트에 의해 스위프된 볼륨을 교차하는 개별 덱셀의 세그먼트들을 결정하는 단계, 개별 덱셀을 그에 따라 (즉 결정된 세그먼트들의 함수로, 즉, 결정된 덱셀들을 단축시키고/시키거나 버림으로써) 업데이트하는 단계, 및 업데이트됨에 따라 개별 덱셀의 세그먼트들이 비절삭부에 의해 스위프된 볼륨을 교차하는지를 평가하는 단계를 포함할 수도 있다. 그 다음, 이 방법은 평가가 긍정적이면 테스트하는 단계의 긍정적인 결과를 낼 수도 있거나, 또는 평가가 부정적이면 그것의 부정적인 결과를 낼 수도 있다.
이 방법은 보호 프론트 및 비절삭부를 정의할 수도 있으므로 (예컨대, 앞서 설명된 바와 같이, 보호 프론트는 임의로 정의될 수도 있고, 절삭 도구를 절삭부 및 비절삭부으로 분할할 수도 있음), 보호 프론트에 의해 스위프된 볼륨 및 비절삭부에 의해 스위프된 볼륨은 볼록형이다. 당업자는 볼록형 부분들을 획득하기 위해, 이러한 분할을 하는 방법을 이해할 것이다. 이러한 경우에, 보호 프론트에 의해 스위프된 볼륨을 교차하는 개별 덱셀의 세그먼트들을 결정하는 단계와 업데이트된 개별 덱셀의 세그먼트들이 비절삭부에 의해 스위프된 볼륨을 교차하는지를 평가하는 단계는 특히 고속으로 수행된다.
사실상, 개별 덱셀의 세그먼트들은 통상, 오더링될 수도 있다 (실제 순서는 덱셀을 정의하는 데이터에 존재할 수도 있거나, 또는 이러한 순서는 그것이 자연스럽게 존재하면 취출될 수도 있다). 비절삭부는, 예를 들어 비절삭부가 볼록형이고 기본적인 스텝이 직선형 병진운동 (translation) 이면, 스위프 볼록형 볼륨일 수도 있다. 덧붙여, 보호 프론트는 볼록형 볼륨 또한 스위프할 수도 있다. 예를 들어, 절삭부는 볼록형일 수도 있다. 궤적은 직선형 병진운동들로 구성되는 기본적인 스텝들로 분할될 수도 있다. 개별 덱셀을 업데이트하는 단계는, 보호 프론트에 의해 스위프된 볼륨을 교차하는 최저 순서의 세그먼트 (예컨대 개별 덱셀의 세그먼트들의 순서가 조사되는 경우에 보호 프론트에 의해 스위프된 볼륨과 교차하는 첫 번째 세그먼트) 를 단축시키는 단계, 보호 프론트에 의해 스위프된 볼륨을 교차하는 최고 순서의 세그먼트 (예컨대 개별 덱셀의 세그먼트들의 순서가 조사되는 경우에 보호 프론트에 의해 스위프된 볼륨을 교차하는 마지막 세그먼트) 를 단축시키는 단계, 및 최저 순서의 세그먼트와 최고 순서의 세그먼트 사이의 모든 세그먼트들을 제거하는 단계를 포함할 수도 있다.
이 방법의 이 제 2 예가 이제 도 16-21 을 참조하여 논의된다.
덱셀들을 이용한다는 맥락에서, 볼록형 충돌 스위프를 관리하거나 또는, 가능하지 않다면, 2 개의 볼록형 세트들의 감산에 의해 정의된 고형물을 관리하는 것이 처리 관점에서 더욱 효율적일 수도 있다. 사실상, 2 개의 볼록형 세트들의 세트 (S) 차이인 S = C1 - C2 와 세그먼트의 교차는 다음과 같이 수행될 수 있다.
이 방법은 세그먼트를 서포트하는 라인 L을 C1 및 C2와 먼저 교차시킬 수도 있으며, 이는 2 개의 어쩌면 빈 세그먼트들
Figure 112012090208242-pat00027
Figure 112012090208242-pat00028
을 제공한다.
Figure 112012090208242-pat00029
이 관찰될 수도 있다. 물론 라인 L 에 의해 서포트되는 세그먼트들은 L 의 파라메트릭 표현에서 간격 (interval) 으로서 표현될 수 있다. 그러면 L 에 의해 서포트되는 세그먼트와 S 의 교차부는 2 개의 간격들의 차이를 갖는 간격의 교차부가 되며, 2 개의 간격들의 차이를 갖는 간격의 교차부는 최악의 경우, 2 개의 간격들의 유니온이다.
이런 이유로, 이전에 제시했던 제 1 예는 이 방법을 특히 덱셀 모델의 관점에서 더욱 실용적이게 만들기 위해 재공식화될 수도 있다. 볼록형 비절삭 볼륨을 V 를 고려한다. Sprotect 를 Souter 에 없는 V 의 경계라고 부른다. 다르게 말하면, Sprotect 는 도구의 다른 절삭 또는 비절삭 볼륨들과 접촉하는 V 의 페이스들이다.
NC 기계가공 시뮬레이션과 같은 실용적인 상황들에서, 가장 일반적인 도구들의 형상은 Sprotect가 평탄한 페이스들을 포함하는 것을 허용한다. 그러나, 절삭 및 비절삭 볼륨들 사이의 내부적 분리는 물리적인 의미가 없고 그러므로 결과적인 거동에 대한 임의의 영향 없이 평탄한 것으로서 종종 선택될 수 있다는 것에 주목한다.
도 4-15 의 일 예의 경우에, Sprotect 는 디스크일 수도 있다. 도 16-18 에 예시된 바와 같이, Sprotect는 절삭 볼륨 및 비절삭 볼륨을 분리하는 실선이다.
이 방법은 충돌 스위프를 전체 볼록형 비절삭 볼륨 및 Sprotect 의 서브세트의 스위프 사이의 설정된 이론적 차이로서 정의할 수도 있다. 이 서브세트는 외부 법선이 스위프 방향을 지향하는 경우의 Sprotect 의 모든 포인트들을 포함한다. 일반적인, 비병진 궤적의 경우, Sprotect 의 일부 부분은 순간 스위프 속력 쪽을 지향하는 외부 법선을 가질 수도 있고 일부는 그렇지 않을 수도 있다. 이 경우 Sprotect 의 서브세트만이 스위프될 수도 있다. 병진 스위프들의 경우, 이는 2 개의 볼록형 세트들의 감산결과이고 멀티-덱셀 모델에서 쉽게 관리될 수 있다.
공식적으로, 이 방법은 다음을 정의할 수도 있다:
Figure 112012090208242-pat00030
그러면, 충돌 스위프의 이전의 정의에 따르면, 다음을 취할 수 있다:
Figure 112012090208242-pat00031
멀티-덱셀 그리드 표현을 이용한 기계가공 시뮬레이션의 관점에서, 이 방법은 그러므로 다음의 동작들에 의해 기본적인 궤적 동안 충돌을 쉽게 점검할 수 있다.
각각의 덱셀에 대해, 이 방법은 도 19에서 예시된 바와 같이, 비절삭 볼륨 (190) 의 스위프와의 교차부에 의해 주어진 간격들 Ai (즉 이 예에서 덱셀의 서포트 라인 상의 간격들로서 저장되는 덱셀의 세그먼트들) 를 컴퓨팅할 수도 있다. 모든 이들 간격들 Ai 이 현재의 워크피스와의 빈 교차부를 가진다면, 충돌이 발생하지 않았음을, 즉 테스트하는 단계 (S30) 는 부정적인 결과를 내릴 수도 있음을 확신할 수 있다.
그 밖에, 이 방법은 (궤적, 또는 기본적인 스텝이 0 에서 1 로 가는 매개변수 (parameterization) t 로 정의된다면) t= 0 에서 t=1 까지 protectFront에 의해 스위프된 볼륨을 컴퓨팅할 수도 있다. 이를 위해, 이 방법은, 외부 법선이 변위 벡터와의 포지티브 내적 (dot product) 을 가지는 Sprotect의 페이스들 (200) 을 수집할 수도 있다. 그 다음 이 방법은 도 20에 예시된 바와 같이 이들 페이스들 (200) 에 의해 스위프되는 볼륨을 컴퓨팅할 수도 있다. 이 방법은 최종적으로, 도 20에 예시된 바와 같은 이 스위프 볼륨 (202) 과 덱셀 사이의 교차부와 동일한 간격들 Bi를 컴퓨팅할 수도 있다. 이 방법은 불 방식의 (boolean) 1차원 감산 Ci = Ai - Bi를 컴퓨팅할 수도 있으며; 이들 결과적인 간격들은 도 21에 예시된 바와 같은 충돌 스위프 볼륨 (190) 와 덱셀 사이의 교차부를 나타낸다. 이들 Ci 간격들이 워크피스 레이어를 저장하는 덱셀 간격들과의 빈 교차부를 가지지 않으면, 그 덱셀에서는 충돌이 발생할 것이라고 결론 지을 수 있다. 또한 충돌 깊이를 추론할 수도 있다. 그 밖에, 도 21 에 예시된 바와 같이 그 덱셀에서 충돌이 발생하지 않는다.

Claims (9)

  1. 절삭부 및 비절삭부를 갖는 절삭 도구를 이용한 워크피스의 기계가공을 시뮬레이션하는 컴퓨터 구현 방법으로서,
    상기 절삭 도구의 궤적 및 상기 워크피스를 나타내는 모델링된 볼륨을 제공하는 단계 (S10) 로서, 상기 궤적은 함수 t→Traj(t) 에 의해 정의되고, 여기서, t 는 시간을 나타내고, 각각의 t 에 대해서, Traj(t) 는 회전 Rot(t) 및 병진 Trans(t) 에 의해 정의되는 아이소메트릭 변환이며, 3 차원 공간의 포인트 x 에 대해서 Traj(t)(x)=Rot(t)x+Trans(t) 인, 상기 모델링된 볼륨을 제공하는 단계;
    상기 절삭 도구의 충돌 스위프 (sweep) 를 결정하는 단계 (S20) 로서, 상기 충돌 스위프는 상기 절삭 도구가 상기 궤적을 따라가는 경우에 상기 절삭 도구의 비절삭 프론트에 의해 스위프된 볼륨을 나타내고, 상기 절삭 도구의 상기 비절삭 프론트는, 상기 절삭 도구가 상기 궤적을 따라가는 경우 상기 궤적 상의 상기 절삭 도구의 주어진 포지션에서, 상기 절삭 도구가 상기 궤적을 따라가는 경우에 그러한 포지션에 있는 고형물과 충돌할 수 있는 상기 절삭 도구의 포인트들의 서브세트인, 상기 충돌 스위프를 결정하는 단계;
    상기 충돌 스위프를 결정하는 단계 (S20) 에 따라 상기 워크피스와의 충돌을 테스트하는 단계 (S30) 를 포함하고,
    S outer 는 상기 비절삭부의 경계로, 상기 절삭 도구의 외부 경계이기도 하며, n(x) 는 포인트 x 의 외부 법선 벡터로,
    ·상기 방법은, 상기 절삭 도구의 보호 프론트를 결정하는 단계를 포함하고, 상기 충돌 스위프를 결정하는 단계는 상기 비절삭부에 의해 스위프된 볼륨 및 상기 보호 프론트에 의해 스위프된 볼륨을 결정하는 단계를 포함하고, 상기 보호 프론트는 상기 절삭 도구가 상기 궤적을 따라가는 경우 상기 궤적 상의 상기 절삭 도구의 주어진 포지션에서, 상기 절삭 도구의 다른 포인트들이 그러한 포지션에 있는 고형물과 충돌하는 것을 방지하는 상기 절삭 도구의 포인트들의 서브세트이고, 상기 보호 프론트 protectFront(t) 는,
    Figure 112019048810803-pat00053

    에 의해 정의되는 Sprotect 의 서브세트로, Sprotect Souter 가 아닌 상기 비절삭부의 상기 경계이고, 상기 충돌 스위프는
    Figure 112019048810803-pat00054
    와 같이, 상기 비절삭부에 의해 스위프된 볼륨과 상기 보호 프론트에 의해 스위프된 볼륨 사이의 차이로, 여기서, V 는 상기 비절삭부이며; 또는
    ·상기 충돌 스위프를 결정하는 단계는 상기 절삭 도구의 상기 비절삭 프론트에 의해 스위프된 볼륨을 결정하는 단계를 포함하고, 상기 비절삭 프론트 Front(t)
    Figure 112019048810803-pat00055
    에 의해 정의되는 Souter 의 서브세트이고, 상기 충돌 스위프는 상기 비절삭 프론트에 의해 스위프되는 볼륨이며, 상기 충돌 스위프는
    Figure 112019048810803-pat00056
    와 같은, 워크피스의 기계가공을 시뮬레이션하는 컴퓨터 구현 방법.
  2. 제 1 항에 있어서,
    상기 방법은 상기 절삭 도구의 보호 프론트를 결정하는 단계를 포함하고, 상기 충돌 스위프를 결정하는 단계는 상기 비절삭부에 의해 스위프된 볼륨 및 상기 보호 프론트에 의해 스위프된 볼륨을 결정하는 단계를 포함하고, 상기 워크피스는, 각각의 덱셀이 라인과 상기 워크피스 사이의 교차부를 나타내는 적어도 하나의 세그먼트의 세트를 포함하는 덱셀들의 세트에 의해 표현되고,
    상기 충돌을 테스트하는 단계는, 개별 덱셀에 대해,
    상기 보호 프론트에 의해 스위프된 볼륨을 교차하는 상기 개별 덱셀의 세그먼트들을 결정하는 단계,
    그에 따라 상기 개별 덱셀을 업데이트하는 단계, 및
    업데이트된 바와 같은 상기 개별 덱셀의 세그먼트들이 상기 비절삭부에 의해 스위프된 볼륨을 교차하는지를 평가하는 단계를 포함하는, 워크피스의 기계가공을 시뮬레이션하는 컴퓨터 구현 방법.
  3. 제 2 항에 있어서,
    상기 절삭부는 볼록형이고,
    상기 개별 덱셀의 세그먼트들은 오더링되고,
    상기 개별 덱셀을 업데이트하는 단계는,
    상기 보호 프론트에 의해 스위프된 볼륨을 교차하는 최저 순서의 세그먼트를 단축시키는 단계,
    상기 보호 프론트에 의해 스위프된 볼륨을 교차하는 최고 순서의 세그먼트를 단축시키는 단계, 및
    상기 최저 순서의 세그먼트와 상기 최고 순서의 세그먼트 사이의 모든 세그먼트들을 제거하는 단계를 포함하는, 워크피스의 기계가공을 시뮬레이션하는 컴퓨터 구현 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 기재된 워크피스의 기계가공을 시뮬레이션하는 컴퓨터 구현 방법을 수행하기 위한 명령들을 기록하고 있는 메모리;
    상기 메모리와 커플링된 프로세서; 및
    상기 프로세서와 커플링되고 상기 명령들의 실행에 적합한 적어도 하나의 그래픽 사용자 인터페이스를 포함하는, CAM (Computer Aided Design) 시스템.
  5. 제 4 항에 있어서,
    상기 프로세서는 GPU (Graphical Processing Unit) 인, CAM 시스템.
  6. 제 1 항 내지 제 3 항 중 어느 한 항에 기재된 워크피스의 기계가공을 시뮬레이션하는 컴퓨터 구현 방법을 수행하기 위한 명령들을 포함하는 컴퓨터 프로그램을 기록하고 있는, 컴퓨터 판독가능 저장 매체.
  7. 삭제
  8. 삭제
  9. 삭제
KR1020120123675A 2011-11-03 2012-11-02 워크피스의 기계가공의 시뮬레이션 KR102028203B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP11306423.2 2011-11-03
EP11306423.2A EP2590143B1 (en) 2011-11-03 2011-11-03 Simulation of the machining of a workpiece

Publications (2)

Publication Number Publication Date
KR20130049164A KR20130049164A (ko) 2013-05-13
KR102028203B1 true KR102028203B1 (ko) 2019-10-02

Family

ID=45218589

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120123675A KR102028203B1 (ko) 2011-11-03 2012-11-02 워크피스의 기계가공의 시뮬레이션

Country Status (6)

Country Link
US (2) US9524583B2 (ko)
EP (1) EP2590143B1 (ko)
JP (1) JP6282798B2 (ko)
KR (1) KR102028203B1 (ko)
CN (1) CN103093036B (ko)
CA (1) CA2794149C (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102507119B1 (ko) 2022-07-13 2023-03-06 이길남 기계 제어 프로그램 트래킹 시스템

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2590142B1 (en) 2011-11-03 2018-03-14 Dassault Systèmes Designing a modeled volume represented by dexels
EP2590143B1 (en) 2011-11-03 2018-10-24 Dassault Systèmes Simulation of the machining of a workpiece
EP2590144B1 (en) 2011-11-03 2018-10-24 Dassault Systèmes Designing a modeled volume represented by dexels
US10055512B2 (en) * 2012-07-16 2018-08-21 Omc2 Llc System and method for CNC machines and software
US9292626B2 (en) * 2012-12-10 2016-03-22 Palo Alto Research Center Incorporated Computer numerical control (CNC) machining tool and method for controlling a CNC machining tool
US9569564B2 (en) * 2013-02-11 2017-02-14 Ford Global Technologies, Llc Automated cad process for creating mold packages
TWI535522B (zh) 2013-12-25 2016-06-01 財團法人工業技術研究院 提供回饋力的方法與裝置以及加工機系統
EP2919081B1 (de) * 2014-03-14 2016-12-28 Siemens Aktiengesellschaft Bearbeitungsmaschine mit Berücksichtigung von Lagefehlern bei Kollisionsprüfung
KR20160024552A (ko) 2014-08-26 2016-03-07 삼성전자주식회사 입자로 구성된 변형체를 모델링하는 방법 및 장치
US10222783B2 (en) 2014-10-29 2019-03-05 Mitsubishi Electric Corporation Numerical control device, NC machining device, and NC machining method
EP3040797B1 (en) 2014-12-31 2020-10-28 Dassault Systèmes Simulating the machining of a workpiece
EP3179389B1 (en) * 2015-12-07 2019-05-22 Dassault Systèmes Detecting cut-outs
US10564626B2 (en) 2016-01-29 2020-02-18 Sandvik Intellectual Property Ab Planning of computer numerical control (CNC) machining operations with the aid of a digital computer
EP3203394B1 (en) * 2016-02-02 2021-10-20 Dassault Systèmes B-rep design with face trajectories
JP6289761B1 (ja) * 2016-09-08 2018-03-07 三菱電機株式会社 加工シミュレーション表示装置および加工シミュレーション表示方法
JP7146402B2 (ja) * 2018-01-18 2022-10-04 キヤノン株式会社 情報処理装置、および情報処理方法
CN108595829A (zh) * 2018-04-20 2018-09-28 武汉工程大学 基于弓形柱体增长模型的五轴增材仿真方法
TWI673620B (zh) 2018-11-28 2019-10-01 財團法人工業技術研究院 利用動態位置誤差模擬切削方法
TWI760675B (zh) 2020-01-06 2022-04-11 財團法人工業技術研究院 加工路徑缺陷檢測方法
TWI742981B (zh) 2021-01-06 2021-10-11 財團法人工業技術研究院 加工路徑過切分析方法
CN113391598B (zh) * 2021-06-28 2022-09-20 哈尔滨工业大学 一种虚拟装配仿真方法及系统
CN115056215A (zh) * 2022-05-20 2022-09-16 梅卡曼德(北京)机器人科技有限公司 碰撞检测方法、控制方法、抓取系统及计算机存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000235407A (ja) * 1999-02-15 2000-08-29 Japan Science & Technology Corp 表示方法及び表示プログラムを記録したコンピュータ読み取り可能な記録媒体及び表示装置
WO2010082378A1 (ja) * 2009-01-15 2010-07-22 三菱電機株式会社 衝突判定装置および衝突判定プログラム

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4833617A (en) * 1987-08-14 1989-05-23 General Electric Company Solid modeling based adaptive feedrate control for NC machining
US5710709A (en) 1993-08-19 1998-01-20 Iowa State University Research Foundation, Inc. NC milling simulation and dimensional verification via dexel representation
JPH09150347A (ja) * 1995-11-27 1997-06-10 Toyota Motor Corp 加工動作シミュレーション方法
US6311100B1 (en) * 1998-09-14 2001-10-30 Mass. Institute Of Technology Tool path generator for computer aided manufacturing
DE19846426A1 (de) * 1998-10-08 2000-04-13 Open Mind Software Technologie Verfahren zum Steuern der Arbeitsbewegung eines Werkzeugs zur materialabtragenden Bearbeitung eines Materialblocks
US20020133264A1 (en) * 2001-01-26 2002-09-19 New Jersey Institute Of Technology Virtual reality system for creation of design models and generation of numerically controlled machining trajectories
DE10144932B4 (de) * 2001-09-12 2014-07-31 Siemens Aktiengesellschaft Visualisierung von Werkstücken bei der Simulation von Fräsprozessen
WO2004110309A2 (en) * 2003-06-11 2004-12-23 Case Western Reserve University Computer-aided-design of skeletal implants
DE10330831A1 (de) * 2003-07-08 2005-02-10 Mtu Aero Engines Gmbh Fräsverfahren zur Fertigung von Bauteilen
JP2005056307A (ja) * 2003-08-07 2005-03-03 Mazda Motor Corp 工具干渉検出方法及び工具干渉検出装置
KR100517880B1 (ko) * 2003-11-20 2005-09-28 학교법인 포항공과대학교 Cnc 가공에서 생산시간 단축과 가공 정밀도 향상을위한 이송속도 스케줄링 방법
US7747418B2 (en) 2005-12-09 2010-06-29 Leu Ming C Computer aided dental bar design
DE102007059568A1 (de) * 2007-12-11 2009-06-18 Mtu Aero Engines Gmbh Tauchfräsverfahren
US8538574B2 (en) * 2009-04-02 2013-09-17 Dmg Electronics Gmbh Method and apparatus for generating control data for controlling a tool on a machine tool
US8265909B2 (en) * 2009-05-19 2012-09-11 Mitsubishi Electric Research Laboratories, Inc. Method for reconstructing a distance field of a swept volume at a sample point
US8010328B2 (en) * 2009-05-19 2011-08-30 Mitsubishi Electric Research Laboratories, Inc. Method for simulating numerically controlled milling using adaptively sampled distance fields
WO2011042764A1 (en) 2009-10-06 2011-04-14 Pécsi Tudományegyetem Method, computer system and computer program product for machining simulation and for visually presenting such simulation
KR101327571B1 (ko) * 2009-11-10 2013-11-12 미츠비시 쥬고교 가부시키가이샤 워크 계측 장치, 충돌 방지 장치 및 공작기계
CN102822754B (zh) * 2010-04-07 2015-11-25 三菱电机株式会社 加工模拟方法及其装置
US8838419B2 (en) * 2011-06-24 2014-09-16 Mitsubishi Electric Research Laboratories, Inc. System and method for simulating machining objects
EP2590144B1 (en) 2011-11-03 2018-10-24 Dassault Systèmes Designing a modeled volume represented by dexels
EP2590143B1 (en) 2011-11-03 2018-10-24 Dassault Systèmes Simulation of the machining of a workpiece
EP2590142B1 (en) 2011-11-03 2018-03-14 Dassault Systèmes Designing a modeled volume represented by dexels
CN102490081B (zh) 2011-11-14 2013-07-24 华中科技大学 基于球头铣削加工的工件三维表面形貌的仿真方法
EP3040797B1 (en) 2014-12-31 2020-10-28 Dassault Systèmes Simulating the machining of a workpiece

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000235407A (ja) * 1999-02-15 2000-08-29 Japan Science & Technology Corp 表示方法及び表示プログラムを記録したコンピュータ読み取り可能な記録媒体及び表示装置
WO2010082378A1 (ja) * 2009-01-15 2010-07-22 三菱電機株式会社 衝突判定装置および衝突判定プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102507119B1 (ko) 2022-07-13 2023-03-06 이길남 기계 제어 프로그램 트래킹 시스템

Also Published As

Publication number Publication date
JP2013097813A (ja) 2013-05-20
EP2590143B1 (en) 2018-10-24
CA2794149C (en) 2021-07-13
EP2590143A1 (en) 2013-05-08
USRE48940E1 (en) 2022-02-22
CA2794149A1 (en) 2013-05-03
JP6282798B2 (ja) 2018-02-21
US9524583B2 (en) 2016-12-20
CN103093036B (zh) 2019-06-21
KR20130049164A (ko) 2013-05-13
US20130116990A1 (en) 2013-05-09
CN103093036A (zh) 2013-05-08

Similar Documents

Publication Publication Date Title
KR102028203B1 (ko) 워크피스의 기계가공의 시뮬레이션
JP7327943B2 (ja) フライス作業によって製造可能な部品の設計
JP6787661B2 (ja) 工作物の機械加工のシミュレート
JP6356378B2 (ja) 幾何学的三次元モデルオブジェクトを設計する方法
CA2794074C (en) Designing a modeled volume represented by dexels
US9117300B2 (en) Designing a modeled volume represented by dexels
EP2521058A1 (en) Determining a geometrical CAD operation
EP2521055A1 (en) Selection of three-dimensional parametric shapes
EP2921978A1 (en) Designing industrial products by using geometries connected by geometrical constraints
US9483585B2 (en) Designing a staggered pattern of objects in a computer-aided design system
KR102055952B1 (ko) 오브젝트들의 원형 스태거드 패턴의 설계

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant