Download presentation
Presentation is loading. Please wait.
1
오토메이션 API를 사용한 설계 이력 기반 파라메트릭 CAD 모델 번역기의 통합
Hello, everyone. My name is Byungchul Kim. I am from KAIST, Korea. In this time, I will introduce our research topic, history-based parametric translation a.k.a. macro-parametric approach, and its integration. 발표자: 김병철 지도교수: 한순흥 기계공학과 iCAD 연구실
2
차례 연구 배경 관련 연구 매크로 파라메트릭 방법 매크로 파라메트릭 번역기의 새 구조 제안 구현 및 실험 결론
This slide consists of as following. Firstly, the research background will be given. Secondly, related works will be shown. Thirdly, Macro-parametric approach and its translation architecture will be introduced. Then, new architecture of the translation will be proposed. And I will show you its implementation and experiment. Finally, I will summarize our research.
3
연구 배경 CAD 모델: 특징 형상 및 파라메트릭 기반 모델 대표적 데이터 교환 포맷 IGES, STEP AP203
B-rep 모델만 교환 특징 형상 및 파라메트릭 정보 손실 교환 후 모델을 수정하기 어렵다! 특징 형상 및 파라메트릭 정보를 전달하는 것이 매우 중요함. Currently, commercial CAD systems support the feature and parametric-based design. Therefore, CAD models are the feature and parametric-based models. This makes it possible to edit the CAD models easily. However, representative data exchange format such as IGES and STEP AP203 can transfer B-rep model only. After exchange, the feature and parametric information is missed. Without these information, the transferred models cannot be parametrically edited after transfer. Therefore, it is very important to transfer the feature and parametric information.
4
예제: 현재 Intelligent Model Dumb Model Current STEP File
W T=4.1*W Current STEP File This figure shows the example of the current STEP format. The left model contains the feature and parametric information. But after transfer, the feature and parametric information disappears. Only B-rep is transferred. So this model cannot be edited easily because of lose of the feature and parametric information. * From slide file, PDES, Inc
5
예제: 목표 Intelligent Model Intelligent Model Feature and Parametric
W T=4.1*W T W T=4.1*W Feature and Parametric Information But what we want is to transfer the feature and parametric information as shown in this figure. * From slide file, PDES, Inc
6
관련 연구 Hoffmann (1993), Erep (Editable Representation)
Rappoport (2003), UPR (Universal Product Representation) Proficiency Ltd. ISO TC184/SC4/WG12/Parametrics Group Part 55: Procedural and hybrid representation Part 108: Parameterization and constraints for explicit geometric product models Part 109: Kinematic and geometric constraints for assembly models Part 111: Construction history features Part 112: Standard modeling commands for the procedural exchange of 2D CAD models AP203ed2 CHAPS project KAIST, 매크로 파라메트릭 방법 There has been researches on exchange of the feature and parametric model. Hoffmann proposed Erep as a neutral format. This research is known as the first trial to exchange the feature and parametric model. Rappoport proposed UPR. In STEP community, Parametrics Group published five standards for the exchange of the feature and parametric models. And AP203ed2 is ready to support the feature and parametric model. CHAPS project by PDES tried to exchange the feature and parametric models by using these new standards. And we also proposed the Macro-parametric approach.
7
ISO Standard modeling commands for the procedural exchange of 2D CAD models 절차적 2차원 모델 교환을 위한 2차원 모델링 명령어 표현. 선, 원호, 필렛, 모따기와 같은 기하 요소 생성을 위한 명령어 표현. 회전 이동, 직선 이동과 같은 변환 명령어 표현.
8
ISO 10303-112 Model Creation Data Structure Model Creation
center point radius point first point second point third point center radius Existing approach P112
9
ISO 5 5
10
매크로 파라메트릭 방법 매크로 파일의 정보 사용자 명령어 이력 절차적 모델 CAD 모델 생성 정보
특징 형상 및 파라메트릭 모델 매크로 파라메트릭 방법 매크로 파일을 교환에 이용 DBMS의 트렌젝션 로그 파일을 이용한 데이터 복구와 유사 The macro file used in CAD systems contains history of user commands, a procedural model, information to generate the CAD model, and the parametric and feature model. The basic idea of the macro-parametric approach is to exchange the macro file. That is, if we can translate the macro file from the sending system to the macro file of the receiving system, We can obtain the transferred model by playing the translated macro file. We brought the idea from the crash recovery in a DBMS. DBMS records its works in a log file. When database is crashed, the DBMS uses the log file to recover the database.
11
매크로 파라메트릭 방법의 데이터 교환 모델 Commercial CAD systems Macro-Parametric
Modeling Commands Set Commands Mapping Neutral Modeling Commands Set This is the data exchange model of the macro-parametric approach. The modeling commands represent the modeling commands of commercial CAD systems. The macro file consists of the modeling commands. We defined the neutral modeling commands from the these modeling commands. It is used as a neutral format. We also defined the XML macro file which consists of the neutral modeling commands. When translating, firstly, the commands mapping is performed. Then the contents of the macro file are translated. Macro File Data Translator XML Macro File
12
중립 모델링 명령어 집합 common set Pro/E CATIA UG IDEAS SolidWorks
We defined the neutral modeling commands. To define the commands, we surveyed the modeling commands of the commercial CAD systems, that is, Pro/E, CATIA, UG, IDEAS, and SolidWorks. IDEAS SolidWorks
13
매크로 파일을 이용한 교환 XML Macro File Parameters Change Macro File α
This is the translation process of the macro-parametric approach. Firstly, the macro file from the sending CAD system is translated to the XML macro file by the translator. After that, the XML macro file is translated to the macro file of the receiving CAD system. Then, by playing the macro file, the model is generated in the receiving CAD system. In this test, we used the Pro/E and the CATIA v5. Translator α Translator β Preprocessor Postprocessor XML Macro File
14
번역기의 현재 구조 Translator α XML Macro Parser CAD System α Macro File α
Geometric Kernel Internal Modules CAD System α Macro File α XML Macro File Translator β XML Macro Parser Geometric Kernel Internal Modules This is the initial architecture of the translators. Translator α is in charge of translating the macro file α to the XML macro file or translating the XML macro file to the macro file α. Translator β is same. CAD System β Macro File β
15
현재 번역기의 문제점 번역기가 거대해 짐 매크로 파일로부터 내부 B-rep 모델 생성 매크로 파일: 절차적 모델
XML 매크로 파서 필요 XML 매크로 파일: XML 문법 XML 매크로 파일의 유효성 검사 기하 요소 선택 메커니즘 처리 서로 다른 선택 메커니즘 SolidWorks: 선택된 요소 위의 한 점의 좌표 이용 CATIA: 자체적인 명명 규칙 이용 중립 모델링 명령어의 변경 관리 번역기가 거대해 짐 However, in this architecture, translators should play the following roles. Firstly, because the macro file is a procedural model, the translator should generate the B-rep model from the macro file for the internal use. For this, the geometric modeling kernel is needed. Secondly, because the XML macro file uses the XML syntax, for reading, writing, and validating the XML macro file, the XML macro parser is needed. Thirdly, Because CAD systems use different selection mechanism, the translator should treat this problem. Finally, as the neutral modeling commands changes, the translator should be changed to implement the new commands. This fact makes implementation of the translators difficult, and makes the translator heavy.
16
새로운 구조 제안 TransCAD Translator α CAD System α Macro XML Internal File α
Modules XML Macro Parser XML Macro File Geometric Kernel Translator β CAD System β Macro File β To solve such difficulties, we changed the architecture. In this architecture, the TransCAD was inserted between the translator and the XML macro file. And the common modules moved into the TransCAD. The TransCAD is a geometric modeler. It provides the translators with the services about the translation and the geometric calculation. Internal Modules Selection Mechanism
17
TransCAD와 번역기 TransCAD 번역을 위한 통합 플랫폼 XML 매크로 파일의 입출력 XML 매크로 파서
기하 및 위상 정보 계산 XML 매크로 파일의 가시화 및 확인 다양한 선택 메커니즘 구현 중립 모델링 명령어를 번역기로부터 분리 변역기 TransCAD의 정보와 CAD 시스템의 매크로 파일을 매핑 In this architecture, the TransCAD plays the following roles. The TransCAD acts as an integration platform for the translation. The TransCAD reads and writes the XML macro file. The TransCAD contains the XML macro parser. The TransCAD generates the explicit model from the macro file. The TransCAD provides the geometric and topological computation. The TransCAD enables visual verification and modification of the XML macro file. The TransCAD implements the various selection mechanism. The TransCAD decouples the neutral modeling commands from the translators. Because the TransCAD is in charge of many roles, the translators need to map the information from the TransCAD to the macro file of the CAD systems.
18
TransCAD와 번역기 간의 통신 Microsoft의 Automation 기술 사용
COM (Component Object Model) 기반 기술 CORBA, XML Web Services TransCAD의 기능을 외부로 노출 프로그래밍 언어 독립적 스크립트 및 인터프리터 언어에서 쉽게 사용 In this architecture, the interaction method between the TransCAD and the translators is needed. For this, we used the Automation technology from Microsoft company. The Automation is the COM based technology like CORBA and, XML Web Services. The purpose of the Automation here is to expose the functions of the TransCAD to outside. Because the Automation is independent of the programming language, the translators can be programmed using any programming languages. CATIA V5 and SolidWorks provide the Automation APIs. But it is restrictive, and does not satisfy the purpose of the macro-parametric translation. So we did not use a commercial CAD system.
19
TransCAD의 내부 구조 TransCAD Automation APIs User Interfaces
XML Macro Parser Translator α Commands XML Macro File Automation Client Macro Parser Command Mapping Modules Macro File of CAD sys α Feature Manipulation Algorithms The TransCAD and the translators consist of many modules. In the TransCAD, there are the geometric modeling kernel, the geometric constraint solver and the XML macro parser. The TransCAD also provides the user interfaces. The Automation API has been implemented in the TransCAD. On the other hand, the translator as a client of the TransCAD uses the Automation API. The translator maps the commands between the commercial CAD system and the Automation API. Feature Data Geometric Constraint Solver Geometric Modeling Kernel
20
번역 과정: pre-processing Translator TransCAD Command Mapping to the APIs
Request to export Translator TransCAD Automation API Macro File Command Mapping to the APIs Internal Model Generation of the XML Macro File Export to XML Macro File CAD System α Macro Parser of system α For translating the model of the CAD system α to the XML macro file, the pre-processing is performed according to the procedure as shown in this slide. Firstly, the translator reads the macro file from the sending CAD system. Secondly, for each command in the macro file, the translator maps the command to the Automation API call. In this stage, the geometric model is dynamically generated in the TransCAD. Thirdly, after all the commands are mapped, the translator requests the TransCAD to export the XML macro file. Then, the TransCAD exports the XML macro file.
21
번역 과정: post-processing
Request to import Translator TransCAD Automation API Macro File Command Mapping to the Macro β Model Information Getting Internal Model Generation of the XML Macro File Import to XML Macro File CAD System β For translating the XML macro file to the model of the CAD system β, the post-processing is performed according to the procedure as shown in this slide. Firstly, the translator requests the TransCAD to import the XML macro file. Then, the TransCAD generates the internal mode from the XML macro file. Secondly, the translator brings the model information from the TransCAD by calling the Automation API. Thirdly, the translator maps the information to the command of the CAD system β. Consequently, the macro file of the CAD system β is generated. Playing this macro file makes the same model in the CAD system β.
22
구현 및 실험 Target CAD systems Autodesk Inventor and Dassult CATIA V5
Operating system Microsoft Windows XP SP2 Programming language C++ Geometric modeling kernel OpenCASCADE 5.2 Geometric constraint solver 2D DCM 46.0 XML parser MSXML 4.0 GUI implementation MFC (Microsoft Foundation Class) Automation API implementation ATL (Active Template Library) We implemented this system. This table is the implementation environment. We tested the model exchange between Autodest Inventor and Dassult CATIA V5. We used Windows XP as a OS, C++ as a programming language. And we used OpenCASCADE and 2D DCM. MSXML was used as a XML parser. To implement GUI and Automation, we used MFC and ATL.
23
구현 결과 Translator Inventor Inventor XML Macro File Translator CATIA V5
This is the implementation result. Currently, we tested the simple L block shaped model. This is the Inventor. This is the CATIA. The Inventor translator generated the same model in the TransCAD. And the model was saved to the XML macro file. Then, the XML macro file was generated again in the TransCAD. The CATIA translator made the CATIA macro file from the model of the TransCAD. This is the translation result in the CATIA. Here, you can see that the feature information is preserved. XML Macro File Translator CATIA V5 TransCAD CATIA V5
24
결론 매크로 파라메트릭 방법의 개선 각 번역기 개발에 필요한 노력 감소 개발 시간 단축 TransCAD를 중심으로 번역기 통합
This is conclusion. In this research, we enhanced the macro-parametric implementation. And we reduced the effort to implement each translator. Furthermore, we integrated the translators centered around the TransCAD.
25
Thank you!
Similar presentations