KR101367398B1 - Method for mbd modeling based on computer engineering - Google Patents

Method for mbd modeling based on computer engineering Download PDF

Info

Publication number
KR101367398B1
KR101367398B1 KR1020130070327A KR20130070327A KR101367398B1 KR 101367398 B1 KR101367398 B1 KR 101367398B1 KR 1020130070327 A KR1020130070327 A KR 1020130070327A KR 20130070327 A KR20130070327 A KR 20130070327A KR 101367398 B1 KR101367398 B1 KR 101367398B1
Authority
KR
South Korea
Prior art keywords
parameter
data
header
modeling
value
Prior art date
Application number
KR1020130070327A
Other languages
Korean (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 펑션베이(주)
Priority to KR1020130070327A priority Critical patent/KR101367398B1/en
Application granted granted Critical
Publication of KR101367398B1 publication Critical patent/KR101367398B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/211Schema design and management
    • G06F16/212Schema design and management with details for data modelling support

Abstract

A modeling method based on computer engineering according to the present invention comprises the steps of: allowing a processing module to extract a header value and a parameter value from at least one data table containing a header, at least one parameter, and a header value and a parameter value corresponding to the header and the parameter, respectively; and providing the extracted header value and the parameter value to a modeling module. The header value and the parameter value are used to perform modeling by the modeling module.

Description

전산 기반 동역학 모델링 방법{Method for MBD Modeling based on Computer Engineering}Method for MBD Modeling based on Computer Engineering

본 발명은 전산 기반 모델링 방법에 관한 것으로, 특히 스프레드 시트(spread sheet)를 활용하여 사용자가 CAE 소프트웨어, 프로그래밍 언어 등에 대한 전문적인 지식 없이도 손쉽게 다물체 동역학 모델링을 구현하고, 모델링에 필요한 데이터의 관리를 용이하게 하는 방법에 관한 것이다.
The present invention relates to a computer-based modeling method, and in particular, by using a spreadsheet (sheet), the user can easily implement multi-body dynamic modeling without the expert knowledge of CAE software, programming language, etc. It is about a method to facilitate.

다물체 동역학(multi-body dynamics; MBD) 모델링은, 일반적으로 복수개의 물체가 상호 유기적인 관계를 유지하면서 운동하는 경우, 계(system)를 구성하는 구성 물체들의 상대적인 움직임과 작용력을 소프트웨어를 이용하여 해석 또는 시뮬레이션 하는 것을 의미한다.Multi-body dynamics (MBD) modeling generally uses software to measure the relative motion and action of the constituent objects that make up a system when a plurality of objects move while maintaining an organic relationship. It means to analyze or simulate.

제품, 공정, 및 제조 도구 등에 대한 시뮬레이션, 검증, 및 최적화 등을 수행하기 위한 MBD 모델링에는 CAE(computer-aided engineering), 즉 컴퓨터(소프트웨어)를 이용한 시뮬레이션 기법이 활용된다. 대표적인 CAE 소프트웨어로는 RecurDyn™, NX, ABAQUS, ADAMS, 및 Simpack 등이 있다. 사용자가 MBD 모델링을 수행하기 위해서는 이와 같은 CAE 소프트웨어의 사용법의 습득이 요구된다.
MBD modeling for simulation, verification, and optimization of products, processes, and manufacturing tools uses computer-aided engineering (CAE), or computer-based simulation techniques. Typical CAE softwares include RecurDyn ™, NX, ABAQUS, ADAMS, and Simpack. In order to perform MBD modeling, users need to learn how to use such CAE software.

GUI(graphic user interface; 그래픽 사용자 인터페이스)의 사용이 일반화되면서, 모델링 또는 프로그래밍을 위해서 사용자가 프로그래밍 언어를 익혀야만 하는 불편함은 해소되었다. 그러나 해석 대상이 되는 시스템이 복잡해지고, 해석 조건이 다양해지면서, 기존 MBD 툴(tool)의 모델링 환경에서는 디자인 프로세스를 운영하기 위해서 엔지니어들에게 많은 시간이 요구된다는 단점이 존재한다. As the use of graphical user interfaces (GUIs) has become commonplace, the inconvenience of having to learn a programming language for modeling or programming has been eliminated. However, as the system to be analyzed becomes more complicated and the analysis conditions vary, the existing MBD tool modeling environment requires a lot of time for engineers to operate the design process.

도 1은 종래의 CAE 소프트웨어를 이용한 MBD 모델링의 일 예시를 나타낸다. 엔지니어는 화면(1)에 나타난 형태의 모델링을 구현하기 위해서 이 소프트웨어가 제공하는 기능(2)을 이해하여야 하고, 데이터베이스(3)에 모델링에 필요한 값들을 일일이 입력하여야 한다. 또한, 모델링과 관련된 메시지(4)들을 이해할 수 있어야 한다.1 shows an example of MBD modeling using conventional CAE software. The engineer must understand the function (2) provided by this software in order to implement the modeling in the form shown on the screen (1), and input values necessary for modeling in the database (3). In addition, it should be possible to understand the messages (4) related to modeling.

GUI 환경에서는 엔지니어가 일일이 마우스로 필요한 기능(2)을 선택하여 데이터베이스(3)에 추가될 값들을 적절하게 입력하여야 한다. 시스템이 복잡해질수록 엔지니어가 입력해야 할 데이터의 양은 기하급수적으로 증가하게 된다. 단순 반복작업을 피하기 위하여 소프트웨어가 제공하는 매크로(macro)를 이용할 수 있지만, 일반적인 매크로는 VB(visual basic)와 같은 프로그래밍 언어에 대한 지식을 요구한다. 결과적으로 어떤 모델을 시뮬레이팅(simulating)하기 위하여 CAE 소프트웨어의 사용법을 숙지하고 있는 엔지니어에게 매크로 작성을 위한 프로그래밍 언어 등을 추가적으로 익힐 것이 요구되는 불편함이 있다.In the GUI environment, the engineer must select the required function (2) with the mouse and input appropriate values to be added to the database (3). As systems get more complex, the amount of data that engineers need to enter increases exponentially. You can use software-provided macros to avoid simple iterations, but common macros require knowledge of programming languages such as visual basic (VB). As a result, it is inconvenient for engineers who are familiar with how to use CAE software to simulate a model need to learn a programming language for writing macros.

또한 엔지니어는 모델링 작업을 완료한 후에, 특정 변수나 데이터 일부를 변경하면서 모델의 안정성이나 특징 등을 테스트 할 수 있다. 종래의 CAE 소프트웨어가 제공하는 GUI 환경에서는 데이터베이스(3)에 포함된 수많은 파라미터(parameter) 값 중에서 수정하고자 하는 값에 기능(2) 메뉴를 이용하여 접근한 뒤, 수정하고자 하는 값을 입력하고 모델링을 다시 수행 하여야 했다. Engineers can also test the stability and characteristics of the model by changing certain variables or data after completing the modeling work. In the GUI environment provided by CAE software in the related art, the value to be modified is accessed from the numerous parameter values included in the database (3) using the function (2) menu, and then the value to be modified is entered and modeled. I had to do it again.

본 발명의 일 목적은, Microsoft® Excel과 같은 스프레드 시트(spread sheet)를 이용하여, 이와 같은 CAE 소프트웨어에 대한 전문적인 지식이 없이도 MBD 모델링을 구현하는 방법을 제공하는 것이다.One object of the present invention is to provide a method for implementing MBD modeling using a spreadsheet, such as Microsoft® Excel, without the expert knowledge of such CAE software.

본 발명의 다른 목적은, 매크로 또는 프로그래밍 언어를 이용하지 않고 다수의 반복 작업이 요구되는 데이터 처리를 수행하는 방법을 제공하는 것이다.Another object of the present invention is to provide a method for performing data processing requiring a plurality of repetitive tasks without using a macro or a programming language.

본 발명의 다른 목적은, 텍스트 기반 작업을 통해 MBD 모델 데이터를 수정, 변경함으로써 GUI를 이용한 모델링 기법에 비하여 그 모델링 작업의 효율을 향상시키는 것이다.Another object of the present invention is to improve the efficiency of the modeling work as compared to the modeling technique using the GUI by modifying and changing the MBD model data through text-based work.

본 발명의 다른 목적은, 사용자에게 자신의 고유한 MBD 모델링 환경을 제공하는 것이다.
Another object of the present invention is to provide a user with his own MBD modeling environment.

상술한 과제를 해결하기 위한 전산 기반 모델링 방법은, 처리 모듈이 헤더, 적어도 하나의 파라미터, 및 상기 헤더와 상기 파라미터에 각각 대응하는 헤더 값과 파라미터 값을 포함하는 적어도 하나의 데이터 테이블로부터 상기 헤더 값 및 상기 파라미터 값을 추출하는 단계; 및 상기 추출된 헤더 값 및 파라미터 값을 모델링 모듈로 제공하는 단계를 포함하고, 상기 헤더 값 및 상기 파라미터 값은 상기 모델링 모듈이 모델링을 수행하기 위해 이용되는 것을 특징으로 한다.Computational based modeling method for solving the above problems, the processing module is a header value from at least one data table including a header, at least one parameter, and a header value and a parameter value respectively corresponding to the header and the parameter; And extracting the parameter value; And providing the extracted header value and parameter value to a modeling module, wherein the header value and the parameter value are used by the modeling module to perform modeling.

또한 상기 처리 모듈은 상기 모델링 모듈의 파라미터 DB를 포함하고, 상기 제공하는 단계는, 상기 처리 모듈이 상기 추출된 헤더 값 및 파라미터 값을 상기 파라미터 DB에 기초하여 미리 정해진 형식에 따라 상기 모델링 모듈로 제공할 수 있다.The processing module may include a parameter DB of the modeling module, and the providing may include: providing, by the processing module, the extracted header value and the parameter value to the modeling module according to a predetermined format based on the parameter DB. can do.

또한 상기 미리 정의된 형식은, 상기 파라미터 DB에 저장된 논리 순서에 따르며, 이 논리 순서는 상기 모델링 모듈이 입력된 데이터를 처리하는 순서에 대응할 수 있다.The predefined format may be based on a logical order stored in the parameter DB, and the logical order may correspond to an order in which the modeling module processes the input data.

또한, 상기 적어도 하나의 파라미터는, 제1 파라미터와 제2 파라미터를 포함하고, 상기 데이터 테이블을 구성하는 상기 제1 파라미터와 상기 제2 파라미터의 열(column)은 교환 가능한 것을 특징으로 할 수 있고, 또는 필수 파라미터와 옵션 파라미터를 포함하고, 상기 처리모듈은 상기 필수 파라미터에 대응하는 파라미터 값이 존재하지 않는 경우, 에러 메시지를 발생시킬 수 있다.The at least one parameter may include a first parameter and a second parameter, and a column of the first parameter and the second parameter constituting the data table may be interchangeable. Or include a required parameter and an optional parameter, and the processing module may generate an error message when there is no parameter value corresponding to the required parameter.

또한 상기 추출하는 단계는, 상기 적어도 하나의 데이터 테이블과 분리되어 있으며 헤더를 포함하지 않는 별도의 테이블에 포함된 파라미터 값은 추출하지 않을 수 있다.In the extracting step, a parameter value included in a separate table that is separated from the at least one data table and does not include a header may not be extracted.

또한 상기 파라미터 값은, 상기 데이터 테이블이 포함된 데이터 시트(data sheet)와는 다른 데이터 시트에 포함된 데이터 테이블을 참조할 수 있다.In addition, the parameter value may refer to a data table included in a data sheet different from the data sheet including the data table.

또한 상기 적어도 하나의 파라미터는, 다른 파라미터 값들을 대표하는 대표 파라미터를 포함하고, 상기 다른 파라미터 값들은 상기 대표 파라미터에 의해 참조될 수 있다.The at least one parameter may also include a representative parameter representing other parameter values, the other parameter values may be referenced by the representative parameter.

또한 상기 데이터 구조는 상기 적어도 하나의 데이터 테이블을 포함하는 데이터 시트와 별개인 설정 데이터 시트를 포함하고, 상기 설정 데이터 시트는 상기 처리 모듈이 지원하는 모델링 모듈에 대한 정보, 상기 처리 모듈이 지원하는 데이터 구조에 대한 정보, 및 상기 처리 모듈이 데이터 구조로부터 데이터를 추출하는 영역에 대한 정보 중 적어도 하나를 포함할 수 있다.The data structure also includes a configuration data sheet separate from the data sheet including the at least one data table, wherein the configuration data sheet includes information about a modeling module supported by the processing module and data supported by the processing module. At least one of information about a structure and information about a region from which the processing module extracts data from a data structure.

또한 상기 데이터 구조는 설정 시트, 데이터 시트, 적어도 하나의 참조 시트, 부가 시트를 포함하고, 상기 데이터 시트는 상기 적어도 하나의 데이터 테이블과 주석 데이터를 포함하고, 상기 부가 시트는 예시적인 데이터 시트를 나타내는 예시 템플릿을 포함할 수 있다.The data structure also includes a setting sheet, a data sheet, at least one reference sheet, and an additional sheet, wherein the data sheet includes the at least one data table and annotation data, and the additional sheet represents an exemplary data sheet. An example template may be included.

또한 상기 데이터 구조는 스프레드 시트의 구조일 수 있고, 상기 스프레드 시트는 엑셀일 수 있다.In addition, the data structure may be a spreadsheet structure, and the spreadsheet may be Excel.

또한 상기 데이터 구조는 웹 기반으로 제공되는 복수개의 테이블을 포함할 수 있다.In addition, the data structure may include a plurality of tables provided on a web basis.

또한, 본 전산기반 모델링 방법은 그 방법을 수행하기 위한 프로그램 코드를 기록한 컴퓨터로 판독 가능한 기록 매체로 구현될 수 있다.In addition, the computer-based modeling method may be implemented as a computer-readable recording medium recording a program code for performing the method.

본 발명에 따른 전산 기반 모델링 시스템은, 헤더, 적어도 하나의 파라미터, 및 상기 헤더와 상기 파라미터에 각각 대응하는 헤더 값과 파라미터 값을 포함하는 적어도 하나의 데이터 테이블을 포함하는 데이터 구조; 상기 데이터 구조로부터 상기 헤더 및 상기 파라미터 값을 추출하여 모델링 모듈로 제공하는 처리 모듈; 및 상기 헤더 값 및 상기 파라미터 값을 이용하여 모델링을 수행하는 모델링 모듈을 포함한다.
A computer-based modeling system according to the present invention includes a data structure including a header, at least one parameter, and at least one data table including the header and a header value and a parameter value respectively corresponding to the header; A processing module which extracts the header and the parameter values from the data structure and provides them to a modeling module; And a modeling module for performing modeling using the header value and the parameter value.

본 발명에 따르면, 사용자는 CAE 소프트웨어나 프로그래밍에 대한 전문적인 지식이 없이도 용이하게 MBD 모델링을 구현할 수 있는 효과가 있다.According to the present invention, the user can easily implement MBD modeling without any expert knowledge of CAE software or programming.

또한, 모델링에 사용되는 데이터들을 효율적으로 관리할 수 있으며, 반복해서 사용되는 데이터 또는 데이터 시트를 참조할 수 있기 때문에 매크로에 대한 지식 없이도 매크로를 사용하는 효과를 얻을 수 있다.In addition, the data used in modeling can be managed efficiently, and the data or data sheets used repeatedly can be referred to, so that the effect of using macros can be obtained without knowledge of macros.

또한, 사용자에게 적절한 형태의 템플릿 형태로 제작된 데이터 구조를 제공함으로써 사용자 맞춤형 템플릿 기반으로 효율적인 모델링을 수행할 수 있는 효과가 있다.
In addition, by providing a data structure produced in the form of a template of the appropriate form to the user it is effective to perform efficient modeling based on the user-customized template.

도 1은 종래의 CAE 소프트웨어를 이용한 MBD 모델링의 일 예시를 나타낸다.
도 2는 본 발명에 따른 데이터 구조를 이용한 MBD 모델링 방법을 개념적으로 나타낸다.
도 3은 데이터 구조에 포함된 데이터 테이블을 나타낸다.
도 4는 데이터 구조에 포함된 복수개의 데이터 테이블을 나타낸다.
도 5는 본 발명에 따른 데이터 구조의 다른 예시를 나타낸다.
도 6은 본 발명의 다른 실시예에 따른, 파라미터 값이 데이터 시트 값을 참조하는 방법을 나타낸다.
도 7은 본 발명에 따른, 대표 파라미터를 참조하는 방법을 나타낸다.
도 8은 데이터의 처리 방법을 정의하는 데이터 시트를 나타낸다.
도 9는 본 발명에 따른 데이터 구조의 개념도를 나타낸다.
1 shows an example of MBD modeling using conventional CAE software.
2 conceptually illustrates an MBD modeling method using a data structure according to the present invention.
3 shows a data table included in the data structure.
4 illustrates a plurality of data tables included in a data structure.
5 shows another example of a data structure according to the present invention.
6 illustrates a method in which parameter values reference data sheet values, according to another embodiment of the invention.
7 illustrates a method of referring to a representative parameter, in accordance with the present invention.
8 shows a data sheet that defines a method of processing data.
9 shows a conceptual diagram of a data structure according to the present invention.

이하에서는 도면을 참조하여 본 발명에 따른 실시예들을 설명한다.Hereinafter, with reference to the drawings will be described embodiments according to the present invention.

도 2는 본 발명에 따른 데이터 구조를 이용한 MBD 모델링 방법을 개념적으로 나타낸다. 본 발명에 따른 MBD 모델링은, 모델링에 사용되는 데이터를 데이터 구조(data structure)(100)에 별도로 관리한다. 이 데이터 구조(100)는 일반적인 스프레드 시트, 예를 들어, MS Excel, OpenOffice™에서 제공하는 스프레드 시트 또는 데이터베이스, 한글과 컴퓨터™에서 제공하는 한컴오피스 한셀과 같이 소프트웨어에 의해 저장된 데이터 구조뿐만 아니라, html, xml, php 등의 언어로 작성된 웹 기반 테이블(table) 형식의 문서, Google Docs에서 제공하는 웹 기반 스프레드 시트, 클라우드 컴퓨팅(cloud computing) 기반 스프레드 시트와 같은, 열(column)과 행(row)으로 구성된 데이터 구조를 모두 포함한다. 이는 예시적인 것이며, 상기의 예시들이 본 발명에 적용되는 데이터 구조의 범위를 한정하지 아니한다.2 conceptually illustrates an MBD modeling method using a data structure according to the present invention. MBD modeling according to the present invention manages data used for modeling separately in a data structure 100. This data structure 100 is not only a data structure stored by the software, such as a general spreadsheet, for example, MS Excel, a spreadsheet or database provided by OpenOffice ™, and Hancom Office Hancell provided by Korean and Computer ™, but also html. columns and rows, such as web-based table-formatted documents written in languages such as, xml, php, web-based spreadsheets provided by Google Docs, and cloud computing-based spreadsheets Contains all data structures consisting of: This is exemplary and the above examples do not limit the scope of the data structure to which the present invention is applied.

처리 모듈(processing module)(200)은 데이터 구조(100)로부터 모델링에 필요한 데이터를 파싱(parsing)하여 가져온다. 처리 모듈(200)은 추출된 데이터를 모델링 모듈(modeling module)(300)로 전송하여 입력시킨다. 이 과정에서, 처리 모듈(200)은 모델링 모듈 데이터 베이스(modeling module database; MMDB)(210)를 포함할 수 있고, MMDB(210)와 추출된 데이터를 비교하여 모델링 모듈(300)에 입력되는 데이터의 순서를 변경하거나, 필수적인 데이터의 존재 여부 등에 대한 검사를 수행하여 오류 메시지를 발생시킬 수도 있다.The processing module 200 parses and imports data necessary for modeling from the data structure 100. The processing module 200 transmits the extracted data to the modeling module 300 and inputs it. In this process, the processing module 200 may include a modeling module database (MMDB) 210, and compares the extracted data with the MMDB 210 and inputs the data to the modeling module 300. The error message may be generated by changing the order of the sequential order or by checking whether the required data exists.

모델링 모듈(300)은 처리 모듈(200)로부터 전달된 데이터에 기초하여 MBD 모델링을 수행한다. 예를 들어, 도 1에 도시된 화면(1)과 같은 3D 모델링을 구현하거나, 모델링 된 시스템을 해석하여 해석된 데이터를 반환할 수 있다. 모델링 모듈(300)은 리커다인(RecurDyn™)과 같은 CAE 소프트웨어를 이용하여 구동될 수 있다.The modeling module 300 performs MBD modeling based on the data transmitted from the processing module 200. For example, 3D modeling such as the screen 1 shown in FIG. 1 may be implemented or the analyzed data may be returned by analyzing the modeled system. The modeling module 300 may be driven using CAE software such as RecurDyn ™.

이하에서는 데이터 구조(100)를 이용하여 모델링이 수행되는 과정을 보다 자세하게 설명한다.Hereinafter, a process of modeling using the data structure 100 will be described in more detail.

도 3은 데이터 구조에 포함된 데이터 테이블을 나타낸다. 데이터 테이블(data table)은 헤더(header)를 정의하는 하나의 행(row)과 데이터를 정의하는 적어도 하나의 행(row)을 포함한다. 도 3의 예시에서는 편의상 데이터를 정의하는 행을 하나만 도시하였다.3 shows a data table included in the data structure. The data table includes one row defining the header and at least one row defining the data. In the example of FIG. 3, only one row defining data is illustrated.

헤더를 정의하는 행은 하나의 헤더 타입(header_type)을 정의하는 열과 파라미터(parameter)를 정의하는 적어도 하나의 열을 포함한다. 도 3의 예시에서 헤더 타입은 "Header_PV"이며, "Name" 및 "Value" 2개의 파라미터를 포함한다. The row defining the header includes a column defining one header type (header_type) and at least one column defining a parameter. In the example of FIG. 3, the header type is "Header_PV" and includes two parameters "Name" and "Value".

데이터를 정의하는 행은, 헤더 타입에 대응되는 헤더 값과 각각의 파라미터에 대응되는 파라미터 값을 포함한다. 도 3의 예시에서, 헤더 "Header_PV"에 대응되는 헤더 값은 "PV"이며, 파라미터 "Name"에는 파라미터 값 "PV_01"이, 파라미터 "Value"에는 파라미터 값 "100"이 각각 대응된다.The row defining the data includes a header value corresponding to the header type and a parameter value corresponding to each parameter. In the example of FIG. 3, the header value corresponding to the header "Header_PV" is "PV", the parameter value "PV_01" corresponds to the parameter "Name", and the parameter value "100" corresponds to the parameter "Value", respectively.

도 4는 데이터 구조에 포함된 복수개의 데이터 테이블을 나타낸다. 도 4의 데이터 구조에는 총 5개의 데이터 테이블, 즉 헤더 값으로 각각 PV, Body_New, Geo_Link, Joint_Revolute, SubEntity_Expression을 가지는 데이터 테이블이 포함된다. 데이터 테이블은 서로 다른 열 개수를 가질 수 있다. 이 열 개수는 헤더가 가지는 파라미터의 개수에 따라서 조절된다. 예를 들어, 헤더 "PV"는 이름(Name)을 나타내는 파라미터와 값(Value)을 나타내는 파라미터, 총 2개의 파라미터를 갖는다. 그러나 헤더 "Geo_Link"는 이름(Name), 연결체 식별자(Owner Body), 시작 위치(First Point), 끝 위치(Second Point), 제1 반경(First Radius), 제2 반경(Second Radius), 및 깊이(Depth)의 총 7개의 파라미터를 갖는다.4 illustrates a plurality of data tables included in a data structure. The data structure of FIG. 4 includes a total of five data tables, that is, data tables having PV, Body_New, Geo_Link, Joint_Revolute, and SubEntity_Expression, respectively. The data table can have different number of columns. The number of columns is adjusted according to the number of parameters the header has. For example, the header "PV" has a total of two parameters: a parameter representing a name and a parameter representing a value. However, the header "Geo_Link" includes Name, Owner Body, First Point, Second Point, First Radius, Second Radius, and It has a total of seven parameters of Depth.

이와 같은 파라미터 개수의 차이는 모델링되는 대상에 따라 달라진다. 예를 들어, 자동차를 모델링 하는 경우에, 바퀴(헤더)에 대해서 이름, 휠 반경, 타이어 반경, 바퀴 중심의 위치의 4가지 파라미터가 필요할 수 있다. 한편 바퀴와 바퀴를 연결하는 축(헤더)에 대해서는, 이름, 축 반경, 제1 타이어와의 연결 위치, 제2 타이어와의 연결 위치, 축의 길이, 축의 재질, 축의 밀도(강성), 축의 색상과 같은 8가지 파라미터가 사용될 수 있다.This difference in the number of parameters depends on the object being modeled. For example, when modeling a car, four parameters may be needed for the wheel (header): name, wheel radius, tire radius, and wheel center position. On the other hand, about the shaft (header) which connects a wheel and a wheel, a name, a shaft radius, a connection position with a 1st tire, a connection position with a 2nd tire, a length of a shaft, a material of a shaft, a density (a rigidity) of a shaft, a color of a shaft The same eight parameters can be used.

처리 모듈(200)은 데이터 구조(100)에 포함된 데이터 테이블로부터 이와 같은 헤더와 파라미터 정보를 추출하여 모델링 모듈(300)로 전송한다. 이 전송 과정은 처리 모듈(200)에 의한 입력을 수반할 수 있다. 처리 모듈(200)은 이 과정에서 필요한 파라미터 값이 모두 데이터 테이블에 포함되어 있는지 검사할 수 있다. 또한 검사 결과 필요한 파라미터 값의 전부 또는 일부가 데이터 테이블에 포함되어 있지 않다면, 에러 메시지 등을 통해 사용자에게 알려줄 수 있다.The processing module 200 extracts such header and parameter information from the data table included in the data structure 100 and transmits the same to the modeling module 300. This transmission process may involve input by the processing module 200. The processing module 200 may check whether all necessary parameter values are included in the data table. In addition, if all or part of the required parameter value is not included in the data table as a result of the inspection, the user may be notified through an error message.

전술한 자동차 예시를 참조하면, 연결 축(헤더)의 이름, 반경, 길이, 연결 위치는 반드시 소정의 값이 있어야 하는 필수 파라미터에 해당한다. 그러나 축의 재질, 밀도, 색상 등은 모델링에 반드시 필요하지 않을 수 있다. 이러한 옵션 파라미터는 그 값을 포함하지 않아도 모델링 작업 자체에는 문제를 일으키지 않는다. 처리 모듈은 이와 같은 옵션 파라미터의 값이 데이터 테이블에 포함되어 있지 않은 경우에는 단순히 해당 옵션 파라미터를 무시하는 등의 처리를 수행하지만, 필수 파라미터에 해당하는 값이 데이터 테이블에 포함되어 있지 않은 경우에는 에러 메시지를 표출할 수 있다.Referring to the vehicle example described above, the name, radius, length, and position of the connection shaft (header) correspond to the essential parameters that must have a predetermined value. However, the material, density, and color of the shaft may not be necessary for modeling. These optional parameters do not cause problems in the modeling task itself even if they do not include their values. The processing module performs processing such as simply ignoring the corresponding option parameter when the value of the option parameter is not included in the data table, but an error when the value corresponding to the required parameter is not included in the data table. Can display a message.

데이터를 추출하는 과정을 보다 자세히 설명하면 다음과 같다. 처리 모듈(200)은 내부에 모델링 모듈의 데이터 베이스(MMDB)(210)를 포함한다. 이 MMDB(210)는 모델링 수행에 필요한 필수 파라미터와 모델링 수행에 필수적이지 않은 옵션 파라미터를 정의할 수 있다. 처리 모듈(200)은 데이터 구조(100)로부터 추출된 헤더 및 파라미터 값을 MMDB(210)에 정의된 값과 매칭시킨다. 매칭 결과, 필수 파라미터로 정의된 데이터에 매칭이 발생하지 않으면 에러 메시지를 표출시킨다.The process of extracting data is explained in more detail as follows. The processing module 200 includes a database of modeling modules (MMDB) 210 therein. The MMDB 210 may define essential parameters required for modeling and optional parameters not necessary for modeling. The processing module 200 matches the header and parameter values extracted from the data structure 100 with the values defined in the MMDB 210. If a match does not occur in the data defined as a required parameter, an error message is displayed.

또한, 처리 모듈(200)은 MMDB(210)에 기초하여 추출된 파라미터의 순서를 재배열 할 수 있다. 재배열 과정은 다음과 같은 의미를 갖는다. 모델링 모듈(300) 입장에서는, 데이터가 사용자에 의해 작성된 순서대로 추출되어 모델링(300) 모듈로 들어오면 처리가 불가능한 상황이 발생할 수 있다. 예를 들어, 자동차의 타이어(헤더)에 대한 모델링을 수행할 때, 타이어를 생성하지 않은 상태에서 휠 반경(wheel_radius parameter) 또는 타이어 반경(tire_radius parameter)을 생성할 수 없다. 그러나 모델링 모듈(300) 입장에서는 데이터가 "타이어(헤더) - 이름 - 휠 반경 - 타이어 반경" 순으로 들어오지 않고, "타이어(헤더)- 휠 반경 - 타이어 반경 - 이름" 순으로 들어오면 모델링 모듈(300)은 처음 들어오는 반경 값이 어떤 의미인지 파악할 수 없기 때문에 에러가 발생한다. 단, 이 예시에서는 Name 파라미터가 정의되어야 타이어가 생성되는 것으로 가정하였으나, 파라미터에 따른 데이터 처리 가능 여부는 모델링 모듈(300)에 미리 정의된 특성에 의존한다. 예를 들어, 특정 모델링 모듈에서는, 타이어 반경이 형성되지 않으면 휠 반경이 형성되는 것이 불가능 할 수 있다. 또한, 이 예시에서는 동일 헤더 내에 포함된 복수개의 파라미터의 순서 재정렬에 대하여 설명하고 있으나, 서로 다른 헤더 사이의 순서 재정렬도 파라미터와 같은 방식으로 일어날 수 있다. (예를 들어, 처리 모듈(200)은 자동차 헤더가 먼저 입력되고 타이어 헤더가 나중에 입력되도록 순서를 재배열 할 수 있다.) 이를 위해서 MMDB(210)에는 각 헤더 및 파라미터의 값을 배열하는 논리 순서를 포함할 수 있고, 이 논리 순서는 모델링 모듈(300)에서 입력된 데이터를 처리하는 순서에 대응될 수 있다. 그러나 MMDB(210)는 모델링 모듈(300)에서 데이터의 처리 순서와는 관계 없이, 자체적으로 논리적인 순서를 구성할 수도 있다.In addition, the processing module 200 may rearrange the order of the extracted parameters based on the MMDB 210. The rearrangement process has the following meanings. From the perspective of the modeling module 300, when data is extracted in the order written by the user and entered into the modeling 300 module, a situation in which processing is impossible may occur. For example, when modeling a tire (header) of a vehicle, a wheel radius (wheel_radius parameter) or a tire radius (tire_radius parameter) cannot be generated without generating a tire. However, for the modeling module 300, if the data does not come in the order of "tire (header)-name-wheel radius-tire radius", but in the order of "tire (header)-wheel radius-tire radius-name", the modeling module ( An error occurs because 300 does not know what the first incoming radius value means. However, in this example, it is assumed that the name parameter is defined to generate the tire, but whether or not the data can be processed according to the parameter depends on the characteristics predefined in the modeling module 300. For example, in certain modeling modules it may not be possible to form wheel radii unless a tire radius is formed. Also, in this example, the order rearrangement of a plurality of parameters included in the same header is described, but the order rearrangement between different headers may occur in the same manner as the parameters. (For example, the processing module 200 may rearrange the order in which the vehicle header is input first and the tire header is later.) For this purpose, the MMDB 210 arranges the values of each header and parameter in a logical order. It may include, the logical order may correspond to the order of processing the data input from the modeling module 300. However, the MMDB 210 may construct a logical order by itself regardless of the processing order of data in the modeling module 300.

파라미터의 입력 순서는 의미를 갖는 경우도 있고, 그 순서에 의미를 갖지 않는 경우도 있을 수 있다. 예를 들어, 원을 생성하는 모델링을 고려하면, 일반적인 GUI 환경에서는 우선 어떠한 방식으로 원을 생성할 것인지를 결정하게 된다. 원주상의 3개의 포인트로부터 하나의 원이 결정되는 방식(제1방식)을 선택하면, GUI는 3개의 포인트(P1, P2, P3)에 대한 입력을 요구한다. 1개의 중심점과 2개의 원주상의 포인트로부터 하나의 원이 결정되는 방식(제2방식)을 선택하면, GUI는 1개의 중심 포인트(C1)와 2개의 포인트(P1, P2)에 대한 입력을 요구한다. 제1방식에 의한 모델링의 경우에는 P1, P2, P3의 입력 순서에 상관없이 원이 결정될 수 있다. 하지만 제2방식에 의한 모델링의 경우에는, 반드시 C1이 먼저 입력되고 나서 P2, P3에 대한 입력이 이루어져야 한다. GUI 기반 모델링에 있어서, C1의 값이 입력되지 않으면 P2, P3에 대한 입력이 이루어지지 않도록 설정될 수도 있다. (보다 분명하게 하기 위해, 제2방식에 따른 P2, P3의 입력은 C1으로부터의 거리 및 각도의 형태로 입력되는 것으로 가정할 수 있다.)The order of input of the parameters may have meanings, and there may be cases where the order of parameters does not have meanings. For example, considering modeling to generate circles, in a typical GUI environment, you first decide how to create the circles. Selecting a manner in which one circle is determined from three points on the circumference (first method), the GUI requires input to three points P1, P2, and P3. Selecting a method in which one circle is determined from one center point and two circumferential points (second method), the GUI requests input to one center point C1 and two points P1 and P2. do. In the case of modeling according to the first method, a circle may be determined regardless of the input order of P1, P2, and P3. However, in the case of modeling by the second method, C1 must be input first and then input to P2 and P3 must be made. In the GUI-based modeling, if a value of C1 is not input, input to P2 and P3 may not be made. (For clarity, it can be assumed that the inputs of P2 and P3 according to the second scheme are input in the form of distance and angle from C1.)

이를 본 발명에 따른 데이터 구조로 변환하면 다음과 같다. 우선 원이 결정되는 방식에 대한 헤더값(예를 들어, Header_CreateArcType1 및 Header_CreateArcType2) 및 그에 따른 파라미터 값이 결정된다. 제1방식의 경우, Point1, Point2, Point3의 파라미터를 가질 수 있다. 제2방식의 경우, CenterPoint, Point1, Point2의 파라미터를 가질 수 있다. 전술한 바와 같이, 데이터 구조(100) 상에서 이 파라미터의 값은 어떠한 순서(예를 들어, Point3 - Point1 - Point2의 순서 등)로 배열되어도 무관하다. 다만 처리모듈(200)은 모델링 모듈(300)이 헤더 및 파라미터의 값에 따라 모델링을 구현할 수 있도록, DB에 기초하여 이 헤더 값 및 파라미터 값을 정해진 형식에 따라서 모델링 모듈(300)로 제공한다. 제1방식의 경우에 파라미터의 순서는 모델링 작업에 있어서 의미를 갖지 않기 때문에, 임의의 적절한 형식으로 제공될 수 있다. 이 적절한 형식은, 모델링을 구현하는 알고리즘 또는 그 알고리즘에서 사용되는 함수에서 정의된 호출의 형식 또는 순서에 따라 결정될 수 있다. 제2방식의 경우에, CenterPoint 파라미터는 Point1 및 Point2 파라미터보다 우선적으로 입력되어야 하기 때문에, DB는 CenterPoint에 우선순위를 두는 형식으로 파라미터를 처리할 수 있다.This is converted into the data structure according to the present invention as follows. First, a header value (eg, Header_CreateArcType1 and Header_CreateArcType2) and a parameter value according to the method for determining the circle are determined. In the case of the first method, parameters of Point1, Point2, and Point3 may be provided. In the case of the second method, it may have parameters of CenterPoint, Point1, and Point2. As described above, the value of this parameter on the data structure 100 may be arranged in any order (eg, the order of Point3-Point1-Point2, etc.). However, the processing module 200 provides the header value and the parameter value to the modeling module 300 according to a predetermined format based on a DB so that the modeling module 300 may implement the modeling according to the header and parameter values. In the case of the first scheme, the order of the parameters does not have meaning in the modeling work, and therefore may be provided in any suitable form. This appropriate form may be determined according to the form or order of calls defined in the algorithm implementing the modeling or the function used in the algorithm. In the case of the second method, since the CenterPoint parameter should be input in preference to the Point1 and Point2 parameters, the DB may process the parameter in a format giving priority to the CenterPoint.

사용자 입장에서, 처리 모듈(200)에 의한 데이터 재배열은 다음과 같은 이점을 갖는다. 우선, 사용자는 파라미터의 입력 순서에 구애받지 않고 자유롭게 파라미터를 데이터 구조에 입력할 수 있다. 즉, 자신이 선호하는 방식으로 데이터 테이블을 구성할 수 있다. 다만, 이 경우에도 헤더 열(header column)(즉, 데이터 테이블의 시작 위치에 해당하는 열)은 소정의 위치에 고정되어 작성될 수 있다. From the user's point of view, data rearrangement by the processing module 200 has the following advantages. First, the user can freely input parameters into the data structure regardless of the parameter input order. In other words, you can organize your data tables the way you prefer. However, even in this case, the header column (ie, the column corresponding to the start position of the data table) may be fixedly created at a predetermined position.

시스템이 복잡해지면 복잡해 질수록, 하나의 헤더에 대해 입력해야 하는 파라미터는 기하급수적으로 증가한다. 엔지니어 입장에서는 다른 파라미터들은 고정된 상태에서 관심 파라미터의 값만 조정해가면서 모델링을 수행하고자 할 수 있다. 이 경우, 엔지니어는 관심 파라미터에 해당되는 값들을 헤더 컬럼 바로 우측(또는 본인이 편집하기 편하게 여기는 영역)에 위치시킬 수 있다. 즉, 데이터 테이블 내에서, 파라미터들 사이의 위치(또는 열(column))는 상호, 또는 적절한 순서로 교환되는 것이 가능하다.As the complexity of the system increases, the parameters that need to be entered for a header increase exponentially. From an engineer's point of view, you may want to perform modeling while adjusting only the value of the parameter of interest while the other parameters are fixed. In this case, the engineer can place the values that correspond to the parameter of interest to the right of the header column (or the area that he finds easy to edit). That is, within the data table, the positions (or columns) between the parameters can be interchanged with each other or in the proper order.

이상 살펴본 바와 같이, 본 발명에 따른 데이터 구조는 헤더와 파라미터를 포함하고, 파라미터는 그 배열 순서를 달리 할 수 있다. 이하에서는 처리 모듈(200)이 데이터 구조(100)에 포함된 데이터들을 처리하는 방법의 다른 예시들에 대하여 설명한다.As described above, the data structure according to the present invention includes a header and a parameter, and the parameters may have a different arrangement order. Hereinafter, other examples of how the processing module 200 processes data included in the data structure 100 will be described.

도 5는 본 발명에 따른 데이터 구조의 다른 예시를 나타낸다. 도 5의 데이터 구조는 복수개의 데이터 테이블(501 등) 및 모델링 이미지(510)를 포함한다. 모델링 이미지(510)는 데이터 구조에 삽입된 이미지이며, 데이터 테이블을 구성하지 않으므로 참고용으로만 이용된다. 즉, 처리 모듈(200)에 의한 데이터 구조(100)의 데이터 처리에 아무런 영향을 주지 않는다. 따라서 사용자는 모델링 하고자 하는 개략적인 이미지를 데이터 구조(100)에 포함시켜 참고하면서 데이터 입력/수정 작업을 진행할 수 있다.5 shows another example of a data structure according to the present invention. The data structure of FIG. 5 includes a plurality of data tables 501 and the like and a modeling image 510. The modeling image 510 is an image inserted into the data structure and is used only for reference because it does not constitute a data table. That is, it does not affect the data processing of the data structure 100 by the processing module 200. Therefore, the user may proceed with data input / modification while referring to the schematic image to be modeled in the data structure 100.

도 5의 데이터 구조(100)에는 복수개의 데이터 테이블이 포함되어 있다. 헤더 타입으로 Header_PV를 가지는 데이터 테이블(이하 ‘PV 데이터 테이블’과 같은 방식으로 표기한다)(501)은 다른 데이터 테이블과 분리되어 작성되어 있다. 처리 모듈(200)은 PV 데이터 테이블(501)의 데이터를 추출하고 공백(8행)은 스킵하는 방식으로 다음 데이터 테이블(Body_New 데이터 테이블)의 데이터를 추출한다. 더 이상 추출할 데이터 테이블이 없으면 데이터 추출 작업을 중지한다.The data structure 100 of FIG. 5 includes a plurality of data tables. A data table (hereinafter referred to as 'PV data table') 501 having Header_PV as a header type is created separately from other data tables. The processing module 200 extracts data of the next data table (Body_New data table) by extracting data of the PV data table 501 and skipping blanks (row 8). If there are no more data tables to extract, stop the data extraction task.

처리 모듈(200)에 의한 데이터 추출 방법을 보다 자세히 설명하면 다음과 같다. 처리 모듈(200)은 미리 설정된 위치부터 데이터 추출을 시작한다. 데이터 추출 시작 지점은 별도의 설정 시트(format sheet)에 의해 설정될 수 있으며, 이에 대해서는 후술한다. 처리 모듈(200)은 데이터 테이블의 헤더 타입과 헤더 타입에 대해서 정의된 파라미터를 추출한다. PV 데이터 테이블(501)을 예로 들면, 처리 모듈(200)은 Header_PV 및 Name, Value 파라미터를 추출한다. Value 파라미터 우측(즉, E열)은 공백(blank)이며, 처리 모듈(200)은 공백을 만나면 PV 데이터 테이블(501)의 영역을 공백 전의 열(즉, D열)로 한정하고, 데이터 추출 대상 행(column)를 변경한다. 즉, PV에 대한 파라미터는 D열까지 위치하는 것으로 정의되며, 엔지니어가 E열에 데이터 값을 입력하였다 하더라도, E열에 파라미터에 대한 정의가 되어 있지 않은 경우, 처리 모듈(200)은 이 데이터를 처리하지 않는다. 이 처리 방법은 엔지니어가 추가로 사용하거나 예비적으로 사용하고자 하는 값을 미리 메모하는 것을 가능하게 한다는 이점을 갖는다.The data extraction method by the processing module 200 will be described in more detail as follows. The processing module 200 starts extracting data from a preset position. The data extraction start point may be set by a separate format sheet, which will be described later. The processing module 200 extracts the header type of the data table and the parameters defined for the header type. Taking the PV data table 501 as an example, the processing module 200 extracts Header_PV and Name and Value parameters. The right side of the Value parameter (ie, column E) is blank, and when the processing module 200 encounters a space, the processing module 200 limits the area of the PV data table 501 to the column before the space (ie, column D), and the data extraction target. Change the column. That is, the parameter for PV is defined to be located up to column D. Even if the engineer inputs a data value in column E, if the parameter is not defined in column E, the processing module 200 does not process this data. Do not. This processing method has the advantage that it is possible for the engineer to note in advance the values which he wishes to use further or preliminarily.

이와 같은 방식으로 처리 모듈(200)은 4행 B열부터 7행 D열에 포함된 PV 데이터 테이블(501)의 데이터를 추출한다. 처리 모듈(200)은 PV 데이터 테이블(501)의 데이터를 모두 추출한 후, 8행 B열의 데이터를 추출하려고 할 수 있다. 그러나 해당 셀(cell)의 데이터는 비어있기(blank) 때문에, 이런 경우 처리 모듈(200)은 다음 데이터 테이블의 헤더 타입(즉, Header_Body_New; 9행 B열)을 만날 때까지 다음 행으로 진행한다.In this manner, the processing module 200 extracts the data of the PV data table 501 included in the fourth row B columns and the seventh row D columns. The processing module 200 may extract all data of the PV data table 501 and then try to extract data of 8 rows and B columns. However, since the data of the cell is blank, the processing module 200 proceeds to the next row until it encounters the header type (ie Header_Body_New; row 9, column B) of the next data table.

Geo_Link 데이터 테이블(502)을 살펴보면, 헤더 Geo_Link에 대한 파라미터들 중 Color 파라미터는 마지막 파라미터 Depth와 분리되어 위치한다. 전술한 바와 같이, 처리 모듈(200)은 Header_Geo_Link에 대응하는 파라미터들(Name, OwnerBody, FirstPoint, SecondPoint, FirstRadius, SecondRadius, Depth)을 파싱하면서, 이 헤더 타입에 대응하는 파라미터들의 개수를 7개(즉, Name ~ Depth)로 확정하였기 때문에, Color 파라미터에 대한 데이터 추출을 수행하지 않는다. 즉, 사용자는 참고로 사용할 파라미터들을 데이터 구조(100)에 포함시키면서, 데이터 테이블과 참고용 파라미터들 사이에 공백(즉, blank data)을 둠으로써 참고용 파라미터를 용이하게 활용할 수 있다. 예를 들어, Depth 파라미터와 Color 파라미터 사이의 열(즉, J열)을 삭제하거나, Color 파라미터의 데이터를 K열에서 J열로 이동시키는 것과 같은 작업을 통해 손쉽게 Geo_Link 헤더에 대한 파라미터를 추가할 수 있다. 이는 종래의 GUI 방식의 CAE 소프트웨어를 이용한 모델링 방법에서는 별도의 참고용 파라미터 데이터를 메모해 두고 필요한 경우에 소프트웨어에 포함된 메뉴를 일일이 선택해서 추가해야 하는 것에 비하여 작업의 효율성 및 편의성에서 크게 향상된 효과를 가져온다.Referring to the Geo_Link data table 502, the Color parameter among the parameters for the header Geo_Link is located separately from the last parameter Depth. As described above, the processing module 200 parses the parameters (Name, OwnerBody, FirstPoint, SecondPoint, FirstRadius, SecondRadius, Depth) corresponding to Header_Geo_Link, and counts the number of parameters corresponding to this header type (ie, 7). , Name ~ Depth), do not perform data extraction for the Color parameter. That is, the user may easily utilize the reference parameter by including a blank (ie, blank data) between the data table and the reference parameter while including the parameters to be used as a reference in the data structure 100. For example, you can easily add parameters to the Geo_Link header by deleting the column between the Depth and Color parameters (that is, column J), or by moving the data from the Color parameter from column K to column J. . In the modeling method using the CAE software of the conventional GUI method, it is necessary to make a note of separate reference parameter data and to select and add a menu included in the software if necessary, thereby greatly improving the work efficiency and convenience. Bring.

Joint_Revolute 테이블(503)은 서로 다른 파라미터의 개수를 가지는 2개의 데이터 테이블을 포함한다. 첫 번째 테이블(B열 17행~H열 18행)은 Joint_Revolute 헤더에 대해서 Name, BaseBody, ActionBody, RefFrame, UseMotion, Motion의 6개의 파라미터를 포함한다. 이 중에서 UseMotion, Motion 파라미터는 전술한 옵션 파라미터에 해당한다. 따라서, 해당 파라미터에 대응하는 값이 데이터 테이블 내에 입력되어 있지 않다 하더라도 데이터 추출 및 모델링 작업에는 지장이 없다. 다만 직관적인 구분과 관리의 편의성을 위해 도시된 바와 같이 테이블을 분리해서 관리할 수 있다.The Joint_Revolute table 503 includes two data tables with different numbers of parameters. The first table (column B, row 17, column H, row 18) contains six parameters for the Joint_Revolute header: Name, BaseBody, ActionBody, RefFrame, UseMotion, and Motion. Among these, UseMotion and Motion parameters correspond to the above-described option parameters. Therefore, even if a value corresponding to the parameter is not entered in the data table, the data extraction and modeling work is not affected. However, the table can be managed separately as shown for intuitive division and convenience of management.

두 번째 테이블(B열 19행~F열 22행)은 Joint_Revolute 헤더에 대해서 Name, BaseBody, ActionBody, 및 FefFrame의 4개의 파라미터만을 포함한다. 처리 모듈(200)은 첫 번째 Joint_Revolute 테이블에서 6개의 파라미터에 대한 데이터를 추출하고, 두 번째 Joint_Revolute 테이블에서 4개의 파라미터에 대한 데이터를 추출한다. 그러나 이렇게 추출된 데이터는 모두 동일한 헤더(Joint_Revolute 헤더)에 대한 파라미터 값이므로, 처리 모듈(200)은 이 동일한 헤더에 대한 데이터로서 이 파라미터 값들을 모델링 모듈(300)로 입력한다. 차이가 있다면, 그 이름(Name)이 Joint_Revolute_01로 대표되는 파라미터 들은 두 개의 옵션 파라미터(즉, UseMotion 및 Motion)에 대한 데이터를 추가로 포함한다.The second table (columns B to 19, F to 22) contains only four parameters for the Joint_Revolute header: Name, BaseBody, ActionBody, and FefFrame. The processing module 200 extracts data for six parameters from the first Joint_Revolute table, and extracts data for four parameters from the second Joint_Revolute table. However, since all of the extracted data are parameter values for the same header (Joint_Revolute header), the processing module 200 inputs the parameter values to the modeling module 300 as data for the same header. If there is a difference, the parameters whose name is represented by Joint_Revolute_01 additionally include data for two optional parameters (ie UseMotion and Motion).

만약 Joint_Revolute 테이블(503)이 2 개의 데이터 테이블을 포함하지 않고, 하나의 헤더 타입(Header_Joint_Revolute)에 대하여 데이터들이 입력되어 있다면(즉, Joint_Revolute 데이터 테이블(503)에서 제19행이 삭제되어 있다면), 처리 모듈(200)은 모든 Joint_Revolute에 대해서 각각 6개의 파라미터 값을 추출한다. Joint_Revolute_02 ~ 04로 대표되는 파라미터들은 UseMotion 및 Motion 파라미터 값을 갖지 않지만, 이들 파라미터들은 옵션 파라미터에 해당되기 때문에 전술한 바와 같이 데이터 처리(모델링)에 영향을 주지 않는다. (만약 이들 파라미터들이 필수 파라미터에 해당한다면, 처리 모듈(200)은 에러 메시지를 반환할 것이다.) 다만, 오류 발견 등과 같은 다양한 목적을 위하여 옵션 파라미터에 해당하는 값도 반드시 입력하도록 설정할 수도 있다.If the Joint_Revolute table 503 does not contain two data tables and data is input for one header type (Header_Joint_Revolute) (i.e., the 19th row is deleted in the Joint_Revolute data table 503), the processing The module 200 extracts six parameter values for all Joint_Revolutes, respectively. The parameters represented by Joint_Revolute_02 to 04 do not have UseMotion and Motion parameter values, but since these parameters correspond to optional parameters, they do not affect data processing (modeling) as described above. (If these parameters correspond to the required parameters, the processing module 200 will return an error message.) However, for various purposes such as error detection, the processing module 200 may also be set to input values corresponding to the optional parameters.

도 6은 본 발명의 다른 실시예에 따른, 파라미터 값이 데이터 시트 값을 참조하는 방법을 나타낸다. 사용자는 반복적으로 사용되는 데이터들을 하나의 데이터 시트로 미리 작성해 놓을 수 있다. 예를 들어, 자동차를 모델링 하는 경우에, 다른 부분은 동일하게 설정된 상태에서 타이어 조건만 변경해가면서 모델링을 수행하고자 할 수 있다. 이 때 메인 데이터 시트에 모든 헤더 및 파라미터에 대한 정보가 포함되어 있는 것은 데이터 구조를 상당히 복잡하게 하고 데이터에 대한 관리를 불편하게 한다. 따라서, 자주 사용하는 데이터들을 별도의 데이터 시트에 데이터 테이블로 작성하여 정의하여 두고, 이렇게 사용자 정의된 데이터 시트 값을 통째로 불러와서 사용할 수 있다.6 illustrates a method in which parameter values reference data sheet values, according to another embodiment of the invention. The user can pre-write the data repeatedly used in one data sheet. For example, when modeling a car, it may be desired to perform modeling while only changing tire conditions while other parts are set in the same manner. At this point, the main data sheet contains information about all headers and parameters, which makes the data structure quite complicated and makes managing the data inconvenient. Therefore, frequently used data can be created and defined as a data table in a separate data sheet, and the user-defined data sheet values can be loaded and used as a whole.

도 6을 참조하면, 사용자 정의 시트에 대한 헤더 타입(Header_Template_UserDefinedSheet)을 포함하는 데이터 테이블이 도시되어 있다. 이 헤더 타입은 하나의 파라미터(SheetName)를 포함한다. 이 파라미터에 해당하는 데이터는 각각 하나의 데이터 시트를 지정한다. 예를 들어, SheetName 파라미터 값이 HC인 경우, 해당 데이터는 데이터 시트 HC를 참조한다. 데이터 시트 HC는 Head_HC에 대한 하나 이상의 파라미터들을 포함하는 데이터 테이블을 포함한다. 마찬가지로 SheetName이 Valve인 경우, 처리 모듈(200)은 데이터 구조(100)에 포함된 복수개의 데이터 시트 중 Valve 데이터 시트에 포함된 데이터 테이블을 참조할 수 있다. Referring to FIG. 6, a data table including a header type (Header_Template_UserDefinedSheet) for a user-defined sheet is shown. This header type contains one parameter (SheetName). The data corresponding to this parameter specifies one data sheet each. For example, if the SheetName parameter value is HC, then the data refers to data sheet HC. Data sheet HC includes a data table containing one or more parameters for Head_HC. Similarly, when SheetName is Valve, the processing module 200 may refer to the data table included in the Valve data sheet among the plurality of data sheets included in the data structure 100.

이와 관련된 설명에서, 처리 모듈(200)이 데이터를 처리하는 메인 데이터 시트는 마스터 시트(master sheet), 메인 데이터 시트에 의해 참조되는 데이터 시트는 서브 데이터 시트(sub data sheet)로 참조될 수 있다. 사용자는 마스터 시트에서 서브 데이터 시트를 참조하는 기능을 이용하여, 종래의 GUI 기반 CAE 소프트웨어에서 요구되던 반복작업 또는 프로그래밍 언어를 이용한 매크로 작업에서 없이도, 고정적이며 자주 반복해서 사용되는 데이터를 자유롭게 참조하여 사용할 수 있다. 그에 따라 결과적으로 소프트웨어 지식 또는 프로그래밍 언어에 대한 지식 없이도 모델링 작업 효율이 향상되는 효과를 가져온다.In this description, a main data sheet for processing data by the processing module 200 may be referred to as a master sheet, and a data sheet referred to by the main data sheet may be referred to as a sub data sheet. With the ability to reference sub data sheets in the master sheet, users can freely refer to fixed and frequently used data without the need for repetitive tasks or macro operations using programming languages required for conventional GUI-based CAE software. Can be. The result is improved modeling efficiency without knowledge of software or programming languages.

도 7은 본 발명에 따른, 대표 파라미터를 참조하는 방법을 나타낸다. 도 7에는 접촉 특성 및 접촉 부분의 마찰과 관련된 데이터들이 정의되어 있다. 예를 들어, GUI 기반 접촉 특성(710)들은 본 발명에 따른 데이터 구조(100)에서는 데이터 테이블(720)의 형태로 표현될 수 있다. 보다 자세하게, 데이터 테이블(720)은 접촉 특성(ContactProperty) 헤더와 관련된 여러 개의 파라미터를 포함하는 데이터 테이블과, 마찰 특성(ContactFriction) 헤더와 관련된 여러 개의 파라미터를 포함하는 데이터 테이블의 형태를 가진다. 접촉 특성과 관련된 파라미터로는 탄성 계수(spring coefficient), 감쇠 계수(damping coefficient) 등이 포함되며, 마찰 특성과 관련된 파라미터로는 마찰 타입(Contact Friction Type), 운동마찰계수(Dynamic Friction Coefficient), 운동한계속도(dynamic threshold velocity), 정지마찰계수(static friction coefficient) 등을 포함할 수 있다.7 illustrates a method of referring to a representative parameter, in accordance with the present invention. In Fig. 7 data relating to the contact characteristics and the friction of the contact portions are defined. For example, the GUI based contact characteristics 710 may be represented in the form of a data table 720 in the data structure 100 according to the present invention. In more detail, the data table 720 is in the form of a data table including several parameters associated with a ContactProperty header, and a data table including several parameters associated with a ContactFriction header. Parameters related to contact characteristics include spring coefficient and damping coefficient, and parameters related to friction characteristics include friction type, dynamic friction coefficient, and motion. Dynamic threshold velocity, static friction coefficient, and the like.

이와 같은 접촉/마찰 관련 특성 값들은 모델링에서 반복적으로 사용될 수 있다. 그러나 데이터 테이블에 포함된 데이터의 양이 많지 않기 때문에 별도의 데이터 시트를 구성하기에는 적절하지 않다. 만약 이와 같은 -반복적으로 사용되지만 데이터의 양이 많지는 않은- 데이터 테이블을 모두 별도의 데이터 시트로 구성하여 전술한 참조 방법을 사용한다면 너무 많은 데이터 시트가 요구되고, 이는 데이터 관리의 효율성을 저하시킨다.Such contact / friction related property values may be used repeatedly in modeling. However, because the amount of data contained in the data table is not large, it is not suitable for constructing a separate data sheet. If you use the above-mentioned reference method by constructing all of the data tables, which are used repeatedly, but not in large amounts, as separate data sheets, too many data sheets are required, which reduces the efficiency of data management. .

따라서, 헤더에 대응하는 복수개의 파라미터 중에 대표 파라미터를 설정하고, 대표 파라미터 값을 참조하면 이 복수개의 파라미터 값을 불러오도록 할 수 있다. 이 대표 파라미터는 일반적으로 이름(Name) 파라미터 일 수 있다. 예를 들어, 접촉 특성 헤더에 대해서는 Name 파라미터, 즉 CP0010 값(721)이 (같은 행에 위치한) 다른 파라미터들을 대표한다. 마찰 특성 헤더에 대해서는 FRIC010 값(722)이 다른 파라미터들을 대표한다. 이제 특정 데이터 테이블(730)에서 파라미터 값으로 CP0010 및/또는 FRIC010 값을 참조하면(731), CP0010 및/또는 FRIC010으로 대표되는 다른 파라미터 값들이 참조된다.Therefore, if the representative parameter is set among a plurality of parameters corresponding to the header and the representative parameter value is referred, the plurality of parameter values can be called. This representative parameter may generally be a Name parameter. For example, for the contact characteristic header, the Name parameter, namely CP0010 value 721, represents other parameters (located in the same row). For the friction characteristic header, the FRIC010 value 722 represents other parameters. Referring now to the CP0010 and / or FRIC010 values as parameter values in the specific data table 730 (731), other parameter values represented by CP0010 and / or FRIC010 are referenced.

즉, 처리 모듈(200)은 Contact_CircleToCurve 데이터 테이블(730)에 포함된 데이터를 추출할 때, 파라미터 값이 CP0010인 데이터가 추출되면, CP0010으로 대표되는 파라미터들의 값(Stiffness Coefficient: 1000, Damping Coefficient: 10, Use Damping Exponent: False, etc.)을 헤더에 대응되는 파라미터 값으로 함께 추출하고, 전술한 재배열 과정을 거친 후에 모델링 모듈(300)로 제공한다.That is, when the processing module 200 extracts data included in the Contact_CircleToCurve data table 730 and the data having the parameter value CP0010 is extracted, the values of the parameters represented by CP0010 (Stiffness Coefficient: 1000, Damping Coefficient: 10). , Use Damping Exponent: False, etc.) is extracted together as a parameter value corresponding to the header and provided to the modeling module 300 after the aforementioned rearrangement process.

