전술한 기술적 과제를 달성하기 위한 본 발명의 특징은 지능형 로봇 제어 시뮬레이션 시스템에 관한 것으로서, 상기 지능형 로봇 제어 시뮬레이션 시스템은,
그래픽 툴을 이용하여 시뮬레이션용 로봇을 제작하고, 제작된 시뮬레이션용 로봇에 고유 식별 정보를 부여하고 저장하는 시뮬레이션용 로봇 제작 모듈,
그래픽 툴을 이용하여 상기 시뮬레이션용 로봇이 구동될 가상 환경이 되는 시뮬레이션용 환경을 제작하고, 제작된 시뮬레이션용 환경에 고유 식별 정보를 부여하여 저장하는 시뮬레이션용 환경 제작 모듈, 및
상기 시뮬레이션용 로봇을 구동하기 위한 로봇 프로그램 제작부를 포함하고 , 저장된 상기 시뮬레이션용 로봇 및 상기 시뮬레이션용 환경을 로딩하고, 상기 로봇 프로그램 제작부를 이용하여 사용자에 의해 작성된 구동 프로그램에 따라 상 기 시뮬레이션용 환경상에서 상기 시뮬레이션용 로봇의 동작을 3차원 그래픽으로 시뮬레이션하는 로봇 시뮬레이션 모듈
을 구비하여, 그래픽상에서 가상 로봇 및 가상 로봇이 구동될 가상 환경을 제작하고, 제작된 로봇을 가상 환경에서 시뮬레이션할 수 있도록 한다.
전술한 특징을 갖는 지능형 로봇 제어 시뮬레이션 시스템의 상기 시뮬레이션용 로봇 제작 모듈은
로봇을 구성하는 각 구성 요소(component)들에 대한 다양한 라이브러리들을 저장한 로봇 컴포넌트 데이터베이스, 상기 로봇 컴포넌트 데이터베이스에 저장된 라이브러리들을 이용하여 시뮬레이션용 로봇을 제작할 수 있는 로봇 제작부, 및 사용자 인터페이스부를 구비하고,
상기 사용자 인터페이스부는
로봇 컴포넌트에 대한 목록 및 각 로봇 컴포넌트 데이터베이스로부터 판독된 로봇 컴포넌트에 대한 라이브러리들의 목록을 제공하는 로봇 컴포넌트 선택창,
상기 로봇 컴포넌트 선택창에 의해 선택된 로봇 컴포넌트의 라이브러리에 대한 이미지 파일을 디스플레이시키는 로봇 컴포넌트 프리뷰,
상기 로봇 컴포넌트 선택창에 의해 선택된 로봇 컴포넌트의 라이브러리에 대한 속성 정보를 디스플레이시키는 로봇 컴포넌트 속성창,
상기 로봇 컴포넌트 선택창에서 선택된 로봇 컴포넌트들을 결합하여 디스플레이시키는 로봇 제작창을 구비하고,
상기 로봇 제작부는 상기 사용자 인터페이스부를 통해 사용자로부터 선택되 는 로봇 컴포넌트들을 이용하여 시뮬레이션용 로봇을 제작하고, 제작되는 시뮬레이션용 로봇을 상기 로봇 제작창을 통해 디스플레이시키는 것이 바람직하다.
또한, 전술한 특징을 갖는 지능형 로봇 제어 시뮬레이션 시스템의 상기 시뮬레이션용 로봇 제작 모듈은 로봇 컴포넌트들에 대한 라이브러리를 제작할 수 있는 그래픽 툴을 제공하고, 상기 그래픽 툴을 이용하여 제작된 라이브러리들은 상기 로봇 컴포넌트 데이터베이스에 기저장된 라이브러리들과 함께 저장시키는 것이 바람직하다.
또한, 전술한 특징을 갖는 지능형 로봇 제어 시뮬레이션 시스템의 상기 시뮬레이션용 로봇 제작 모듈은 로봇 시뮬레이션부를 더 구비하고, 상기 로봇 시뮬레이션부는 제작된 시뮬레이션용 로봇의 기본 동작을 시뮬레이션하고 상기 로봇을 구성하는 각 컴포넌트의 속성들을 확인하여 정상적으로 동작될 수 있는 로봇인지 여부를 판단하는 것이 바람직하다.
또한, 전술한 특징을 갖는 지능형 로봇 제어 시뮬레이션 시스템의 상기 시뮬레이션용 환경 제작 모듈은,
적어도 하나 이상의 기본 환경들에 대한 라이브러리 및 상기 기본 환경에 적용시킬 수 있는 적어도 하나 이상의 오브젝트들에 대한 라이브러리들을 저장 및 관리하는 환경 오브젝트 데이터베이스, 상기 환경 오브젝트 데이터베이스에 저장된 라이브러리들을 이용하여 시뮬레이션용 환경을 제작할 수 있는 환경 제작부, 사용자 인터페이스부 및 환경 저장부를 구비하고,
상기 사용자 인터페이스부는
상기 환경 오브젝트 데이터베이스에 저장된 기본 환경의 라이브러리에 대한 목록을 제공하는 기본 환경 선택창,
상기 환경 오브젝트 데이터베이스에 저장된 오브젝트의 라이브러리에 대한 목록을 제공하는 오브젝트 선택창,
상기 기본 환경 선택창 및 오브젝트 선택창에 의해 선택된 기본 환경 및 오브젝트들을 결합하여 디스플레이시키는 환경 제작창을 구비하고,
상기 환경 제작부는 상기 사용자 인터페이스부를 통해 사용자로부터 선택되는 기본 환경 및 오브젝트들을 서로 결합하여 시뮬레이션용 환경을 제작하고, 제작되는 시뮬레이션용 환경을 상기 환경 제작창을 통해 디스플레이시키는 것이 바람직하다.
또한, 전술한 특징을 갖는 지능형 로봇 제어 시뮬레이션 시스템의 로봇 시뮬레이션 모듈은
상기 시뮬레이션용 환경 제작 모듈에 의해 제작된 시뮬레이션용 환경을 판독하여 화면상에 가상 환경을 제공하는 환경 선택부,
상기 시뮬레이션용 로봇 제작 모듈에 의해 제작된 시뮬레이션용 로봇을 판독하여 상기 가상 환경상에 배치시키는 로봇 선택부,
상기 로봇 프로그램 제작부를 통해 제작된 구동 프로그램을 실행시켜 상기 시뮬레이션용 로봇을 시뮬레이션시키는 프로그램 시뮬레이션부, 및
사용자 인터페이스부를 구비하고,
상기 사용자 인터페이스부는
시뮬레이션용 환경 및 시뮬레이션용 로봇을 디스플레이시키고, 상기 시뮬레이션용 로봇의 시뮬레이션되는 모습을 디스플레이시키는 메인창,
상기 메인창에 디스플레이되는 시뮬레이션용 환경 및 시뮬레이션용 로봇의 각 컴포넌트 및 오브젝트들의 속성에 대한 정보를 제공하는 속성 정보창을 구비하는 것이 바람직하다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 따른 지능형 로봇 제어 시뮬레이션 시스템의 구성 및 동작을 구체적으로 설명한다.
도 1은 본 발명에 따른 지능형 로봇 제어 시뮬레이션 시스템(10)의 구성을 전체적으로 도시한 블록도이다. 도 1을 참조하면, 상기 지능형 로봇 제어 시뮬레이션 시스템(10)은 시뮬레이션용 로봇 제작 모듈(20), 시뮬레이션용 환경 제작 모듈(30), 로봇 시뮬레이션 모듈(40)을 구비한다. 상기 지능형 로봇 제어 시뮬레이션 시스템(10)을 구성하는 각 모듈들은 프로그램으로 구성되며, 컴퓨터 등에 의해 실행된다. 상기 시뮬레이션용 로봇 제작 모듈(20) 및 시뮬레이션용 환경 제작 모듈(30)은 편리한 그래픽 사용자 인터페이스(GUI)를 통해 사용자가 직접 시뮬레이션용 로봇 및 시뮬레이션용 환경을 제작할 수 있도록 한다. 상기 로봇 시뮬레이션 모듈(40)은 상기 시뮬레이션용 환경 제작 모듈(30)에 의해 제작된 시뮬레이션용 환경에서 상기 시뮬레이션용 로봇 제작 모듈(20)에 의해 제작된 시뮬레이션용 로봇의 동작을 시뮬레이션할 수 있도록 한다. 이하, 전술한 지능형 로봇 제어 시뮬레이션 시스템(10)의 시뮬레이션용 로봇 제작 모듈(20), 시뮬레이션용 환경 제작 모듈(30), 로봇 시뮬레이션 모듈(40)의 구성 및 동작에 대하여 구체적으로 설명한다.
시뮬레이션용 로봇 제작 모듈의 제1 실시예
먼저, 전술한 지능형 로봇 제어 시뮬레이션 시스템(10)의 시뮬레이션용 로봇 제작 모듈(20)의 구성 및 동작에 대하여 구체적으로 설명한다.
도 2는 상기 시뮬레이션용 로봇 제작 모듈(20)의 구성을 개략적으로 도시한 블록도이다. 도 2를 참조하면, 상기 시뮬레이션용 로봇 제작 모듈(20)은 로봇 제작부(200), 사용자 인터페이스부(210), 로봇 컴포넌트 데이터베이스(220), 로봇 저장부(230), 로봇 시뮬레이션부(240)를 구비한다.
상기 로봇 컴포넌트 데이터베이스(220)는 로봇의 각 구성요소(Component)들에 대한 다양한 라이브러리들을 구비한다. 예컨대, 로봇을 구성하는 구성 요소들, 즉 머리, 몸통, 팔, 다리 등에 대하여 각각 다양한 형태의 라이브러리들을 구비하고, 각 라이브러리들은 해당 구성 요소에 대한 이미지 파일, 크기 정보, 무게 정보, 위치 정보, 재질 정보, 다른 구성 요소들과의 결합 관련 정보(결합도) 및 기타의 속성에 대한 정보들을 저장 및 관리한다.
상기 로봇 저장부(230)는 상기 로봇 제작부(200)를 통해 제작 완료된 시뮬레이션용 로봇(290)에 대하여 소정의 고유 이름이나 고유 식별 번호를 부여하고 저장한다.
상기 로봇 시뮬레이션부(240)는 상기 로봇 제작부(200)를 통해 제작 완료된 시뮬레이션용 로봇을 구성하는 각 컴포넌트들에 대한 속성들을 이용하여 상기 시뮬레이션용 로봇이 정상적으로 동작될 수 있는 로봇인지 여부를 검증하고, 별도의 시뮬레이션용 환경이 없는 상태에서 또는 기설정된 기본적인 시뮬레이션용 환경하에 서 상기 시뮬레이션용 로봇의 기본적인 동작(예컨대 걷기, 감지 기능, 등)들을 시뮬레이션한다.
도 3은 상기 사용자 인터페이스부(210)를 예시적으로 도시한 화면 구성도이다. 도 3의 (a)를 참조하면, 상기 사용자 인터페이스부(210)는 로봇 컴포넌트 선택창(211), 하부 목록 선택창(212), 로봇 컴포넌트 프리뷰(213), 로봇 제작창(215), 및 로봇 컴포넌트 속성창(217), 센서 목록창(219), 기능툴바(214)를 구비한다. 상기 로봇 컴포넌트 선택창(211)은 로봇을 구성하는 컴포넌트들을 나열하여 화면상에 제공하며, 상기 컴포넌트들 중의 하나가 선택되면 상기 로봇 컴포넌트 데이터베이스(220)에 저장된 해당 컴포넌트에 해당되는 라이브러리들의 목록을 판독하고 하부 목록 선택창(212)에 판독된 목록들을 디스플레이시킨다.
상기 하부 목록 선택창(212)에 디스플레이된 목록 중 하나가 선택되면, 해당 목록의 구성 요소에 대한 이미지 파일을 상기 로봇 컴포넌트 프리뷰(213)에 디스플레이시킨다. 또한, 상기 하부 목록 선택창(212)에서 최종적으로 선택된 구성 요소를 드래그 앤 드롭(Drag and Drop) 방식을 이용하여 상기 로봇 제작창(215)의 원하는 위치로 이동시킨다. 도 4는 '팔'에 대한 컴포넌트('b')를 선택하고 상기 컴포넌트 중 '머리'('a')를 선택하여 속성 정보를 확인하는 상태를 예시적으로 도시한 화면 구성도이다.
상기 센서 목록창(219)은 다양한 종류의 센서 목록을 디스플레이시키고, 사용자에 의해 선택된 센서는 드래그 앤 드롭 방식으로 로봇 제작창의 로봇의 소정의 위치에 장착될 수 있다. 또한, 로봇 제작창의 로봇에서 특정 센서가 클릭되면, 해 당 센서에 대한 정보가 상기 센서 목록창(219)에 디스플레이된다. 도 3의 (a)는 센서 목록창이 선택되어 디스플레이된 상태를 예시적으로 도시한 것이다. 상기 센서 목록창을 통해 디스플레이된 센서들 중 하나를 클릭하거나 드래그 앤 드롭 방식으로 로봇 제작창의 원하는 위치에 배치시킬 수 있다.
상기 로봇 제작창(215)에 디스플레이된 구성 요소들 중 하나를 선택하면, 화면 중에 소정 영역에 로봇 컴포넌트 속성창(217)이 디스플레이되고, 상기 로봇 컴포넌트 속성창(217)에는 선택된 구성 요소에 대한 속성 정보들이 디스플레이된다. 또한, 상기 로봇 컴포넌트 선택창 및 하부 목록 선택창 또는 센서 목록창 등을 통해 선택된 각 컴포넌트들 및 센서들은 서로 결합되어 상기 로봇 제작창에 디스플레이된다.
이하, 상기 로봇 제작부(200)의 동작을 설명한다. 도 5는 본 발명의 바람직한 실시예에 따른 로봇 제작부(200)의 동작을 순차적으로 설명하는 흐름도이다. 도 5를 참조하면, 먼저 로봇 컴포넌트 중 몸통 부분을 선택할 수 있도록 로봇 컴포넌트 선택창(211)의 '몸통' 항목을 선택하고(단계 500), 상기 하부 목록 선택창(212)을 통해 디스플레이된 목록 중 원하는 '몸통'의 라이브러리 하나를 선택하고, 드래그 앤 드롭 방식을 이용하여 로봇 제작창으로 이동시킨다(단계 510). 다음, 로봇 제작창에 디스플레이된 '몸통'을 클릭하여 로봇 컴포넌트 속성창(217)을 디스플레이시킨 후, 원하는 속성들로 변경시켜 저장할 수 있으며, 속성들을 변경시키지 않고 그대로 사용할 수도 있다.
다음, 로봇 컴포넌트 중 몸통 부분을 제외한 나머지 부분들을 순차적으로 선 택하고 하부 목록 선택창을 통해 디스플레이된 목록 중 하나를 선택하여(단계 520) 드래그 앤 드롭 방식으로 몸통이 디스플레이된 로봇 제작창의 적정한 위치로 이동시킨다(단계 530). 그 외에 센서들을 선택하여 로봇 제작창의 적정한 위치로 이동시킬 수도 있다. 이러한 과정을 모든 로봇 컴포넌트들에 대하여 반복적으로 수행하고, 각 컴포넌트 및 각 센서들을 서로 결합하여 시뮬레이션용 로봇의 제작을 완성한다(단계 540).
제작된 시뮬레이션용 로봇은 고유 이름이나 고유 식별 번호를 부여하여 로봇 저장부에 저장시킨다(단계 550).
시뮬레이션용 로봇 제작 모듈의 제2 실시예
본 발명에 따른 시뮬레이션용 로봇 제작 모듈의 제2 실시예는 로봇 컴포넌트들을 직접 제작할 수 있는 3차원 그래픽 제작 모듈을 제공하고, 사용자가 라이브러리를 사용하지 아니하고 3차원 그래픽 제작 모듈을 이용하여 로봇의 각 컴포넌트들을 직접 제작할 수 있도록 한다.
이때, 사용자가 3차원 그래픽 제작 모듈을 이용하여 직접 제작한 로봇 컴포넌트들은 라이브러리들과 함께 로봇 컴포넌트 데이터베이스에 저장되며, 시뮬레이션용 로봇 제작시에 다른 라이브러리들과 함께 사용될 수 있다.
따라서, 본 발명에 따른 시뮬레이션용 로봇 제작 모듈은 사용자가 시뮬레이션용 로봇들을 직접 개발하고 디자인할 수 있게 된다.
본 실시예에 따른 시뮬레이션용 로봇 제작 모듈은 3차원 그래픽 제작 모듈을 제외한 다른 구성은 전술한 제1 실시예와 동일하므로, 제1 실시예와 중복되는 설명 은 생략한다.
시뮬레이션용 환경 제작 모듈
전술한 지능형 로봇 제어 시뮬레이션 시스템(10)의 시뮬레이션용 환경 제작 모듈(30)의 구성 및 동작에 대하여 구체적으로 설명한다.
도 6은 상기 시뮬레이션용 환경 제작 모듈(30)의 구성을 개략적으로 도시한 블록도이다. 도 6을 참조하면, 상기 시뮬레이션용 환경 제작 모듈(30)은 환경 제작부(300), 사용자 인터페이스부(310), 환경 오브젝트 데이터베이스(320), 환경 저장부(330)를 구비한다.
상기 환경 데이터베이스(320)는 기본 환경들에 대한 다양한 라이브러리들 및 각 환경에 적용시킬 수 있는 오브젝트들에 대한 다양한 라이브러리들을 구비한다. 예컨대, 기본 환경이라 함은 사무실이나 방, 거리와 같이 시뮬레이션용 로봇이 이동하거나 동작할 수 있는 가상 공간을 말하며, 각 환경에 적용시킬 수 있는 오브젝트들이란 책상, 의자, 나무 등과 같이 상기 가상 공간에 임의로 배치시킬 가상의 물건을 말한다. 상기 환경 데이터베이스(320)는 기본 환경들에 대한 라이브러리 및 오브젝트들에 대한 라이브러리들을 구비하며, 각 라이브러리들은 이미지 파일 및 기타의 속성 정보들로 이루어진다.
상기 환경 저장부(330)는 상기 환경 제작부(300)를 통해 제작 완료된 시뮬레이션용 환경(390)에 대하여 소정의 고유 이름이나 고유 식별 번호를 부여하고 저장한다.
도 7은 상기 시뮬레이션용 환경 제작 모듈(30)의 사용자 인터페이스부(310) 를 예시적으로 도시한 화면 구성도이다. 도 7을 참조하면, 상기 사용자 인터페이스부(310)는 기본 환경 선택창(311), 오브젝트 선택창(312), 오브젝트 프리뷰(313), 센서 목록창(314), 환경 제작창(315), 기능툴바(316) 및 오브젝트 속성창(317)을 구비한다. 상기 기본 환경 선택창(311)은 기본 환경들의 목록을 나열하여 화면상에 제공하며, 상기 기본 환경들 중의 하나가 선택되면 환경 제작창(315)에 상기 선택된 기본 환경을 디스플레이시킨 후, 상기 환경 데이터베이스(320)에 저장된 오브젝트들의 목록을 판독하고 오브젝트 선택창(312)에 상기 판독된 목록들을 디스플레이시킨다.
상기 오브젝트 선택창(312)에 디스플레이된 목록 중 하나가 선택되면, 오브젝트 측면뷰창(318) 및 오브젝트 상부뷰창(319)을 통해 상기 선택된 오브젝트의 측면 이미지와 상부 이미지를 디스플레이시킨다. 또한, 상기 오브젝트 속성창(317)은 상기 오브젝트 선택창(312)에 의해 선택된 오브젝트에 대한 속성 정보를 디스플레이시킨다.
한편, 상기 오브젝트 선택창(312)에서 최종적으로 선택된 오브젝트를 드래그 앤 드롭(Drag and Drop) 방식을 이용하여 상기 환경 제작창(315)의 원하는 위치로 이동시킨다.
상기 환경 제작창(315)에 이미 디스플레이된 오브젝트들 중 하나를 선택하거나 상기 오브젝트 선택창을 통해 하나의 오브젝트를 선택하는 경우, 상기 오브젝트 속성창(317), 오브젝트 측면뷰창(318), 및 오브젝트 상부뷰창(319)에 해당 오브젝트의 속성 정보, 측면뷰, 상부뷰들을 각각 디스플레이시킨다.
이하, 상기 환경 제작부(300)의 동작을 설명한다. 도 8은 본 발명의 바람직한 실시예에 따른 환경 제작부(300)의 동작을 순차적으로 설명하는 흐름도이다. 도 8을 참조하면, 먼저 기본 환경을 선택하고(단계 800), 선택된 기본 환경이 배치될 위치를 선택하여 배치한 후(단계 810), 상기 기본 환경을 구성할 오브젝트들을 선택하고(단계 820), 상기 기본 환경에서 상기 선택한 오브젝트를 배치할 위치를 선택하여 상기 오브젝트를 배치한다(단계 830). 오브젝트의 선택 및 위치 설정 단계는 반복적으로 수행될 수 있다.
이와 같은 과정을 거쳐 기본 환경 및 상기 기본 환경을 구성할 오브젝트들의 설정 및 위치 설정 작업이 종료되면(단계 840), 완성된 시뮬레이션용 환경에 대하여 고유 이름이나 고유 식별 번호를 부여하고 환경 저장부에 저장시킨다(단계 850).
도 9 내지 도 12는 본 발명의 바람직한 실시예에 따른 시뮬레이션용 환경 제작 모듈을 이용하여 시뮬레이션용 환경을 제작하기 위한 사용자 인터페이스부를 예시적으로 도시한 화면 구성도들이다.
도 9는 오브젝트 프로뷰창이나 오브젝트 선택창에서 선택한 오브젝트를 드래그 앤 그롭 방식을 이용하여 이동시키는 경우, 오브젝트 측면뷰창 및 오브젝트 상부뷰창에 디스플레이되는 모습을 예시적으로 도시한 화면 구성도이다. 도 10은 사용자가 환경 제작창에서 마우스를 이용하여 마음대로 벽을 지어 집의 구조를 변경시키는 모습을 예시적으로 도시한 화면 구성도이다. 도 10과 같이, 본 발명에 따른 시뮬레이션용 화면 제작 모듈은 기본 환경을 구성하는 오브젝트를 직접 추가하거나 기본 환경 자체를 변경시킬 수 있다.
도 11은 사무실이라는 기본 환경에 책상, 의자, 서랍장의 오브젝트들이 배치된 상태를 도시한 화면 구성도로서, 각 오브젝트들에 대한 좌, 우, 상, 하 위치를 조절할 수 있다.
도 12는 특정 센서를 사용자가 원하는 위치에 배치시킨 상태를 도시한 화면 구성도이다.
로봇 시뮬레이션 모듈
전술한 지능형 로봇 제어 시뮬레이션 시스템(10)의 로봇 시뮬레이션 모듈(40)의 구성 및 동작에 대하여 구체적으로 설명한다.
도 13은 상기 로봇 시뮬레이션 모듈(40)의 내부 구성을 개략적으로 도시한 블록도이다. 도 13을 참조하면, 상기 로봇 시뮬레이션 모듈(40)은 사용자 인터페이스부(400), 환경 선택부(410), 로봇 선택부(420), 로봇 프로그램 제작부(430), 프로그램 시뮬레이션부(440)를 구비한다.
도 14는 사용자 인터페이스부를 예시적으로 도시한 화면 구성도이다. 도 14를 참조하면, 상기 사용자 인터페이스부(400)는 메인 창(401), 오브젝트 정보창(403), 속성 정보창(405) 및 센서 속성창(407), 기능툴바(409)를 구비한다. 상기 메인창(401)은 상기 환경 선택부(410) 및 로봇 선택부(420)에 의해 각각 선택되는 시뮬레이션용 환경 및 시뮬레이션용 로봇이 디스플레이되며, 오브젝트 정보창(403)은 상기 시뮬레이션용 환경을 구성하는 오브젝트들에 대한 정보가 디스플레이되며, 상기 속성 정보창(405)는 상기 시뮬레이션용 환경 또는 시뮬레이션용 로봇을 구성 하는 오브젝트 또는 컴포넌트들에 대한 속성 정보가 디스플레이되며, 상기 센서 속성창(407)은 센서들에 대한 속성 정보가 디스플레이된다.
상기 환경 선택부(410)는 사용자에 의해 상기 환경 저장부로부터 특정 시뮬레이션용 환경이 선택되고, 선택된 시뮬레이션용 환경을 로드하여 메인창(401)에 디스플레이시킨다. 도 15는 환경 선택부(410)에 의해 특정 시뮬레이션용 환경이 메인창에 로드된 상태를 예시적으로 도시한 화면 구성도이다.
상기 로봇 선택부(420)는 사용자에 의해 상기 로봇 저장부로부터 특정 시뮬레이션용 로봇이 선택되고, 선택된 시뮬레이션용 로봇을 로드하여 메인창(401)의 시뮬레이션용 환경위에 디스플레이시킨다. 도 16은 로봇 선택부(420)에 의하여 특정 시뮬레이션용 로봇이 메인창에 로드된 상태를 예시적으로 도시한 화면 구성도이다.
상기 로봇 프로그램 제작부(430)는 화면상에 프로그램 제작 환경을 제공하고, 사용자에 의해 상기 시뮬레이션용 로봇을 동작시키는 구동 프로그램이 작성된다. 이때, 상기 프로그램 제작 환경은 C 또는 C++ 등과 같은 텍스트 기반의 언어툴을 제공할 수도 있으며 그래픽 기반의 언어툴을 제공할 수도 있으며, 텍스트 기반 및 그래픽 기반의 언어툴을 모두 제공하고 사용자가 그 중 하나를 선택하게 할 수도 있다. 이렇게 제작된 구동 프로그램은 고유 식별 번호 또는 고유 이름을 부여하여 프로그램 저장부에 저장한다. 도 17은 그래픽 언어툴을 기반으로 하여 구동 프로그램을 제작하는 과정을 예시적으로 도시한 화면 구성도이며, 도 18은 텍스트 언어 툴을 기반으로 하여 구동 프로그램을 제작하는 과정을 예시적으로 도시한 화면 구성도이다.
상기 프로그램 시뮬레이션부(440)는 상기 로봇 프로그램 제작부(430)에 의해 제작된 구동 프로그램을 실행시켜 상기 메인창에서 시뮬레이션용 환경위에 시뮬레이션용 로봇의 동작을 시뮬레이션시킨다. 도 19는 상기 프로그램 시뮬레이션부(440)에 의해 상기 사용자가 제작한 구동 프로그램이 실행되어 시뮬레이션용 로봇의 동작을 시뮬레이션하는 상태를 예시적으로 도시한 화면 상태도이다.
이하, 도 20은 전술한 로봇 시뮬레이션 모듈의 동작을 순차적으로 설명하는 흐름도이다. 도 20을 참조하면, 먼저 시뮬레이션용 환경을 선택하고 불러오며(단계 900) 시뮬레이션용 로봇을 선택하여 불러온다(단계 910). 다음, 상기 시뮬레이션용 로봇을 상기 시뮬레이션용 환경의 임의의 위치에 배치시킨다(단계 920). 다음, 상기 시뮬레이션용 로봇을 동작시킬 구동 프로그램을 작성하기 위한 언어를 선택한 후(단계 930), 선택된 언어툴을 이용하여 구동 프로그램을 작성한다(단계 940). 구동 프로그램의 작성이 완료되면(단계 942), 상기 구동 프로그램을 실행시켜 상기 시뮬레이션용 로봇의 동작을 시뮬레이션한다(단계 950).
이상에서 본 발명에 대하여 그 바람직한 실시예를 중심으로 설명하였으나, 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 발명의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다.
그리고, 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.