KR102453962B1 - 행동 모사 플랫폼 서비스 제공 시스템 - Google Patents

행동 모사 플랫폼 서비스 제공 시스템 Download PDF

Info

Publication number
KR102453962B1
KR102453962B1 KR1020210176947A KR20210176947A KR102453962B1 KR 102453962 B1 KR102453962 B1 KR 102453962B1 KR 1020210176947 A KR1020210176947 A KR 1020210176947A KR 20210176947 A KR20210176947 A KR 20210176947A KR 102453962 B1 KR102453962 B1 KR 102453962B1
Authority
KR
South Korea
Prior art keywords
robot
behavior
user terminal
terminal
platform service
Prior art date
Application number
KR1020210176947A
Other languages
English (en)
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 KR1020210176947A priority Critical patent/KR102453962B1/ko
Priority to PCT/KR2022/014039 priority patent/WO2023106576A1/ko
Application granted granted Critical
Publication of KR102453962B1 publication Critical patent/KR102453962B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/005Manipulators mounted on wheels or on carriages mounted on endless tracks or belts
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • B25J5/007Manipulators mounted on wheels or on carriages mounted on wheels
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0006Exoskeletons, i.e. resembling a human figure
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/1075Programme-controlled manipulators characterised by positioning means for manipulator elements with muscles or tendons
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1682Dual arm manipulator; Coordination of several manipulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Rheumatology (AREA)

Abstract

행동 모사 플랫폼 서비스 제공 시스템이 제공되며, 적어도 하나의 행동 모사 프로그램을 선택하여 다운로드한 후 기 보유한 로봇에 적용시키는 사용자 단말 및 적어도 하나의 행동 모사 프로그램과 적어도 하나의 로봇을 매핑하여 저장하는 데이터베이스화부, 사용자 단말에서 행동 모사 프로그램을 선택하는 경우 선택된 행동 모사 프로그램을 사용자 단말로 전송하는 전송부, 사용자 단말을 경유하여 기 보유한 로봇에서 피드백이 수신되는 경우 피드백을 저장하는 저장부를 포함하는 플랫폼 서비스 제공 서버를 포함한다.

Description