이와 같이, 대표 파라미터 값을 참조하여 복수개의 파라미터 설정을 용이하게 이용하게 함으로써, 사용자는 여러 개의 동일한 파라미터 값을 반복해서 입력하는 번거로움을 피하고 데이터 테이블의 크기를 줄이며, 데이터 관리와 편집의 편의성을 증대시키는 효과를 가져올 수 있다.In this way, by making it possible to easily use a plurality of parameter settings with reference to the representative parameter values, the user can avoid the hassle of repeatedly inputting multiple identical parameter values, reduce the size of the data table, and improve the convenience of data management and editing. Can increase the effect.

도 8은 데이터의 처리 방법을 정의하는 데이터 시트를 나타낸다. 본 발명에 따른 데이터 구조(100)는 데이터 테이블을 포함하는 데이터 시트와 별개로 처리 방법과 관련된 설정 값들을 저장하고 있는 설정 시트(format sheet)를 포함할 수 있다. 이 설정 시트는 처리 모듈(200)이 데이터 구조로부터 데이터를 추출하여 처리하는 제반 설정이 저장되어 있을 수 있다. 예를 들어, ModuleKey는 처리 모듈(200)이 지원하는 모델링 모듈(300)의 정보를 나타낼 수 있다. TemplateMode는 데이터 구조의 처리 방법에 대한 설정이며, 예를 들면 사용자가 데이터 테이블에서 컬럼의 순서를 자유롭게 변경 가능할 수 있는지에 대한 설정을 포함할 수 있다. (FreeStyleMode에서는 컬럼의 순서, 즉 파라미터의 위치를 자유롭게 변경할 수 있고, 처리 모듈(200)은 MMDB(210)와 비교하여 적절하게 파라미터의 순서를 재배열하여 모델링 모듈(300)로 제공한다.)8 shows a data sheet that defines a method of processing data. The data structure 100 according to the present invention may include a format sheet that stores setting values related to a processing method separately from a data sheet including a data table. The setting sheet may store various settings in which the processing module 200 extracts and processes data from the data structure. For example, ModuleKey may represent information of the modeling module 300 supported by the processing module 200. TemplateMode is a setting for a method of processing a data structure, and may include, for example, a setting for whether a user can freely change the order of columns in a data table. (In FreeStyleMode, the order of columns, that is, the position of parameters, can be freely changed, and the processing module 200 rearranges the order of parameters appropriately in comparison with the MMDB 210 and provides the modeling module 300 with the parameters.)

처리 모듈(200)은 데이터 구조(100)로부터 데이터 테이블에 포함된 데이터를 추출한다. 데이터 테이블에 포함된 헤더는 일반적으로 데이터 시트의 첫 번째 컬럼에 위치한다. 그러나 사용자는 설정 시트의 UserCommentColumn의 값을 조절하여 헤더가 위치하는 컬럼을 설정할 수 있다. 예를 들어, UserCommentColumn의 값이 3이라면, 처음 3개 열에 입력된 데이터는 사용자 코멘트를 기록하기 위한 열로서 이용된다. 이 때 데이터 테이블의 헤더는 4번째 열부터 위치하도록 작성된다. 이 설정 값은 데이터 시트 외에 다른 모든 시트에도 마찬가지로 적용될 수도 있다. 전술한 예시들 외에도 다른 한정 값들이 설정 시트에 포함될 수 있다.The processing module 200 extracts data contained in the data table from the data structure 100. The header contained in the data table is usually located in the first column of the data sheet. However, the user can set the column where the header is located by adjusting the value of UserCommentColumn in the configuration sheet. For example, if the value of UserCommentColumn is 3, the data entered in the first three columns is used as a column for recording user comments. At this time, the header of the data table is created to be located from the fourth column. This setting value can be applied to all other sheets as well as the data sheet. In addition to the above examples, other limiting values may be included in the setting sheet.

또한, 본 발명에 따른 데이터 구조(100)는 하나의 템플릿일 수 있다. 개인 또는 회사는 각각 모델링하고자 하는 대상이 다르다. 예를 들어 어느 회사는 자동차를 모델링 하는 반면, 다른 회사는 건축물을 모델링 할 수 있다. 여러 강체로 이루어진 계(system)을 모델링하는 개인이 있을 수도 있다. 모델링하고자 하는 대상에 따라 필요로 하는 데이터는 유사한 경우가 많다. 예를 들어, 일반적인 자동차 모델링의 경우 자동차의 필수 구성요소(예를 들어, 엔진, 크랭크 축, 차체, 바퀴, 사이드 미러, 등)는 대동소이하므로, 자동차 모델링에 적합한 하나의 템플릿이 제공될 수 있다. 이와 같은 경우에, 데이터 시트 및 참조 데이터 시트에는 대표적인 파라미터 및 파라미터 값들이 미리 설정되어 있을 수 있고, 사용자는 자신이 관심을 갖는 데이터들을 일부 변형해서 사용할 수 있다. 데이터 구조가 하나의 템플릿의 형태를 갖는 경우에, 엔지니어는 처음부터 모든 변수를 설정하고 데이터를 입력하는 종래의 방식에 비하여, 미리 설정되어 있는 형식에 관심있는 데이터만 수정해가면서 모델링을 구현함으로써 향상된 작업 효율을 얻을 수 있다.In addition, the data structure 100 according to the present invention may be one template. Each person or company has a different object to model. For example, one company might model a car, while another might model a building. There may be individuals who model a system of several bodies. Depending on what you want to model, the data you need is often similar. For example, in the case of general car modeling, since the essential components of the car (for example, the engine, the crankshaft, the body, the wheels, the side mirrors, etc.) are roughly the same, one template suitable for the car modeling may be provided. . In such a case, representative parameters and parameter values may be preset in the data sheet and the reference data sheet, and the user may use some modified data of interest. When the data structure is in the form of a single template, the engineer improves by implementing modeling while modifying only the data of interest in the preset format, as compared to the conventional way of setting all variables and entering data from scratch. Work efficiency can be obtained.

