KR20210043621A - 정보 처리 장치, 중개 장치, 시뮬레이트 시스템 및 정보 처리 방법 - Google Patents
정보 처리 장치, 중개 장치, 시뮬레이트 시스템 및 정보 처리 방법 Download PDFInfo
- Publication number
- KR20210043621A KR20210043621A KR1020217007128A KR20217007128A KR20210043621A KR 20210043621 A KR20210043621 A KR 20210043621A KR 1020217007128 A KR1020217007128 A KR 1020217007128A KR 20217007128 A KR20217007128 A KR 20217007128A KR 20210043621 A KR20210043621 A KR 20210043621A
- Authority
- KR
- South Korea
- Prior art keywords
- simulation
- information
- robot
- operation terminal
- robot model
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
- G09B19/24—Use of tools
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/23—Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/25—Output arrangements for video game devices
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/25—Output arrangements for video game devices
- A63F13/28—Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/65—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/67—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/006—Controls for manipulators by means of a wireless system for controlling one or several manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/02—Hand grip control means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/06—Control stands, e.g. consoles, switchboards
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/06—Control stands, e.g. consoles, switchboards
- B25J13/065—Control stands, e.g. consoles, switchboards comprising joy-sticks
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/081—Touching devices, e.g. pressure-sensitive
- B25J13/082—Grasping-force detectors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/088—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
- B25J19/021—Optical sensing devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J3/00—Manipulators of master-slave type, i.e. both controlling unit and controlled unit perform corresponding spatial movements
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/0081—Programme-controlled manipulators with master teach-in means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/1605—Simulation of manipulator lay-out, design, modelling of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1661—Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1671—Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
- G09B19/16—Control of vehicles or other craft
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B5/00—Electrically-operated educational appliances
- G09B5/02—Electrically-operated educational appliances with visual presentation of the material to be studied, e.g. using film strip
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B9/00—Simulators for teaching or training purposes
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40099—Graphical user interface for robotics, visual robot user interface
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40515—Integration of simulation and planning
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Entrepreneurship & Innovation (AREA)
- Automation & Control Theory (AREA)
- Computer Networks & Wireless Communication (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Manipulator (AREA)
Abstract
정보 처리 장치(100)는, 로봇 모델에 모의적인 동작을 시키는 시뮬레이션을 실행하는 시뮬레이트 장치(200, 40, 50)와 접속되고 또한 시뮬레이트 장치(40, 50)의 원격의 유저에 의해 조작되는 조작 단말(20)에 입력되는, 로봇 모델을 조작하기 위한 제1 정보를, 시뮬레이트 장치(200, 40, 50)의 로봇 모델을 조작하기 위한 제2 정보로 변환하고, 제2 정보에 따라 시뮬레이트 장치(40, 50)를 동작시키고, 제2 정보에 따라 동작하는 시뮬레이트 장치(200, 40, 50)의 로봇 모델의 동작 정보를, 조작 단말(20)에 제시한다.
Description
본 발명은 정보 처리 장치, 중개 장치, 시뮬레이트 시스템 및 정보 처리 방법에 관한 것이다.
종래에, 사람에 의해 수행되었던 작업의 로봇화가 진행되고 있다. 로봇이 사람에 의해 조작되는 경우, 사람의 조작의 트레이닝이 필요해진다. 예를 들어, 특허문헌 1은, 생활 지원 로봇 암의 조작의 트레이닝 장치를 개시한다. 이러한 트레이닝 장치는, 컴퓨터 장치 상에서 실행되고 또한 생활 지원 로봇 암의 기능을 모의하는 시뮬레이터에 의해 실현된다.
근래에, 산업용 로봇을 취급하는 산업에서는, 저출산 고령화의 영향으로, 로봇의 조작자의 부족이 우려된다. 한편, 어떠한 이유로, 충분히 취업(就勞)할 수 없거나 또는 취업하지 않는 사람의 수가 증가하고 있다. 이러한 사람들의 노동력은 귀중하다.
따라서, 본 발명은, 다양한 사람이 로봇의 조작의 시뮬레이션을 실시함으로써 로봇의 조작을 수행하는 것이 가능한 정보 처리 장치, 중개 장치, 시뮬레이트 시스템 및 정보 처리 방법을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 정보 처리 장치는, 로봇 모델에 모의적인 동작을 시키는 시뮬레이션을 실행하는 시뮬레이트 장치와 접속되고 또한 상기 시뮬레이트 장치의 원격의 유저(user)에 의해 조작되는 조작 단말에 입력되는, 로봇 모델을 조작하기 위한 제1 정보를, 상기 시뮬레이트 장치의 상기 로봇 모델을 조작하기 위한 제2 정보로 변환하고, 상기 제2 정보에 따라 상기 시뮬레이트 장치를 동작시키고, 상기 제2 정보에 따라 동작하는 상기 시뮬레이트 장치의 상기 로봇 모델의 동작 정보를, 상기 조작 단말에 제시하게 한다.
또한, 본 발명의 일 실시예에 따른 중개 장치는, 본 발명의 일 실시예에 따른 정보 처리 장치를 구비하고, 상기 조작 단말과 상기 시뮬레이트 장치를 통신망을 통해 중개한다.
또한, 본 발명의 일 실시예에 따른 시뮬레이트 시스템은, 본 발명의 일 실시예에 따른 정보 처리 장치와, 상기 시뮬레이트 장치와, 상기 조작 단말과 상기 시뮬레이트 장치를 통신망을 통해 중개하는 중개 장치를 구비한다.
또한, 본 발명의 일 실시예에 따른 정보 처리 방법은, 로봇 모델에 모의적인 동작을 시키는 시뮬레이션을 실행하는 시뮬레이트 장치와 접속되고 또한 상기 시뮬레이트 장치의 원격의 유저에 조작되는 조작 단말에 입력되는, 로봇 모델을 조작하기 위한 제1 정보를, 상기 시뮬레이트 장치의 상기 로봇 모델을 조작하기 위한 제2 정보로 변환하고, 상기 제2 정보에 따라 상기 시뮬레이트 장치를 동작시키고, 상기 제2 정보에 따라 동작하는 상기 시뮬레이트 장치의 상기 로봇 모델의 동작 정보를, 상기 조작 단말에 제시하게 한다.
본 발명에 따르면, 다양한 사람이 로봇의 조작의 시뮬레이션을 실시함으로써 로봇을 조작하는 것이 가능해진다.
[도 1] 도 1은 실시예에 따른 시뮬레이트 시스템의 구성의 일례를 도시하는 도면이다.
[도 2] 도 2는 실시예에 따른 조작 단말의 하드웨어 구성의 일례를 도시하는 블록도이다.
[도 3] 도 3은 실시예에 따른 중개 장치의 하드웨어 구성의 일례를 도시하는 블록도이다.
[도 4] 도 4는 실시예에 따른 시뮬레이트 컴퓨터의 하드웨어 구성의 일례를 도시하는 블록도이다.
[도 5] 도 5는 실시예에 따른 시뮬레이트 로봇의 하드웨어 구성의 일례를 도시하는 블록도이다.
[도 6] 도 6은 실시예에 따른 조작 단말의 기능적 구성의 일례를 도시하는 블록도이다.
[도 7] 도 7은 실시예에 따른 중개 장치의 기능적 구성의 일례를 도시하는 블록도이다.
[도 8] 도 8은 실시예에 따른 조작 단말이 제시하는 시뮬레이션의 선택 화면의 일례를 도시하는 도면이다.
[도 9] 도 9는 실시예에 따른 시뮬레이트 컴퓨터의 기능적 구성의 일례를 도시하는 블록도이다.
[도 10] 도 10은 실시예에 따른 시뮬레이트 로봇의 기능적인 구성의 일례를 도시하는 블록도이다.
[도 11a] 도 11a는 실시예에 따른 시뮬레이트 시스템의 동작의 흐름의 일례를 도시하는 시퀀스(sequence)도이다.
[도 11b] 도 11b는 실시예에 따른 시뮬레이트 시스템의 동작의 흐름의 일례를 도시하는 시퀀스도이다.
[도 2] 도 2는 실시예에 따른 조작 단말의 하드웨어 구성의 일례를 도시하는 블록도이다.
[도 3] 도 3은 실시예에 따른 중개 장치의 하드웨어 구성의 일례를 도시하는 블록도이다.
[도 4] 도 4는 실시예에 따른 시뮬레이트 컴퓨터의 하드웨어 구성의 일례를 도시하는 블록도이다.
[도 5] 도 5는 실시예에 따른 시뮬레이트 로봇의 하드웨어 구성의 일례를 도시하는 블록도이다.
[도 6] 도 6은 실시예에 따른 조작 단말의 기능적 구성의 일례를 도시하는 블록도이다.
[도 7] 도 7은 실시예에 따른 중개 장치의 기능적 구성의 일례를 도시하는 블록도이다.
[도 8] 도 8은 실시예에 따른 조작 단말이 제시하는 시뮬레이션의 선택 화면의 일례를 도시하는 도면이다.
[도 9] 도 9는 실시예에 따른 시뮬레이트 컴퓨터의 기능적 구성의 일례를 도시하는 블록도이다.
[도 10] 도 10은 실시예에 따른 시뮬레이트 로봇의 기능적인 구성의 일례를 도시하는 블록도이다.
[도 11a] 도 11a는 실시예에 따른 시뮬레이트 시스템의 동작의 흐름의 일례를 도시하는 시퀀스(sequence)도이다.
[도 11b] 도 11b는 실시예에 따른 시뮬레이트 시스템의 동작의 흐름의 일례를 도시하는 시퀀스도이다.
이하에서, 본 발명의 실시예를 도면을 참조하여 설명한다. 여기서, 이하에서 설명하는 실시 형태는 모두 포괄적 또는 구체적인 예를 나타낸 것이다. 또한, 이하의 실시 형태에서의 구성 요소 중, 최상위 개념을 나타내는 독립 청구항에 기재되지 않은 구성 요소에 대해서는, 임의의 구성 요소로서 설명된다. 또한, 첨부된 도면에서 각각의 도면은, 모식적인 도면이고, 반드시 엄밀하게 도시된 것이 아니다. 또한, 각각의 도면에서, 실질적으로 동일한 구성 요소에 대해서는 동일한 부호를 부여하고, 중복된 설명은 생략 또는 간략화한 경우가 있다. 또한, 본 명세서 및 청구범위에서, 「장치」란, 1 개의 장치를 의미할 수 있을 뿐만 아니라, 복수의 장치로 된 시스템을 의미할 수 있다.
<시뮬레이트 시스템의 구성>
실시예에 따른 시뮬레이트 시스템(1)의 구성을 설명한다. 도 1은 실시예에 따른 시뮬레이트 시스템(1)의 구성의 일례를 도시하는 도면이다. 도 1에 도시된 바와 같이, 시뮬레이트 시스템(1)은, 1 개 이상의 중개 장치(10)와, 1 개 이상의 조작 단말(20)과, 1 개 이상의 시뮬레이트 컴퓨터(40)와, 1 개 이상의 시뮬레이트 로봇(50)을 포함한다. 시뮬레이트 컴퓨터(40) 및 시뮬레이트 로봇(50)은, 시뮬레이트 장치(200)의 일례이다. 이하에서, 「시뮬레이트 컴퓨터(40)」 및 「시뮬레이트 로봇(50)」을 구별하지 않는 경우, 이를 단순히 「시뮬레이트 장치(200)」라고 칭하는 경우가 있다. 중개 장치(10), 조작 단말(20), 시뮬레이트 컴퓨터(40) 및 시뮬레이트 로봇(50)은, 통신망(90)을 통해 접속되어 있다. 여기서, 상기 구성 요소의 전부가 필수는 아니다.
통신망(90)은, 데이터 통신 가능한 네트워크이고, 예를 들어, 인터넷, 인트라넷, 유선 또는 무선 LAN(Local Area Network), WAN(Wide Area Network), 모바일 통신망, 전화 회선 통신망 또는 기타 유선 또는 무선 통신을 이용하는 통신망이라도 좋다. 본 실시예에서는, 통신망(90)은 인터넷이다.
시뮬레이트 컴퓨터(40)는, 가상적인 로봇 모델에 모의적인 동작을 시키는 시뮬레이션을 실행하는 장치이다. 가상적인 로봇 모델은, 시뮬레이트 컴퓨터(40)의 컴퓨터 프로그램 상에서 생성되어 동작한다. 여기서, 시뮬레이트 컴퓨터(40)는, 시뮬레이트 시스템(1)을 위해 특별히 생성된 장치가 아니어도 좋고, 예를 들어, 로봇의 조작의 시뮬레이션에 이용되는 기존 또는 범용적인 장치라도 좋다. 시뮬레이트 컴퓨터(40)의 로봇 모델은, 후술하는 시뮬레이트 로봇(50)의 실제의 로봇(50A1 ~ 50An)(n = 1, ...의 자연수)에 대해 예시하도록 된 로봇의 가상적인 로봇 모델이라도 좋다. 가상적인 로봇 모델은, 후술하는 시뮬레이트 로봇(50)과 마찬가지로, 로봇 본체를 포함하는 구성이라도 좋고, 로봇 본체뿐만 아니라, 처리 대상물 및 주변 기기 등을 포함하는 구성이라도 좋다.
시뮬레이트 로봇(50)은, 로봇 모델로서 실제의 로봇(50A1 ~ 50An)(n = 1, ...의 자연수)에 모의적인 동작을 시키는 시뮬레이션을 실행하는 장치이다. 로봇(50A1 ~ 50An)은 어떠한 로봇이라도 좋고, 예를 들어, 산업용 로봇, 서비스 로봇, 건설 기계, 터널 굴착기, 크레인, 하역 반송 차량 및 휴머노이드 등이라도 좋다. 서비스 로봇은, 간호, 의료, 청소, 경비, 안내, 구조, 조리, 상품 제공 등 다양한 서비스 산업에서 사용되는 로봇이다. 본 실시예에 따르면, 로봇(50A1 ~ 50An)은 수직 다관절형 로봇, 수평 다관절형 로봇, 극 좌표형 로봇, 원통 좌표형 로봇 및 직각 좌표형 로봇 등의 산업용 로봇이다. 이하에서, 로봇(50A1 ~ 50An)을 구별하지 않는 경우, 단순히 「로봇(50A)」이라고 칭하는 경우가 있다.
시뮬레이트 로봇(50)은, 로봇(50A1 ~ 50An) 중 어느 하나를 포함하고, 로봇(50A1 ~ 50An) 각각에 대해 설치된다. 산업용 로봇인 로봇(50A1 ~ 50An)은, 다양한 작업에 대응하여 설치된 로봇이다. 로봇(50A1 ~ 50An)은, 실제로 작업 현장에 배치된 로봇이라도 좋고, 시뮬레이션 용으로 배치된 로봇이라도 좋다. 로봇(50A1 ~ 50An)은, 예를 들어, 로봇 암 및 엔드 이펙터를 구비하도록 된 로봇 본체를 포함하는 구성이라도 좋고, 로봇 본체뿐만 아니라, 작업에서 워크(work) 등의 처리 대상물, 및 반송 장치, 촬상 장치 및 센서 등의 주변 기기 등을 포함하는 구성이라도 좋다. 후자의 경우, 시뮬레이트 로봇(50)에서의 시뮬레이트는, 로봇 본체, 처리 대상물 및 주변 기기 등의 모두를 조작하는 시뮬레이트이다. 여기서, 시뮬레이트 로봇(50)은, 시뮬레이트 시스템(1)을 위해 특별히 생성된 것이 아니어도 좋고, 예를 들어, 로봇의 조작의 시뮬레이션에 사용되는 기존 또는 범용적인 것이라도 좋다.
시뮬레이트 컴퓨터(40) 및 시뮬레이트 로봇(50)의 로봇 모델이 수행하는 동작은, 수평 이동, 연직 이동 및 회전 등의 개별의 동작을 1 개 또는 2 개 이상 포함하는 동작 및 작업이다. 상기 작업은, 상기 동작보다 많은 개별의 동작이 실행 순서에 따라서 조합된 일련의 복합적인 동작이다. 상기 작업의 예는, 예를 들어, 산업용 로봇의 로봇 모델인 경우, 엔드 이펙터로 대상물을 유지하여 이동시키고, 엔드 이펙터로 대상물을 유지하여 피조립 대상물에 조립시키고, 엔드 이펙트로 대상물을 절단하고, 엔드 이펙터로 2 개 이상의 대상물을 접합하는 등의 작업이다.
조작 단말(20)은, 시뮬레이트 장치(200)를 이용하여 로봇의 동작의 시뮬레이션을 실행하는 장치이다. 조작 단말(20)은, 통신망(90)을 통해 시뮬레이트 장치(200)와 접속하고, 조작 단말(20)의 유저에 의해 조작될 수 있다. 유저는, 시뮬레이트 장치(200)로부터 원격에 위치하는 경우에도, 조작 단말(20)을 조작하여 시뮬레이션을 실행할 수 있다. 조작 단말(20)은, 유저에 의해 입력된 정보를 시뮬레이트 장치(200)에 출력한다. 조작 단말(20)의 예는, 게임기, 게임 컨트롤러, 로봇 전용의 원격 조작기, 개인 정보 단말(PDA: Personal Data Assistant), 스마트 폰, 스마트 워치 및 태블릿 등의 스마트 디바이스, 및 퍼스널 컴퓨터 등의 컴퓨터 장치 등이다. 이러한 조작 단말(20)은, 시뮬레이트 시스템(1)을 위해 특별히 생성된 장비가 아니어도 좋고, 기존 또는 범용적인 장치라도 좋다.
본 실시예에 따르면, 조작 단말(20)은 게임기 및 게임 컨트롤러를 구비한 게임 장치이다. 게임 장치로서, 예를 들어, 거치형 게임 장치 및 휴대형 게임 장치가 예시된다. 조작 단말(20)은 출력 장치(30)와 접속되어, 로봇 모델을 이용한 시뮬레이션을 실행하기 위한 화상 신호 및 음성 신호를 출력 장치(30)에 출력하고, 출력 장치(30)는 당해 화상 신호 및 음성 신호에 대응하는 화상 및 음성을 유저에게 제시한다. 예를 들어, 출력 장치(30)는 디스플레이 및 스피커를 구비한다. 디스플레이의 예는, 액정 디스플레이(Liquid Crystal Display) 및 유기 또는 무기 EL 디스플레이(Electro-Luminescence Display)이다.
중개 장치(10)는, 1 개 이상의 조작 단말(20)과 1 개 이상의 시뮬레이트 컴퓨터(40)와 1 개 이상의 시뮬레이트 로봇(50)을, 통신망(90)을 통해 중개한다. 본 실시예에 따르면, 중개 장치(10)는 정보 처리 장치(100)를 구비한다. 본 실시예에 따르면, 중개 장치(10)는 서버이고, 통신 기능을 가지고 또한 정보를 처리하는 컴퓨터 장치이다.
정보 처리 장치(100)는, 조작 단말(20)을 이용한 로봇의 조작의 시뮬레이션을 관리하는 장치이다. 정보 처리 장치(100)는, 예를 들어, 프로세서 및 메모리 등을 구비하는 연산기로 구성된다. 메모리는 휘발성 메모리 및 비휘발성 메모리 등의 반도체 메모리, 하드 디스크(HDD: Hard Disc Drive) 및 SSD(Solid State Drive) 등의 기억 장치로 구성된다. 예를 들어, 연산기의 기능은, CPU(Central Processing Unit) 등의 프로세서, RAM(Random Access Memory) 등의 휘발성 메모리 및 ROM(Read-Only Memory) 등의 비휘발성 메모리 등으로 된 컴퓨터 시스템(도시하지 않음)에 의해 실현되어도 좋다. 연산기의 기능의 일부 또는 전부는, CPU가 RAM을 워크 에어리어(work area)로서 사용하여 ROM에 기록된 프로그램을 실행함으로써 실현되어도 좋다. 여기서, 연산기의 기능의 일부 또는 전부는, 상기 컴퓨터 시스템에 의해 실현되어도 좋고, 전자 회로 또는 집적 회로 등의 전용의 하드웨어 회로에 의해 실현되어도 좋으며, 상기 컴퓨터 시스템 및 하드웨어 회로의 조합에 의해 실현되어도 좋다.
구체적으로는, 정보 처리 장치(100)는, 예를 들어, 컴퓨터, 퍼스널 컴퓨터 등의 컴퓨터 장치로 구성되어도 좋다. 또는, 정보 처리 장치(100)는, 예를 들어, 마이크로 컨트롤러, MPU(Micro Processing Unit), LSI (Large Scale Integration: 대규모 집적 회로), 시스템 LSI, PLC(Programmable Logic Controller), 논리 회로 등으로 구성되어도 좋다. 정보 처리 장치(100)의 복수의 기능은, 개별적으로 원칩(one-chip)화됨으로써 실현되어도 좋고, 일부 또는 전부를 포함하도록 원칩화됨으로써 실현되어도 좋다. 또한, 회로는 각각, 범용적인 회로라도 좋고, 전용의 회로라도 좋다. LSI로서, LSI 제조 후에 프로그램하는 것이 가능한 FPGA(Field Programmable Gate Array), LSI 내부의 회로 셀의 접속 및/또는 설정을 재구성 가능한 리컨피규러블 프로세서, 또는 특정 용도를 위해 복수의 기능 회로가 1 개로 통합된 ASIC(Application Specific Integrated Circuit) 등이 이용되어도 좋다.
정보 처리 장치(100)는, 유저에 의해 조작 단말(20)에 입력된 로봇 모델을 조작하기 위한 정보인 제1 정보를, 조작 단말(20)로부터 수신하고, 당해 제1 정보를, 시뮬레이트 장치(200)의 로봇 모델을 조작하기 위한 정보인 제2 정보로 변환한다. 정보 처리 장치(100)는, 당해 제2 정보를 시뮬레이트 장치(200)에 송신하고, 당해 제2 정보에 따라 이를 동작시킨다.
또한, 정보 처리 장치(100)는, 제2 정보에 따라 동작하는 시뮬레이트 장치(200)로부터, 이 로봇 모델의 동작의 정보인 제3 정보를 수신하고, 당해 제3 정보를, 조작 단말(20)이 처리 가능한 정보인 제4 정보로 변환한다. 예를 들어, 정보 처리 장치(100)는, 시뮬레이트 장치(200)의 로봇 모델의 개별의 동작을 나타내는 제3 정보를 수신하고, 당해 제3 정보를, 조작 단말(20)의 실행 프로그램 상에서 기능하는 정보로서의 제4 정보로 변환한다. 정보 처리 장치(100)는, 제4 정보를 조작 단말(20)에 송신하여, 당해 조작 단말(20)에, 시뮬레이트 장치(200)의 로봇 모델, 또는, 당해 로봇 모델과 유사한 로봇 모델 혹은 대응하는 모델의 동작을, 출력 장치(30)를 통해 유저에 제시한다. 대응하는 모델은, 로봇 모델과 관련지어진 모델이라도 좋고, 예를 들어, 외관상 로봇 모델과 유사하지 않아도 좋다.
예를 들어, 정보 처리 장치(100)는, 촬상 장치에 의해 촬상된 시뮬레이트 로봇(50)의 로봇(50A)의 화상의 정보를 제3 정보로서 수신하고, 당해 화상의 정보를 제4 정보로서 조작 단말(20)에 송신하여, 로봇 모델의 동작의 정보로서 조작 단말(20)에 제시하게 하여도 좋다. 이에 따라서, 유저는, 조작 단말(20)을 통해서, 시뮬레이트 컴퓨터(40) 또는 시뮬레이트 로봇(50)의 로봇 모델을, 시각적으로 인식하면서 조작할 수 있다.
또한, 정보 처리 장치(100)는, 유저에 의해 조작 단말(20)에 입력되고, 실행을 요구하는 시뮬레이션의 정보인 요구 정보에 기초하여, 복수 존재하는 시뮬레이트 장치(200) 중에서, 당해 요구 정보에서 요구되는 시뮬레이션에 대응하는 시뮬레이트 장치(200)를 결정한다. 또한, 정보 처리 장치(100)는, 결정된 시뮬레이트 장치(200)와 조작 단말(20)을 통신망(90)을 통해 접속시켜서, 이를 이용한 시뮬레이션의 실행을 가능하게 한다.
또한, 정보 처리 장치(100)는, 시뮬레이트 장치(200)로부터 수신하는 로봇 모델의 동작의 정보에 기초하여, 로봇 모델의 동작 결과를 평가한다. 정보 처리 장치(100)는, 수신한 로봇 모델의 개별의 동작과, 시뮬레이션으로 수행해야 할 동작을 비교하고, 예를 들어, 양자 사이의 위치 및 소요 시간 등의 차이에 기초하여, 평가를 결정하여도 좋다. 또는, 시뮬레이트 장치(200)는, 시뮬레이션의 결과를 평가하도록 구성될 수 있다. 정보 처리 장치(100)는, 시뮬레이트 장치(200)로부터, 시뮬레이션 결과의 평가를 수신하고, 수신한 평가에 기초하여, 시뮬레이트 시스템(1)에 설정된 평가를 결정하여도 좋다. 정보 처리 장치(100)는, 결정된 평가를, 조작 단말(20)을 조작하는 유저에 대한 평가인 유저 평가로서, 기억 장치에 등록한다. 당해 기억 장치는, 정보 처리 장치(100)의 기억 장치라도 좋고, 중개 장치(10)가 포함하는 기억 장치(미도시)라도 좋으며, 통신망(90) 등을 통해 중개 장치(10)와 접속된 다른 장치의 기억 장치라도 좋다. 또한, 정보 처리 장치(100)는, 결정된 평가를 조작 단말(20)에 송신하여, 출력 장치(30)를 통해 유저에게 제시한다.
[하드웨어 구성]
조작 단말(20)의 하드웨어 구성을 설명한다. 도 2는 실시예에 따른 조작 단말(20)의 하드웨어 구성의 일례를 도시하는 블록도이다. 도 2에 도시된 바와 같이, 조작 단말(20)은, 게임기로서의 조작 단말 본체(21)와, 게임 컨트롤러로서의 조작기(22)를 구비한다. 조작 단말 본체(21)는, 시뮬레이션의 컴퓨터 프로그램을 실행할 수 있고, 조작기(22)는 유저에 의한 조작의 입력을 접수한다. 조작 단말 본체(21)는, CPU(201)와, ROM(202)과, RAM(203)과, 메모리(204)와, 미디어 I/F(인터페이스: Interface)(205)와, 네트워크 I/F(206)와, 제1 입출력 I/F(207)와, 화상 프로세서(208)와, 제2 입출력 I/F(209)와, 음성 프로세서(210)와, 제3 입출력 I/F(211)와, 기록 매체 드라이브(212)를 구성 요소로 포함한다. 각 구성 요소는, 버스 등에 의해 접속되지만, 다른 어떠한 유선 통신 또는 무선 통신으로 접속되어도 좋다. 여기서, 상기 구성 요소의 모두가 필수는 아니다.
CPU(201)는, 조작 단말기 본체(21) 전체의 동작을 제어한다. ROM(202)은, CPU(201)의 구동에 이용되는 프로그램을 기억한다. RAM(203)은, CPU(201)의 워크 에어리어로 사용된다. 메모리(204)는, 프로그램 등의 각종 데이터를 기억하고, 상술한 기억 장치로 구성된다. 미디어 I/F(205)는, 플래시 메모리 등의 기록 미디어(60)에 대한 데이터의 읽기 또는 쓰기(기억)를 제어한다. 예를 들어, 시뮬레이션을 실행하기 위한 컴퓨터 프로그램은, 기록 미디어(60)에 기억되고, 기록 미디어(60)로부터 읽어들여져 실행되어도 좋다. 시뮬레이션의 결과 등을 포함한 세이브 데이터가, 기록 미디어(60) 또는 메모리(204)에 기억되어도 좋다. 네트워크 I/F(206)는, 통신망(90)을 이용하여 데이터 통신을 하기 위한 인터페이스이다. 제1 입출력 I/F(207)는, 조작기(22)와 접속되고, 신호 등의 통신을 하기 위한 인터페이스이다.
화상 프로세서(208)는, 시뮬레이션을 수행하기 위한 화면을 생성 가능한 GPU(Graphics Processing Unit)를 구비한다. 예를 들어, 화상 프로세서(208)는, 시뮬레이트 컴퓨터(40) 및 시뮬레이트 로봇(50)의 로봇 모델의 화상, 당해 로봇 모델에 유사한 로봇 모델의 화상, 당해 로봇 모델에 대응하는 모델의 화상 등의 화면 데이터를 생성하여 제2 입출력 I/F(209)에 출력한다. 제2 입출력 I/F(209)는, 출력 장치(30)와 접속되고, 화면 데이터 및 화상 데이터의 통신을 하기 위한 인터페이스이다.
음성 프로세서(210)는, 시뮬레이션을 수행하기 위한 음성을 생성하는 DSP(Digital Signal Processor)를 구비한다. 음성 프로세서(210)는, 생성된 음성을 D/A 컨버터를 포함한 앰프(미도시)로 증폭하여 제3 입출력 I/F(211)에 출력한다. 제3 입출력 I/F(211)는, 출력 장치(30)와 접속되고, 음성 신호 등의 통신을 하기 위한 인터페이스이다. 기록 매체 드라이브(212)는, 착탈 가능한 기록 매체(70)에 대한 각종 데이터의 읽기 또는 쓰기를 제어한다. 예를 들어, 시뮬레이션을 실행하기 위한 컴퓨터 프로그램은, 기록 매체(70)에 기억되고, 기록 매체(70)로부터 읽어들여져 실행되어도 좋다. 시뮬레이션의 결과 등을 포함한 세이브 데이터가, 기록 매체(70)에 기억되어도 좋다. 기록 매체(70)의 예는, DVD-R, DVD-RW 및 BD(Blu-ray(등록상표))-R, BD-RE 등의 기록 디스크이다.
조작기(22)는, 유저에 의한 입력을 접수받는다. 예를 들어, 조작기(22)는, 십자 버튼, 푸시 스위치, 다이얼, 조이스틱, 마우스, 키 및 터치 패널 등의 유저의 조작을 통해 입력되는 입력 장치(221)를 포함한다. 또한, 조작기(22)는, 조작 단말 본체(21)의 제1 입출력 I/F(207)와 접속된 신호 등의 통신을 하기 위한 조작 입출력 I/F(222)을 포함한다. 입력 장치(221)는, 유저의 입력을 나타내는 신호를 생성하고, 당해 신호를 조작 입출력 I/F(222)를 통해 제1 입출력 I/F(207)로 출력한다. 본 실시예에 따르면, 입력 장치(221)의 구성은, 로봇의 전용의 조작 장치와 다르다. 예를 들어, 입력 장치(221)의 수량, 및 입력 장치(221)에의 입력 방법 등이 다르다. 로봇의 전용의 조작 장치가 출력하는 조작에 대한 신호는, 입력 장치(221)가 출력하는 조작을 위한 신호와 달리, 예를 들어, 더 복잡하다.
중개 장치(10)의 하드웨어 구성을 설명한다. 도 3은 실시예에 따른 중개 장치(10)의 하드웨어 구성의 일례를 도시하는 블록도이다. 도 3에 도시된 바와 같이, 중개 장치(10)는, CPU(101)와, ROM(102)과, RAM(103)과, 메모리(104)와, 네트워크 I/F(106)와, 입출력 I/F(107)를 구성 요소로 포함한다. 각 구성 요소는 버스 등에 의해 접속되지만, 다른 어떠한 유선 통신 또는 무선 통신으로 접속되어도 좋다. 여기서, 상기 구성 요소 모두가 필수는 아니다.
CPU(101)는, 중개 장치(10) 전체의 동작을 제어한다. ROM(102), RAM(103) 및 메모리(104) 각각의 구성 및 기능은 조작 단말(20)의 ROM(202), RAM(203) 및 메모리(204)와 동일하다. CPU(101), ROM(102), RAM(103) 및 메모리(104)는, 정보 처리 장치(100)를 구성한다. 네트워크 I/F(106) 및 입출력 I/F(107) 각각의 구성 및 기능은 조작 단말(20)의 네트워크 I/F(206) 및 제1 입출력 I/F(207)와 동일하다.
여기서, 입출력 I/F(107)는, 입력 장치(113)와 접속되고, 신호 등의 통신을 하기 위한 인터페이스이다. 입력 장치(113)는, 유저에 의한 입력을 접수한다. 예를 들어, 입력 장치(113)는, 버튼, 스위치, 다이얼, 조이스틱, 마우스, 키 및 터치 패널 등의 유저의 조작을 통해 입력되는 장치를 포함한다. 입력 장치(113)는, 유저의 입력을 나타내는 신호를 생성하고, 해당 신호를 입출력 I/F(107)에 출력한다.
시뮬레이트 컴퓨터(40)의 하드웨어 구성을 설명한다. 도 4는 실시예에 따른 시뮬레이트 컴퓨터(40)의 하드웨어 구성의 일례를 도시하는 블록도이다. 도 4에 도시된 바와 같이, 시뮬레이트 컴퓨터(40)는, CPU(401)와, ROM(402)과, RAM(403)과, 메모리(404)와, 네트워크 I/F(406)와, 제1 입출력 I/F(407)와, 화상 프로세서(408)와, 제2 입출력 I/F(409)를 구성 요소로 포함한다. 각 구성 요소는 버스 등에 의해 접속되지만, 다른 어떠한 유선 통신 또는 무선 통신으로 접속되어도 좋다. 여기서, 상기 구성 요소 모두가 필수는 아니다.
CPU(401)는, 시뮬레이트 컴퓨터(40) 전체의 동작을 제어한다. ROM(402), RAM(403) 및 메모리(404) 각각의 구성 및 기능은 조작 단말(20)의 ROM(202), RAM(203) 및 메모리(204)와 동일하다. 네트워크 I/F(406) 및 제1 입출력 I/F(107), 화상 프로세서(408) 및 제2 입출력 I/F(409) 각각의 구성 및 기능은 조작 단말(20)의 네트워크 I/F(206), 제1 입출력 I/F(207), 화상 프로세서(208) 및 제2 입출력 I/F(209)와 동일하다.
여기서, 제1 입출력 I/F(407)는, 입력 장치(413)와 접속되고, 신호 등의 통신을 하기 위한 인터페이스이다. 입력 장치(413)는, 유저에 의한 입력을 접수한다. 입력 장치(413)의 구성은, 중개 장치(10)의 입력 장치(113)와 동일하다. 또한, 화상 프로세서(408)는, 시뮬레이트 컴퓨터(40)에 설정된 로봇 모델의 화상의 화면 데이터를 생성하여 제2 입출력 I/F(409)에 출력한다. 제2 입출력 I/F(409)는, 디스플레이(414)와 접속되고, 화면 데이터 및 화상 데이터의 통신을 하기 위한 인터페이스이다.
시뮬레이트 로봇(50)의 하드웨어 구성을 설명한다. 도 5는 실시예에 따른 시뮬레이트 로봇(50)의 하드웨어 구성의 일례를 도시하는 블록도이다. 도 5에 도시된 바와 같이, 시뮬레이트 로봇(50)은, 제어 장치(51)와, 촬상 장치(517)와, 디스플레이(514)와, 조작 장치(518)와, 구동 장치(519)를 구비한다. 여기서, 상기 구성 요소 모두가 필수는 아니다.
구동 장치(519)는, 로봇(50A)(도 1 참조)의 가동 부분을 구동하는 장치이다. 예를 들어, 로봇(50A)은, 로봇 암과, 로봇 암의 선단의 엔드 이펙터를 구비한다. 로봇 암은, 굴곡하는 관절을 구비하여, 관절에서 가동(可動)이다. 엔드 이펙터는, 파지, 흡착, 떠올리기 및 매달기 등의 워크에 대한 작용을 가하는 동작을 한다. 구동 장치(519)는, 로봇 암의 관절 및 엔드 이펙터 등을 구동한다. 구동 장치(519)의 예는, 서보 모터 등의 전기 모터 및 진공 발생 장치 등이다.
촬상 장치(517)는, 로봇(50A)을 촬상하고, 촬상한 화상 데이터를 제어 장치(51)에 출력한다. 촬상 장치(517)는, 시뮬레이트 로봇(50)에서 시뮬레이션을 수행하는 유저에, 로봇(50A)의 상태를 나타내는 화상을 제공한다. 본 실시예에 따르면, 당해 화상은, 조작 단말(20)에 제공된다. 촬상 장치(517)의 예는, 디지털 카메라 및 디지털 캠코더 등이다.
디스플레이(514)는, 촬상 장치(517)에 의해 촬상된 화상 데이터를, 제어 장치(51)로부터 수취하고, 당해 화상 데이터의 화상을 유저에게 제시한다. 또한, 디스플레이(514)는, 시뮬레이트 로봇(50)의 조작용의 화면 데이터를 제어 장치(51)로부터 수취하고, 당해 화면 데이터의 화상을 유저에게 제시한다.
조작 장치(518)는, 시뮬레이트 로봇(50)에서 시뮬레이션을 수행하는 유저에 의한 지령 및 정보의 입력을 접수하고, 당해 지령 및 정보를 나타내는 신호를 제어 장치(51)에 출력한다. 조작 장치(518)는, 푸시 스위치, 레버, 다이얼, 조이스틱, 키 및 터치 패널 등의 유저의 조작을 통해 입력되는 장치를 포함한다. 본 실시예에 따르면, 조작 장치(518)는 로봇(50A)의 전용의 조작 장치이다.
제어 장치(51)는 시뮬레이트 로봇(50) 전체를 제어하는 장치이다. 제어 장치(51)는, CPU(501)와, ROM(502)과, RAM(503)과, 메모리(504)와, 촬상 I/F(515)와, 네트워크 I/F(506)와, 제1 입출력 I/F(507)와, 화상 프로세서(508)와, 제2 입출력 I/F(509)와, 구동 회로(516)를 구성 요소로 포함한다. 각 구성 요소는 버스 등에 의해 접속되지만, 다른 어떠한 유선 통신 또는 무선 통신으로 접속되어도 좋다. 여기서, 상기 구성 요소 모두가 필수는 아니다.
CPU(501)는, 제어 장치(51) 전체의 동작을 제어한다. ROM(502), RAM(503) 및 메모리(504) 각각의 구성 및 기능은 조작 단말(20)의 ROM(202), RAM(203) 및 메모리(204)와 동일하다. 네트워크 I/F(506) 및 제1 입출력 I/F(507), 화상 프로세서(508) 및 제2 입출력 I/F(509) 각각의 구성 및 기능은 조작 단말(20)의 네트워크 I/F(206), 제1 입출력 I/F(207), 화상 프로세서(208) 및 제2입출력 I/F(209)와 동일하다.
여기서, 제1 입출력 I/F(507)는, 조작 장치(518)와 접속되고, 신호 등의 통신을 하기 위한 인터페이스이다. 또한, 화상 프로세서(508)는, 촬상 장치(517)에 의해 촬상된 로봇(50A)의 화상 데이터를 이용하여, 디스플레이(514)에 표시하기 위한 화면 데이터를 생성하여 제2 입출력 I/F(509)에 출력한다. 또한, 화상 프로세서(508)는, 시뮬레이트 로봇(50)을 조작하기 위한 화면 데이터를 생성하여 제2 입출력 I/F(509)에 출력한다. 제2 입출력 I/F(509)는, 디스플레이(514)와 접속되고, 화면 데이터 및 화상 데이터의 통신을 하기 위한 인터페이스이다.
촬상 I/F(515)는, 프로그램의 실행에 대응하여, 촬상 장치(517)의 구동을 제어한다. 촬상 I/F(515)는, 프로그램의 실행에 대응하여, 촬상 장치(517)에 의해 촬상된 화상 데이터를 RAM(503) 또는 메모리(504)에 집어넣는다. 촬상 I/F(515)는, 촬상 장치(517)의 구동을 위한 회로 등을 포함하여도 좋다.
구동 회로(516)는, 구동 장치(519)의 구동을 제어한다. 예를 들어, 구동 회로(516)는, CPU(501)의 지령에 따라 전류를 각각의 구동 장치(519)에 공급하고, 당해 구동 장치(519)의 구동을 제어한다. 구동 회로(516)는, 모든 구동 장치(519)의 구동을 제어한다.
[기능적 구성]
조작 단말(20)의 기능적 구성을 설명한다. 도 6은 실시예에 따른 조작 단말(20)의 기능적 구성의 일례를 도시하는 블록도이다. 도 6에 도시된 바와 같이, 조작기(22)는 입력부(22a) 및 출력부(22b)를 포함한다. 입력부(22a)는 유저의 입력을 접수하고, 그의 기능은 입력 장치(221)에 의해 실현된다. 출력부(22b)는, 입력부(22a)에 입력된 정보를 조작 단말 본체(21)에 출력하고, 그의 기능은 조작 입출력 I/F(222)에 의해 실현된다. 상기 정보는, 입력 장치(221)의 버튼 등의 ON 또는 OFF, ON의 지속 시간 등의 정보라도 좋다.
조작 단말 본체(21)는, 통신부(21a)와, 입력부(21b)와, 프로그램 실행부(21c)와, 읽기부(21d)와, 기억부(21e)와, 출력부(21f)를 포함한다. 여기서, 상기 구성 요소 모두가 필수는 아니다. 통신부(21a)는, 통신망(90)을 통해 중개 장치(10)와 통신하고, 그의 기능은 네트워크 I/F(206) 등에 의해 실현된다. 입력부(21b)는, 조작기(22)로부터 정보의 입력을 접수하고, 그의 기능은 제1 입출력 I/F(207) 등에 의해 실현된다. 읽기부(21d)는, 기록 미디어(60) 및/또는 기록 매체(70)로부터, 이들에 저장된 정보를 읽어들이고, 그의 기능은 미디어 I/F(205) 및 기록 매체 드라이브(212) 등에 의해 실현된다.
기억부(21e)는 각종 정보를 기억하고, ROM(202), 메모리(204), 기록 미디어(60) 및 기록 매체(70) 등에 의해 실현된다. 예를 들어, 기억부(21e)에는, 각각의 유저의 유저 정보가 기억된다. 유저 정보는, 유저 ID 등의 유저의 식별 정보, 및 조작 단말(20)을 이용한 유저의 시뮬레이션 결과 등을 포함할 수 있다. 시뮬레이션 결과는, 각각의 시뮬레이션을 실시한 결과, 평가 및 실적, 각각의 시뮬레이션에서 유저의 숙련도, 당해 숙련도에 따른 유저의 랭크 또는 계급 등을 포함하여도 좋다. 랭크 및 계급은, 숙련도에 대응하는 절대적인 랭크라도 좋고, 다른 유저와의 대비에 의한 순위 등의 상대적인 랭크라도 좋다. 기억부(21e)에의 유저 정보의 기억은, 프로그램 실행부(21c)에 의해 정기적으로 자동으로 수행되어도 좋고, 유저가 조작기(22)를 이용하여 입력 또는 세이브 조작하는 것으로 수행되어도 좋다.
출력부(21f)는 프로그램 실행부(21c)에 의해 생성된 화상 데이터 및 음성 데이터를 출력 장치(30)에 출력하고, 그의 기능은 제2 입출력 I/F(209) 및 제3 입출력 I/F(211) 등에 의해 실현된다.
프로그램 실행부(21c)는, 기록 미디어(60) 또는 기록 매체(70) 등에 저장된 컴퓨터 프로그램을 읽어들여 실행한다. 컴퓨터 프로그램은, 시뮬레이션을 실행하기 위한 프로그램이고, 본 실시예에 따르면, 게임 프로그램이다. 즉, 본 실시예에 따르면, 시뮬레이션은, 조작 단말(20)에서 게임으로서 실행된다. 여기서, 당해 프로그램은, 어플리케이션 프로그램으로서 통신망(90), 기록 미디어(60) 또는 기록 매체(70) 등을 통해 조작 단말(20)에 인스톨되고, ROM(202) 또는 메모리 (204) 등에 저장되어 있어도 좋다.
프로그램 실행부(21c)는, 조작기(22)로부터 수취한 정보와 통신망(90)을 통해 수취한 정보를 이용하여, 컴퓨터 프로그램에 따라 동작하고, 수취한 정보를 반영한 화상 데이터 및 음성 데이터를 생성한다. 프로그램 실행부(21c)는, 생성된 화상 데이터 및 음성 데이터를 출력부(21f)를 통해 출력 장치(30)에 출력하고 유저에 제시한다. 또한, 프로그램 실행부(21c)는, 조작기(22)로부터 수취한 조작의 정보, 및 기억부(21e)에 기억된 유저 정보 등을, 통신부(21a) 및 통신망(90)을 통해 중개 장치(10)에 송신한다. 프로그램 실행부(21c)는, CPU(201), ROM(202), RAM(203), 화상 프로세서(208) 및 음성 프로세서(210) 등에 의해 실현된다.
중개 장치(10)의 기능적 구성을 설명한다. 도 7은 실시예에 따른 중개 장치(10)의 기능적 구성의 일례를 도시하는 블록도이다. 도 7에 도시된 바와 같이, 중개 장치(10)는, 제1 통신부(10a)와, 제2 통신부(10b)와, 접수부(10c)와, 결정부(10d)와, 변환부(10e)와, 동작 데이터 처리부(10f)와, 판정부(10g)와, 기억부(10h)를 포함한다. 여기서, 상기 구성 요소 모두가 필수는 아니다. 제1 통신부(10a) 및 제2 통신부(10b)의 기능은 네트워크 I/F(106) 등에 의해 실현된다. 기억부(10h)의 기능은, ROM(102) 및 메모리(104) 등에 의해 실현된다. 접수부(10c), 결정부(10d), 변환부(10e), 동작 데이터 처리부(10f) 및 판정부(10g)의 기능은, CPU(101), ROM(102), RAM(103) 등에 의해 실현된다.
제1 통신부(10a)는, 통신망(90)을 통해 조작 단말(20)과 통신한다. 제2 통신부(10b)는, 통신망(90)을 통해 시뮬레이트 컴퓨터(40) 또는 시뮬레이트 로봇(50)과 통신한다.
기억부(10h)는 다양한 정보를 기억한다. 예를 들어, 기억부(10h)에는, 각각의 유저의 유저 정보가, 유저의 식별 정보와 관련 지어져 기억되어 있다. 또한, 기억부(10h)에는, 유저에게 설정된 랭크 또는 계급 등에 기초하여 시뮬레이션의 허가 조건과, 각각의 허가 조건에서 실행할 수 있는 시뮬레이션의 구성이 관련지어져 기억되어 있다. 상기 시뮬레이션의 구성은, 시뮬레이션 내용과, 당해 시뮬레이션 내용을 실행할 수 있는 시뮬레이트 장치(200)를 관련지어 포함한다. 상기 시뮬레이트 장치(200)는, 시뮬레이트 컴퓨터(40) 또는 시뮬레이트 로봇(50)이다. 시뮬레이션 내용은, 시뮬레이션으로 실행되는 로봇 모델의 동작 또는 작업을 포함하고, 예를 들어, 시뮬레이션의 종류로서 설정되어도 좋다. 또한, 기억부(10h)는, 시뮬레이트 장치(200)를 이용한 시뮬레이션의 실행 결과와, 당해 실행 결과에 관한 평가를 관련지어 포함하여도 좋다. 또한, 기억부(10h)는, 상기 평가와, 당해 평가에 대응하는 시뮬레이션의 숙련도를 관련지어 포함하여도 좋다. 또한, 기억부(10h)는, 시뮬레이션의 숙련도와 허가 조건을 관련지어 포함하여도 좋다. 기억부(10h)는, 판정부(10g)가 평가 등의 판정에 이용하는 임계치 등을 포함하여도 좋다.
접수부(10c)는, 조작 단말(20)로부터 수신한 유저 정보에 기초하여, 유저가 실행 가능한 시뮬레이션 내용을 추출하고 당해 유저에게 제시한다. 구체적으로는, 접수부(10c)는, 조작 단말(20)로부터 유저 정보와 시뮬레이션의 실행 지령을 수신하고, 당해 유저 정보에 포함된 유저의 식별 정보에 대응하는 허가 조건을, 기억부(10h)로부터 추출한다. 또한, 접수부(10c)는, 당해 허가 조건에 대응하는 시뮬레이션의 구성을 추출하고, 조작 단말(20)에 송신한다. 유저가, 조작 단말(20)이 출력 장치(30)에 제시한 시뮬레이션의 구성으로부터 선택할 수 있다.
예를 들어, 조작 단말(20)은, 출력 장치(30)에 도 8에 도시된 바와 같은 화면(S)을 표시한다. 도 8은 실시예에 따른 조작 단말(20)이 제시하는 시뮬레이션의 선택 화면의 일례를 도시하는 도면이다. 도 8에 도시된 바와 같이, 화면(S)에는, 각각의 동작 또는 작업에 대해서, 유저의 허가 조건으로서의 계급 「A」 ~ 「D」 중 어느 하나가 표시되고, 또한, 각각의 동작 또는 작업의 시뮬레이션을 실행할 수 있는 시뮬레이트 장치(200)의 아이콘이 표시되어 있다. 따라서, 유저는, 시뮬레이트 장치(200)의 아이콘을 선택하여, 시뮬레이션을 실행하는 동작 또는 작업과, 당해 동작 또는 작업에 이용하는 시뮬레이트 장치(200)를 선택할 수 있다. 도 8에서, 예를 들어, 동작 표시 「동작 1 계급 B」는 「동작 1」이 「계급 B」 이상의 유저에 의해 시뮬레이션 가능하다는 것을 나타낸다. 각각의 동작 표시에 대해서, 아이콘 「시뮬레이트 컴퓨터」는, 시뮬레이트 컴퓨터(40)의 로봇 모델의 이용 가능을 나타내며, 아이콘 「시뮬레이트 로봇 A1 타입」은, 로봇(50A1)을 포함한 시뮬레이트 로봇(50)의 이용 가능을 나타낸다.
결정부(10d)는, 유저가 실행하는 시뮬레이션의 구성을 결정한다. 결정부(10d)는 조작 단말(20)에서 유저에 의해 선택된 시뮬레이션 내용 및 시뮬레이트 장치(200)의 정보를, 조작 단말(20)로부터 수신한다. 결정부(10d)는, 접수된 시뮬레이션 내용 및 시뮬레이트 장치(200)에서의 시뮬레이션의 실행을 결정하고, 당해 시뮬레이트 장치(200)에, 당해 시뮬레이션 내용의 실행의 지령을 송신한다. 결정부(10d)는, 상기 시뮬레이트 장치(200)와 조작 단말(20)을 접속한다.
변환부(10e)는, 시뮬레이션의 실행 중, 조작 단말(20)로부터 수신하는 로봇 모델을 조작하기 위한 제1 정보를, 시뮬레이트 장치(200)의 로봇 모델을 조작하기 위한 제2 정보로 변환한다. 변환부(10e)는, 제2 정보를, 당해 시뮬레이션을 실행하고 있는 시뮬레이트 장치(200)에 송신한다. 예를 들어, 시뮬레이트 장치(200)가 시뮬레이트 컴퓨터(40)인 경우, 제2 정보는, 제1 정보에 대응하는 동작을 가상적인 로봇 모델에 실행시키기 위해 입력 장치(413)로부터 시뮬레이트 컴퓨터(40)에 출력되는 정보에 대응한다. 시뮬레이트 장치(200)가 시뮬레이트 로봇(50)인 경우, 제2 정보는, 제1 정보에 대응하는 동작을 로봇(50A)에 실행시키기 위해 조작 장치(518)로부터 제어 장치(51)에 출력되는 정보에 대응한다.
동작 데이터 처리부(10f)는, 시뮬레이션의 실행 중, 시뮬레이트 장치(200)로부터 수신하는 로봇 모델의 동작 데이터를, 조작 단말(20)에서의 로봇 모델의 화상 표시에 대응하는 동작 데이터로 변환하는 처리를 하여, 조작 단말(20)에 송신한다.
예를 들어, 시뮬레이트 장치(200)가 시뮬레이트 컴퓨터(40)인 경우, 시뮬레이트 장치(200)로부터 수신하는 동작 데이터는, 로봇 모델의 화상으로 구성되어도 좋고, 로봇 모델의 동작을 도시하는 간략화된 화상으로 구성되어도 좋으며, 로봇 모델의 동작을 나타내는 벡터 및 좌표 등의 수치 데이터라도 좋다. 예를 들어, 간략화된 화상은, 로봇 모델의 골격을 나타내는 화상이라도 좋다. 변환 후의 동작 데이터는, 조작 단말(20)로 표시되는 로봇 모델의 화상으로 구성되어도 좋고, 시뮬레이트 컴퓨터(40)가 생성하는 가상적인 로봇 모델의 화상으로 구성되어도 좋으며, 상기 로봇 모델의 동작을 나타내는 간략화된 화상으로 구성되어도 좋고, 상기 로봇 모델의 동작을 나타내는 수치 데이터라도 좋다.
예를 들어, 시뮬레이트 장치(200)가 시뮬레이트 로봇(50)인 경우, 시뮬레이트 장치(200)로부터 수신하는 동작 데이터는, 촬상 장치(517)에 의해 촬상된 로봇(50A)의 화상 데이터로 구성될 수 있다. 변환 후의 동작 데이터는, 로봇(50A)의 촬상 화상 데이터로 구성되어도 좋고, 당해 촬상 화상 내의 특징부 등에 의해 로봇(50A)의 동작을 나타내는 간략화된 화상으로 구성되어도 좋으며, 당해 로봇(50A)의 동작을 나타내는 수치 데이터라도 좋다. 간략화된 화상은, 가상적인 로봇 모델의 화상이라도 좋고, 이 경우, CG(컴퓨터 그래픽: Computer Graphics) 또는 애니메이션 등을 이용한 화상이라도 좋다. 상기 가상적인 로봇 모델은, 로봇(50A)과 유사하여도 좋고, 비유사하여도 좋다.
판정부(10g)는, 시뮬레이트 장치(200)에서 실행된 시뮬레이션의 결과를 평가한다. 또한, 판정부(10g)는, 당해 평가에 기초하여, 유저의 숙련도를 판정하고, 또한, 숙련도에 기초하여, 유저의 랭크 또는 계급 등을 결정한다. 판정부(10g)는, 평가, 숙련도, 랭크 및 계급 중 적어도 1 개의 정보를 조작 단말(20)에 송신하고, 조작 단말(20)은 수신한 정보를 출력 장치(30)에 제시한다. 또한, 판정부(10g)는, 평가, 숙련도, 랭크 및 계급을, 새로운 유저 정보로서 기억부(10h)에 기억시킨다.
여기서, 판정부(10g)는, 동작 데이터 처리부(10f)에 의해 검출된 로봇 모델의 동작과 시뮬레이션에서 실행할 로봇 모델의 동작의 차이와, 그 임계치의 관계에 기초하여, 평가를 결정하여도 좋다. 당해 차이는, 로봇 모델의 각 부의 위치의 차이, 및 동작에 소요된 시간의 차이 등을 포함하여도 좋다. 또는, 시뮬레이트 장치(200)가 시뮬레이션의 결과를 평가하고, 판정부(10g)에 송신하여, 판정부(10g)가 당해 평가를 이용하여도 좋다.
시뮬레이트 컴퓨터(40)의 기능적 구성을 설명한다. 도 9는 실시예에 따른 시뮬레이트 컴퓨터(40)의 기능적 구성의 일례를 도시하는 블록도이다. 도 9에 도시된 바와 같이, 시뮬레이트 컴퓨터(40)는, 통신부(40a)와, 접수부(40b)와, 프로그램 실행부(40c)와, 판정부(40d)와, 동작 데이터 출력부(40e)와, 기억부(40f)를 포함한다. 여기서, 상기 구성 요소 모두가 필수는 아니다. 통신부(40a)의 기능은 네트워크 I/F(406) 등에 의해 실현된다. 기억부(40f)의 기능은 ROM(402) 및 메모리(404) 등에 의해 실현된다. 접수부(40b), 프로그램 실행부(40c), 판정부(40d) 및 동작 데이터 출력부(40e)의 기능은 CPU(401), ROM(402), RAM(403) 등에 의해 실현된다.
통신부(40a)는, 통신망(90)을 통해 중개 장치(10)와 통신한다. 기억부(40f)는 다양한 정보를 기억한다. 예를 들어, 기억부(40f)는, 시뮬레이트 컴퓨터(40)에서 실행 가능한 각각의 시뮬레이션 내용에 대해서, 당해 시뮬레이션에서 실행되는 로봇 모델의 각각의 동작의 위치 및 소요 시간의 정보를 기억하고 있어도 좋다. 또한, 기억부(40f)는, 판정부(40d)가 평가에 이용하는 임계치 등을 기억하여도 좋다.
접수부(40b)는, 중개 장치(10)로부터, 시뮬레이션의 실행의 지령과, 실행하는 시뮬레이션 내용을 수신한다. 접수부(40b)는, 수신한 시뮬레이션 내용의 실행의 지령을 프로그램 실행부(40c)에 출력한다. 또한, 시뮬레이션의 개시 후, 접수부(40b)는, 중개 장치(10)의 변환부(10e)로부터 가상적인 로봇 모델을 조작하기 위한 제2 정보를 수신하고, 프로그램 실행부(40c)에 출력한다.
프로그램 실행부(40c)는, 지령된 시뮬레이션 내용의 컴퓨터 프로그램을 실행한다. 당해 프로그램은, ROM(402) 또는 메모리(404)에 기억된다. 프로그램 실행부(40c)는, 접수부(40b)로부터 수취한 제2 정보와 컴퓨터 프로그램에 따라서, 당해 제2 정보에 대응하는 동작을 가상적인 로봇 모델에 실행시킨다.
동작 데이터 출력부(40e)는, 프로그램 실행부(40c)가 동작시킨 로봇 모델로부터, 그의 동작 결과를 나타내는 동작 결과 데이터를 검출한다. 당해 동작 결과 데이터는, 로봇 모델의 화상, 로봇 모델의 골격 등의 간략화된 화상, 로봇 모델의 각 부의 위치, 당해 위치로의 소요 시간 등을 포함하여도 좋다. 또한, 동작 데이터 출력부(40e)는, 동작 결과 데이터로부터 동작 데이터를 생성하고, 중개 장치(10)에 송신한다. 당해 동작 데이터는, 중개 장치(10)의 동작 데이터 처리부(10f)의 설명에서 상술한 동작 데이터이다.
판정부(40d)는, 동작 데이터 출력부(40e)에 의해 생성된 동작 데이터를 이용하여, 시뮬레이션의 결과를 평가하고, 당해 평가를 중개 장치(10)에 송신한다. 판정부(40d)는, 중개 장치(10)의 판정부(10g)와 마찬가지로, 당해 평가를 결정한다. 또한, 판정부(40d)는, 유저의 숙련도, 랭크 및 계급 등을 결정하여 중개 장치(10)에 송신하여도 좋다.
시뮬레이트 로봇(50)의 기능적 구성을 설명한다. 도 10은 실시예에 따른 시뮬레이트 로봇(50)의 기능적 구성의 일례를 도시하는 블록도이다. 도 10에 도시된 바와 같이, 시뮬레이트 로봇(50)은, 통신부(50a), 접수부(50b)와, 촬상 제어부(50c)와, 화상 처리부(50d)와, 구동 제어부(50e)와, 상태 검출부(50f)와, 판정부(50g)와, 기억부(50h)와, 촬상 장치(517)와, 구동 장치(519) 등을 포함한다. 여기서, 상기 구성 요소 모두가 필수는 아니다. 통신부(50a), 접수부(50b), 촬상 제어부(50c), 화상 처리부(50d), 구동 제어부(50e), 상태 검출부(50f), 판정부(50g) 및 기억부(50h)는, 제어 장치(51)를 구성한다. 통신부(50a)의 기능은 네트워크 I/F(506) 등에 의해 실현된다. 기억부(50h)의 기능은 ROM(502) 및 메모리(504) 등에 의해 실현된다. 접수부(50b), 촬상 제어부(50c), 화상 처리부(50d), 구동 제어부(50e), 상태 검출부(50f) 및 판정부(50g)의 기능은, CPU(501), ROM(502), RAM(503) 등에 의해 실현된다.
통신부(50a)는, 통신망(90)을 통해 중개 장치(10)와 통신한다. 기억부(50h)는 다양한 정보를 기억한다. 예를 들어, 기억부(50h)는, 시뮬레이트 로봇(50)에서 실행 가능한 각각의 시뮬레이션 내용에 대해서, 당해 시뮬레이션에서 실행되는 로봇(50A)의 각각의 동작의 위치, 작용력 및 소요 시간의 정보를 기억하고 있어도 좋다. 작용력의 예는, 로봇의 엔드 이펙터가 대상물을 누르거나 또는 당기는 힘 등이다. 또한, 기억부(50h)는, 판정부(50g)가 평가에 이용하는 임계치 등을 기억하고 있어도 좋다.
접수부(50b)는, 중개 장치(10)로부터, 시뮬레이션의 실행의 지령과, 실행하는 시뮬레이션 내용을 수신한다. 접수부(50b)는, 수신한 시뮬레이션 내용의 지령을 촬상 제어부(50c) 및 구동 제어부(50e)에 출력한다. 또한, 시뮬레이션의 개시 후, 접수부(50b)는, 중개 장치(10)의 변환부(10e)로부터 로봇(50A)을 조작하기 위한 제2 정보를 수신하고, 구동 제어부(50e)에 출력한다.
촬상 제어부(50c)는, 시뮬레이션의 실행의 지령을 수취하면, 촬상 장치(517)를 기동하여 촬상하게 한다. 촬상 장치(517)는, 로봇(50A), 예를 들어, 엔드 이펙터를 촬상하고, 촬상한 화상을 화상 처리부(50d)에 출력한다. 화상 처리부(50d)는, 촬상 장치(517)로부터 수취한 화상의 화상 데이터를 중개 장치(10)에 송신한다.
구동 제어부(50e)는, 접수부(50b)로부터 수취한 제2 정보에 따라서, 구동 장치(519)를 구동함으로써, 로봇(50A)에 당해 제2 정보에 대응하는 동작을 실행시킨다.
상태 검출부(50f)는, 로봇(50A)의 각 부의 상태를 검출하고, 검출 결과를 판정부(50g)에 출력한다. 예를 들어, 상태 검출부(50f)는, 상기 상태로서, 로봇(50A)의 가동 부분의 동작량을 검출하여, 각 부의 3차원 위치를 검출하여도 좋다. 이 때, 상태 검출부(50f)는, 구동 장치(519)에 설치된 회전 센서의 검출 값으로부터 로봇(50A)의 가동 부분의 동작량을 검출하여도 좋다. 또한, 상태 검출부(50f)는, 상기 상태로서, 로봇(50A)의 엔드 이펙터에 작용하는 힘인 작용력을 검출하여도 좋다. 이 때, 상태 검출부(50f)는, 엔드 이펙터에 설치된 역각 센서 등의 힘 센서의 검출 값으로부터 작용력을 검출하여도 좋다. 상태 검출부(50f)는, 타이머를 구비하고, 상기 상태로서, 로봇(50A)의 각 동작 사이의 소요 시간을 검출하여도 좋다. 구동 제어부(50e)는 상태 검출부(50f)의 검출 결과를 피드백 정보로서 이용하여 구동 장치(519)의 구동을 제어하여도 좋다.
판정부(50g)는, 상태 검출부(50f)의 검출 결과를 이용하여, 시뮬레이션의 결과를 평가하고, 그 평가를 중개 장치(10)에 송신한다. 판정부(50g)는, 중개 장치(10)의 판정부(10g)와 마찬가지로, 당해 평가를 결정한다. 또한, 판정부(50g)는, 유저의 숙련도, 랭크 및 계급 등을 결정하여 중개 장치(10)로 송신하여도 좋다.
<시뮬레이트 시스템의 동작>
실시예에 따른 시뮬레이트 시스템(1)의 동작을 설명한다. 도 11a 및 도 11b는 실시예에 따른 시뮬레이트 시스템(1)의 동작의 흐름의 일례를 도시하는 시퀀스도이다. 도 11a 및 도 11b에 도시된 바와 같이, 유저가, 조작 단말(20)에서, 시뮬레이션의 게임 프로그램을 기동한다(스텝(S101)). 다음으로, 유저는, 유저 정보인 유저의 식별 정보 등을 조작 단말(20)에 입력하고, 조작 단말(20)은 당해 식별 정보 등을 중개 장치(10)에 송신한다(스텝(S102)). 즉, 유저는, 시뮬에이션의 게임에 로그인한다. 유저의 식별 정보는, 미리 중개 장치(10)에 등록되어 있다.
다음으로, 중개 장치(10)는, 수신한 유저의 식별 정보를 인증하고, 당해 식별 정보에 대응하는 시뮬레이션의 허가 조건을 추출하고, 추출된 허가 조건에 대응하는 시뮬레이션의 구성을 추출한다. 그리고, 중개 장치(10)는, 추출한 시뮬레이션의 구성을, 당해 유저가 실행 가능한 시뮬레이션의 구성으로서 조작 단말(20)에 송신한다(스텝(S103)). 시뮬레이션의 구성은, 시뮬레이션 내용과, 당해 시뮬레이션 내용을 실행하는 시뮬레이트 장치(200)의 조합이다.
다음으로, 유저가 조작 단말(20)을 이용하여, 출력 장치(30)에 표시되는 실행 가능한 시뮬레이션 내용과 시뮬레이트 장치(200)의 조합인 시뮬레이션의 구성으로부터, 실행하는 시뮬레이션의 구성을 결정한다. 조작 단말(20)은 결정된 시뮬레이션의 구성을 중개 장치(10)에 송신한다(스텝(S104)).
다음으로, 중개 장치(10)는, 수신된 시뮬레이션의 구성에 포함된 시뮬레이트 장치(200)가 시뮬레이트 컴퓨터(40)인지 여부를 판정한다(스텝(S105)). 중개 장치(10)는, 시뮬레이트 컴퓨터(40)인 경우(스텝(S105)에서 Yes), 스텝(S1060)으로 진행하고, 시뮬레이트 컴퓨터(40)가 아닌 경우(스텝(S105)에서 No), 스텝(S107)으로 진행한다.
스텝(S106)에서, 중개 장치(10)는, 중개 장치(10)가 접속 가능한 시뮬레이트 컴퓨터(40) 중에서, 상기 시뮬레이션의 구성에 포함된 시뮬레이션 내용의 실행이 가능한 시뮬레이트 컴퓨터(40)를 추출하고, 당해 시뮬레이트 컴퓨터(40)와 조작 단말(20)을 접속한다. 또한, 중개 장치(10)는, 당해 시뮬레이트 컴퓨터(40)에 당해 시뮬레이션 내용의 실행의 지령을 송신한다.
다음으로, 시뮬레이션 컴퓨터(40)는, 지령된 시뮬레이션 실행한다(스텝(S108)). 시뮬레이션 컴퓨터(40)는, 시뮬레이션의 실행을 나타내는 통지를 중개 장치(10)를 통해 조작 단말(20)에 송신한다.
시뮬레이션의 실행 중, 조작 단말(20)은, 유저에 의해 입력되는 조작을 나타내는 제1 정보를 중개 장치(10)로 송신한다(스텝(S109)). 또한, 중개 장치(10)는, 제1 정보를, 시뮬레이트 컴퓨터(40)의 가상적인 로봇 모델을 동작시키는 제2 정보로 변환하고, 시뮬레이트 컴퓨터(40)에 송신한다(스텝(S110)). 시뮬레이트 컴퓨터(40)는, 제2 정보에 따라 로봇 모델을 동작시키고, 당해 로봇 모델의 동작 데이터를 중개 장치(10)에 송신한다(스텝(S111)). 중개 장치(10)는, 수신된 동작 데이터를, 조작 단말(20)에서의 로봇 모델의 화상 표시 등의 제시에 대응하는 동작 데이터로 변환하고, 조작 단말(20)에 송신한다(스텝(S112)). 조작 단말(20)은, 수신된 동작 데이터에 대응하는 동작을 실행하는 로봇 모델의 화상 등을 출력 장치(30)에 제시하게 한다. 여기서, 시뮬레이트 컴퓨터(40)는, 동작 데이터로서, 가상적인 로봇 모델의 화상 데이터를 중개 장치(10)에 송신하고, 중개 장치(10)는, 수신된 화상 데이터를 조작 단말(20)에 송신하여도 좋다. 조작 단말(20)은, 수신된 화상 데이터를 출력 장치(30)에 표시하게 하여도 좋다.
다음으로, 조작 단말(20)은, 실행 중의 시뮬레이션에 포함된 전체 동작이 완료되었는지 여부를 판정한다(스텝(S113)). 조작 단말(20)은, 완료된 경우(스텝(S113)에서 Yes), 스텝(S114)으로 진행하여, 완료의 통지를 중개 장치(10)에 송신하고, 미완료의 경우(스텝(S113)에서 No), 스텝(S109)으로 돌아온다.
다음으로, 스텝(S115)에서, 중개 장치(10)는, 시뮬레이션에 포함된 모든 동작의 완료를 시뮬레이트 컴퓨터(40)에 통지한다. 다음으로, 시뮬레이트 컴퓨터(40)는, 시뮬레이션을 통한 로봇 모델의 동작 데이터를 기초로, 시뮬레이션의 결과를 평가하고, 평가 결과를 중개 장치(10)에 송신한다(스텝(S116)).
다음으로, 스텝(S117)에서, 중개 장치(10)는, 수신한 평가 결과를 기초로, 시뮬레이션 결과의 평가, 유저의 숙련도, 랭크 및 계급 등을 결정하고, 이들 중 적어도 1 개를 조작 단말(20)에 송신한다. 또한, 중개 장치(10)는, 평가 결과, 숙련도, 랭크 및 계급 등을 새로운 유저 정보로서, 자신에 등록한다. 다음으로, 조작 단말(20)은, 수신한 평가 결과, 숙련도, 랭크 및 계급 등을 출력 장치(30)에 출력하여 유저에 제시한다(스텝(S118)). 유저가 조작 단말(20)을 정지함으로써, 조작 단말(20)은 시뮬레이션의 게임 프로그램을 종료한다(스텝(S119)).
또한, 스텝(S107)에서, 중개 장치(10)는, 중개 장치(10)가 접속 가능한 시뮬레이트 로봇(50) 중에서, 스텝(S104)에서 결정된 시뮬레이션의 구성에 포함된 시뮬레이션 내용의 실행을 가능한 로봇(50A)을 포함하는 시뮬레이트 로봇(50)을 추출하고, 당해 시뮬레이트 로봇(50)과 조작 단말(20)을 접속한다. 또한, 중개 장치(10)는 시뮬레이트 로봇(50)에 당해 시뮬레이션 내용의 실행의 지령을 송신한다.
다음으로, 시뮬레이트 로봇(50)은, 지령된 시뮬레이션 내용을 실행한다(스텝(S120)). 다음으로, 시뮬레이트 로봇(50)의 제어 장치(51)는, 촬상 장치(517)에 로봇(50A)의 촬상을 실행하게 한다(스텝(S121)). 시뮬레이트 로봇(50)은, 시뮬레이션의 실행을 나타내는 통지를 중개 장치(10)를 통해 조작 단말(20)에 송신한다.
시뮬레이션의 실행 중, 조작 단말(20)은 제1 정보를 중개 장치(10)에 송신하고(스텝(S122)), 중개 장치(10)는, 제1 정보를, 로봇(50A)을 동작시키는 제2 정보로 변환하여 시뮬레이트 로봇(50)에 송신한다(스텝(S123)). 제어 장치(51)는, 제2 정보에 따라 로봇(50A)을 동작시킨다(스텝(S124)). 이 때, 제어 장치(51)는, 로봇(50A)의 각 부의 상태를 검출한다. 다음으로, 제어 장치(51)는, 촬상 장치(517)에 의해 촬상된 화상 데이터를 중개 장치(10)에 송신한다(스텝(S125)). 중개 장치(10)는, 수신된 화상 데이터를 조작 단말(20)에 송신한다(스텝(S126)). 조작 단말(20)은, 수신된 화상 데이터의 화상 등을 출력 장치(30)에 제시하게 한다.
다음으로, 조작 단말(20)은, 실행 중의 시뮬레이션에 포함된 전체의 동작이 완료되었는지 여부를 판정한다(스텝(S127)). 조작 단말(20)은, 완료된 경우(스텝(S127)에서 Yes), 스텝(S128)으로 진행하여, 완료의 통지를 중개 장치(10)에 송신하고, 미완료의 경우(스텝(S127)에서 No), 스텝(S122)으로 돌아온다.
다음으로, 스텝(S129)에서, 중개 장치(10)는, 시뮬레이션에 포함된 모든 동작의 완료를 시뮬레이트 로봇(50)에 통지한다. 다음으로, 시뮬레이트 로봇(50)의 제어 장치(51)는, 시뮬레이션을 통한 로봇(50A)의 각 부의 상태에 기초하여, 시뮬레이션의 결과를 평가하고, 평가 결과를 중개 장치(10)로 송신한다(스텝(S130)).
다음으로, 스텝(S131)에서, 중개 장치(10)는, 수신된 평가 결과를 기초로, 시뮬레이션 결과의 평가, 사용자의 숙련도, 랭크 및 계급 등을 결정하고, 이들 중 적어도 1 개를 조작 단말(20)에 송신하고, 또한 자신에 등록한다. 다음으로, 조작 단말(20)은, 수신된 평가 결과 등을 출력 장치(30)에 출력하여 유저에 제시한다(스텝(S132)). 유저가 조작 단말(20)를 정지함으로써, 조작 단말(20)은 시뮬레이션의 게임 프로그램을 종료한다(스텝(S133)).
상기 스텝(S101 ~ S133)의 처리에 의해, 시뮬레이트 장치(200)로부터 원격지에 위치하는 유저가, 예를 들어 자신이 소유한 조작 단말(20)을 이용하여, 통신망(90)을 통해 시뮬레이트 컴퓨터(40) 또는 시뮬레이트 로봇(50)을 이용한 시뮬레이션을 수행할 수 있다. 이와 같이, 유저는, 조작 단말(20)을 이용한 시뮬레이션을실행하여, 로봇의 조작의 숙련도를 향상시킬 수 있다. 예를 들어, 조작 단말(20)과 실제의 로봇이 통신망(90)을 통해 접속되고 또한 조작 단말(20)에서의 로봇 조작이 가능한 환경에서, 유저가 원격지에 있으면서도 조작 단말(20)을 이용하여 실제의 로봇의 실제의 작업을 수행할 수 있게 된다.
<효과 등>
상술한 바와 같은 실시예에 따른 시뮬레이트 시스템(1)에서, 중개 장치(10)의 정보 처리 장치(100)는, 로봇 모델에 모의적인 동작을 시키는 시뮬레이션을 실행하는 시뮬레이트 장치(200)와 접속되고 또한 시뮬레이트 장치(200)의 원격의 유저에 의해 조작되는 조작 단말(200)에 입력되고, 로봇 모델을 조작하기 위한 제1 정보를, 시뮬레이트 장치(200)의 로봇 모델을 조작하기 위한 제2 정보로 변환하고, 제2 정보에 따라 시뮬레이트 장치(200)를 동작시키고, 제2 정보에 따라 동작하는 시뮬레이트 장치(200)의 로봇 모델의 동작의 정보를, 조작 단말(20)에 제시하게 한다. 여기서, 조작 단말(20)과 시뮬레이트 장치(200)는 통신망(90)을 통해 접속되어도 좋다. 또한, 예를 들어, 로봇 모델의 모의적인 동작은, 실제의 로봇이 실행하는 작업을 모의한 동작이라도 좋다.
상기 구성에 따르면, 정보 처리 장치(100)는 조작 단말(20)에 입력되는 조작에 대응하는 제1 정보를 제2 정보로 변환하고, 제2 정보에 따라 시뮬레이트 장치(200)에 동작을 시킴으로써, 시뮬레이트 장치(200)의 로봇 모델에 상기 조작에 대응하는 동작을 시킨다. 따라서, 유저는, 시뮬레이트 장치(200)로부터의 원격지에서, 조작 단말(20)을 이용하여, 로봇 동작의 시뮬레이션을 수행할 수 있다. 또한, 조작 단말(20)과 시뮬레이트 장치(200)의 사이에서 송수신되는 정보는, 각각에 적응한 형식의 정보로 변환되기 때문에, 유저는, 예를 들어, 자신이 가진 친숙한 조작 단말(20)을 이용할 수 있다. 따라서, 유저는, 시뮬레이션 조작을 용이하게 실행할 수 있고, 시뮬레이션을 받아들이기 쉽다. 또한, 조작 단말(20)과 시뮬레이트 장치(200)가 통신망(90)을 통해 접속됨으로써, 다양한 조작 단말(20)이 시뮬레이트 장치(200)와 접속될 수 있다. 따라서, 다양한 유저가, 조작 단말(20)을 통해 시뮬레이트 장치(200)에 액세스하여, 로봇의 조작의 시뮬레이션을 수행할 수 있고, 이에 의해 로봇을 조작할 수 있게 된다.
또한, 실시예에 따른 시뮬레이트 시스템(1)에서, 조작 단말(20)은 게임기, 게임 컨트롤러, 로봇 전용의 원격 조작기, 개인 정보 단말기, 스마트 디바이스 및 퍼스널 컴퓨터 중 적어도 어느 하나라도 좋다. 상기 구성에 따르면, 다양한 조작 단말(20)을 이용한 시뮬레이션이 가능해진다.
또한, 실시예에 따른 정보 처리 장치(100)는, 조작 단말(20)에 입력되는, 실행을 요구하는 시뮬레이션의 정보인 요구 정보에 기초하여, 복수 존재하는 시뮬레이트 장치(200) 중에서, 요구 정보에서 요구되는 시뮬레이션에 대응하는 시뮬레이트 장치(200)를 결정하고, 결정된 시뮬레이트 장치(200)와 조작 단말(20)을 이용한 시뮬레이션의 실행을 가능하게 하여도 좋다. 상기 구성에 따르면, 정보 처리 장치(100)는, 유저의 요구에 대응하고, 당해 유저에 다양한 시뮬레이션 실행을 시킬 수 있다.
또한, 실시예에 따른 정보 처리 장치(100)는, 시뮬레이트 장치(200)의 로봇 모델의 동작의 정보에 기초하여, 로봇 모델의 동작 결과를 평가하고, 조작 단말(20)을 조작하는 유저에 대한 평가인 유저 평가로서, 동작 결과의 평가를 등록하여도 좋다. 또한, 정보 처리 장치(100)는, 등록된 유저 평가에 기초하여, 유저 평가의 대상의 유저가 실행 가능한 시뮬레이션 및 시뮬레이트 장치(200)를 결정하고, 결정된 시뮬레이션 및 시뮬레이트 장치(200)의 정보를 조작 단말(20)에 제시하게 하여도 좋다.
상기 구성에 따르면, 정보 처리 장치(100)는, 시뮬레이션의 결과의 평가를 조작 단말(20)의 유저 평가로서 등록한다. 이에 따라서, 등록된 유저 평가의 이용이 가능하다. 예를 들어, 정보 처리 장치(100)는, 시뮬레이션의 수행 시 등에, 등록된 유저 평가를 유저에 제시할 수 있다. 이에 따라서, 유저는 자신의 유저 평가에 따라서, 실행하는 시뮬레이션의 구성을 용이하게 결정할 수 있다. 또한, 유저가 실제의 로봇을 조작하는 경우, 유저 평가에 기초하여, 유저에 적합한 로봇 및 작업 내용의 결정이 가능하게 된다. 또한, 유저 또는 시뮬레이션 제공자(예를 들어, 중개 장치(10))는, 유저에 적합한 또는 실행 가능한 시뮬레이션 내용 및 시뮬레이트 장치(200)를 판단할 수 있다.
또한, 실시예에 따른 정보 처리 장치(100)는, 시뮬레이트 장치(200)의 로봇 모델의 동작의 정보를, 조작 단말(20)의 실행 프로그램 상에서 기능하는 정보로 변환하여도 좋다. 상기 구성에 따르면, 정보 처리 장치(100)는, 시뮬레이트 장치(200)에서의 로봇 모델의 동작을, 조작 단말(20)에서 실행되는 프로그램 상에서의 동작에 대응시킬 수 있다.
또한, 실시예에 따른 정보 처리 장치(100)는, 가상적인 로봇 모델에 모의적인 동작을 시키는 시뮬레이트 컴퓨터(40)과 조작 단말(20)을 이용한 시뮬레이션의 실행을 가능하게 하고, 시뮬레이트 컴퓨터(40)에 의해 생성되는 가상적인 로봇 모델의 동작의 정보를 조작 단말(20)에 제시하게 하여도 좋다. 상기 구성에 따르면, 유저는, 조작 단말(20)을 이용하여, 시뮬레이트 컴퓨터(40)의 시뮬레이션을 실행할 수 있다.
또한, 실시예에 따른 정보 처리 장치(100)는, 로봇 모델로서 실제의 로봇(50A)에 모의적인 동작을 시키는 시뮬레이트 로봇(50)과 조작 단말(20)을 이용한 시뮬레이션의 실행을 가능하게 하고, 촬상 장치(517)에 의해 촬상되는 로봇(50A)의 화상의 정보를, 로봇 모델의 동작의 정보로서 조작 단말(20)에 제시하게 하여도 좋다. 상기 구성에 따르면, 유저는, 조작 단말(20)을 이용하여, 실제의 로봇(50A)를 이용한 시뮬레이션을 실행할 수 있다. 또한, 유저는 실제의 로봇(50A)의 화상을 시인하면서 시뮬레이션을 실행할 수 있다.
또한, 실시예에 따른 정보 처리 장치(100)는, 실제의 로봇(50A)의 화상을 가상적인 로봇 모델의 화상으로 변환하고, 변환된 화상에서 가상적인 로봇 모델의 동작의 정보를 조작 단말(20)에 제시하게 하여도 좋다. 예를 들어, 가상적인 로봇 모델의 화상은, CG 또는 애니메이션 등을 이용한 화상이라도 좋다. 상기 구성에 따르면, 조작 단말(20)에 의해 유저에 표시되는 화상을, 유저에 친숙한 화상으로 할 수 있다. 따라서, 유저가 시뮬레이션에 친숙해지기 쉬워진다.
또한, 실시예에 따른 중개 장치(10)는, 실시예에 따른 정보 처리 장치(100)를 구비하고, 조작 단말(20)과 시뮬레이트 장치(200)를 통신망(90)을 통해 중개한다. 상기에 따르면, 실시예에 따른 정보 처리 장치(100)와 동일한 효과를 얻을 수 있다.
또한, 실시예에 따른 시뮬레이트 시스템(1)은, 실시예에 따른 정보 처리 장치(100)와, 시뮬레이트 장치(200)와, 조작 단말(20)과 시뮬레이트 장치(200)를 통신망(90)을 통해 중개하는 중개 장치(10)를 구비한다. 상기 구성에 따르면, 실시예에 따른 정보 처리 장치(100)와 동일한 효과를 얻을 수 있다. 여기서, 시뮬레이트 시스템(1)은, 조작 단말(20)을 더 구비하여도 좋다.
<기타 실시예>
이상으로, 본 발명의 실시 형태의 예에 대해 설명하였지만, 본 발명은 상기 실시예에 한정되지 않는다. 즉, 본 발명의 범위 내에서 다양한 변형 및 개량이 가능하다. 예를 들어, 각종 변형을 실시예에 실시한 것, 및, 다른 실시예에서 구성 요소를 조합시켜 구축되는 형태도, 본 발명의 범위에 포함된다.
예를 들어, 실시예에서, 정보 처리 장치(100)는, 중개 장치(10)에 탑재되어 있었지만, 이에 한정되지 않는다. 예를 들어, 정보 처리 장치(100)는, 조작 단말(20), 시뮬레이트 장치(200)에 탑재되어도 좋다. 또한, 정보 처리 장치(100)는, 2 개 이상의 장치로 분할하여 탑재되어도 좋다. 예를 들어, 정보 처리 장치(100)의 일부 기능을 가지는 제1 정보 처리 장치 및 제2 정보 처리 장치가 각각, 중개 장치(10), 조작 단말(20) 및 시뮬레이트 장치(200) 중 2 개에 탑재되어도 좋다. 또는, 정보 처리 장치(100)의 일부 기능을 가지는 제1 ~ 제3 정보 처리 장치가 각각, 중개 장치(10), 조작 단말(20) 및 시뮬레이트 장치(200)에 탑재되어도 좋다.
또한, 실시예에 따른 시뮬레이트 시스템(1)은, 조작 단말(20), 중개 장치(10), 시뮬레이트 장치(200)를 구비하고 있었지만, 이에 한정되지 않는다. 예를 들어, 시뮬레이트 시스템(1)은, 중개 장치(10)를 구비하지 않아도 좋다.
또한, 실시예에 따른 시뮬레이트 시스템(1)에서, 시뮬레이트 컴퓨터(40) 및 시뮬레이트 로봇(50)은, 미리 설정된 컴퓨터 프로그램 및 데이터에 따라, 로봇 모델을 동작시키도록 구성되어 있었지만, 이에 한정되지 않는다. 예를 들어, 시뮬레이트 컴퓨터(40) 및 시뮬레이트 로봇(50)은 디지털 트윈의 환경을 이용하도록 구성되어도 좋다. 이 경우, 시뮬레이트 컴퓨터(40) 및 시뮬레이트 로봇(50)은, 예를 들어, 클라우드 상에 축적된 각종 데이터, 즉, 빅 데이터를 이용하여 동작하도록 구성되어도 좋다. 예를 들어, 데이터는 다양한 유저가 다양한 시뮬레이트 컴퓨터(40) 및 시뮬레이트 로봇(50) 등을 이용하여 다양한 시뮬레이션을 수행함으로써 얻어진 데이터, 다양한 로봇을 이용하여 실제로 다양한 작업을 수행하여 얻어진 데이터 등을 포함하여도 좋다.
또한, 본 발명은, 정보 처리 방법이라도 좋다. 예를 들어, 본 발명의 일 실시예에 따른 정보 처리 방법은, 로봇 모델에 모의적인 동작을 시키는 시뮬레이션을 실행하는 시뮬레이트 장치와 접속되고 또한 상기 시뮬레이트 장치의 원격의 유저에 의해 조작되는 조작 단말에 입력되는, 로봇 모델을 조작하기 위한 제1 정보를, 상기 시뮬레이트 장치의 상기 로봇 모델을 조작하기 위한 제2 정보로 변환하고, 상기 제2 정보에 따라 상기 시뮬레이트 장치를 동작시키고, 상기 제2 정보에 따라 동작하는 상기 시뮬레이트 장치의 상기 로봇 모델의 동작 정보를, 상기 조작 단말에 제시하게 한다. 이 방법에 따르면, 상기 정보 처리 장치(100) 등과 같은 효과를 얻을 수 있다. 이러한 정보 처리 방법은, CPU, LSI 등의 회로, IC 카드 또는 단일체의 모듈 등에 의해 실현되어도 좋다.
또한, 본 발명은 상기 정보 처리 방법을 실행하기 위한 프로그램이라도 좋고, 상기 프로그램이 기록된 비일시적인 컴퓨터 판독 가능한 기록 매체라도 좋다. 또한, 상기 프로그램은 인터넷 등의 전송 매체를 통해 유통시킬 수 있는 것은 말할 것도 없다.
또한, 상기에서 사용한 서수, 수량 등의 숫자는, 모두 본 발명의 기술을 구체적으로 설명하기 위해 예시하는 것이며, 본 발명은 예시된 숫자에 제한되지 않는다. 또한, 구성 요소 간의 접속 관계는 본 발명의 기술을 구체적으로 설명하기 위해 예시하는 것이고, 본 발명의 기능을 실현하는 접속 관계는 이에 한정되지 않는다.
또한, 기능 블록도에서 블록 분할은 일례이고, 복수의 블록을 1 개의 블록으로 실현하고, 1 개의 블록을 복수로 분할하고, 및/또는 일부 기능을 다른 블록으로 옮겨도 좋다. 또한, 유사한 기능을 가지는 복수의 블록의 기능을 단일의 하드웨어 또는 소프트웨어가 병렬 또는 시분할로 처리하여도 좋다.
1: 시뮬레이트 시스템
10: 중개 장치
20: 조작 단말
40: 시뮬레이트 컴퓨터(시뮬레이트 장치)
50: 시뮬레이트 로봇(시뮬레이트 장치)
50A, 50A1 ~ 50An: 로봇
90: 통신망
100: 정보 처리 장치
200: 시뮬레이트 장치
517: 촬상 장치
10: 중개 장치
20: 조작 단말
40: 시뮬레이트 컴퓨터(시뮬레이트 장치)
50: 시뮬레이트 로봇(시뮬레이트 장치)
50A, 50A1 ~ 50An: 로봇
90: 통신망
100: 정보 처리 장치
200: 시뮬레이트 장치
517: 촬상 장치
Claims (23)
- 로봇 모델에 모의적인 동작을 시키는 시뮬레이션을 실행하는 시뮬레이트 장치와 접속되고 또한 상기 시뮬레이트 장치의 원격의 유저에 의해 조작되는 조작 단말에 입력되는, 로봇 모델을 조작하기 위한 제1 정보를, 상기 시뮬레이트 장치의 상기 로봇 모델을 조작하기 위한 제2 정보로 변환하고,
상기 제2 정보에 따라 상기 시뮬레이트 장치를 동작시키고,
상기 제2 정보에 따라 동작하는 상기 시뮬레이트 장치의 상기 로봇 모델의 동작의 정보를, 상기 조작 단말에 제시하는 것을 특징으로 하는 정보 처리 장치. - 제1항에 있어서,
상기 조작 단말에 입력되는, 실행을 요구하는 시뮬레이션의 정보인 요구 정보에 기초하여, 복수 존재하는 상기 시뮬레이트 장치 중에서, 상기 요구 정보에서 요구되는 시뮬레이션에 대응하는 상기 시뮬레이트 장치를 결정하고,
결정된 상기 시뮬레이트 장치와 상기 조작 단말을 이용한 시뮬레이션의 실행을 가능하게 하는 것을 특징으로 하는 정보 처리 장치. - 제1항 또는 제2항에 있어서,
상기 시뮬레이트 장치의 상기 로봇 모델의 동작의 정보에 기초하여, 상기 로봇 모델의 동작 결과를 평가하고,
상기 조작 단말을 조작하는 유저에 대한 평가인 유저 평가로서, 상기 동작 결과의 평가를 등록하는 것을 특징으로 하는 정보 처리 장치. - 제3항에 있어서,
등록된 상기 유저 평가에 기초하여, 상기 유저 평가의 대상의 유저가 실행 가능한 시뮬레이션 및 상기 시뮬레이트 장치를 결정하고,
결정된 상기 시뮬레이션 및 상기 시뮬레이트 장치의 정보를 상기 조작 단말에 제시하는 것을 특징으로 하는 정보 처리 장치. - 제1항 내지 제4항 중 어느 한 항에 있어서,
상기 로봇 모델의 모의적인 동작은, 실제의 로봇이 실행하는 작업을 모의한 동작인 것을 특징으로 하는 정보 처리 장치. - 제1항 내지 제5항 중 어느 한 항에 있어서,
가상적인 상기 로봇 모델에 모의적인 동작을 시키는 컴퓨터 장치로의 상기 시뮬레이트 장치와 상기 조작 단말을 이용한 시뮬레이션의 실행을 가능하게 하고,
상기 시뮬레이트 장치에 의해 생성된 상기 가상적인 로봇 모델의 동작의 정보를 상기 조작 단말에 제시하는 것을 특징으로 하는 정보 처리 장치. - 제1항 내지 제6항 중 어느 한 항에 있어서,
상기 로봇 모델로서 실제의 로봇에 모의적인 동작을 시키는 상기 시뮬레이트 장치와 상기 조작 단말를 이용한 시뮬레이션의 실행을 가능하게 하고,
촬상 장치에 의해 촬상되는 상기 로봇의 화상의 정보를, 상기 로봇 모델의 동작의 정보로서 상기 조작 단말에 제시하는 것을 특징으로 하는 정보 처리 장치. - 제7항에 있어서,
상기 로봇의 화상을 가상적인 로봇 모델의 화상으로 변환하고,
변환된 화상에서 상기 가상적인 로봇 모델의 동작의 정보를 상기 조작 단말에 제시하는 것을 특징으로 하는 정보 처리 장치. - 제1항 내지 제8항 중 어느 한 항에 있어서,
상기 조작 단말과 상기 시뮬레이트 장치는 통신망을 통해 접속되는 것을 특징으로 하는 정보 처리 장치. - 제1항 내지 제9항 중 어느 한 항에 있어서,
상기 조작 단말은, 게임기, 게임 컨트롤러, 로봇 전용의 원격 조작기, 개인 정보 단말기(PDA: Personal Data Assistant), 스마트 디바이스 및 퍼스널 컴퓨터 중 적어도 어느 하나인 것을 특징으로 하는 정보 처리 장치. - 제1항 내지 제10항 중 어느 한 항에 따른 정보 처리 장치를 구비하고,
상기 조작 단말과 상기 시뮬레이트 장치를 통신망을 통해 중개하는 것을 특징으로 하는 중개 장치. - 제1항 내지 제10항 중 어느 한 항에 따른 정보 처리 장치와,
상기 시뮬레이트 장치와,
상기 조작 단말과 상기 시뮬레이트 장치를 통신망을 통해 중개하는 중개 장치를 구비하는 것을 특징으로 하는 시뮬레이트 시스템. - 제12항에 있어서,
상기 조작 단말을 더 구비하는 것을 특징으로 하는 시뮬레이트 시스템. - 로봇 모델에 모의적인 동작을 시키는 시뮬레이션을 실행하는 시뮬레이트 장치와 접속되고 또한 상기 시뮬레이트 장치의 원격의 유저에 의해 조작되는 조작 단말기에 입력되고, 로봇 모델을 조작하기 위한 제1 정보를, 상기 시뮬레이트 장치의 상기 로봇 모델을 조작하기 위한 제2 정보로 변환하고,
상기 제2 정보에 따라 상기 시뮬레이트 장치를 동작시키고,
상기 제2 정보에 따라 동작하는 상기 시뮬레이트 장치의 상기 로봇 모델의 동작 정보를, 상기 조작 단말에 제시하는 것을 특징으로 하는 정보 처리 방법. - 제14항에 있어서,
상기 조작 단말에 입력되는, 실행을 요구하는 시뮬레이션의 정보인 요구 정보에 기초하여, 복수 존재하는 상기 시뮬레이트 장치 중에서, 상기 요구 정보에서 요구되는 시뮬레이션에 대응하는 상기 시뮬레이트 장치를 결정하고,
결정된 상기 시뮬레이트 장치와 상기 조작 단말을 이용한 시뮬레이션의 실행을 가능하게 하는 것을 특징으로 하는 정보 처리 방법. - 제14항 또는 제15항에 있어서,
상기 시뮬레이트 장치의 상기 로봇 모델의 동작의 정보에 기초하여, 상기 로봇 모델의 동작 결과를 평가하고,
상기 조작 단말을 조작하는 유저에 대한 평가인 유저 평가로서, 상기 동작 결과의 평가를 등록하는 것을 특징으로 하는 정보 처리 방법. - 제16항에 있어서,
등록된 상기 유저 평가에 기초하여, 상기 유저 평가의 대상의 유저가 실행 가능한 시뮬레이션 및 상기 시뮬레이트 장치를 결정하고,
결정된 상기 시뮬레이션 및 상기 시뮬레이트 장치의 정보를 상기 조작 단말에 제시하는 것을 특징으로 하는 정보 처리 방법. - 제14항 내지 제17항 중 어느 한 항에 있어서,
상기 로봇 모델의 모의적인 동작은, 실제의 로봇이 수행하는 작업을 모의한 동작인 것을 특징으로 하는 정보 처리 방법. - 제14항 내지 제18항 중 어느 한 항에 있어서,
가상적인 상기 로봇 모델에 모의적인 동작을 시키는 컴퓨터 장치로서의 상기 시뮬레이트 장치와 상기 조작 단말을 이용한 시뮬레이션의 실행을 가능하게 하고,
상기 시뮬레이트 장치에 의해 생성된 상기 가상적인 로봇 모델의 동작의 정보를 상기 조작 단말에 제시하는 것을 특징으로 하는 정보 처리 방법. - 제14항 내지 제19항 중 어느 한 항에 있어서,
상기 로봇 모델로서 실제의 로봇에 모의적인 동작을 시키는 상기 시뮬레이트 장치와 상기 조작 단말을 이용한 시뮬레이션의 실행을 가능하게 하고,
촬상 장치에 의해 촬상되는 상기 로봇의 화상의 정보를, 상기 로봇 모델의 동작 정보로서 상기 조작 단말에 제시하는 것을 특징으로 하는 정보 처리 방법. - 제20항에 있어서,
상기 로봇의 화상을 가상적인 로봇 모델의 화상으로 변환하고,
변환된 화상에서 상기 가상적인 로봇 모델의 동작의 정보를 상기 조작 단말에 제시하는 것을 특징으로 하는 정보 처리 방법. - 제14항 내지 제21항 중 어느 한 항에 있어서,
상기 조작 단말과 상기 시뮬레이트 장치는 통신망을 통해 접속되는 것을 특징으로 하는 정보 처리 방법. - 제14항 내지 제22항 중 어느 한 항에 있어서,
상기 조작 단말은, 게임기, 게임 컨트롤러, 로봇 전용의 원격 조작기, 개인 정보 단말기(PDA), 스마트 디바이스 및 퍼스널 컴퓨터 중 적어도 어느 하나인 것을 특징으로 하는 정보 처리 방법.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018151917 | 2018-08-10 | ||
JPJP-P-2018-151917 | 2018-08-10 | ||
JPJP-P-2019-105752 | 2019-06-05 | ||
JP2019105752A JP7384575B2 (ja) | 2018-08-10 | 2019-06-05 | 情報処理装置、仲介装置、シミュレートシステム、情報処理方法及びプログラム |
PCT/JP2019/031615 WO2020032249A1 (ja) | 2018-08-10 | 2019-08-09 | 情報処理装置、仲介装置、シミュレートシステム及び情報処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210043621A true KR20210043621A (ko) | 2021-04-21 |
KR102571997B1 KR102571997B1 (ko) | 2023-08-29 |
Family
ID=77926800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020217007128A KR102571997B1 (ko) | 2018-08-10 | 2019-08-09 | 정보 처리 장치, 중개 장치, 시뮬레이트 시스템 및 정보 처리 방법 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11908337B2 (ko) |
EP (1) | EP3836126A4 (ko) |
KR (1) | KR102571997B1 (ko) |
CN (1) | CN112543960A (ko) |
TW (1) | TWI744676B (ko) |
WO (1) | WO2020032249A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102662538B1 (ko) * | 2023-03-21 | 2024-05-03 | (주)잉클 | 디지털 트윈 기반의 머신 티칭 장치 및 그 제어 방법 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6630073B2 (ja) | 2015-07-09 | 2020-01-15 | 株式会社Subaru | 機械加工装置及び機械加工方法 |
EP3563988B1 (en) * | 2016-12-28 | 2023-12-27 | Subaru Corporation | Machining robot and machining method |
JP7053610B2 (ja) | 2017-06-22 | 2022-04-12 | 株式会社Subaru | 機械加工装置用のアタッチメント |
CN116277001B (zh) * | 2023-03-22 | 2024-08-23 | 宝钢工程技术集团有限公司 | 一种基于数字孪生的连铸机器人管理方法及其系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002254373A (ja) * | 2001-02-27 | 2002-09-10 | Casio Comput Co Ltd | ロボット遠隔制御システム、ロボット制御装置、及び、記録媒体 |
JP2011125991A (ja) | 2009-12-21 | 2011-06-30 | National Institute Of Advanced Industrial Science & Technology | 生活支援ロボットアームの操作トレーニング装置 |
JP5177136B2 (ja) * | 2007-05-09 | 2013-04-03 | 日本電気株式会社 | 遠隔操作システム、サーバ、被遠隔操作装置、遠隔操作サービス提供方法 |
KR20170116310A (ko) * | 2016-04-08 | 2017-10-19 | 한국전자통신연구원 | 작업 교시 시스템 및 방법 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6282406A (ja) * | 1985-10-08 | 1987-04-15 | Toshiba Corp | 教示デ−タ作成装置 |
JP2001051583A (ja) * | 1999-08-10 | 2001-02-23 | Toshiba Corp | 簡易シミュレータ |
JP2002101333A (ja) * | 2000-09-26 | 2002-04-05 | Casio Comput Co Ltd | 遠隔制御装置および遠隔操作サービスシステム並びにそれらのプログラム記録媒体 |
JP3644502B2 (ja) | 2001-02-06 | 2005-04-27 | ソニー株式会社 | コンテンツ受信装置およびコンテンツ呈示制御方法 |
JP2003103038A (ja) * | 2001-09-28 | 2003-04-08 | Ishikawajima Harima Heavy Ind Co Ltd | ロボット競技システム |
JP4438927B2 (ja) | 2003-04-08 | 2010-03-24 | 株式会社バンダイナムコゲームス | シミュレータ、プログラム及び情報記憶媒体 |
US20090319238A1 (en) * | 2007-05-21 | 2009-12-24 | Raynald Bedard | Simulation scoring systems |
CN103702631A (zh) | 2011-05-05 | 2014-04-02 | 约翰霍普金斯大学 | 用于分析任务轨迹的方法和系统 |
US20150079545A1 (en) * | 2013-09-16 | 2015-03-19 | Thomas R. Kurtz | Systems and methods for automated flight instruction and certification |
US9579799B2 (en) | 2014-04-30 | 2017-02-28 | Coleman P. Parker | Robotic control system using virtual reality input |
CN104363982B (zh) * | 2014-07-15 | 2018-02-02 | 中国科学院自动化研究所 | 上肢康复机器人系统 |
JP6713803B2 (ja) * | 2016-03-18 | 2020-06-24 | 三菱電機株式会社 | シミュレーション制御装置およびシミュレーション制御方法 |
TWI805545B (zh) * | 2016-04-12 | 2023-06-21 | 丹麥商環球機器人公司 | 用於藉由示範來程式化機器人之方法和電腦程式產品 |
JP2018047509A (ja) * | 2016-09-20 | 2018-03-29 | ファナック株式会社 | ロボットシミュレーション装置 |
US10569114B2 (en) * | 2016-10-18 | 2020-02-25 | Randal Wade Johnson | Firefighters fitness trainer |
TWI594858B (zh) * | 2016-12-29 | 2017-08-11 | 新代科技股份有限公司 | 機械手臂教導控制系統 |
CN106530888A (zh) * | 2017-01-03 | 2017-03-22 | 广东小天才科技有限公司 | 一种实验模拟方法及装置 |
CN207373189U (zh) * | 2017-09-27 | 2018-05-18 | 姚绪旋 | 一种工业机器人示教器 |
JP6857145B2 (ja) * | 2018-03-09 | 2021-04-14 | 株式会社日立製作所 | 軌道計画装置、軌道計画方法、及び生産システム |
-
2019
- 2019-08-09 WO PCT/JP2019/031615 patent/WO2020032249A1/ja unknown
- 2019-08-09 KR KR1020217007128A patent/KR102571997B1/ko active IP Right Grant
- 2019-08-09 EP EP19847618.6A patent/EP3836126A4/en active Pending
- 2019-08-09 CN CN201980052245.XA patent/CN112543960A/zh active Pending
- 2019-08-09 US US17/267,420 patent/US11908337B2/en active Active
- 2019-08-12 TW TW108128601A patent/TWI744676B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002254373A (ja) * | 2001-02-27 | 2002-09-10 | Casio Comput Co Ltd | ロボット遠隔制御システム、ロボット制御装置、及び、記録媒体 |
JP5177136B2 (ja) * | 2007-05-09 | 2013-04-03 | 日本電気株式会社 | 遠隔操作システム、サーバ、被遠隔操作装置、遠隔操作サービス提供方法 |
JP2011125991A (ja) | 2009-12-21 | 2011-06-30 | National Institute Of Advanced Industrial Science & Technology | 生活支援ロボットアームの操作トレーニング装置 |
KR20170116310A (ko) * | 2016-04-08 | 2017-10-19 | 한국전자통신연구원 | 작업 교시 시스템 및 방법 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102662538B1 (ko) * | 2023-03-21 | 2024-05-03 | (주)잉클 | 디지털 트윈 기반의 머신 티칭 장치 및 그 제어 방법 |
Also Published As
Publication number | Publication date |
---|---|
WO2020032249A1 (ja) | 2020-02-13 |
TWI744676B (zh) | 2021-11-01 |
US11908337B2 (en) | 2024-02-20 |
TW202017626A (zh) | 2020-05-16 |
EP3836126A1 (en) | 2021-06-16 |
US20210291369A1 (en) | 2021-09-23 |
CN112543960A (zh) | 2021-03-23 |
EP3836126A4 (en) | 2022-06-08 |
KR102571997B1 (ko) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7384575B2 (ja) | 情報処理装置、仲介装置、シミュレートシステム、情報処理方法及びプログラム | |
KR102571997B1 (ko) | 정보 처리 장치, 중개 장치, 시뮬레이트 시스템 및 정보 처리 방법 | |
CN102886140B (zh) | 启用触摸的移动设备上的游戏控制器 | |
EP1310844B1 (en) | Simulation device | |
CN107274745B (zh) | 用于车辆模拟的系统和方法 | |
EP3544773B1 (en) | System and method for determining grasping positions for two-handed grasps of industrial objects | |
Materna et al. | Interactive spatial augmented reality in collaborative robot programming: User experience evaluation | |
CN106201265B (zh) | 一种基于web的移动终端操控方法、装置及系统 | |
CN103838563B (zh) | 自动装置的程序开发方法 | |
CN102609092A (zh) | 基于气流感应技术进行交互的手机及其方法 | |
KR102529023B1 (ko) | 트레이닝 처리 장치, 중개 장치, 트레이닝 시스템 및 트레이닝 처리 방법 | |
Marques et al. | Commodity telepresence with the AvaTRINA nursebot in the ANA Avatar XPRIZE semifinals | |
Pieskä et al. | Towards easier human-robot interaction to help inexperienced operators in SMEs | |
Bonaiuto et al. | Tele-operation of robot teams: a comparison of gamepad-, mobile device and hand tracking-based user interfaces | |
US11301059B2 (en) | Gesture recognition system having origin resetting means | |
Besari et al. | Preliminary design of interactive visual mobile programming on educational robot ADROIT V1 | |
Zhang et al. | Hubotverse: Toward internet of human and intelligent robotic things with a digital twin-based mixed reality framework | |
TWI475483B (zh) | 自動裝置的程式開發方法 | |
WO2023032985A1 (ja) | 操作端末、ロボットシステム及びコンピュータプログラム | |
WO2023032984A1 (ja) | 操作端末、ロボットシステム及びコンピュータプログラム | |
TWI338244B (ko) | ||
US20220277625A1 (en) | Force sense presentation apparatus, force sense presentation method | |
RU59854U1 (ru) | Устройство для ввода-вывода информации | |
Coyne | Multi-Modal Teleoperation of a Humanoid Social Robot Initial Evaluation of Control Modalities | |
Lowrey et al. | Shanghai Service Robot |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |