首页 / 国际专利分类库 / 电学 / 基本电气元件 / 电开关;继电器;选择器;紧急保护装置 / 应用 / .机器人 / 파이썬 코드 자동생성을 통한 로봇 시뮬레이션 시스템

파이썬 코드 자동생성을 통한 로봇 시뮬레이션 시스템

申请号 KR1020080129661 申请日 2008-12-18 公开(公告)号 KR1020090066253A 公开(公告)日 2009-06-23
申请人 (주)원익로보틱스; 发明人 장경석; 전범재; 이상엽;
摘要 A robot simulation system by automatically generating a Python code is provided to enable a general user to control a robot by arranging graphic modules in a screen, connecting pipelines, and inputting property of each module through a GUI(Graphic User Interface). A GUI module(102) provides a user interface for virtually simulating a robot. A simulation module(104) performs dynamic simulation by considering a virtual environment and robot configuration. A dynamic engine(106) controls a virtual simulation operation based on dynamics. A script generator(114) generates a python script(116) by using the GUI. A control module(112) advances a robot control test in real-time by using the Python script received from the script generator.
权利要求
  • 3차원적으로 구현된 가상의 로봇의 동작을 시뮬레이션하여 시뮬레이션 결과 데이터를 생성하고, 상기 시뮬레이션 결과 데이터를 네트워크를 통해 시뮬레이션 클라이언트에 전송하는 시스템으로서,
    상기 시뮬레이션 클라이언트는
    로봇에 대한 가상 시뮬레이션을 위한 사용자 인터페이스를 제공하는 GUI 모듈과;
    가상 환경이나 로봇 구성을 고려한 동적 시뮬레이션을 수행하는 시뮬레이션 모듈과;
    동역학을 기반으로 가상 시뮬레이션 동작을 제어하는 동역학엔진과;
    그래픽 사용자 인터페이스를 이용하여 파이썬 스크립트를 생성하는 스크립트 생성기와;
    상기 스크립트 생성기에서 전송된 파이썬 스크립트를 이용하여 실시간 로봇 컨트롤 테스트를 진행하는 컨트롤 모듈;을 포함하는 파이썬 코드 자동생성을 통한 로봇 시뮬레이션 시스템.
  • 说明书全文

    파이썬 코드 자동생성을 통한 로봇 시뮬레이션 시스템{ROBOT SIMULATION SYSTEM USING THE NETWORK}

    본 발명은 네트워크를 이용한 로봇 시뮬레이션 시스템에 관한 것으로서, 보다 상세하게는 파이썬 스크립트를 이용하여 실시간으로 다수의 사용자가 협력하면서 로봇 시뮬레이션을 진행할 수 있도록 하는 네트워크를 이용한 로봇 시뮬레이션 시스템에 관한 것이다.

    로봇은 여러 종류로 구분되지만 대표적인 것으로는 바퀴나 이동수단이 구비되어 물건을 나르거나 청소를 하는 등의 정해진 간단한 작업을 하는 모바일 로봇, 하나 이상의 팔(암)을 움직이면서 부품을 이송하거나 용접 작업 등을 하는 산업용 로봇, 인체의 구조와 유사한 형태로 구성되어 사람의 행동과 비슷한 행동을 할 수 있는 휴머노이드 로봇 등이 있다.

    이외에도 개나 말과 같이 네 개의 다리로 구성되어 4족 보행을 하면서 화물운반이나 전투, 인명구조 작업 등을 하는 견마형 로봇도 개시되고 있는데, 본 발명에서 로봇이라 함은 이러한 모바일 로봇, 산업용 로봇, 휴머노이드 로봇, 견마형 로봇 등을 모두 통칭하는 의미로 사용된다.

    하나의 로봇을 개발하기 위해서는 로봇을 구성하는 하드웨어와, 이를 제어하는 소프트웨어를 동시에 구현하여야 하며, 하드웨어적으로 구현된 로봇을 제어하는 소프트웨어에 에러가 있거나 실제 하드웨어의 구조와 부합하지 않을 때에는 하드웨어 또는 소프트웨어를 다시 설계하여야 한다.

    그러나 간단한 로봇이라 할지라도 다수의 모터와 센서, 관절, 컴퓨터 등으로 이루어지므로, 제작이 완료된 상태에서 다시 구성요소를 변경하는 것은 시간적인 측면이나 비용적인 측면에서 큰 손실을 가져올 수 있다. 또한 로봇을 완성하기 전에는 로봇의 동작이나 구조에 어떠한 문제가 있는지를 정확하게 파악할 수 없으므로, 여러 번의 시행착오를 거쳐야만 정확한 로봇을 제작할 수 있었다.

    이러한 불편함을 제거하기 위하여 실제 로봇을 제작하기 전에 소프트웨어상에서 가상 로봇을 제작하고, 이를 3차원적으로 시뮬레이션하면서 실제의 동작과 비교할 수 있는 도구들이 개시되고 있다.

    이러한 시뮬레이션 도구들은 로봇을 설계하는 연구자의 로컬 시스템 내에 로봇의 설계 데이터를 저장하고, 소프트웨어상에서 가상으로 동작을 하면서 문제점이 있는지를 파악하게 된다.

    그러나 종래기술에 따른 시뮬레이션 도구들은 로봇을 설계하고 제작하기 위하여 참가하는 다수의 연구자들이 각자의 로컬 시스템에서 별개로 로봇을 시뮬레이션할 수 있을 뿐, 다수의 연구자가 하나의 시뮬레이션 결과를 동시에 보면서 의견을 나누거나 로봇의 설정이나 시뮬레이션 조건을 변경할 수 있는 인터페이스를 제공하지는 못하고 있었다.

    또한 대학교나 학원에서 로봇 설계와 시뮬레이션에 대하여 강의를 하는 경우, 교수나 강사가 자신의 단말기에서 시뮬레이션을 실행하면서 진행상태와 시뮬레이션 결과를 다수의 수강생에게 전달하거나, 반대로 다수의 수강생들의 단말기에서 이루어지는 시뮬레이션 결과를 교수의 단말기로 전송하여 출력함으로써 수강생에 대한 평가나 채점이 이루어질 수 있도록 하기 위해서는 네트워크를 통한 데이터 공유 시스템이 구축되어 있어야 하지만, 기존의 기술들은 이러한 요구를 충족시키지 못하는 불편함이 있었다.

    본 발명은 전술한 문제점을 해결하기 위하여 안출된 것으로서, 스크립트 언어의 장점인 대화형 인터프리터 방식으로 로봇 시뮬레이션을 컨트롤할 수 있도록 하는 네트워크를 이용한 로봇 시뮬레이션 시스템을 제공하는 것을 목적으로 한다.

    3차원적으로 구현된 가상의 로봇의 동작을 시뮬레이션하여 시뮬레이션 결과 데이터를 생성하고, 상기 시뮬레이션 결과 데이터를 네트워크를 통해 시뮬레이션 클라이언트에 전송하는 시스템에 있어서, 상기 시뮬레이션 클라이언트는 로봇에 대한 가상 시뮬레이션을 위한 사용자 인터페이스를 제공하는 GUI 모듈과; 가상 환경이나 로봇 구성을 고려한 동적 시뮬레이션을 수행하는 시뮬레이션 모듈과; 동역학을 기반으로 가상 시뮬레이션 동작을 제어하는 동역학엔진과; 그래픽 사용자 인터페이스를 이용하여 파이썬 스크립트를 생성하는 스크립트 생성기와; 상기 스크립트 생성기에서 전송된 파이썬 스크립트를 이용하여 실시간 로봇 컨트롤 테스트를 진행하는 컨트롤 모듈;을 포함한다.

    본 발명에 따르면 복잡한 프로그래밍 언어를 모르는 일반인도 그래픽 모듈을 화면에 배치하고, 파이프라인을 연결하고, 모듈 속성을 입력하는 것만으로도 로봇 컨트롤이 가능해지는 장점이 있다.

    이하, 도면을 참조하여 본 발명의 실시예에 따른 네트워크를 이용한 로봇 시뮬레이션 시스템(이하, '시뮬레이션 시스템'이라 함)을 설명한다.

    도 1은 본 발명의 실시예에 따른 시뮬레이션 클라이언트의 구조를 나타낸 블럭도이다.

    도 1에 도시된 바와 같이, 본 발명의 시스템에 포함된 클라이언트(100)는 GUI 모듈(102), 시뮬레이션 모듈(104), 동역학엔진(106), 네트워크 모듈(108), 그래픽 엔진(110), 컨트롤 모듈(112), 스크립트 생성기(114)를 포함한다.

    GUI 모듈(102)은 로봇, 환경에 대한 기구학/동역학 속성 인터페이스와, 센서, 액추에이터 같은 가상 장치 인터페이스, 실시간 시뮬레이션 및 네트워크에 대한 결과 전시 및 입력 인터페이스를 제공한다. 또한 실시간 가상 실험 환경 생성, 배치 및 동역학 속성을 편집한다.

    시뮬레이션 모듈(104)은 환경, 센서 등 동역학적 요소를 고려한 로봇 동적 시뮬레이션을 수행한다.

    동역학엔진(106)은 여러 대의 로봇을 동시에 시뮬레이션할 수 있도록 하며, 다물체, 다충돌 검출 및 해석을 하고, Constraint 해석을 수행한다.

    네트워크 모듈(108)은 실시간 로봇 개발 및 시뮬레이션 결과 공유를 지원하고, 상호 협력 개발 환경(Collaborative Network 지원)을 지원한다.

    그래픽 엔진(110)은 시뮬레이션 결과를 3차원으로 화면에 디스플레이한다.

    컨트롤 모듈(112)은 실시간 로봇 모션 알고리즘 개발 환경을 제공하며, 스크립트 엔진 인터페이스를 지원한다. 또한 파이썬(Python) 스크립트(116)를 이용하 여 실시간 로봇 컨트롤 테스트 및 디버깅 작업을 수행하며, 액츄에이터, 센서를 실시간으로 상세하게 제어할 수 있는 스크립트 엔진으로서의 기능도 수행한다.

    종래기술에서는 기본적으로 C나 C++를 통한 제어 모듈을 작성하고, 이 모듈들의 메타 수준에서 파이썬 스크립트가 사용가능하였으나, 본 발명에서는 C나 C++제어 코드 없이 파이썬 스크립트(116)만으로 액츄에이터, 센서 등의 입출력을 세부적으로 제어할 수 있다.

    따라서 기존에 C/C++로 제어를 하던 것에 비하여 스크립트 언어의 장점인 대화형 인터프리터(interpreter)방식으로 코드 라인 단위로 실시간 테스트 및 디버깅이 가능해진다.

    또한 DLL(Dynamic Link Library)를 통한 C/C++ 제어 지원이 가능하다.

    스크립트 생성기(114)는 Visual Programming Language로서, C/C++, 파이썬 등의 프로그래밍 언어를 모르는 사람도 그래픽 모듈을 화면에 배치하고 파이프라인을 연결하고 모듈 속성을 입력하는 것만으로 로봇 컨트롤이 가능하도록 해준다.

    따라서 초등학생 수준의 사용자가 로봇 컨트롤이 가능하므로 로봇 교육용으로 적합하다.

    도 2는 파이썬 스크립트 생성과정을 나타낸 예시도이다. 도 2에 도시한 바와 같이, 인터페이스 화면에 배치한 모듈로부터 파이썬 스크립트를 자동 생성한다.

    또한 파이썬 스크립트뿐만 아니라 다른 스크립트 또는 C/C++코드의 생성도 가능하다.

    도 3은 사용자 인터페이스 화면을 나타낸 구성도이다.

    사용자 인터페이스에는 시뮬레이션창(Simulation Window), 노드트리보기(Node Tree View), 특성보기(Property View), 객체창(Object Window), 감시창(Watch Window), 네트워크창(Network Window), 정보보기(Information Plot View), 스크립트 실행창(Script Execution Window)이 구성된다.

    시뮬레이션창은 시뮬레이션의 결과가 보여지고 환경을 편집할 수 있는 메인 화면이다.

    노드트리보기는 시뮬레이션에 사용한 로봇의 각 파트, 액츄에이터, 센서 등의 정보를 트리구조형태로 표시한다.

    특성보기는 로봇의 각 파트, 액츄에이터, 센서 등의 세부적인 정보를 볼 수 있는 창이다.

    객체창은 로봇이 로드될 환경을 드래그앤드랍(Drag&Drop)으로 구성할 수 있는 창이다.

    감시창은 로봇의 액츄에이터, 센서 등의 실시간 값변화를 관찰할 수 있는 창이다.

    네트워크창은 다른 시뮬레이터와 통신하여 시뮬레이션 정보를 실시간으로 교환할 수 있는 통신창이다.

    정보보기는 로봇의 액츄에이터, 센서 등의 실시간 값변화를 그래프로 관찰할 수 있는 창이다.

    스크립트 실행창은 실시간 라인 단위로 로봇의 제어를 할 수 있는 대화형 스크립트 실행창이다.

    현재까지 많은 코드 자동생성 프로그램이 있지만 파이썬 코드 자동 생성 프로그램은 없었으며 특히 VGL(Visual programming language - 이하 비주얼 프로그래밍 랭귀지)을 이용한 파이썬 코드 자동 생성 프로그램은 최초이다. 본 로봇 시뮬레이션 프로그램(이하 본 프로그램)은 스크립트 자동 생성 모듈을 내장함으로써 로봇제어에서 파이썬을 이용했을 때의 장점 및 비주얼 프로그래밍 랭귀지를 사용했을 때의 장점 두 가지를 모두 취하고 있다.

    비주얼 프로그래밍 랭귀지는 단지 프로그램을 작성하기 편하다는 장점뿐만 아니라 데이터와 제어의 흐름을 파악하기 쉽게 도식화한다는 점도 있다. 도식화는 로봇 제어를 배우는 학생에게 있어서 로봇 제어의 큰 밑그림을 그릴 수 있게 도와 줄 뿐 아니라 거시적 로봇 제어 알고리즘 파악에 큰 도움이 된다.

    도 2에서 보듯이 모듈간의 연결은 단순한 프로그래밍을 넘어서 여러 데이터 및 로봇 제어 코드가 흐르는 방향을 나타낸다.

    또한 비주얼 프로그래밍 랭귀지는 유저가 직접 프로그래밍했을 때 발생 할 수 있는 오타로 인한 프로그램 에러를 사전에 방지가 가능하고 직접 프로그래밍 했을 시에 발생 할 수 있는 논리적 오류로 인한 프로그램 에러를 막을 수 있기 때문에 유저는 불필요한 곳 - 로봇 제어 알고리즘 개발 이외의 - 에서 발생하는 개발시간의 낭비를 최소화 하고 로봇 제어에 전념 할 수 있다.

    또한 소스코드를 생성함에 있어서의 최적화도 매우 뛰어난 수준이어서 최소한의 코드로서 원하는 제어코드를 구현 할 수 있게 제작되었다. 이는 직접 작성한 코드와 매우 유사하게 코드가 생성된다는 것이며 자동 생성된 코드를 이해하기 쉽 다는 것을 말해주기도 한다.

    비주얼 프로그래밍 랭귀지를 개발함에 있어서 중요한 점은 다음과 같다.

    1. 로봇 제어 프로그램이 선형적으로 도식화 될 수 있어야 한다.

    2. 시각적인 간결함 외에도 구현의 편리함이 수반되어야 한다.

    3. 각 모듈간의 포함관계 및 코드와의 대응 관계가 명확해야 한다.

    4. 로직 체크를 지원하여 코드 생성 이전단계의 에러를 검출 할 수 있어야 한다.

    본 프로그램이 위의 사항을 구현한 부분은 다음과 같다.

    도 3에서 보여지듯이 제어의 흐름이 선형적으로 이루어져야 각 모듈간의 플로우(flow)가 직관적이고 프로그램이 명료해 진다. 위 그림의 예를 보면 로봇에 부착된 적외선 센서의 센서값을 위주로 로봇의 모터가 회전하게 프로그램 되어 있음을 쉽게 파악 할 수 있다.

    본 프로그램은 로봇 제어 시퀀스를 프로그래밍하여 로봇을 제어하는 방법을 채택하였고 이 방법은 제어 프로그램을 선형적 흐름으로 도식화하기에 유리하며 따라서 비주얼 프로그래밍 랭귀지로 구현하기에 용이하였다.

    NDS GL은 모듈의 종류별로 다른 색을 사용하여 나타내고 데이터의 입력과 출력의 방향을 지정 함으로서 프로그램을 한눈에 파악하기 편하게 디자인 되었다. 또한 간단한 '드래그 앤 드롭' 모듈의 자유로운 배치와 모듈간을 연결 할 수 있도록 제작하여 프로그램을 만들기가 쉽고 빠른 제작이 가능하다.

    NDS GL에서 각 모듈은 파이썬 코드와 일대일로 대응하고 파이썬 코드에 필요한 변수등은 모듈에 적용하는 값으로 대치 될 수 있어야 한다.

    본 프로그램은 로봇의 제어부와 센서부를 모듈화하고 각 모듈의 특성에 맞게 되응되는 파이썬 코드를 제작하였고 모듈간의 연결을 코드의 흐름으로 변경하여 모듈간의 데이터 플로우가 자연스러운 파이썬 코드로 변경 될 수 있도록 제작 되었다.

    제어 프로그램의 흐름 및 변수값 입력등에서 문제가 없는지 NDS GL에서 체크를 미리 자동으로 하기 때문에 생성되는 파이썬 코드에는 로직상의 문제는 없다고 가정해도 무리가 없다.

    본 프로그램은 실제로 로직을 테스트하는 코드가 로직체크를 담당하므로 로직체크의 정확성은 매우 뛰어나다.

    파이썬 코드의 장점은 별도의 프로그램 없이도 소스를 열어보고 편집 할 수 있다는 데 있다.

    이는 파이썬 코드는 자기 자신을 숨기려 하지 않으며 누구나 쉽게 소스의 관찰 및 소스의 재수정이 용이 하다는 점을 나타낸다.

    파이썬 코드는 윈도우의 가장 기본적인 프로그램인 메모장에서도 열 수 있고 편집이 가능하다. 또한 별도의 빌드(build)과정 없이 적용할 수 있다.(파이썬에서 자체적으로 컴파일코드를 생성한다. - 유저가 별도로 할 필요가 없다.)

    따라서 네트워크 상으로 전송하는 파이썬 코드는 쉽게 재수정이 가능하며 이는 개발 시간의 단축을 의미한다.

    본 프로그램에서 파이썬 코드의 역할은 단순히 스크립트를 이용한 보조작업(하이레벨의 조작)에 그치는 것이 아니라 직접적인 로봇 제어(로우 레벨로서 컨트롤에 개입)에 사용된다는 점이 특이할 만 하다.

    파이썬은 고수준의 프로그래밍 랭귀지로서 코드를 이해하기 쉬우며 수정이 용이한 장점을 갖고 있는 언어이다. 이런 고수준의 언어로 직접적인 로봇제어를 함으로써 로봇제어를 유연하게 할 수 있다.

    NDS GL 을 이용하여 파이썬 코드를 생성하고 생성된 코드를 사용하여 NDS에서 로봇을 제어하는 구조는 도 8과 같다.

    이 때 원하는 대로 로봇이 제어가 되지 않는다면 NDS GL에서 비주얼 프로그래밍 랭귀지를 수정하거나 파이썬 코드를 직접 수정하여 저장한 후 바로 NDS의 재기동 없이 바로 실행 할 수 있어서 '트라이 앤 픽스' 방식으로 로봇 제어 프로그램을 작성할 때 많은 시간이 절약됨은 물론 매우 편리하다.

    네트워크를 통하여 단순히 로봇 시뮬레이션 수행과 그 시뮬레이션 상황을 지켜보는 데서 그치는 것이 아니라 로봇 제어에 사용된 알고리즘을 공유함으로써 알고리즘 수정 및 보완에 있어서 상호 협력 체제를 모색 할 수 있다.

    위에서 열거한 내용대로 본 프로그램은 비주얼 프로그래밍 랭귀지의 장점과 파이썬 랭귀지의 장점을 조합하여 네트워크를 통한 유저들간의 상호 협력 체제에 매우 도움이 되게 제작되었으며 비주얼 프로그래밍 랭귀지 프로그램이 파이썬 코드를 생성해 내는 방식을 통하여 파이썬 랭귀지에 익숙하지 않은 유저들을 배려하였으며 또한 로봇 제어 코드 작성에 걸리는 시간을 단축 시켰다.

    NDS Gear의 전체 화면구성은 도 10과 같다. 기본적으로 1개의 메인 뷰어와 7개의 보조 윈도우로 이루어져 있다.

    각 윈도우들은 크기와 위치를 자유롭게 변경 할 수 있으며 도 11의 콘솔뷰와 네트워크뷰, 오브젝트 리스트 뷰처럼 중첩하여 배치하는 것도 가능하다. 또한 잘 사용하지 않는 뷰는 창을 닫아 버릴 수 있어서 원하는 뷰만 크게 배치 할 수 있다.

    도 12의 콘솔 뷰는 파이썬 모듈을 사용하여 시뮬레이션을 시작하고 시뮬레이션 진행 상황 및 관찰하려고 하는 센서, 모터 토크 등을 보여주는 창이다.

    모듈 이름을 넣는 에디트창이 있어서 이 창에 실행하길 원하는 파이썬 모듈 이름을 넣은 후 시작 버튼을 누르면 시뮬레이션이 시작된다.

    모듈에 문제가 있어 시뮬레이션이 진행 될 수 없을 경우 바로 아래의 아웃풋 윈도우에 에러 메시지가 출력된다.

    또한 파이썬 코드를 작성할 때 특정 값이나 메시지를 이 창을 통해 출력 할 수 있다.

    시뮬레이션 환경을 구성할 때 사용되는 라이브러리들은 이미지 리스트로 종류별로 오브젝트 리스트 뷰를 구성하고 있다.(도 13)

    이 리스트 뷰에서 배치하고자 하는 물체를 드래그 앤 드롭으로 메인 뷰에 옮겨 놓으면 물체가 해당 위치에 배치된다. 배치된 물체의 위치 및 방향은 수정이 가능하다.

    도 14의 오브젝트 트리 뷰는 시뮬레이션 환경을 구성하는 물체의 신 그래프를 보여준다. 각 물체들의 구성이 어떻게 되어있는지 트리 구조로 보여준다.

    이 뷰에서 각 노드의 속성 및 관찰 여부등을 선택 할 수 있다.

    도 15의 관찰뷰는 사용자가 관찰하고 싶은 변수값을 보여주는 뷰이다. 관찰하고자 하는 항목은 오브젝트 트리뷰에서 선택함으로써 관찰 뷰에 등록 할 수 있고 항목의 종류에 따라 관찰이 가능한 세부항목이 자동으로 등록 된다.

    이 중에서 특별히 시간상 값의 변화를 관찰하고 싶은 항목은 항목이름 앞의 체크 버튼을 클릭함으로써 플롯뷰를 통해 관찰할 수 있다.

    도 16의 플롯뷰는 관찰을 희망하는 데이터를 시간에 따른 변화를 그래프를 통해 보여주는 뷰이다. 관찰 뷰에서 선택된 항목들의 값의 변화를 그래프로 보여주며 여러가지 값을 동시에 나타낼 수 있어 값들을 비교해 보기 용이하다.

    플롯뷰의 단위는 관찰 항목의 입력값에 따라 자동으로 범위가 조정되며 리셋버튼을 제공하여 현재 시점에서부터 플롯을 다시 그릴 수 있다.

    도 17의 프로퍼티뷰는 선택된 노드의 속성을 디스플레이하는 창으로써 유저가 선택한 노드의 동역학 속성과 모델 속성을 보여주며 선택한 노드가 가상 디바이스(가상 센서 혹은 가상 모터)인 경우에는 가상 디바이스의 속성도 보여준다.

    도 18의 네트워크뷰는 VSL(Virtual Simulation Lab - NDS 사용자간의 연결을 담당하는 서버 프로그램) 접속 및 실험실 개설과 접속한 실험실내의 유저들간의 채팅 및 파일 전송 등을 할 수 있는 뷰이다.

    네트워크뷰는 현재 네트워크 상태에 따라 뷰의 모습이 변하며 네트워크에 접속 하지 않을 경우엔 창을 종료 시킬 수 있다.

    이상 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명하였지만, 상술한 본 발명의 기술적 구성은 본 발명이 속하는 기술 분야의 당업자가 본 발명의 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해되어야 하고, 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

    도 1은 본 발명의 실시예에 따른 시뮬레이션 클라이언트의 구조를 나타낸 블럭도.

    도 2는 파이썬 스크립트 생성과정을 나타낸 예시도.

    도 3은 사용자 인터페이스 화면을 나타낸 구성도.

    QQ群二维码
    意见反馈