본 발명에 따른 데이터 구조, 또는 템플릿으로 제공되는 데이터 구조는 중요한 의미를 갖는다. 통상적으로는 소스 코드 또는 종래의 GUI 기반 모델링을 이용하여 모델링한 결과 값이, 예를 들면 3D 그래픽의 형태 등의 결과물로서 제공될 수 있다. 이러한 경우에 소스코드 또는 GUI 기반 입력 데이터들은 다른 사용자 또는 업체에서 파악하고 활용하는 것이 용이하지 않다. 그러나 본 발명에 따른 데이터 구조는, 예를 들어 스프레드 시트 기반으로 제공되고, 이는 매우 직관적인 것으로서 검색 및 수정이 용이하다. 또한 소스코드에 관한 프로그래밍 지식 또는 GUI 기반 CAE 프로그램에 대한 지식이 없어도 모델링에서 필요한 부분을 수정할 수 있다. 따라서, 본 발명에 따른 데이터 구조는 하나의 템플릿으로서 모델링 결과와 함께 또는 독자적으로 제공될 수 있다는 점에서 그 자체가 하나의 결과물이 되는 중요한 의미를 갖는다.The data structure according to the invention, or the data structure provided as a template, has an important meaning. Typically, the result value modeled using source code or conventional GUI based modeling may be provided as a result, for example, in the form of 3D graphics. In this case, source code or GUI-based input data is not easy to identify and utilize by other users or companies. However, the data structure according to the invention is provided, for example, on a spreadsheet basis, which is very intuitive and easy to search and modify. You can also make the necessary modifications to your modeling without knowledge of source code or GUI-based CAE programs. Therefore, the data structure according to the present invention has an important meaning of being a result in itself, in that it can be provided with a modeling result as a template or independently.