행동 모사 플랫폼 서비스 제공 시스템{SYSTEM FOR PROVIDING ACTION TRACKING PLATFORM SERVICE FOR MASTER AND SLAVE ROBOT}
본 발명은 행동 모사 플랫폼 서비스 제공 시스템에 관한 것으로, 제공자의 행동 데이터를 사용자의 로봇에서 출력할 수 있는 플랫폼을 제공한다.
4차 산업혁명이 도래하면서 다양한 제조 분야에 걸쳐 공정의 효율화 및 생산성 향상을 구현하고자 하는 시도들이 이어지고 있는데, 이를 위한 핵심 기술로서 바로 이 협동 로봇이 큰 관심을 모으고 있다. 공정 라인을 완전 자동화하기에는 아직 기술적으로 부족한 부분이 있는 경우, 작업자가 공정 라인의 일부에 투입되어 같이 작업을 진행해야 하는 경우들이 많은데, 이러한 경우 협동 로봇이 사람과 로봇 간의 유기적인 작업을 가능하게 한다. 최근의 팬데믹 대응을 위한 비대면 사회를 구현함에 있어서, 사람들 간의 직접적인 접촉이 빈번하게 요구되었던 다양한 산업 분야인 물류, 음식 제조, 배달, 서빙과 같은 서비스나 의료 분야들에 대한 로봇 적용 요구가 높아지고 있다. 사람과 사람 간의 상호 작용을 사람과 로봇 간의 상호 작용으로 구현하는 것이 비대면 사회 구현에 필수적이며, 이러한 관점에서 협동 로봇 기술은 이를 위한 핵심 기술이라 할 수 있다.
이때, 인간의 행위를 모사하여 행동을 조합하거나, 치킨을 튀기는 프로그램을 내장한 로봇이 연구 및 개발되었는데, 이와 관련하여, 선행기술인 한국공개특허 제2017-0108526호(2017년09월27일 공개) 및 한국등록특허 제10-2254009호( 2021년05월20일 공고)에는, 로봇의 작업 행동궤적을 생성하기 위하여, 인간의 작업행동에 대한 시뮬레이션 궤적을 획득한 후 적어도 하나의 행동 유닛으로 분할하고, 분할된 행동 유닛을 그룹핑하여 븐류하며, 행동 유닛 각각에 대해 학습된 확률모델을 데이터베이스에 저장하며, 행동 유닛에 대한 대표 궤적을 생성한 후 시뮬레이션 궤적을 재현하는 구성과, 자동으로 치킨을 튀기기 위하여 로봇 암(Arm)이 각 용기의 위치를 인식하고 치킨 재료를 단계에 대응하도록 조리 용기로 이동시켜 치킨 조리를 진행하는 구성이 각각 개시되어 있다.
다만, 전자 및 후자의 경우 하나의 로봇에 한 가지 목적의 프로그램을 내장함으로써 일대일 대응이 되도록 하여 다른 프로그램을 사용하기 위해서는 하드웨어인 로봇 자체를 변경하거나 프로그래밍을 처음부터 새로 시작해야 하는 불편함이 있었다. 이에, 행동 모사 프로그램을 일방향 또는 양방향으로 상호교환할 수 있는 플랫폼을 구축하고, 원하는 행동 모사 프로그램을 선택 및 다운로드하여 하나의 로봇으로도 다양한 기능을 구현하도록 할 수 있는 플랫폼의 연구 및 개발이 요구된다.
본 발명의 일 실시예는, 행동 모사 프로그램을 단방향, 양방향 및 상호협업으로 상호교환할 수 있는 플랫폼을 구축하고, 원하는 행동 모사 프로그램을 선택 및 다운로드하여 하나의 로봇으로도 다양한 기능을 구현하도록 할 수 있는, 행동 모사 플랫폼 서비스 제공 시스템을 제공할 수 있다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시예는, 적어도 하나의 행동 모사 프로그램을 선택하여 다운로드한 후 기 보유한 로봇에 적용시키는 사용자 단말 및 적어도 하나의 행동 모사 프로그램과 적어도 하나의 로봇을 매핑하여 저장하는 데이터베이스화부, 사용자 단말에서 행동 모사 프로그램을 선택하는 경우 선택된 행동 모사 프로그램을 사용자 단말로 전송하는 전송부, 사용자 단말을 경유하여 기 보유한 로봇에서 피드백이 수신되는 경우 피드백을 저장하는 저장부를 포함하는 플랫폼 서비스 제공 서버를 포함한다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 행동 모사 프로그램을 단방향, 양방향 및 상호협업으로 상호교환할 수 있는 플랫폼을 구축하고, 원하는 행동 모사 프로그램을 선택 및 다운로드하여 하나의 로봇으로도 다양한 기능을 구현하도록 할 수 있다.
도 1은 본 발명의 일 실시예에 따른 행동 모사 플랫폼 서비스 제공 시스템을 설명하기 위한 도면이다.
도 2는 도 1의 시스템에 포함된 플랫폼 서비스 제공 서버를 설명하기 위한 블록 구성도이다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 행동 모사 플랫폼 서비스가 구현된 일 실시예를 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 행동 모사 플랫폼 서비스 제공 방법을 설명하기 위한 동작 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
명세서 전체에서 사용되는 정도의 용어 "약", "실질적으로" 등은 언급된 의미에 고유한 제조 및 물질 허용오차가 제시될 때 그 수치에서 또는 그 수치에 근접한 의미로 사용되고, 본 발명의 이해를 돕기 위해 정확하거나 절대적인 수치가 언급된 개시 내용을 비양심적인 침해자가 부당하게 이용하는 것을 방지하기 위해 사용된다. 본 발명의 명세서 전체에서 사용되는 정도의 용어 "~(하는) 단계" 또는 "~의 단계"는 "~ 를 위한 단계"를 의미하지 않는다.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. 한편, '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, '~부'는 어드레싱 할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체 지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
본 명세서에 있어서 단말, 장치 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말, 장치 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말, 장치 또는 디바이스에서 수행될 수도 있다.
본 명세서에서 있어서, 단말과 매핑(Mapping) 또는 매칭(Matching)으로 기술된 동작이나 기능 중 일부는, 단말의 식별 정보(Identifying Data)인 단말기의 고유번호나 개인의 식별정보를 매핑 또는 매칭한다는 의미로 해석될 수 있다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 행동 모사 플랫폼 서비스 제공 시스템을 설명하기 위한 도면이다. 도 1을 참조하면, 행동 모사 플랫폼 서비스 제공 시스템(1)은, 적어도 하나의 사용자 단말(100), 플랫폼 서비스 제공 서버(300), 적어도 하나의 제공자 단말(400), 적어도 하나의 로봇(500)을 포함할 수 있다. 다만, 이러한 도 1의 행동 모사 플랫폼 서비스 제공 시스템(1)은, 본 발명의 일 실시예에 불과하므로, 도 1을 통하여 본 발명이 한정 해석되는 것은 아니다.
이때, 도 1의 각 구성요소들은 일반적으로 네트워크(Network, 200)를 통해 연결된다. 예를 들어, 도 1에 도시된 바와 같이, 적어도 하나의 사용자 단말(100)은 네트워크(200)를 통하여 플랫폼 서비스 제공 서버(300)와 연결될 수 있다. 그리고, 플랫폼 서비스 제공 서버(300)는, 네트워크(200)를 통하여 적어도 하나의 사용자 단말(100), 적어도 하나의 제공자 단말(400), 적어도 하나의 로봇(500)과 연결될 수 있다. 또한, 적어도 하나의 제공자 단말(400)은, 네트워크(200)를 통하여 플랫폼 서비스 제공 서버(300)와 연결될 수 있다. 그리고, 적어도 하나의 로봇(500)은, 네트워크(200)를 통하여 적어도 하나의 사용자 단말(100), 플랫폼 서비스 제공 서버(300) 및 적어도 하나의 제공자 단말(400)과 연결될 수 있다.
여기서, 네트워크는, 복수의 단말 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크의 일 예에는 근거리 통신망(LAN: Local Area Network), 광역 통신망(WAN: Wide Area Network), 인터넷(WWW: World Wide Web), 유무선 데이터 통신망, 전화망, 유무선 텔레비전 통신망 등을 포함한다. 무선 데이터 통신망의 일례에는 3G, 4G, 5G, 3GPP(3rd Generation Partnership Project), 5GPP(5th Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), RF(Radio Frequency), 블루투스(Bluetooth) 네트워크, NFC(Near-Field Communication) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.
하기에서, 적어도 하나의 라는 용어는 단수 및 복수를 포함하는 용어로 정의되고, 적어도 하나의 라는 용어가 존재하지 않더라도 각 구성요소가 단수 또는 복수로 존재할 수 있고, 단수 또는 복수를 의미할 수 있음은 자명하다 할 것이다. 또한, 각 구성요소가 단수 또는 복수로 구비되는 것은, 실시예에 따라 변경가능하다 할 것이다.
적어도 하나의 사용자 단말(100)은, 행동 모사 플랫폼 서비스 관련 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 이용하여 행동 데이터를 수신하여 로봇(500)으로 전달하거나, 행동 모사 프로그램을 수신하여 행동 모사 프로그램 자체를 로봇(500)으로 전달하거나, 행동 데이터를 플랫폼 서비스 제공 서버(300)로 전달하는 사용자의 단말일 수 있다. 이때, 행동 데이터는 모듈화된 단위 모듈이고, 행동 모사 프로그램은 일련의 목표를 수행하기 위한 프로세스가 모두 포함된 것으로 정의하기로 한다. 예를 들어, 행동 데이터는 [A], [B], [C]와 같은 단위 모듈이라면, 행동 모사 프로그램은 [A-B-C]와 같은 일련의 프로세스가 존재하는 것으로 정의한다. 또, 본 발명의 플랫폼에서 사용자는 단방향, 양방향, 협업모드를 선택할 수 있는데, 단방향은 애플리케이션을 애플스토어나 구글플레이에서 구매하는 것과 같이 다운로드 및 실행의 과정이고, 양방향은 전화통화 내에서 양 당사자의 목소리를 전달하는 것과 같이 행동 데이터를 트래킹하여 각 당사자인 사용자 단말(100) 및 제공자 단말(400)의 각각의 로봇(500)으로 실시간으로 전달하는 것이고, 협업모드는 하나의 로봇(500)에 사용자 단말(100) 및 제공자 단말(400)의 행동 데이터가 조합(Combination) 및 입력되는 모드로 정의하기로 한다.
여기서, 적어도 하나의 사용자 단말(100)은, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 이때, 적어도 하나의 사용자 단말(100)은, 네트워크를 통해 원격지의 서버나 단말에 접속할 수 있는 단말로 구현될 수 있다. 적어도 하나의 사용자 단말(100)은, 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smartphone), 스마트 패드(Smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.
플랫폼 서비스 제공 서버(300)는, 행동 모사 플랫폼 서비스 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 제공하는 서버일 수 있다. 그리고, 플랫폼 서비스 제공 서버(300)는, 제공자 단말(400)로부터 행동 데이터 또는 행동 모사 프로그램을 수신하여 모듈화 또는 저장하는 서버일 수 있다. 또한, 플랫폼 서비스 제공 서버(300)는, 사용자 단말(100)과 제공자 단말(400)의 양방향 모드를 제공하거나, 협업 모드를 제공하기 위한 채널을 생성할 수 있는 서버일 수 있다. 그리고, 플랫폼 서비스 제공 서버(300)는, 사용자 단말(100)의 로봇(500)에서 피드백이 수신되고 이 피드백이 오류 피드백인 경우 이를 생성하거나 제작한 제공자 단말(400)로 전달하여 오류나 버그를 수정하라는 요청을 전달하는 서버일 수 있다.
여기서, 플랫폼 서비스 제공 서버(300)는, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다.
적어도 하나의 제공자 단말(400)은, 행동 모사 플랫폼 서비스 관련 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 이용하여 행동 데이터를 업로드하거나 행동 모사 프로그램을 업로드하여 제공하는 제공자의 단말일 수 있다. 이때, 제공자 단말(400)은 사용자 단말(100)과 양방향 모드로 연결되거나 협업 모드로 연결될 수 있는 단말일 수 있다. 행동 데이터를 업로드하기 위하여 제공자 단말(400)은, 인간의 행동을 트래킹할 수 있는 적어도 하나의 종류의 센서나 장비와 연동되는 단말일 수 있다. 이때, 제공자 단말(400)은, 행동 데이터를 생성하기 위한 기능, 예를 들어 3D 스캐너나 전기근육신호 또는 전기관절신호를 스캔할 수 있는 기능이 포함되어 특수제작된 단말일 수 있다.
여기서, 적어도 하나의 제공자 단말(400)은, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 이때, 적어도 하나의 제공자 단말(400)은, 네트워크를 통해 원격지의 서버나 단말에 접속할 수 있는 단말로 구현될 수 있다. 적어도 하나의 제공자 단말(400)은, 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smartphone), 스마트 패드(Smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.
적어도 하나의 로봇(500)은, 행동 모사 플랫폼 서비스 관련 웹 페이지, 앱 페이지, 프로그램 또는 애플리케이션을 이용하거나 이용하지 않고 행동 데이터나 행동 모사 프로그램을 입력받아 이에 대응되도록 제어되는 장치일 수 있다. 이때, 사용자 단말(100)이 삭제되는 경우, 로봇(500)은 네트워크(200)와 직접 연결될 수 있고, 사용자나 제공자의 행동을 트래킹하여 행동 데이터로 생성한 후 업로드할 수 있는 기능도 함께 포함될 수 있다. 이 경우 사용자 단말(100)의 구성은 삭제될 수 있으므로 사용자 단말(100)의 구성은 필수구성요소가 아닐 수 있다.
여기서, 적어도 하나의 로봇(500)은, 네트워크를 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다. 이때, 적어도 하나의 로봇(500)은, 네트워크를 통해 원격지의 서버나 단말에 접속할 수 있는 단말로 구현될 수 있다. 적어도 하나의 로봇(500)은, 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 네비게이션, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말, 스마트폰(Smartphone), 스마트 패드(Smartpad), 타블렛 PC(Tablet PC) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.
도 2는 도 1의 시스템에 포함된 플랫폼 서비스 제공 서버를 설명하기 위한 블록 구성도이고, 도 3 및 도 4는 본 발명의 일 실시예에 따른 행동 모사 플랫폼 서비스가 구현된 일 실시예를 설명하기 위한 도면이다.
도 2를 참조하면, 플랫폼 서비스 제공 서버(300)는, 데이터베이스화부(310), 전송부(320), 저장부(330), 양방향모드부(340), 협업모드부(350), 슬레이브모드부(360) 및 저장부(370)를 포함할 수 있다.
본 발명의 일 실시예에 따른 플랫폼 서비스 제공 서버(300)나 연동되어 동작하는 다른 서버(미도시)가 적어도 하나의 사용자 단말(100), 적어도 하나의 제공자 단말(400) 및 적어도 하나의 로봇(500)으로 행동 모사 플랫폼 서비스 애플리케이션, 프로그램, 앱 페이지, 웹 페이지 등을 전송하는 경우, 적어도 하나의 사용자 단말(100), 적어도 하나의 제공자 단말(400) 및 적어도 하나의 로봇(500)은, 행동 모사 플랫폼 서비스 애플리케이션, 프로그램, 앱 페이지, 웹 페이지 등을 설치하거나 열 수 있다. 또한, 웹 브라우저에서 실행되는 스크립트를 이용하여 서비스 프로그램이 적어도 하나의 사용자 단말(100), 적어도 하나의 제공자 단말(400) 및 적어도 하나의 로봇(500)에서 구동될 수도 있다. 여기서, 웹 브라우저는 웹(WWW: World Wide Web) 서비스를 이용할 수 있게 하는 프로그램으로 HTML(Hyper Text Mark-up Language)로 서술된 하이퍼 텍스트를 받아서 보여주는 프로그램을 의미하며, 예를 들어 넷스케이프(Netscape), 익스플로러(Explorer), 크롬(Chrome) 등을 포함한다. 또한, 애플리케이션은 단말 상의 응용 프로그램(Application)을 의미하며, 예를 들어, 모바일 단말(스마트폰)에서 실행되는 앱(App)을 포함한다.
도 2를 참조하면, 데이터베이스화부(310)는, 적어도 하나의 행동 모사 프로그램과 적어도 하나의 로봇(500)을 매핑하여 저장할 수 있다. 적어도 하나의 행동 모사 프로그램은 상술한 바와 같이 어떠한 목표를 위해 또는 목표 없이 제공자의 일련의(A Series of) 행동을 모사한 플로우를 가지고 있다. 제공자의 행동을 모사하기 위해서는, 이동감지 방식과 달리 동작인식을 위하여 골격 이미지를 형성하여 인체 부위별 관절을 연결한 이미지로 재구성하여 동작 모드를 정확히 인식하는 방법을 이용할 수 있다. 또, 거리 측정데이터의 오차를 보상하기 위한 방법을 사용하여 실제 거리와 측정거리간의 오차를 최소화 하여 로봇을 효과적으로 작동할 수 있도록 할 수 있다. 이에 따라 제작자의 행동을 인지하고 모사할 수 있다.
<로봇 시스템>
전체 로봇의 시스템 구조는, 예를 들어, 3D 거리 측정 카메라인 Xtion Pro Live와 PC의 역할을 수행하는 임베디드 보드, 음성 인식을 담당하는 음성 모듈, 데이터를 받아들여 모터를 제어하는 마이크로프로세서(DSP-28335)로 구성될 수 있다. Xtion Pro Live는 USB 2.0으로 연결되는 3D 거리 측정 카메라이기 때문에 실제적인 영상처리를 진행하는 PC의 역할은 임베디드 보드인 PCM-3363에서 처리할 수 있다. 처리된 데이터는 RS-232 시리얼 통신을 통해 DSP-28335로 전송될 수 있다. 전송된 데이터를 통하여 로봇(500)의 각 관절에 위치한 모터를 제어하여 로봇(500)의 동작을 수행할 수 있다. 사용된 음성 모듈에서는 N 가지의 음성을 인식하며 각각의 음성에 따라서 동작이 제어되고 이 데이터는 마이크로프로세서로 전송될 수 있다.
로봇(500)이 동작되는 흐름은, 로봇(500)이 실행되면 Xtion Pro Live나 음성 모듈로부터 여러 데이터를 받게 될 수 있다. 행동 데이터를 받기 위해서는 Xtion Pro Live에서 관절 데이터를 전송받으며 이를 통해 제공자를 따라가는 추적모드, 제공자의 동작을 따라하는 모션 미러잉(Motion Mirroring) 모드, 모든 동작이 중지되는 정지 모드로 나뉘어 제공자가 취하는 동작에 따라 모드를 실행할 수 있다. 또한, 음성 모듈에서 N 가지 음성을 기억하여 기억된음성이 실행되면 그에 따른 동작이 실행되게 될 수 있다.
로봇(500)에서 동작을 인식하여 처리하기 위한 시스템 환경은 예를 들어, OpenCV를 통해 영상을 입, 출력하게 되며 OpenNI를 통해 사람을 인식하고 깊이 거리를 측정할 수 있다. 또한, NITE를 통해 동작 인식을 완료하게 될 수 있다. Xtion Pro Live를 구성하는 구조는, 기본적인 OpenNI라이브러리를 이용하여 프로그래밍하게 되며 OpenNI 라이브러리는 해상도(Resolution), 메타데이터(Metadata) 등을 담는 그릇으로 기본 정보를 가지고 있으며 로봇(500)에 사용되는 제공자 감지 및 거리 측정을 가능하게 할 수 있다. NITE는 동작인식을 지원하는 OpenNI의 미들웨어 라이브러리이다. 여기서 각 관절의 골격 데이터(Skeleton Data)를 추출할 수 있는 함수들을 제공할 수 있다.
<영상 처리 알고리즘>
제공자의 모션을 인식하고 따라하는 과정에서는 거리지도(Depth Map)을 생성하여 거리영상을 출력하고 NITE를 이용해 동작을 인식하는 영상처리 과정을 거치게 될 수 있다. 영상처리에서 첫 번째 과정인 거리지도를 생성하기 위해서는 우선, Xtion Pro Live를 구성하는 기본 구조인 OpenNI의 Context를 생성할 수 있다. 생성된 Context에서 거리정보를 구하기 위하여 DepthGenerator를 호출할 수 있다. DepthGenerator에서 호출된 거리 정보들은 OpenNI Context로 보내져 거리 지도를 생성할 수 있다. 생성된 거리 지도에서 추가로 출력 지도 모드(Map Mode)를 설정할 수 있다. 세로 480, 가로 640의 해상도를 지정한 후 FPS(Frame Per Second)는 30이라는 VGA 모드를 설정하게 되면 설정된 지도 정보를 Context에 적용하고 지도 생성을 시작할 수 있다. 지도가 생성된 후 OpenCV의 입출력 헤더파일인 Highgui.h에서 영상 입출력 함수를 이용하여 창을 생성할 수 있다. 생성된 창에서 각각의 픽셀 RGB값을 설정하고 Context의 정보를 창에 적용하여 출력하게 되면 거리지도 생성이 완료될 수 있다. 생성된 지도에서는 동작인식은 가능하지 않고 Xtion Pro Live의 측정 가능범위인 0.8 m~3.5 m까지의 영역의 거리값(Depth)을 측정할 수 있게 될 수 있다.
영상처리 두 번째 과정인 동작인식을 이용하기 위해서는 OpenNI의 미들웨어 라이브러리인 NITE를 이용해야 할 수 있다. NITE에서 동작인식 함수들을 담고 있는 XML 파일을 이용하여 NITE의 정보들을 추출할 수 있다. 생성된 파일에서 노드(Node)를 생성하고 동작인식을 지원하는 함수인 UserGenerator에서 사람을 인식하는 PoseDetection, 사람 관절을 인식하는 골격(Skeleton)을 선언할 수 있다. 선언된 각각의 함수들에서 Callback함수를 이용해 UserDetection, Calibration, PoseDetection의 Event를 확인할 수 있다. 이후 사람의 관절 데이터를 추출해 주는 함수인 GetSkeleton JointPosition 함수를 이용하여 사용자인 유저(user)의 해당 관절의 데이터를 추출할 수 있다. 이때 추출되는 데이터는 사람의 총 24개의 관절의 데이터를 표현하며 X와 Y는 픽셀 좌표, Z는 거리로 표현된다. 예를 들어, 생성된 거리 지도위에 사람의 관절을 나타내는 골격 관절(Skeleton Joint)을 OpenCV를 이용하여 선으로 그려 나타낼 수 있다. 또한, 관절의 방향을 나타내는 회전(Orientation)은 Quaternion으로 표현될 수 있다.
<동작 모드>
영상을 활용한 세 가지 동작모드가 로봇(500)에 이용될 수 있다. 토르소 관절(Torso Joint)의 거리 값을 구하여 사용하는 추적모드가 있으며 각 관절에서 양팔의 상, 하박과 몸통의 각도를 벡터의 내적을 통해 계산하여 각도 값을 구하고, 제공자의 위치를 판단하여 눈을 맞추는 미러링 모드가 두 번째 모드이고 마지막은 정지 모드이다. 추적모드를 위해 토르소 관절의 거리를 구하는 것은 OpenNI의 UserGenerator함수를 이용할 수 있다. 이 함수에서는 사용자 변수, 관절 이름 및 관절 변수를 설정하면 거리 값을 mm단위로 얻을 수 있다.
모션 미러잉 모드에서 사람의 동작을 따라 하기 위하여 설정한 각도는 오른팔 상박, 오른팔 하박, 왼팔 상박, 왼팔 하박 그리고 몸통 등 총 5가지이지만 이에 한정되지는 않는다. 각각의 각도는 벡터의 내적을 이용할 수 있다.
Figure 112021143653087-pat00001
수학식 1은 벡터의 내적으로 부터 두 벡터 사이 각을 나타내는 수식이다. 수학식 1을 계산할 경우 왼팔 상박을 예를 들면 벡터 A는 목 관절과 왼쪽 어깨 관절을 연결한 벡터, 벡터 B는 왼쪽 어깨 관절과 왼쪽 팔 관절을 연결한 벡터이다. 이와 같이 두 벡터의 사이 각을 구함으로써 관절의 각도 값을 구할 수 있다. 소스 코드로 이를 표현할 수 있고 총 N 가지의 관절 각도를 구할 수 있다. 여기서 구한 관절각도 값은 DSP로 전송되고 전송된 각도 값을 토대로 로봇(500)이 제공자의 모습을 따라하는 동작을 진행하게 될 수 있다.
모션 미러잉에서 눈 접촉을 위해 사람의 목 관절을 기준으로 얻어지는 데이터는 거리와 2차원 평면의 X와 Y의 값이다. X와 Y의 값을 구하기 위해서는 픽셀 좌표와 거리 정보를 이용해야 할 수 있다. 예를 들어, Xtion Pro Live의 FOV(Field Of View)는 45°(수직 방향 관측 각도)와 58°(수평 방향 관측 각도)이며 초점 거리는 1.083 mm이다. 이 값들을 수학식 2 및 수학식 3에 적용하면 실제 X와 Y의 값을 구할 수 있다.
Figure 112021143653087-pat00002
Figure 112021143653087-pat00003
여기서 D는 거리이며 F는 초점거리이고, Xi와 Yi는 수평 및 수직방향의 픽셀좌표 값이다. 픽셀 좌표로 얻어지는 X와 Y는 거리가 달라져도 같은 픽셀 정보를 가질 수 있기 때문에 시각 접촉에서는 많은 오차가 생긴다. 실제 X와 Y값을 이용하여 거리에 따른 실제 사람의 위치를 판단할 수 있는 정보는 깊이(Depth)와 실제 X와 Y와의 Tangent 값으로 계산될 수 있다. 구해진 값은 DSP로 전송되어 로봇(500)이 제어될 수 있다.
3가지 모드 각각의 동작을 만들어서 사용자가 선택할 수 있다. 로봇(500)이 작동되면 제공자를 인식하고 보정과정이 끝나게 되면 모드 선택 동작을 통해 모드를 고르게 되고 골라진 모드의 동작이 이루어지게 된다. 동작을 만드는 과정은 특정 관절각도 및 수직방향 픽셀 좌표를 통해 만들 수 있다. 각각의 동작을 만들기 위한 조건은 다음과 같다. 추적모드를 위한 조건에서는 관절각도의 범위 선정과 관절 수직 픽셀 좌표를 통해 설정할 수 있다. 관절각도 범위는 왼팔 하박의 각도가 75°에서 105°사이에 위치하고 오른팔 하박의 각도는 75°에서 105°사이에 위치하며, 관절 수직픽셀좌표는 왼손의 수직좌표가 왼쪽 어깨의 수직좌표보다 클 경우 및 오른손의 수직좌표가 오른쪽 어깨의 수직좌표보다 작을 경우이다. 이처럼 단순히 관절각도 및 수직 픽셀좌표를 토대로 만들었으며 나머지 동작을 생성하는 것 또한 위의 과정과 같다.
<깊이 오차 보정>
로봇(500)에서 사용되는 추적과 모션 미러링은 Xtion Pro Live에서 측정되는 거리를 기반으로 동작이 이루어진다. 따라서 거리가 신뢰할 수 있는 값인지를 판단하는 것이 가장 중요한 문제이다. 거리를 측정하는 방식은 Xtion Pro Live에서 특정 패턴의 적외선이 송출되고 물체에 반사된 적외선이 카메라에 감지되는 원리를 이용할 수 있다. 특정한 패턴이 몇 픽셀 이동했는가를 측정하여 이를 거리로 환산하며 거리를 측정하게 되는 것이다. 예를 들어, 적외선은 특정 패턴을 가지고 있으며 측정 결과 1cm의 거리변화 시 1 픽셀이 이동하기 때문에, 이는 최소 해상도가 1cm라는 결과이다. 따라서 거리를 직접 측정하는 실험을 거쳐 오차를 분석할 수 있다.
만약 데이터가 일정한 규칙 없이 늘어져 있는 경우 측정된 거리 오차를 보정하여 처리할 필요가 있다. 여기서는 다항식 보간법(Polynomial Interpolation)을 이용할 수 있다. 다항식 보간법은 고차 다항식의 함수로 근사시켜 수치적인 방법으로 얻을 수 있다. 최종적으로 보정된 오차 값을 이용한 보정 데이터는 신뢰할 수 있다고 판단하고 이를 코딩으로 변환하여 적용할 수 있다.
전송부(320)는, 사용자 단말(100)에서 행동 모사 프로그램을 선택하는 경우 선택된 행동 모사 프로그램을 사용자 단말(100)로 전송할 수 있다. 사용자 단말(100)은, 적어도 하나의 행동 모사 프로그램을 선택하여 다운로드한 후 기 보유한 로봇(500)에 적용시킬 수 있다. 기 보유한 로봇(500)은, 사용자가 착용하는 웨어러블 로봇(500), 암(Arm)이 존재하는 로봇(500) 암, 바퀴가 있는 로봇(500), 무한궤도 로봇(500) 및 다리가 있는 로봇(500) 레그 중 적어도 하나일 수 있으나, 나열된 것들로 한정되지 않고 열거되지 않은 이유로 배제되지 않는다.
저장부(330)는, 사용자 단말(100)을 경유하여 기 보유한 로봇(500)에서 피드백이 수신되는 경우 피드백을 저장할 수 있다. 이때 피드백은 오류 보고 뿐만 아니라 PID 제어를 위해 현재 자신의 상태(Status)를 보고할 수도 있다. 저장부(330)는, 적어도 하나의 제공자 단말(400)에서 수신되는 행동 데이터를 수신하여 저장할 수 있다. 이때, 행동 데이터는 3D 스캐너 또는 전기근육신호를 통하여 생성된 데이터일 수 있으나 제공자의 행동을 트래킹하는 장치나 방법은 상술한 것에 한정되지는 않는다.
양방향모드부(340)는, 사용자 단말(100)과 적어도 하나의 제공자 단말(400)로부터 수신되는 행동 데이터를 양방향으로 전달할 수 있다. 이때, 사용자의 행동을 트래킹하는 트래킹 장비, 예를 들어, 영상 기반 또는 센서 기반 장비와, 제공자의 행동 데이터를 출력하는 로봇(500(1))이 필요하다. 마찬가지로, 제공자의 행동을 트래킹하는 트래킹 장비와, 사용자의 행동 데이터를 출력하는 로봇(500(2))이 필요하다. 이때, 사용자의 행동 데이터가 제공자의 로봇(500(2))에서 출력되도록 하기 위해서는, [트래킹 장비-사용자 단말(100)-양방향모드부(340)-제공자 단말(400)-로봇(500(2))]과 같이 연결될 수 있다. 반대로 제공자의 행동 데이터가 사용자의 로봇(500(1))에 출력되기 위해서는, [로봇(500(1))-사용자 단말(100)-양방향모드부(340)-제공자 단말(400)-트래킹 장비]와 같이 연결될 수 있다. 각 사용자 단말(100)과 제공자 단말(400) 각각에 트래킹 장비와 로봇(500(1)) 및 로봇(500(2))이 각각 필요하다. 또는 제공자 단말(400)의 행동 데이터를 원격지의 사용자 단말(100)의 로봇(500(1))으로 전달함으로써 원격에서 제공자가 직접 사용자를 만나지 않고도 실시간으로 업무를 처리하도록 할 수도 있다. 업무는 예를 들어 A/S 업무일 수 있다. 제공자 단말(400)에서 실시간 운영중 사용자 단말(100)과 연동된 로봇(500(1))이 움직이다가 이벤트, 예를 들어, 로봇(500(1))이 임의의 물체에 걸려서 안들어가는 경우에는 이에 대한 저항값이 발생하게 되는데, 이러한 저항값을 제공자 단말(400)에 전달해주어야 한다. 즉, 제공자 단말(400)의 행동 데이터가 사용자 단말(100)의 로봇(500(1))으로 한 방향으로 가는 것을 단방향이라고 한다면, 양방향이라 함은 제공자 단말(400)에서 사용자 단말(100)로 가는 것 뿐 아니라, 사용자 단말(100)에서 제공자 단말(400)로 행동 데이터가 전송될 수 있다는 것을 의미한다.
협업모드부(350)는, 사용자 단말(100)과 적어도 하나의 제공자 단말(400)로부터 수신되는 행동 데이터를 협업 플랫폼에 업로드할 수 있다. 협업모드는 사용자의 행동 데이터와 제공자의 행동 데이터를 하나의 로봇(500)에 입력하는 조합(Combnination) 또는 주합(Aggregation)의 과정이다. 이때 하나의 로봇(500)은 두 개의 동작(행동)을 동시에 수행할 수 없으므로, 선입선출, 즉 FIFO(First-In, First-Out)과 같이 입력된 순서대로 동작하도록 하거나 각 사용자와 제공자가 돌아가면서(In Turns) 수행할 수도 있으며, 또는 각 사용자와 제공자가 순서를 정하면 그 순서대로 수행될 수도 있다.
슬레이브(Slave)모드부(360)는, 사용자 단말(100)에서 행동 모사 프로그램을 기 보유한 로봇(500) 외의 장비에 적용할 수 있다. 또는 슬레이브란 마스터(Master)가 있다는 것을 전제하므로, 제공자 단말(400)에서 출력하는 명령을 슬레이브인 사용자 단말(100)의 로봇(500)에서 그대로 수행하는 것을 의미할 수 있다. 즉, [마스터(Master)-슬레이브(Slave)]와 같이 짝을 이룰 수 있다. 또는, 제공자 단말(400)이 XBOX나 플레이스테이션 등과 같은 콘솔(Console) 장치의 입력출력 인터페이스(I/O Interface) 역할을 수행할 수도 있다.
이하, 상술한 도 2의 플랫폼 서비스 제공 서버의 구성에 따른 동작 과정을 도 3 및 도 4를 예로 들어 상세히 설명하기로 한다. 다만, 실시예는 본 발명의 다양한 실시예 중 어느 하나일 뿐, 이에 한정되지 않음은 자명하다 할 것이다.
도 3을 참조하면, (a) 플랫폼 서비스 제공 서버(300)는 제공자 단말(400)로부터 행동 데이터를 각각 수집하여 단위모듈로 저장하거나, (b)와 같이 완전한 일련의 동작 플로우를 가지는 행동 모사 프로그램으로 저장할 수 있다. 그리고, (c) 사용자 단말(100)에서 단방향으로 수신하는 경우에는 구글플레이나 앱스토어와 같이 프로그램을 다운로드 및 실행할 수도 있고, (d)와 같이 행동 데이터를 양방향으로 전달하거나 도 4의 (a)와 같이 협업하는 방법으로 하나의 로봇(500)에서 다중 사용자의 행동 데이터를 모사할 수 있도록 한다. (b) 또 로봇(500)에서 완전히 마스터의 명령을 따라, 즉 완전히 동일한 행동을 하도록 할 수도 있고, (c) 이 과정에서 발생하는 상태 데이터나 오류들은 자동으로 업로드되도록 설정될 수 있다.
이와 같은 도 2 내지 도 4의 행동 모사 플랫폼 서비스 제공 방법에 대해서 설명되지 아니한 사항은 앞서 도 1을 통해 행동 모사 플랫폼 서비스 제공 방법에 대하여 설명된 내용과 동일하거나 설명된 내용으로부터 용이하게 유추 가능하므로 이하 설명을 생략하도록 한다.
도 5는 본 발명의 일 실시예에 따른 도 1의 행동 모사 플랫폼 서비스 제공 시스템에 포함된 각 구성들 상호 간에 데이터가 송수신되는 과정을 나타낸 도면이다. 이하, 도 5를 통해 각 구성들 상호간에 데이터가 송수신되는 과정의 일 예를 설명할 것이나, 이와 같은 실시예로 본원이 한정 해석되는 것은 아니며, 앞서 설명한 다양한 실시예들에 따라 도 5에 도시된 데이터가 송수신되는 과정이 변경될 수 있음은 기술분야에 속하는 당업자에게 자명하다.
도 5를 참조하면, 플랫폼 서비스 제공 서버는, 적어도 하나의 행동 모사 프로그램과 적어도 하나의 로봇을 매핑하여 저장한다(S5100).
그리고, 플랫폼 서비스 제공 서버는, 사용자 단말에서 행동 모사 프로그램을 선택하는 경우 선택된 행동 모사 프로그램을 사용자 단말로 전송한다(S5200).
또, 플랫폼 서비스 제공 서버는, 사용자 단말을 경유하여 기 보유한 로봇에서 피드백이 수신되는 경우 피드백을 저장한다(S5300).
상술한 단계들(S5100~S5300)간의 순서는 예시일 뿐, 이에 한정되지 않는다. 즉, 상술한 단계들(S5100~S5300)간의 순서는 상호 변동될 수 있으며, 이중 일부 단계들은 동시에 실행되거나 삭제될 수도 있다.
이와 같은 도 5의 행동 모사 플랫폼 서비스 제공 방법에 대해서 설명되지 아니한 사항은 앞서 도 1 내지 도 4를 통해 행동 모사 플랫폼 서비스 제공 방법에 대하여 설명된 내용과 동일하거나 설명된 내용으로부터 용이하게 유추 가능하므로 이하 설명을 생략하도록 한다.
도 5를 통해 설명된 일 실시예에 따른 행동 모사 플랫폼 서비스 제공 방법은, 컴퓨터에 의해 실행되는 애플리케이션이나 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
전술한 본 발명의 일 실시예에 따른 행동 모사 플랫폼 서비스 제공 방법은, 단말기에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼이나 운영체제 등에 포함된 프로그램을 포함할 수 있음)에 의해 실행될 수 있고, 사용자가 애플리케이션 스토어 서버, 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버를 통해 마스터 단말기에 직접 설치한 애플리케이션(즉, 프로그램)에 의해 실행될 수도 있다. 이러한 의미에서, 전술한 본 발명의 일 실시예에 따른 행동 모사 플랫폼 서비스 제공 방법은 단말기에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고 단말기에 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (6)

  1. 적어도 하나의 행동 모사 프로그램을 선택하여 다운로드한 후 기 보유한 로봇에 적용시키는 사용자 단말; 및
    적어도 하나의 행동 모사 프로그램과 적어도 하나의 로봇을 매핑하여 저장하는 데이터베이스화부, 상기 사용자 단말에서 행동 모사 프로그램을 선택하는 경우 선택된 행동 모사 프로그램을 상기 사용자 단말로 전송하는 전송부, 상기 사용자 단말을 경유하여 상기 기 보유한 로봇에서 피드백이 수신되는 경우 상기 피드백을 저장하며 적어도 하나의 제공자 단말로부터 행동 데이터를 수신하여 저장하는 저장부를 포함하는 플랫폼 서비스 제공 서버;
    를 포함하며,
    상기 플랫폼 서비스 제공 서버는,
    상기 사용자 단말과 적어도 하나의 상기 제공자 단말로부터 수신되는 행동 데이터를 양방향으로 전달하되, 상기 제공자 단말에서의 행동 데이터가 상기 사용자 단말로 전송되고 상기 사용자 단말에서의 행동 데이터가 상기 제공자 단말로 전송되도록 하는 양방향모드부,
    상기 사용자 단말과 적어도 하나의 제공자 단말로부터 수신되는 행동 데이터를 협업 플랫폼에 업로드하며, 상기 사용자 단말에서의 행동 데이터와 상기 제공자 단말에서의 행동 데이터를 하나의 로봇에 적용할 수 있도록 하는 협업모드부,
    상기 사용자 단말에서 상기 행동 모사 프로그램을 상기 기 보유한 로봇 외의 장비에 적용하도록 하는 슬레이브(Slave)모드부를 더 포함하는 것을 특징으로 하는 행동 모사 플랫폼 서비스 제공 시스템.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제 1 항에 있어서,
    상기 기 보유한 로봇은,
    사용자가 착용하는 웨어러블 로봇, 암(Arm)이 존재하는 로봇 암, 바퀴가 있는 로봇, 무한궤도 로봇 및 다리가 있는 로봇 레그 중 적어도 하나인 것을 특징으로 하는 행동 모사 플랫폼 서비스 제공 시스템.
  6. 삭제
KR1020210176947A 2021-12-10 2021-12-10 행동 모사 플랫폼 서비스 제공 시스템 KR102453962B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210176947A KR102453962B1 (ko) 2021-12-10 2021-12-10 행동 모사 플랫폼 서비스 제공 시스템
PCT/KR2022/014039 WO2023106576A1 (ko) 2021-12-10 2022-09-20 행동 모사 플랫폼 서비스 제공 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210176947A KR102453962B1 (ko) 2021-12-10 2021-12-10 행동 모사 플랫폼 서비스 제공 시스템

Publications (1)

Publication Number Publication Date
KR102453962B1 true KR102453962B1 (ko) 2022-10-14

Family

ID=83599943

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210176947A KR102453962B1 (ko) 2021-12-10 2021-12-10 행동 모사 플랫폼 서비스 제공 시스템

Country Status (2)

Country Link
KR (1) KR102453962B1 (ko)
WO (1) WO2023106576A1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101692602B1 (ko) * 2015-01-13 2017-01-03 서울시립대학교 산학협력단 클라우드 지식공유 기반 로봇 제어 시스템 및 제어방법
KR20170027918A (ko) * 2015-09-02 2017-03-13 (주)이산솔루션 스마트 단말을 이용한 스마트 로봇의 제어 시스템 및 그 방법
JP2018529140A (ja) * 2015-07-08 2018-10-04 ユニバーサル ロボッツ アクツイエセルスカプ サードパーティコントリビューションを備えた産業用ロボットのエンドユーザプログラミングを拡張するための方法
JP2020026025A (ja) * 2018-08-10 2020-02-20 川崎重工業株式会社 トレーニング処理装置、仲介装置、トレーニングシステム及びトレーニング処理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6514166B2 (ja) * 2016-09-16 2019-05-15 ファナック株式会社 ロボットの動作プログラムを学習する機械学習装置,ロボットシステムおよび機械学習方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101692602B1 (ko) * 2015-01-13 2017-01-03 서울시립대학교 산학협력단 클라우드 지식공유 기반 로봇 제어 시스템 및 제어방법
JP2018529140A (ja) * 2015-07-08 2018-10-04 ユニバーサル ロボッツ アクツイエセルスカプ サードパーティコントリビューションを備えた産業用ロボットのエンドユーザプログラミングを拡張するための方法
KR20170027918A (ko) * 2015-09-02 2017-03-13 (주)이산솔루션 스마트 단말을 이용한 스마트 로봇의 제어 시스템 및 그 방법
JP2020026025A (ja) * 2018-08-10 2020-02-20 川崎重工業株式会社 トレーニング処理装置、仲介装置、トレーニングシステム及びトレーニング処理方法

Also Published As

Publication number Publication date
WO2023106576A1 (ko) 2023-06-15

Similar Documents

Publication Publication Date Title
CN110139115B (zh) 基于关键点的虚拟形象姿态控制方法、装置及电子设备
US20210150806A1 (en) 3d body model generation
JP6116784B1 (ja) 3次元モデル生成システム、3次元モデル生成方法、及びプログラム
US11132845B2 (en) Real-world object recognition for computing device
CN103101054A (zh) 手机对机器人的编程和控制系统
US20110216946A1 (en) Information processing device, information processing method, program, and information storage medium
CN111208783A (zh) 一种动作模仿方法、装置、终端及计算机存储介质
KR20220160066A (ko) 이미지 처리 방법 및 장치
US20210263168A1 (en) System and method to determine positioning in a virtual coordinate system
KR102436906B1 (ko) 대상자의 보행 패턴을 식별하는 방법 및 이를 수행하는 전자 장치
KR20170112406A (ko) 증강 현실 아바타 사진 촬영 장치 및 방법
CN104881114A (zh) 一种基于3d眼镜试戴的角度转动实时匹配方法
CN117957582A (zh) 将身体网格混合到外部网格中
CN104881526A (zh) 一种基于3d的物品穿戴方法及眼镜试戴方法
CN112233222A (zh) 基于神经网络关节点估计的人体参数化三维模型变形方法
US20190139288A1 (en) Dynamic motion simulation methods and systems
CN115439171A (zh) 商品信息展示方法、装置及电子设备
CN114527669A (zh) 一种设备控制方法、装置及电子设备
KR102453962B1 (ko) 행동 모사 플랫폼 서비스 제공 시스템
CN104899917A (zh) 一种基于3d的物品虚拟穿戴的图片保存和分享方法
US11430168B2 (en) Method and apparatus for rigging 3D scanned human models
CN116175582A (zh) 一种基于机器视觉的智能机械臂操控系统及控制方法
CN105975081A (zh) 体感控制方法和装置
KR102438488B1 (ko) 3d 마커리스 모션 캡처 기반 3d 아바타 생성 장치 및 방법
WO2022081745A1 (en) Real-time rendering of 3d wearable articles on human bodies for camera-supported computing devices

Legal Events

Date Code Title Description
GRNT Written decision to grant