도 9를 참조하여 본 발명에 따른 데이터 구조를 요약하면 다음과 같다. 도 9는 본 발명에 따른 데이터 구조의 개념도를 나타낸다. 데이터 구조(100)는 설정 시트(format sheet)(910), 데이터 시트(920), 적어도 하나의 참조 시트(reference sheet)(930), 그 외에 부가적인 시트(940)를 포함할 수 있다. 이 부가 시트(940)에는 다양한 정보가 포함될 수 있다. 예를 들어, 제작자 정보, 파라미터 정보, 추가적인 예시 템플릿 등이 포함될 수 있다.Referring to Figure 9 summarizes the data structure according to the present invention. 9 shows a conceptual diagram of a data structure according to the present invention. The data structure 100 can include a format sheet 910, a data sheet 920, at least one reference sheet 930, and other additional sheets 940. The additional sheet 940 may include various information. For example, producer information, parameter information, additional example templates, and the like may be included.

설정 시트(910)는 전술한 바와 같이 여러 개의 설정 값을 갖는다. 데이터 시트(920)는 하나 이상의 데이터 테이블(921)을 갖고, 사용자 코멘트, 옵션 파라미터에 대한 데이터(테이블)과 같은 주석(annotation)(929) 정보를 포함할 수 있다.The setting sheet 910 has several setting values as described above. The data sheet 920 has one or more data tables 921 and may include annotation 929 information such as user comments, data (tables) for option parameters.

데이터 테이블(921)은 헤더 및 하나 이상의 파라미터를 갖는다. 파라미터는 전술한 바와 같이, 서로 교환 가능한 제1, 제2 파라미터, 및/또는 다른 파라미터를 참조하는 대표 파라미터, 및/또는 필수, 옵션 파라미터 등으로 이루어질 수 있다.Data table 921 has a header and one or more parameters. The parameters may be composed of representative parameters referring to the first, second parameters, and / or other parameters interchangeable with each other, and / or required, optional parameters, etc., as described above.

그러나 이와 같은 데이터 구조(100)는 예시적인 것이며, 당업자에게 이해되는 수준에서 적절한 변형이 가해질 수 있다. 예를 들어, 주석(929)는 데이터 시트(920)이 아닌 다른 데이터 시트에도 포함될 수 있다.However, such a data structure 100 is exemplary, and appropriate modifications may be made at a level understood by those skilled in the art. For example, the annotation 929 may be included in a data sheet other than the data sheet 920.

이상, 본 발명에서 개시된 블록도들은 본 발명의 원리들을 구현하기 위한 회로를 개념적으로 표현한 형태라고 당업자에게 해석될 수 있을 것이다. 유사하게, 임의의 흐름 차트, 흐름도, 상태 전이도, 의사코드 등은 컴퓨터 판독가능 매체에서 실질적으로 표현되어, 컴퓨터 또는 프로세서가 명시적으로 도시되든지 아니든지 간에 이러한 컴퓨터 또는 프로세서에 의해 실행될 수 있는 다양한 프로세스를 나타낸다는 것이 당업자에게 인식될 것이다. 따라서, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.As described above, the block diagrams disclosed in the present invention may be interpreted by those skilled in the art as a conceptual representation of a circuit for implementing the principles of the present invention. Likewise, any flow chart, flow diagram, state transitions, pseudo code, etc., may be substantially represented in a computer-readable medium to provide a variety of different ways in which a computer or processor, whether explicitly shown or not, It will be appreciated by those skilled in the art. Therefore, the above-described embodiments of the present invention can be realized in a general-purpose digital computer that can be created as a program that can be executed by a computer and operates the program using a computer-readable recording medium. The computer-readable recording medium may include a storage medium such as a magnetic storage medium (eg, a ROM, a floppy disk, a hard disk, etc.) and an optical reading medium (eg, a CD-ROM, a DVD, etc.).

도면들에 도시된 다양한 요소들의 기능들은 적절한 소프트웨어와 관련되어 소프트웨어를 실행할 수 있는 하드웨어뿐만 아니라 전용 하드웨어의 이용을 통해 제공될 수 있다. 프로세서에 의해 제공될 때, 이런 기능은 단일 전용 프로세서, 단일 공유 프로세서, 또는 일부가 공유될 수 있는 복수의 개별 프로세서에 의해 제공될 수 있다. 또한, 용어 "프로세서" 또는 "제어부"의 명시적 이용은 소프트웨어를 실행할 수 있는 하드웨어를 배타적으로 지칭하는 것으로 해석되지 말아야 하며, 제한 없이, 디지털 신호 프로세서(DSP) 하드웨어, 소프트웨어를 저장하기 위한 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 및 비휘발성 저장장치를 묵시적으로 포함할 수 있다.The functions of the various elements shown in the figures may be provided through use of dedicated hardware as well as hardware capable of executing the software in association with the appropriate software. When provided by a processor, such functionality may be provided by a single dedicated processor, a single shared processor, or a plurality of individual processors, some of which may be shared. Also, the explicit use of the term " processor "or" control unit "should not be construed to refer exclusively to hardware capable of executing software and includes, without limitation, digital signal processor May implicitly include memory (ROM), random access memory (RAM), and non-volatile storage.

본 명세서의 청구항들에서, 특정 기능을 수행하기 위한 수단으로서 표현된 요소는 특정 기능을 수행하는 임의의 방식을 포괄하고, 이러한 요소는 특정 기능을 수행하는 회로 요소들의 조합, 또는 특정 기능을 수행하기 위한 소프트웨어를 수행하기 위해 적합한 회로와 결합된, 펌웨어, 마이크로코드 등을 포함하는 임의의 형태의 소프트웨어를 포함할 수 있다. In the claims hereof, the elements depicted as means for performing a particular function encompass any way of performing a particular function, such elements being intended to encompass a combination of circuit elements that perform a particular function, Or any form of software, including firmware, microcode, etc., in combination with circuitry suitable for carrying out the software for the processor.

본 명세서에서 본 발명의 원리들의 '일 실시예'와 이런 표현의 다양한 변형들의 지칭은 이 실시예와 관련되어 특정 특징, 구조, 특성 등이 본 발명의 원리의 적어도 하나의 실시예에 포함된다는 것을 의미한다. 따라서, 표현 '일 실시예에서'와, 본 명세서 전체를 통해 개시된 임의의 다른 변형례들은 반드시 모두 동일한 실시예를 지칭하는 것은 아니다.Reference throughout this specification to " one embodiment " of the principles of the invention and various modifications of such expression in connection with this embodiment means that a particular feature, structure, characteristic or the like is included in at least one embodiment of the principles of the invention it means. Thus, the appearances of the phrase " in one embodiment " and any other variation disclosed throughout this specification are not necessarily all referring to the same embodiment.

본 명세서에서, 'A와 B 중 적어도 하나'의 경우에서 '~중 적어도 하나'의 표현은, 첫 번째 옵션 (A)의 선택만, 또는 두 번째 열거된 옵션 (B)의 선택만, 또는 양쪽 옵션들 (A와 B)의 선택을 포괄하기 위해 사용된다. 추가적인 예로 'A, B, 및 C 중 적어도 하나'의 경우는, 첫 번째 열거된 옵션 (A)의 선택만, 또는 두 번째 열거된 옵션 (B)의 선택만, 또는 세 번째 열거된 옵션 (C)의 선택만, 또는 첫 번째와 두 번째 열거된 옵션들 (A와 B)의 선택만, 또는 두 번째와 세 번째 열거된 옵션 (B와 C)의 선택만, 또는 모든 3개의 옵션들의 선택(A와 B와 C)이 포괄할 수 있다. 더 많은 항목들이 열거되는 경우에도 당업자에게 명백하게 확장 해석될 수 있다.In this specification, the expression 'at least one of' in the case of 'at least one of A and B' means that only the selection of the first option (A) or only the selection of the second listed option (B) It is used to encompass the selection of options (A and B). As an additional example, in the case of 'at least one of A, B and C', only the selection of the first enumerated option (A) or only the selection of the second enumerated option (B) Only the selection of the first and second listed options A and B or only the selection of the second and third listed options B and C or the selection of all three options A, B, and C). Even if more items are listed, they can be clearly extended to those skilled in the art.

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 명세서를 통해 개시된 모든 실시예들과 조건부 예시들은, 본 발명의 기술 분야에서 통상의 지식을 가진 당업자가 독자가 본 발명의 원리와 개념을 이해하도록 돕기 위한 의도로 기술된 것으로, 당업자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. It is to be understood that all embodiments and conditional statements disclosed herein are intended to assist the reader in understanding the principles and concepts of the present invention to those skilled in the art, It will be understood that the invention may be embodied in various other forms without departing from the spirit or essential characteristics thereof. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.

Claims (15)

처리 모듈이 헤더, 적어도 하나의 파라미터, 및 상기 헤더와 상기 파라미터에 각각 대응하는 헤더 값과 파라미터 값을 포함하는 적어도 하나의 데이터 테이블로부터 상기 헤더 값 및 상기 파라미터 값을 추출하는 단계; 및
상기 추출된 헤더 값 및 파라미터 값을 모델링 모듈로 제공하는 단계를 포함하고,
상기 데이터 구조는 스프레드 시트의 구조를 갖고, 상기 헤더 값 및 상기 파라미터 값은 상기 모델링 모듈이 모델링을 수행하기 위해 이용되는 것을 특징으로 하는 전산 기반 모델링 방법.
Processing by the processing module to extract the header value and the parameter value from at least one data table including a header, at least one parameter, and a header value and a parameter value corresponding to the header and the parameter, respectively; And
Providing the extracted header values and parameter values to a modeling module,
And the data structure has a spreadsheet structure, and wherein the header value and the parameter value are used by the modeling module to perform modeling.
청구항 1에 있어서,
상기 처리 모듈은 상기 모델링 모듈의 파라미터 DB를 포함하고,
상기 제공하는 단계는, 상기 처리 모듈이 상기 추출된 헤더 값 및 파라미터 값을 상기 파라미터 DB에 기초하여 미리 정해진 형식에 따라 상기 모델링 모듈로 제공하는 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 1,
The processing module includes a parameter DB of the modeling module,
The providing may include, by the processing module, providing the extracted header value and the parameter value to the modeling module according to a predetermined format based on the parameter DB.
청구항 2에 있어서,
상기 미리 정의된 형식은, 상기 파라미터 DB에 저장된 논리 순서에 따르며, 이 논리 순서는 상기 모델링 모듈이 입력된 데이터를 처리하는 순서에 대응하는 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 2,
The predefined format is based on a logical order stored in the parameter DB, and the logical order corresponds to the order in which the modeling module processes the input data.
청구항 1에 있어서,
상기 적어도 하나의 파라미터는, 제1 파라미터와 제2 파라미터를 포함하고,
상기 데이터 테이블을 구성하는 상기 제1 파라미터와 상기 제2 파라미터의 열(column)은 교환 가능한 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 1,
The at least one parameter includes a first parameter and a second parameter,
And the columns of the first parameter and the second parameter constituting the data table are interchangeable.
청구항 1에 있어서,
상기 적어도 하나의 파라미터는, 필수 파라미터와 옵션 파라미터를 포함하고,
상기 처리모듈은 상기 필수 파라미터에 대응하는 파라미터 값이 존재하지 않는 경우, 에러 메시지를 발생시키는 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 1,
The at least one parameter includes a required parameter and an optional parameter,
The processing module generates an error message when there is no parameter value corresponding to the required parameter.
청구항 1에 있어서,
상기 추출하는 단계는, 상기 적어도 하나의 데이터 테이블과 분리되어 있으며 헤더를 포함하지 않는 별도의 테이블에 포함된 파라미터 값은 추출하지 않는 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 1,
The extracting may include extracting parameter values included in a separate table that is separate from the at least one data table and does not include a header.
청구항 1에 있어서,
상기 파라미터 값은, 상기 데이터 테이블이 포함된 데이터 시트(data shee)와는 다른 데이터 시트에 포함된 데이터 테이블을 참조하는 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 1,
And the parameter value refers to a data table included in a data sheet different from the data sheet including the data table.
청구항 1에 있어서,
상기 적어도 하나의 파라미터는, 다른 파라미터 값들을 대표하는 대표 파라미터를 포함하고,
상기 다른 파라미터 값들은 상기 대표 파라미터에 의해 참조되는 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 1,
The at least one parameter comprises a representative parameter representative of other parameter values,
And said other parameter values are referenced by said representative parameter.
청구항 1에 있어서,
상기 데이터 구조는 상기 적어도 하나의 데이터 테이블을 포함하는 데이터 시트와 별개인 설정 데이터 시트를 포함하고,
상기 설정 데이터 시트는 상기 처리 모듈이 지원하는 모델링 모듈에 대한 정보, 상기 처리 모듈이 지원하는 데이터 구조에 대한 정보, 및 상기 처리 모듈이 데이터 구조로부터 데이터를 추출하는 영역에 대한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 1,
The data structure comprises a configuration data sheet separate from the data sheet comprising the at least one data table,
The setting data sheet includes at least one of information on a modeling module supported by the processing module, information on a data structure supported by the processing module, and information on a region from which the processing module extracts data from the data structure. Computational based modeling method characterized in that.
청구항 1에 있어서,
상기 데이터 구조는 설정 시트, 데이터 시트, 적어도 하나의 참조 시트, 부가 시트를 포함하고,
상기 데이터 시트는 상기 적어도 하나의 데이터 테이블과 주석 데이터를 포함하고,
상기 부가 시트는 예시적인 데이터 시트를 나타내는 예시 템플릿을 포함하는 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 1,
The data structure comprises a setting sheet, a data sheet, at least one reference sheet, an additional sheet,
The data sheet includes the at least one data table and annotation data,
And the additional sheet includes an example template representing an exemplary data sheet.
삭제delete 청구항 1에 있어서,
상기 스프레드 시트는 엑셀인 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 1,
The spreadsheet is a computer-based modeling method, characterized in that the Excel.
청구항 1에 있어서,
상기 데이터 구조는 웹 기반으로 제공되는 복수개의 테이블을 포함하는 것을 특징으로 하는 전산 기반 모델링 방법.
The method according to claim 1,
And the data structure includes a plurality of tables provided on a web basis.
청구항 1 내지 8의 전산 기반 모델링 방법 중 어느 한 항의 방법을 수행하기 위한 프로그램 코드를 기록한, 컴퓨터로 판독 가능한 기록 매체.A computer-readable recording medium having recorded thereon program code for performing the method of any one of the computer-based modeling methods of claims 1 to 8. 헤더, 적어도 하나의 파라미터, 및 상기 헤더와 상기 파라미터에 각각 대응하는 헤더 값과 파라미터 값을 포함하는 적어도 하나의 데이터 테이블을 포함하는 데이터 구조;
상기 데이터 구조로부터 상기 헤더 및 상기 파라미터 값을 추출하여 모델링 모듈로 제공하는 처리 모듈; 및
상기 헤더 값 및 상기 파라미터 값을 이용하여 모델링을 수행하는 모델링 모듈을 포함하고,
상기 데이터 구조는 스프레드 시트의 구조를 갖고, 상기 헤더 값 및 상기 파라미터 값은 상기 모델링 모듈이 모델링을 수행하기 위해 이용되는 것을 특징으로 하는 전산 기반 모델링 시스템.
A data structure comprising a header, at least one parameter, and at least one data table including the header and a header value and a parameter value respectively corresponding to the header and the parameter;
A processing module which extracts the header and the parameter values from the data structure and provides them to a modeling module; And
A modeling module configured to perform modeling using the header value and the parameter value,
And the data structure has a spreadsheet structure, and wherein the header value and the parameter value are used by the modeling module to perform modeling.
KR1020130070327A 2013-06-19 2013-06-19 Method for mbd modeling based on computer engineering KR101367398B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130070327A KR101367398B1 (en) 2013-06-19 2013-06-19 Method for mbd modeling based on computer engineering

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130070327A KR101367398B1 (en) 2013-06-19 2013-06-19 Method for mbd modeling based on computer engineering

Publications (1)

Publication Number Publication Date
KR101367398B1 true KR101367398B1 (en) 2014-02-26

Family

ID=50271965

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130070327A KR101367398B1 (en) 2013-06-19 2013-06-19 Method for mbd modeling based on computer engineering

Country Status (1)

Country Link
KR (1) KR101367398B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101619192B1 (en) * 2015-09-22 2016-05-10 펑션베이(주) Method for Modifying MBD Modeling based on Computer Engineering
KR20180088229A (en) * 2017-01-26 2018-08-03 동아대학교 산학협력단 Integration of CAD and CAE for the optimum design of an automotive part
CN110298626A (en) * 2019-06-10 2019-10-01 西安西电电气研究院有限责任公司 Switchgear manufacturing operations processing method and processing device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110068236A (en) * 2009-12-15 2011-06-22 지에이치테크(주) Method for unification and design of oceanic structure, and media that can record computer program sources for method thereof
JP2012069108A (en) 2010-09-23 2012-04-05 Dassault Systemes Design of modeled object within session of cad system interacting with database
KR20120127279A (en) * 2011-05-11 2012-11-21 다솔 시스템므 Designing a three-dimensional modeled assembly of objects in a three-dimensional scene
KR20130054739A (en) * 2011-11-17 2013-05-27 현대중공업 주식회사 System and method for managing electronic draft of vessel design

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110068236A (en) * 2009-12-15 2011-06-22 지에이치테크(주) Method for unification and design of oceanic structure, and media that can record computer program sources for method thereof
JP2012069108A (en) 2010-09-23 2012-04-05 Dassault Systemes Design of modeled object within session of cad system interacting with database
KR20120127279A (en) * 2011-05-11 2012-11-21 다솔 시스템므 Designing a three-dimensional modeled assembly of objects in a three-dimensional scene
KR20130054739A (en) * 2011-11-17 2013-05-27 현대중공업 주식회사 System and method for managing electronic draft of vessel design

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101619192B1 (en) * 2015-09-22 2016-05-10 펑션베이(주) Method for Modifying MBD Modeling based on Computer Engineering
KR20180088229A (en) * 2017-01-26 2018-08-03 동아대학교 산학협력단 Integration of CAD and CAE for the optimum design of an automotive part
KR101896112B1 (en) * 2017-01-26 2018-09-07 동아대학교 산학협력단 Integration of CAD and CAE for the optimum design of an automotive part
CN110298626A (en) * 2019-06-10 2019-10-01 西安西电电气研究院有限责任公司 Switchgear manufacturing operations processing method and processing device

Similar Documents

Publication Publication Date Title
RU2474874C2 (en) Method and apparatus for generating parametric model associated with geometry of three-dimensional objects
KR101619192B1 (en) Method for Modifying MBD Modeling based on Computer Engineering
US20150254693A1 (en) Manufacturing cost estimator
Mattern et al. BIM-based modeling and management of design options at early planning phases
JP6797238B2 (en) 3D graphic annotation with semantic attributes
US20230161921A1 (en) Goal-driven computer aided design workflow
KR101367398B1 (en) Method for mbd modeling based on computer engineering
Strobbe et al. Toward a visual approach in the exploration of shape grammars
Dimyadi et al. Using IFC to support enclosure fire dynamics simulation
US9697326B1 (en) Topology graph optimization
US20150193563A1 (en) Method for creating template of building component, method for creating primitive, and apparatus for modeling building component
US11373022B2 (en) Designing a structural product
Fu et al. Automated manufacturing planning approach based on volume decomposition and graph-grammars
EP3367296A1 (en) A computer-implemented method of identifying a perforated face in a geometrical three-dimensional model
Lachmayer et al. Product evolution and optimization based on gentelligent components and product life cycle data
Scheffler et al. Modelling CAD models: Method for the model driven design of CAD models for deep drawing tools
US20150363513A1 (en) Method and system for designing products
Bocevska et al. An example of application design using solidworks application programming interface
US20100204961A1 (en) Integrated system design
US20170153874A1 (en) Method of relational copy-paste of entities of a modelled system
JP3898485B2 (en) Drawing drawing display device, drawing drawing display method, and recording medium
KR20230117765A (en) Process mining for multi-instance processes
Shaheer Zubairi et al. A sensitivity approach for eliminating clashes from computer aided design model assemblies
Gembarski et al. Interactive Geometric Configuration Using Sketch-Based CAD Models
Pratt Extension of the STEP standard for parametric CAD models

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20161229

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180110

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181224

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20191226

Year of fee payment: 7