KR20220069699A - 로봇장치의 원격 제어 시스템 및 방법 - Google Patents

로봇장치의 원격 제어 시스템 및 방법 Download PDF

Info

Publication number
KR20220069699A
KR20220069699A KR1020200157097A KR20200157097A KR20220069699A KR 20220069699 A KR20220069699 A KR 20220069699A KR 1020200157097 A KR1020200157097 A KR 1020200157097A KR 20200157097 A KR20200157097 A KR 20200157097A KR 20220069699 A KR20220069699 A KR 20220069699A
Authority
KR
South Korea
Prior art keywords
remote
robot device
terminal
access
control server
Prior art date
Application number
KR1020200157097A
Other languages
English (en)
Other versions
KR102509453B1 (ko
Inventor
백인식
홍승환
송승관
Original Assignee
주식회사 카카오모빌리티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 카카오모빌리티 filed Critical 주식회사 카카오모빌리티
Priority to KR1020200157097A priority Critical patent/KR102509453B1/ko
Publication of KR20220069699A publication Critical patent/KR20220069699A/ko
Application granted granted Critical
Publication of KR102509453B1 publication Critical patent/KR102509453B1/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/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/006Controls for manipulators by means of a wireless system for controlling one or several manipulators
    • 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/1689Teleoperation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q9/00Arrangements in telecontrol or telemetry systems for selectively calling a substation from a main station, in which substation desired apparatus is selected for applying a control signal thereto or for obtaining measured values therefrom

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Manipulator (AREA)
  • Telephonic Communication Services (AREA)

Abstract

로봇장치 원격 제어 시스템이 개시된다. 본 개시의 일 실시 예에 따른 로봇장치 원격 제어 시스템은 로봇장치로부터 미리 정해진 거리 이내의 로컬영역에 위치하는 로컬단말과, 원격지에 위치하는 원격단말과, 상기 로봇장치를 제어하는 제어정보를 생성하고, 상기 로컬단말의 입력에 기초하여 상기 원격단말의 접속 허용 여부를 설정하고, 상기 원격단말의 입력에 대응되는 상기 제어정보를 생성하는 로봇장치 제어 서버와, 상기 로컬영역에 위치하며, 상기 로컬단말과 상기 로봇장치 제어 서버를 로컬 연결하고, 상기 원격 단말과 상기 로봇장치 제어 서버를 외부망을 통해 연결하는 네트워크 기기를 포함할 수 있다.

Description

로봇장치의 원격 제어 시스템 및 방법{SYSTEM FOR CONTROLLING ROBOT APPARATUS REMOTELY AND METHOD FOR THE SAME}
본 발명은 로봇장치의 제어 기술에 대한 것으로써, 보다 상세하게는 로봇장치의 동작을 원격지에서 제어하는 시스템 및 방법에 관한 것이다.
일반적으로 로봇은 산업용으로 개발되어 공장자동화의 일환으로 사용되거나, 인간이 견딜 수 없는 극한의 환경에서 인간을 대신하여 작업을 수행하는 데 사용되어 왔다. 이러한 로봇 공학분야는 근래에 들어 최첨단의 우주 개발산업에 사용되면서 발전을 거듭하여 최근에 들어서는 인간 친화적인 가정용 로봇의 개발에까지 이르렀다. 덧붙여, 로봇은 의료용 기기를 대체하여 인간 생체 내에 투입됨으로써, 기존의 의료용 기기로는 치료가 불가능했던 미세한 인간 생체조직의 치료에까지 이용된다. 이와 같은 눈부신 로봇공학의 발전은 인터넷에 의한 정보혁명과 이를 뒤이어 유행하고 있는 생명공학분야를 대체하여 새롭게 등장할 최첨단 분야로서 각광받고 있다.
일반적으로 로봇장치는 보통 이동을 위한 구동수단과, 임무를 수행하기 위한 임무 처리 수단, 및 전방위 장애물을 감지하기 위한 장애물 감지 수단 등을 포함하여 구성될 수 있다. 또한, 로봇장치의 임무 처리 수단을 제어하거나, 구동수단을 제어하기 위해서는 제어 단말이 구비될 수 있는데, 이러한 제어 단말로서 PC나 랩탑 컴퓨터 등과 같은 범용의 컴퓨팅 장치가 사용될 수 있다. 예를 들어, 범용의 컴퓨팅 장치에는 로봇장치의 임무 처리 수단을 제어하거나, 구동수단을 제어를 수행하기 위한 프로그램이 탑재될 수 있는데, 이러한 프로그램은 로봇장치의 구조나 동작 매커니즘을 이해하여야만 용이하게 조작할 수 있다. 따라서, 전술한 프로그램의 조작이 능숙하지 않은 사용자는 임무를 처리하기 어렵고, 능숙하지 않은 사용자의 조작에 의해 정밀한 제어가 이루어지지 못하는 문제가 있다.
전술한 문제를 고려하여, 로봇장치의 제어를 수행하기 위한 프로그램은 숙련자에 의해 조작할 필요가 있으나, 숙련자들이 수가 한정적이므로, 많은 숙련자들이 직접 현장에서 로봇장치를 제어하는 프로그램을 조작하기는 어려운 문제가 있다.
또한, 로봇장치는 임무를 수행하면서 다양한 데이터를 획득하여 저장할 수 있는데, 허가되지 않은 사용자에게 데이터가 노출될 수 있는 문제가 있다.
본 개시의 기술적 과제는 사용자가 로봇장치의 제어를 수행하기 위한 프로그램의 조작에 능숙하지 않더라도, 로봇장치를 제어할 수 있는 방법 및 장치를 제공하는데 있다.
본 개시의 다른 기술적 과제는 숙련자가 원격지에서 로봇장치의 제어할 수 있는 방법 및 장치를 제공하는데 있다.
본 개시의 다른 기술적 과제는 이동체에 구비된 제어 단말의 데이터 접근을 제한하면서 로봇장치의 제어를 수행할 수 있는 방법 및 장치를 제공하는데 있다.
본 개시에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 개시의 일 양상에 따르면 로봇장치 원격 제어 시스템이 제공될 수 있다. 상기 로봇장치 원격 제어 시스템은 로봇장치로부터 미리 정해진 거리 이내의 로컬영역에 위치하는 로컬단말과, 원격지에 위치하는 원격단말과, 상기 로봇장치를 제어하는 제어정보를 생성하고, 상기 로컬단말의 입력에 기초하여 상기 원격단말의 접속 허용 여부를 설정하고, 상기 원격단말의 입력에 대응되는 상기 제어정보를 생성하는 로봇장치 제어 서버와, 상기 로컬영역에 위치하며, 상기 로컬단말과 상기 로봇장치 제어 서버를 로컬 연결하고, 상기 원격 단말과 상기 로봇장치 제어 서버를 외부망을 통해 연결하는 네트워크 기기를 포함할 수 있다.
본 개시의 다른 양상에 따르면 원격 제어 장법이 제공될 수 있다. 상기 로봇장치 원격 제어 방법은 봇장치로부터 미리 정해진 거리 이내의 로컬영역에 위치한 네트워크 기기를 통해 로컬단말과의 연결을 수행하는 과정과, 상기 네트워크 기기를 통해, 원격지에 위치하는 원격단말과의 연결을 수행하는 과정과, 상기 로컬단말의 접속을 확인하고, 상기 원격단말의 접속 허용 여부를 입력하는 메뉴 또는 UI를 포함하는 제1웹 페이지를 구성하고, 상기 제1웹 페이지를 상기 로컬단말에 제공하는 과정과, 상기 제1웹 페이지를 통해 입력되는 정보에 따라 상기 원격단말의 접속 허용 여부를 결정하는 과정과, 상기 원격단말의 접속 허용 여부를 기반으로 하되, 상기 원격단말을 통해 입력되는 정보에 기초하여 로봇장치를 제어하는 제어정보를 생성하는 과정을 포함할 수 있다.
본 개시에 대하여 위에서 간략하게 요약된 특징들은 후술하는 본 개시의 상세한 설명의 예시적인 양상일 뿐이며, 본 개시의 범위를 제한하는 것은 아니다.
본 개시에 따르면, 로봇장치에 근접한 사용자가 로봇장치의 임무 수행을 위한 프로그램의 조작에 능숙하지 않더라도, 효과적으로 제어할 수 있는 방법 및 장치가 제공될 수 있다.
본 개시에 따르면, 숙련자가 원격지에서 로봇장치의 제어할 수 있는 방법 및 장치가 제공될 수 있다.
본 개시에 따르면, 임무를 수행하면서 획득된 데이터에 대한 접근을 제한하면서 로봇장치의 제어를 수행할 수 있는 방법 및 장치가 제공될 수 있다.
본 개시에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템을 대략적으로 나타내는 개념도이다.
도 2는 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에 구비되는 로봇장치 제어 서버의 상세 구성을 예시하는 블록도이다.
도 3a 및 도 3b는 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에서 사용되는 제1 및 제2웹 페이지의 구성을 예시하는 도면이다.
도 4a 내지 도 4c는 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에서 로봇장치 제어에 사용되는 웹 페이지를 예시하는 도면이다.
도 5는 본 개시의 일 실시예에 따른 로봇장치 제어 서버에 구비된 통신부의 상세 구조를 예시하는 도면이다.
도 6은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에 구비된 네트워크 기기의 네트워크 연결 구조를 예시하는 도면이다.
도 7은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에 구비된 원격단말의 구성을 예시하는 블록도이다.
도 8은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에서 관제 정보를 관제서버에 업로드하는 동작을 예시하는 도면이다.
도 9는 본 개시의 일 실시예에 따른 로봇장치의 원격제어 방법의 동작을 예시하는 신호 흐름도이다.
도 10은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템 및 방법을 실행하는 컴퓨팅 시스템을 예시하는 블록도이다.
이하에서는 첨부한 도면을 참고로 하여 본 개시의 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나, 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.
본 개시의 실시 예를 설명함에 있어서 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그에 대한 상세한 설명은 생략한다. 그리고, 도면에서 본 개시에 대한 설명과 관계없는 부분은 생략하였으며, 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 개시에 있어서, 어떤 구성요소가 다른 구성요소와 "연결", "결합" 또는 "접속"되어 있다고 할 때, 이는 직접적인 연결관계뿐만 아니라, 그 중간에 또 다른 구성요소가 존재하는 간접적인 연결관계도 포함할 수 있다. 또한 어떤 구성요소가 다른 구성요소를 "포함한다" 또는 "가진다"고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 배제하는 것이 아니라 또 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 개시에 있어서, 서로 구별되는 구성요소들은 각각의 특징을 명확하게 설명하기 위함이며, 구성요소들이 반드시 분리되는 것을 의미하지는 않는다. 즉, 복수의 구성요소가 통합되어 하나의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있고, 하나의 구성요소가 분산되어 복수의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있다. 따라서, 별도로 언급하지 않더라도 이와 같이 통합된 또는 분산된 실시 예도 본 개시의 범위에 포함된다.
본 개시에 있어서, 다양한 실시 예에서 설명하는 구성요소들이 반드시 필수적인 구성요소들은 의미하는 것은 아니며, 일부는 선택적인 구성요소일 수 있다. 따라서, 일 실시 예에서 설명하는 구성요소들의 부분집합으로 구성되는 실시 예도 본 개시의 범위에 포함된다. 또한, 다양한 실시 예에서 설명하는 구성요소들에 추가적으로 다른 구성요소를 포함하는 실시 예도 본 개시의 범위에 포함된다.
이하, 첨부한 도면을 참조하여 본 개시의 실시 예들에 대해서 설명한다.
도 1은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템을 대략적으로 나타내는 개념도이다.
도 1을 참조하면, 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템(10)은, 로컬단말(11), 원격단말(13), 네트워크 기기(15), 및 로봇장치 제어 서버(17)를 포함할 수 있다. 이때, 네트워크 기기(15), 및 로봇장치 제어 서버(17)는 로봇장치(19)에 결합되거나, 로봇장치(19)의 내부에 구비될 수 있다.
이하, 로봇장치(19)가 위치한 영역을 로컬영역(100)이라 한다. 나아가, 로컬영역(100)은, 네트워크 기기(15)가 내장 또는 결합된 상태의 로봇장치(19)와 유선 또는 무선을 통해 연결될 수 있는 범위의 영역일 수 있다. 예컨대, 로컬단말(11)과 네트워크 기기(15)가 근거리 무선 통신망(LAN)을 통해 연결될 경우, 로컬영역(100)은 근거리 무선 통신망(LAN)이 형성되는 범위로 설정될 수 있다.
그리고, 원격단말(13)은 로컬영역(100)이 아닌 원격지(150)에 구비될 수 있다. 이때, 원격지(150)는, 거리의 크기에 상관없이 로컬영역(100)과 분리된 공간이면 충분하며, 예컨대, 원격단말(13)을 운영 또는 조작하는 사용자가 위치하는 공간일 수 있다.
로봇장치 제어 서버(17)는 로컬단말(11)과 원격단말(13)이 네트워크 기기(15)를 통해 접속할 수 있는 환경을 제공하며, 로컬단말(11) 및 원격단말(13)로, 로봇장치 제어를 위한 웹 페이지를 제공할 수 있다. 로봇장치 제어를 위한 웹 페이지에 대해서는 하기의 도 3a 및 도 3b, 도 4a 내지 도 4e 등을 통해 상세히 설명한다.
전술한 바에 기초하여, 로컬단말(11)은 로봇장치 제어 서버(17)가 제공하는 제1웹 페이지를 실행할 수 있으며, 실행된 제1웹 페이지를 디스플레이할 수 있는 전자장치를 포함할 수 있다. 마찬가지로, 원격단말(13)은 로봇장치 제어 서버(17)가 제공하는 제2웹 페이지를 실행할 수 있으며, 실행된 제2웹 페이지를 디스플레이할 수 있는 전자장치를 포함할 수 있다.
본 개시의 다양한 실시예에서, 전자장치는 스마트 폰 (smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크 탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 다양한 실시예에 따르면, 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드(skin pad) 또는 문신), 또는 생체 이식형(예: implantable circuit) 중 적어도 하나를 포함할 수 있다.
네트워크 기기(15)는 IGD 프로토콜(Internet Gateway Device Protocol)을 지원하는 IP 공유기를 포함한다. 또한, 네트워크 기기(15)는 WAN(Wide Area Network) 인터페이스에 통신사업자로부터 하나의 공인 IP 주소를 할당 받아 다수의 네트워크 IP 장치들이 공유할 수 있도록 하는 NAT(Network Address Translation) 기능을 포함한다.
네트워크 기기(15)가 포트 포워딩(Port Forwarding)을 설정하면, 사설망에 존재하는 특정 IP 주소와 포트 번호를 네트워크 기기(15) 자신의 공인 IP 주소와 특정 포트 번호로 연결하여, 외부에서 네트워크 기기(15)의 공인 IP 주소와 네트워크 기기(15)가 설정한 포트 번호를 통해 접근을 시도할 경우, NAT에 의해 사설망 내의 특정 IP 주소와 포트로 전달한다. 이로써, 사설망의 단말에 대해 포트 포워딩이 설정되면 외부에서 접근이 가능하다.
따라서, 원격 단말(13)은 네트워크 기기(15)의 공인 IP 주소를 이용하여, 인터넷 망 등을 통해 로봇장치 제어 서버(17)에 접속할 수 있다. 이때, 네트워크 기기(15)에 의해 설정된 포트 포워딩을 통하여, 원격 단말(13)은 로봇장치 제어 서버(17)에 접속할 수 있으며, 로봇장치 제어 서버(17)는 포트 포워딩에 의한 접속임을 확인하고, 원격 단말(13)에 제2웹 페이지를 제공할 수 있다.
나아가, 원격단말(13)은 제2웹 페이지를 통해 로봇장치 제어 서버(17)에 저장된 데이터에 접근할 수 있으며, 로봇장치 제어 서버(17)에 저장된 데이터를 수신하여 저장할 수 있다.
한편, 로봇장치 제어 서버(17)는 범용의 컴퓨팅 장치를 포함할 수 있으며, 로봇장치(19)에 연결되어 로봇장치(19)를 제어할 수 있는 구성부를 더 포함할 수 있다. 예컨대, 범용의 컴퓨팅 장치는 데스크 탑 PC(desktop personal computer), 랩탑 PC(laptop personal computer), 태블릿 PC(tablet personal computer) 중 적어도 하나를 포함할 수 있다. 비록 본 개시의 일 실시예에서, 범용의 컴퓨팅 장치를 예시하고 있으나 본 개시가 이를 한정하는 것은 아니다. 예컨대, 범용의 컴퓨팅 장치는 로봇장치(19)를 제어할 수 있는 구성부를 탑재할 수 있으면 충분하여 다양하게 변경될 수 있다.
특히, 로봇장치 제어 서버(17)는 범용의 컴퓨팅 장치로 구성되므로, 내부에 구비되는 컴퓨팅 자원(예, 연산자원, 저장 매체 등)에 접근하는 인터페이스(예, 모니터 연결단자(예, HDMI 연결단자, D-sub 연결단자, RGB 연결단자 등)), 마우스 연결단자, 키보드 연결단자, USB 연결단자 등)를 포함할 수 있는데, 이러한 인터페이스를 통해 허가되지 않은 사용자가 컴퓨팅 자원(예, 연산자원, 저장 매체 등)에 접근할 수 있다. 이와 같이, 로봇장치 제어 서버(17)의 컴퓨팅 자원에 접근을 차단하기 위하여, 범용의 컴퓨팅 장치에 구비된 인터페이스에 대한 물리적인 봉인이 처리될 수 있다.
다른 예로서, 로봇장치 제어 서버(17)는 로봇장치(19)의 하우징 내측부에 마련될 수 있으며, 로봇장치(19)의 하우징에 의해 로봇장치 제어 서버(17)에 물리적으로 접근할 수 없는 형태로 구성될 수 있다. 그리고, 로봇장치(19)의 하우징에 대한 봉인이 처리될 수 있다.
로봇장치 제어 서버(17)는 제1웹 페이지 및 제2웹 페이지를 통해 컴퓨팅 자원에 대한 접근을 처리할 수 있다. 예컨대, 제1웹 페이지는 로컬단말(11)에 제공되는 웹 페이지로서, 원격 단말(13)의 접속 허용, 등의 기능을 제공할 수 있다. 그리고, 제2웹 페이지는 원격 단말(13)에 제공되는 웹 페이지로서, 로봇장치(19)의 구동을 제어하는 기능 등을 제공할 수 있다. 예컨대, 제2웹 페이지는 로봇장치(19)의 이동 제어, 이동 방향 제어, 액추레이터 제어, 모터 제어, 카메라 제어 등을 수행할 수 있는 UI를 포함할 수 있다.
이하, 도 2를 통해 로봇장치 제어 서버의 상세 구성에 대해 설명한다.
도 2는 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에 구비되는 로봇장치 제어 서버의 상세 구성을 예시하는 블록도이다.
로봇장치 제어 서버(200)는 통신부(210), 접속 확인부(220), 로컬 접속 제어부(230), 원격 접속 제어부(240), 및 인터페이스(250)를 포함할 수 있다.
통신부(210)는 유/무선 통신을 통해 외부의 단말, 예컨대, 로컬단말(21), 원격단말(23) 등과의 통신을 수행할 수 있다. 이때, 통신부(210)는 포트 포워딩을 지원하는 네트워크 기기(25)와 연결될 수 있으며, 네트워크 기기(25)가 제공하는 주소 정보를 사용하여 통신부(210)에 접근할 수 있다. 여기서, 네트워크 기기(25)는 로봇 장치(27)의 하우징 내측 영역에 구비될 수 있으며, 로컬단말(21)과 원격단말(23)은 무선 통신을 통해 네트워크 기기(25)에 연결될 수 있다.
접속 확인부(220)는 로컬단말(21)의 접속 또는 원격단말(23)의 접속을 확인하고, 각각의 접속에 대응하여 로컬 접속 제어부(230) 또는 원격 접속 제어부(240)로 연결을 수행할 수 있다.
일 예로, 접속 확인부(220)는 통신부(210)를 통해 접속되는 주소를 확인하고, 로컬영역에서의 접속인지 또는 외부의 원격지에서의 접속인지를 확인할 수 있다. 그리고, 접속 확인부(220)는 확인된 접속지에 대응하여 로컬 접속 제어부(230) 또는 원격 접속 제어부(240)로 연결을 수행할 수 있다. 예를 들어, 접속 확인부(220)는 클라이언트(client)의 IP 주소를 확인하고, IP 주소에 기초하여, 클라이언트의 접속이 내부망(NAT)을 통한 접속인지 확인하고, NAT 내부의 동일 서브넷에 해당하는 IP 주소의 경우 로컬단말(21)의 접속으로 결정하고, NAT 내부가 아닌 다른 망으로 판별된 경우 원격단말(23)의 접속으로 결정할 수 있다.
또한, 로컬영역에 존재하는 로컬단말(21)이 접속할 경우, 접속 확인부(220)는 로컬단말(21)을 로컬 접속 제어부(230)에 연결할 수 있다. 그리고, 원격지에 존재하는 원격단말(23)이 접속할 경우, 접속 확인부(220)는 원격단말(23)을 원격 접속 제어부(240)에 연결할 수 있다.
다른 예로서, 로봇장치 제어 서버(200)는 프록시(Proxy) 처리부(215)를 더 포함할 수 있다. 프록시 처리부(215)는 통신부(210)와 접속 확인부(220) 사이에 마련될 수 있다. 이때, 통신부(210)는 로컬단말(21)이 연결되는 적어도 하나의 제1포트와 원격단말(23)이 연결되는 적어도 하나의 제2포트를 구비할 수 있다. 통신부(210)의 제1포트는 접속 확인부(220)에 연결될 수 있다. 특히, 통신부(210)의 제2포트는 프록시 처리부(215)의 일단에 연결될 수 있으며, 프록시 처리부(215)의 타 단은 접속 확인부(220)에 연결될 수 있다. 예컨대, 제1포트는 3000 포트이고, 제2포트는 4001 포트일 수 있다.
접속 요청이 HTTP 방식인 경우, 프록시 처리부(215)는 프록시(proxy)로 들어오는 요청의 헤더에 임의의 헤더값을 추가하여 접속 확인부(220)로 패킷을 전달할 수 있다. 이에 대응하여, 접속 확인부(220)는 전달되는 헤더의 값을 확인하고, 접속을 요청한 클라이언트가 로컬단말(21)인지, 또는 원격단말(23)인지 확인하고, 클라이언트의 종류에 맞게 로컬 접속 제어부(230) 또는 원격 접속 제어부(240)로 연결을 수행할 수 있다.
또 다른 예로서, 접속 확인부(220)는 사용자의 계정을 사용하여 로컬영역에서의 접속인지 또는 외부의 원격지에서의 접속인지를 확인할 수 있다. 예컨대, 접속 확인부(220)는 내부 또는 외부에 구비된 데이터베이스를 사용하여 사용자의 계정 정보를 저장 및 관리할 수 있다. 이때, 사용자의 계정 정보는 사용자 ID, 비밀번호, 사용자 종류(예, 로컬 접속 사용자, 원격 접속 사용자, 관리자 등)를 포함할 수 있다. 이러한 환경에서, 클라이언트(예, 로컬단말(21), 원격단말(23) 등)의 접속이 요청됨에 따라, 접속 확인부(220)는 사용자의 계정 정보를 입력할 수 있는 메뉴 또는 UI를 클라이언트로 전송하고, 클라이언트로부터 전송되는 사용자의 계정 정보를 확인할 수 있다. 그리고, 접속 확인부(220)는 클라이언트로부터 수신된 사용자의 계정 정보의 유효성, 사용자 종류 등을 확인할 수 있으며, 사용자 종류에 따라 로컬 접속 제어부(230) 또는 원격 접속 제어부(240)로 연결을 수행할 수 있다.
한편, 로컬 접속 제어부(230)는 로컬단말(11)의 로봇장치 제어 서버(200) 접근을 관리할 수 있다. 로컬 접속 제어부(230)는 로컬단말(21)이 허용된 기능 만을 수행할 수 있도록하며, 허용된 기능 외에 다른 기능 또는 장치의 접근을 제한할 수 있다. 로컬 접속 제어부(230)는 로컬단말(21)이 정해진 웹 페이지만을 통해 로봇장치 제어 서버(200)에 접근할 수 있도록하며, 로컬단말(21)로부터 입력되는 입력값을 차단하도록 구성될 수 있다. 이에 따라, 로컬 접속 제어부(230)는 로컬단말(21)의 입력값 중, 허용된 입력값 만이 로봇장치 제어 서버(200)에 전달되도록 구성될 수 있다.
예컨대, 로컬 접속 제어부(230)는 로컬단말(21)이 제어하는 메뉴 또는 UI를 포함하는 제1웹 페이지를 구성하여 로컬단말(21)에 제공할 수 있다. 이에 따라, 로컬단말(21)은 제1웹 페이지에 포함된 메뉴 또는 UI를 디스플레이할 수 있으며, 사용자에 의해 선택되는 메뉴 또는 UI에 대응되는 동작을 수행할 수 있다. 예컨대, 제1웹 페이지는 원격단말(23)의 원격 접속 허용 여부를 제어하는 메뉴 또는 UI를 포함할 수 있다.
원격 접속 허용 여부를 제어하는 메뉴 또는 UI를 통해 원격단말(23)의 원격 접속이 허용 또는 비허용이 입력될 경우, 로컬 접속 제어부(230)는 원격 접속의 허용 또는 비허용을 지시하는 정보를 원격 접속 제어부(240)에 제공할 수 있다.
이에 대응하여, 원격 접속 제어부(240)는 원격 접속의 허용 또는 비허용을 지시하는 정보에 기초하여, 원격단말(23)에게 제2웹 페이지를 제공할 수 있다.
즉, 원격 접속의 허용이 허용될 경우, 원격 접속 제어부(240)는 제2웹 페이지를 구성하여 원격단말(23)에 제공할 수 있다. 이에 따라, 로컬단말(21)은 제2웹 페이지에 포함된 메뉴 또는 UI를 디스플레이할 수 있으며, 사용자에 의해 선택되는 메뉴 또는 UI에 대응되는 동작을 수행할 수 있다.
제2웹 페이지는 로봇장치(27)의 동작을 제어하는 기능을 제공하기 위한 페이지로서, 로봇장치(27)의 동작을 제어하는 방식에 따라 다양하게 변경될 수 있다.
일 예로, 로봇장치(27)의 동작을 제어하는 방식은 원격 데스크톱 프로토콜(Remote Desktop Protocol, 이하 'RDP'라 함)에 기초하여 로봇장치 제어 서버(200)의 시스템을 개방하는 방식을 포함할 수 있다. 이 경우, 로컬 접속 제어부(230)는 RDP에 기초하여 원격단말(23)의 접속을 허용할지 여부를 입력받을 수 있는 메뉴 또는 UI를 포함하는 제1웹 페이지를 구성하여 제공할 수 있다. 그리고, 원격단말(23)의 접속이 허용될 경우, 원격 접속 제어부(240)는 RDP에 기초하여 로봇장치 제어 서버(200)의 동작을 제어할 수 있는 형식의 RDP 서버를 구성하여 제공할 수 있다. 원격지의 사용자는 RDP 클라이언트를 통해 로봇장치 제어 서버(200)에 접근할 수 있다. 예컨대, 원격단말(23)은 RDP 클라이언트로서 기능할 수 있는 프로그램(이하, 'RDP 클라이언트 프로그램'이라 함)을 수행할 수 있는 환경이 구축될 수 있다. 이러한 환경에서, 원격단말(23)은 사용자의 요청에 의해 RDP 클라이언트 프로그램을 실행할 수 있으며, RDP 클라이언트 프로그램은 로봇장치 제어 서버(200)의 RDP 서버와 연결되어 RDP에 기초한 동작을 수행할 수 있다. 이에 따라, 사용자는 RDP 클라이언트 프로그램을 통해, 로봇장치 제어 서버(200)에 연결된 로봇장치(27)의 동작을 제어하는 어플리케이션이나, 프로그램에 접근하여 해당 어플리케이션이나, 프로그램에 대한 제어를 수행할 수 있다. 또한, 원격지의 사용자는 RDP 클라이언트 프로그램을 통해 로봇장치 제어 서버(200)에 구비된 저장매체에 접근할 수 있다.
다른 예로서, 로봇장치(27)의 동작을 제어하는 방식은 로컬단말(21)에 의해 SSH, FTP, VNC, RDP, TELNET 등을 선택적으로 가동하는 방식일 수 있다. 이 경우, 로컬 접속 제어부(230)는 SSH, FTP, VNC, RDP, TELNET 등에 대해 원격단말(23)의 접속을 허용할지 여부를 입력받을 수 있는 메뉴 또는 UI를 포함하는 제1웹 페이지를 구성하여 제공할 수 있다. 그리고, SSH, FTP, VNC, RDP, TELNET 등에 대한 원격단말(23)의 접속이 허용될 경우, 원격 접속 제어부(240)는 WebSocket, WebRTC 등의 웹소켓 통신 기술에 기초하여 SSH, FTP, VNC, RDP, TELNET 등에 대한 동작을 제어할 수 있는 형식의 제2웹 페이지를 구성하여 제공할 수 있다. 원격지의 사용자는 제2웹 페이지를 통해 SSH, FTP, VNC, RDP, TELNET 등에 대한 로봇장치 제어 서버(200)에 접근할 수 있다.
또 다른 예로서, 로봇장치(27)의 동작을 제어하는 방식은 로컬단말(21)에 의해 원격단말(23)이 접속하는 포트(port)에 대한 방화벽을 해제하거나, 해당 포트에 대한 가상 호스트(virtual host)를 허용하는 방식일 수 있다. 이 경우, 로컬 접속 제어부(230)는 원격단말(23)이 접속하는 포트(port)에 대한 방화벽을 해제하거나, 해당 포트에 대한 가상 호스트(virtual host)를 허용할지 여부를 입력받을 수 있는 메뉴 또는 UI를 포함하는 제1웹 페이지를 구성하여 제공할 수 있다. 그리고, 원격단말(23)의 접속이 허용될 경우, 원격 접속 제어부(240)는 전술한 RDP 서버를 구성하거나, 또는 제2웹 페이지를 구성하여 제공할 수 있다. 원격지의 사용자는 RDP 서버/클라이언트 또는 제2웹 페이지를 통해 로봇장치 제어 서버(200)에 접근할 수 있으며, 로봇장치 제어 서버(200)에 연결된 로봇장치(27)의 동작을 제어하는 어플리케이션이나, 프로그램에 접근하여 해당 어플리케이션이나, 프로그램에 대한 제어를 수행할 수 있다. 또한, 원격지의 사용자는 RDP 서버/클라이언트 또는 제2웹 페이지를 통해 로봇장치 제어 서버(200)에 구비된 저장매체에 접근할 수 있다. 또한, 원격 접속 제어부(240)는 로봇장치 제어 서버(200)의 포트가 열려있는지 또는 닫혀있는지에 대한 정보를 로그 기록으로 생성하여 저장할 수 있다. 이러한 로그 기록은 로봇장치 제어 서버(200)에 구비된 저장매체에 저장 및 관리될 수 있다. 나아가, 저장된 로그 기록은 분쟁시의 증거 데이터로서 사용될 수 있다.
또 다른 예로서, 로봇장치(27)의 동작을 제어하는 방식은 로컬단말(21)에 의해 SSH, FTP, VNC, RDP, TELNET 등을 선택적으로 가동하되, SSH, FTP, VNC, RDP, TELNET 등에 사용되는 포트에 대한 방화벽을 해제하거나, 해당 포트에 대한 가상 호스트(virtual host)를 허용하는 방식일 수 있다. 이 경우, 로컬 접속 제어부(230)는 SSH, FTP, VNC, RDP, TELNET 등에 대해 원격단말(23)의 접속을 허용할지 여부를 입력받을 수 있는 메뉴 또는 UI를 포함하는 제1웹 페이지를 구성하여 제공할 수 있다. 그리고, 원격 접속 제어부(240)는 SSH, FTP, VNC, RDP, TELNET 등에 사용되는 포트에 대한 방화벽을 해제하거나, 해당 포트에 대한 가상 호스트(virtual host)를 오픈하여 동작을 제어할 수 있는 형식의 제2웹 페이지를 구성하여 제공할 수 있다.
또 다른 예로서, 프록시 처리부(215)가 구비되는 경우, 원격 접속 허용 또는 비허용의 입력에 대응하여, 로컬 접속 제어부(230)는 프록시 처리부(215)의 동작을 제어함으로써, 원격단말(23)의 원격 접속을 허용 또는 차단할 수 있다. 예컨대, 원격 접속 허용이 입력될 경우, 로컬 접속 제어부(230)는 프록시 처리부(215)의 동작을 활성화(ON) 상태로 유지하고, 원격 접속 비허용이 입력될 경우, 로컬 접속 제어부(230)는 프록시 처리부(215)의 동작을 종료(OFF) 상태로 전환할 수 있다.
한편, 인터페이스(250)는 물리적인 봉인이 처리되어 접근이 제한되어 있으며, 외부 기기와의 접속은 네트워크 기기(902)에 한하여 허용되도록 구성된다.
다른 예로서, 로봇장치 제어 서버(200)는 인터페이스(250)로부터 입력되는 신호를 차단하여 외부 기기와의 접속을 차단할 수 있다.
도 3a 및 도 3b는 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에서 사용되는 제1 및 제2웹 페이지의 구성을 예시하는 도면으로서, 도 3a는 제1웹 페이지를 예시하고, 도 3b는 제2웹 페이지를 예시한다.
우선, 도 3a를 참조하면, 제1웹 페이지(300)는 원격 접속 관리 UI(310)를 포함할 수 있다. 원격 접속 관리 UI(310)는 원격 접속의 허용 여부를 입력할 수 있는 원격 접속 허용/미허용 입력부(311)를 포함할 수 있으며, 원격 접속 허용/미허용 입력부(311)를 통해 입력되는 값을 전술한 로컬 접속 제어부(230)에 제공할 수 있다. 이에 대응하여, 로컬 접속 제어부(230)는 원격단말에 대한 접속을 관리할 수 있다.
도 3b를 참조하면, 제2웹 페이지(320)는 센서 관리 메뉴(330), 데이터 관리 메뉴(340), 및 로봇장치 제어 메뉴(350)를 포함할 수 있다.
센서 관리 메뉴(330)는 로봇장치에 구비된 센서, 예컨대, GPS, 지자계센서, 등의 동작을 모니터링 하고 관리하는 메뉴일 수 있는데, 그 하위 메뉴로서, 센서 관리 페이지(410, 도 4a 참조)에 연결될 수 있다. 이에 따라, 센서 관리 메뉴(330)가 선택될 경우, 원격 접속 제어부(240)는 센서 관리 페이지(410)를 구성하여 출력할 수 있다. 이때, 센서 관리 페이지(410)는 위치 확인 모듈(예, GPS)의 수신상태, 예컨대, GPS 신호 세기 등을 표시하는 인디케이터(411)나, 센서 상태를 표시하는 인디케이터(412)를 포함할 수 있다.
데이터 관리 메뉴(340)는 로봇장치 제어 서버에 저장된 데이터를 원격지의 장치(예, 원격 단말, 또는 원격 관제 서버 장치)로 전송하기 위한 메뉴일 수 있으며, 그 하위 메뉴로서, 데이터 관리 페이지(420, 도 4b 참조)에 연결될 수 있다. 이에 따라, 데이터 관리 메뉴(360)가 선택될 경우, 원격 접속 제어부(240)는 데이터 관리 페이지(420)를 구성하여 출력할 수 있다. 이때, 데이터 관리 페이지(420)는 업로드 요청 UI(421)를 포함할 수 있다. 업로드 요청 UI(421)는 업로드를 진행한 데이터를 선택할 수 있는 메뉴 또는 UI(442)와, 데이터 업로드가 진행될 목적지를 선택하는 메뉴 또는 UI(423)와, 업로드 진행 요청 메뉴 또는 UI(424)를 포함할 수 있다. 업로드 요청 UI(421)를 통해 전송할 데이터와 목적지가 사용자에 의해 선택될 경우, 원격 접속 제어부(240)는 선택된 데이터를 목적지 장치(예, 원격 단말, 또는 원격 관제 서버 장치)로 전송할 수 있다. 이때, 원격 접속 제어부(240)는 업로드 요청정보와 함께 로봇장치 제어 서버의 IP 정보를 함께 목적지 장치(예, 원격 단말, 또는 원격 관제 서버 장치)로 전송할 수 있다. 이에 기초하여, 목적지 장치(예, 원격 단말, 또는 원격 관제 서버 장치)는 FTP/SFTP에 기초하여, FTP Client로써 로봇장치 제어 서버에 접근할 수 있으며, 로봇장치 제어 서버에 수록된 데이터를 획득할 수 있다.
나아가, 데이터 관리 페이지(420)가 제2웹 페이지(320)의 하위 메뉴로서 구성되고, 원격단말의 요청에 의해 데이터가 업로드 되는 것을 예시하였으나, 본 개시가 이를 한정하는 것은 아니며, 다양하게 변경될 수 있다. 예컨대, 데이터 관리 메뉴(340) 또는 데이터 관리 페이지(420)가 제1웹 페이지(310)의 하위 메뉴로 구성될 수 있으며, 로컬단말의 요청에 의해 데이터 업로드가 진행될 수 있다.
나아가, 데이터 관리 페이지(420)는 데이터의 관리를 위한 데이터 관리 메뉴 또는 UI(422)를 포함할 수 있다. 데이터 관리 메뉴 또는 UI(422)를 통해 사용자는 로봇장치 제어 서버에 저장된 데이터를 선택하여 삭제할 수 있다.
로봇장치 제어 메뉴(340)는 로봇장치에 구비된 센서의 제어를 수행하기 위한 메뉴일 수 있으며, 그 하위 메뉴로서, 로봇장치 제어 페이지(430, 도 4c 참조)에 연결될 수 있다. 이에 따라, 로봇장치 제어 메뉴(340)가 선택될 경우, 원격 접속 제어부(240)는 로봇장치 제어 페이지(430)를 구성하여 출력할 수 있다. 이때, 로봇장치 제어 페이지(430)는 Web Socket, Web RTC 등에 기초한 통신 기술에 따라, 로봇장치에 구비된 센서의 데이터를 실시간으로 표시하거나, 로봇장치에 구비된 센서의 동작을 실시간으로 제어할 수 있다.
도 5는 본 개시의 일 실시예에 따른 로봇장치 제어 서버에 구비된 통신부의 상세 구조를 예시하는 도면이다.
도 6을 참조하면, 통신부(500)는 로컬 접속 포트(510)와 외부 접속 포트(520)를 포함할 수 있다.
로컬 접속 포트(510)는 로봇장치 제어 서버가 위치한 로컬영역에 존재하는 장치가 접속할 수 있는 포트로서, LAN 연결되는 포트일 수 있다. 예컨대, 로컬 접속 포트(510)는 3000 포트일 수 있다. 나아가, 전술한 로컬단말은 로컬 접속 포트(510)를 통해 로봇장치 제어 서버에 연결될 수 있다.
외부 접속 포트(520)는 인터넷 통신망을 통해 접속되는 포트로서, 원격지에서 접속되는 포트일 수 있다. 예컨대, 외부 접속 포트(520)는 4001 포트(521), 4002 포트(522), 및 4003 포트(523) 중, 적어도 하나를 포함할 수 있다. 나아가, 전술한 원격단말은 외부 접속 포트(520)를 통해 로봇장치 제어 서버에 연결될 수 있다. 이때, 4001 포트(521)는 프록시 처리부(531)에 연결될 수 있으며, 4002 포트(522)는 SSH 처리부(532)에 연결될 수 있으며, 4003 포트(523)는 VNC 처리부(533)에 연결될 수 있다. 프록시 처리부(531)는 HTTP 프락시(Proxy) 프로토콜에 기초하여 원격단말의 접속을 허용 또는 제한할 수 있다. SSH 처리부(532)는 SSH 프로토콜에 기초하여 원격단말의 접속을 허용 또는 제한할 수 있다. 또한, VNC 처리부(533)는 VNC(Virtual Network Computing) 프로토콜에 기초하여 원격단말의 접속을 허용 또는 제한할 수 있다. SSH 처리부(532)나 VNC 처리부(533)는 통상의 SSH 서버나, VNC 서버의 동작을 수행할 수 있으며, 이에 대응하여, 원격단말에는 SSH 클라이언트나, VNC 클라이언트가 탑재될 수 있다. 나아가, 원격단말의 접속 허용 또는 제한은 전술한 제1웹 페이지를 통해 입력되는 정보에 기초하여 설정될 수 있다.
프록시 처리부(531), SSH 처리부(532), 또는 VNC 처리부(533)는 로컬 접속 제어부(230)에 연결될 수 있으며, 로컬 접속 제어부(230)에 의해 동작(ON) 또는 종료(OFF) 상태가 제어될 수 있다.
도 6은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에 구비된 네트워크 기기의 네트워크 연결 구조를 예시하는 도면이다.
네트워크 기기(600)는 WAN 단자(601)와 복수의 LAN 단자(602, 603, 604)을 포함할 수 있으며, WAN 단자(601)와 복수의 LAN 단자(602, 603, 604) 사이에서 NAT 동작, 포트 포워딩 동작 등을 수행할 수 있다.
WAN 단자(601)는 인터넷 망을 통해 원격지에 마련된 원격단말(610)과 연결될 수 있다. 그리고, 로컬단말(620)과 로봇장치 제어 서버(630)는 각각 복수의 LAN 단자(602, 603, 604) 중 하나에 연결될 수 있다. 예컨대, 로컬단말(620)은 제1LAN 단자(602)에 연결될 수 있으며, 로봇장치 제어 서버(630)는 제3LAN 단자(604)에 연결될 수 있다.
로봇장치 제어 서버(630)는 내부 IP 주소를 설정하여 데이터의 송수신을 처리할 수 있다. 예컨대, 내부 IP 주소는 "192.168.0.222"로 예시될 수 있다.
로컬단말(620)은 내부 IP 주소와 포트 번호를 포함하는 형식의 주소 정보를 사용하여 접속을 수행할 수 있다. 예컨대, 내부 IP 주소를 "192.168.0.222"로 예시할 경우, 로컬단말(620)은 "192.168.0.222:3000"으로 설정된 주소 정보를 사용하여 메시지의 송수신을 처리할 수 있다. 즉, 로컬단말(620)이 로봇장치 제어 서버(630)로 메시지를 전송할 경우, 출발지 주소는 내부 IP 주소와 포트 번호를 포함하는 형식의 주소 정보(예, "192.168.0.222:3000")를 사용하여 메시지를 구성할 수 있으며, 이를 네트워크 기기(600)의 LAN 단자(602, 704)를 통해 로봇장치 제어 서버(630)에 전달할 수 있다. 이에 따라, 로봇장치 제어 서버(630)는 주소 정보(예, "192.168.0.222:3000")에 수록된 포트 번호에 기초하여, 해당 메시지가 로컬단말(620)로부터 전송된 메시지임을 확인할 수 있다.
한편, 원격단말(610)은 퍼블릭 IP 주소와 포트 번호를 포함하는 형식의 주소 정보를 사용하여 접속을 수행할 수 있다. 예컨대, 퍼블릭 IP 주소를 "111.222.112.3333"으로 예시할 경우, 원격단말(610)은 "111.222.112.3333:5000"으로 설정된 주소 정보를 사용하여 메시지의 송수신을 처리할 수 있다. 원격단말(610)은 네트워크 기기(600)의 WAN 단자를 통해 메시지를 전달할 수 있는데, 이때, 네트워크 기기(600)는 포트 포워딩 동작을 통해 원격단말(610)의 주소 정보를 내부 IP 주소와 포트 번호를 포함하는 형식으로 변경할 수 있다. 즉, 네트워크 기기(600)는 원격단말(610)의 주소정보인 "111.222.112.3333:5000"을 내부 IP 주소를 포함하는 형식의 "192.168.0.222:4001"로 변환할 수 있다. 이때, 포트 번호는 로컬단말(620)이 사용하는 포트 번호와 다르게 구성되며, 예컨대, "4001"로 설정될 수 있다. 나아가, 네트워크 기기(600)는 변환주소 정보, 예를 들어, "192.168.0.222:4001"를 사용하여 로봇장치 제어 서버(630)로 메시지를 전송할 수 있다. 이에 따라, 로봇장치 제어 서버(630)는 주소 정보(예, "192.168.0.222:4001")에 수록된 포트 번호에 기초하여, 해당 메시지가 원격단말(610)로부터 전송된 메시지임을 확인할 수 있다.
도 7은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에 구비된 원격단말의 구성을 예시하는 블록도이다.
도 7을 참조하면, 원격단말(700)은 원격제어 처리부(710) 및 관제정보 처리부(720)를 포함할 수 있다.
원격제어 처리부(710)는 통신망(701)을 통해 네트워크 기기(702) 및 로봇장치 제어 서버(703)에 연결될 수 있으며, 로봇장치 제어 서버(703)에서 제공하는 웹 페이지를 출력할 수 있다. 이를 위해 원격제어 처리부(710)는 웹 페이지를 실행할 수 있는 웹 브라우저를 구비할 수 있으며, 웹 브라우저를 실행하면서 입출력되는 정보에 기초하여 로봇장치 제어 서버(703)로 제어 정보를 전송할 수 있다.
관제정보 처리부(720)는 관제서버(750)에 연결될 수 있으며, 로봇장치 제어 서버(703)에서 제공하는 관제 정보를 관제서버(750)에 저장 및 관리할 수 있다. 여기서, 관제 정보는, 로봇장치에 의해 획득되는 정보를 포함할 수 있다. 예컨대, 관제 정보는, 영상 센서, 레이저 센서, 항법 센서 등에 의해 획득되는 데이터를 포함할 수 있다. 나아가, 관제 정보는, 전술한 센서들에 의해 획득되는 데이터를 가공한 데이터를 더 포함할 수 있다.
도 8은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템에서 관제 정보를 관제서버에 업로드하는 동작을 예시하는 도면이다.
본 개시의 일 실시예에서는 로컬단말의 요청에 의해 관제 정보를 관제서버에 업로드하는 동작을 예시한다.
우선, 로봇장치 제어 서버(82)는 관제 정보의 업로드를 요청하기 위한 메뉴 또는 UI를 포함하는 웹 페이지를 구성하여 로컬단말(81)에 제공할 수 있다(S801). 관제 정보의 업로드를 요청하기 위한 메뉴 또는 UI를 포함하는 웹 페이지는 전술한 제1웹 페이지의 하위 페이지로 구성될 수 있다. 예컨대, 전술한 제1웹 페이지는 "관제정보 업로드" 메뉴 또는 UI를 포함할 수 있으며, "관제정보 업로드" 메뉴 또는 UI가 사용자에 의해 선택됨에 따라, 관제 정보의 업로드를 요청하기 위한 메뉴 또는 UI를 포함하는 웹 페이지(이하, '관제정보 업로드 페이지'라 함)를 생성하여 로컬단말(81)에 제공할 수 있다.
로컬단말(81)은 관제정보 업로드 페이지를 출력할 수 있으며, 사용자에 입력에 따라, 관제정보 업로드 요청을 생성하고, 로봇장치 제어 서버(82)를 통해 관제서버(83)로 전달할 수 있다(S802).
로봇장치 제어 서버(82)는 FTP 프로토콜에 기초하여 FTP 서버를 설정하고, FTP 서버로서의 동작을 개시할 수 있다(S803). 그리고, 관제서버(83)는 FTP 프로토콜에 기초하여 FTP 클라이언트를 설정하고, FTP 클라이언트로서의 동작을 개시할 수 있다(S804).
이후, 관제서버(83)는 FTP 프로토콜에 기초하여, 로봇장치 제어 서버(82)에 설정된 FTP 서버로 접속을 요청할 수 있으며(S805), FTP 서버의 동작에 기초하여 FTP 클라이언트에 대한 접속을 허용할 수 있다(S806).
FTP 클라이언트에 대한 접속이 허용됨에 따라, FTP 서버로서 동작하는 로봇장치 제어 서버(82)는 관제정보를 FTP 클라이언트로서 동작하는 관제서버(83)로 전송할 수 있다(S807).
관제정보의 전송이 완료되면(S808-예), 관제서버(83)는 관제정보의 전송이 완료되었음을 통지하고(S809), 이를 로봇장치 제어 서버(82)에 전달할 수 있다(S810).
이에 대응하여, 로봇장치 제어 서버(82)는 FTP 서버의 구동을 완료하고(S811), 업로드 완료 메시지를 로컬단말(81)에 제공할 수 있다(S812). 그리고, 로컬단말(81)은 관제정보 업로드 페이지 등을 통해 업로드 완료 메시지를 표시할 수 있다(S813).
비록, 본 개시의 일 실시예에서는 로컬단말의 요청에 의해 관제 정보를 관제서버에 업로드하는 동작을 예시하지만, 본 개시가 이를 한정하는 것은 아니며 다양하게 변경될 수도 있다. 예컨대, 원격단말의 요청에 의해 관제 정보를 관제서버에 업로드하도록 구성될 수 있다. 이 경우, 전술한 로컬단말이 원격단말로 대체되는 형태로 구성될 수 있다.
도 10은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 방법의 동작을 예시하는 신호 흐름도이다.
도 10의 로봇장치의 원격제어 방법은 전술한 로봇장치의 원격제어 시스템에 의해 수행될 수 있다.
도 10을 참조하면, 로봇장치의 원격제어 시스템에 구비된 로컬단말(901)은 네트워크 기기(902)를 통해 로봇장치 제어 서버(904)에 접속을 진행할 수 있다. 이때, 로봇장치 제어 서버(904)는 기기에 구비된 인터페이스는 물리적인 봉인이 처리되어 접근이 제한되어 있으며, 외부 기기와의 접속은 네트워크 기기(902)에 한하여 허용되도록 구성된다. 이에 따라, 로컬단말(901)은 네트워크 기기(902)에 접속하여 로봇장치 제어 서버(904)로의 접속을 요청할 수 있다(S901). 네트워크 기기(902)는 로컬단말(901)의 접속이 외부 접속 단자를 통한 접속인지 또는 내부 접속 단자를 통한 접속인지를 확인할 수 있는데, 네트워크 기기(902)는 로컬단말(901)이 내부 접속 단자를 통한 접속임을 확인하고(S902), 내부 접속임을 지시하는 주소 정보(예, 192.168.0.1:80)를 구성하고, 구성된 주소 정보(예, 192.168.0.1:80)를 사용하여 로봇장치 제어 서버(904)에 접속을 수행할 수 있다(S903).
로봇장치 제어 서버(904)는 접속 요청된 메시지의 주소 정보를 확인하고, 접속 요청의 종류를 확인할 수 있다(S904).
로봇장치 제어 서버(904)가 접속 요청된 메시지의 주소 정보를 확인한 결과, 해당 주소 정보(예, 192.168.0.1:80)가 로컬 접속을 나타내는 주소 정보일 경우, 로봇장치 제어 서버(904)는 로컬 접속에 대응되는 제어 페이지(예, 제1 웹페이지)를 구성하고, 이를 네트워크 기기(902)를 통해 로컬단말(901)에 전달할 수 있다(S905). 이때, 제어 페이지(예, 제1 웹페이지)에는 원격 접속의 허용 여부를 입력할 수 있는 원격 접속 관리 UI가 포함될 수 있으며, 사용자는 로컬단말(901)에 표시되는 원격 접속 관리 UI를 통해 원격 접속의 허용 또는 미허용 정보를 입력할 수 있다(S906). 제어 페이지(예, 제1 웹페이지)의 원격 접속 관리 UI를 통해 입력된 정보는 로봇장치 제어 서버(904)로 전달될 수 있으며(S907), 로봇장치 제어 서버(904)는, 원격 접속의 허용 또는 미허용 정보를 확인하고 이에 대응되는 동작을 수행할 수 있다(S908).
한편, 전술한 바와 같이, 로봇장치 제어 서버(904)는 기기에 구비된 인터페이스는 물리적인 봉인이 처리되어 접근히 제한되어 있으며, 외부 기기와의 접속은 네트워크 기기(902)에 한하여 허용되도록 구성되므로, 로봇장치의 원격제어 시스템에 구비된 원격단말(55) 역시 네트워크 기기(902)를 통해 로봇장치 제어 서버(904)에 접속을 진행할 수 있다. 이때, 이에 따라, 원격단말(55)은 네트워크 기기(902)에 접속하여 로봇장치 제어 서버(904)로의 접속을 요청할 수 있다(S901'). 네트워크 기기(902)는 로컬단말(901)의 접속이 외부 접속 단자를 통한 접속인지 또는 내부 접속 단자를 통한 접속인지를 확인할 수 있는데, 네트워크 기기(902)는 로컬단말(901)이 외부 접속 단자를 통한 접속임을 확인하고(S902'), 외부 접속임을 지시하는 주소 정보(예, 233.169.173.1:9000)를 구성하고, 구성된 주소 정보(예, 233.169.173.1:9000)를 사용하여 로봇장치 제어 서버(904)에 접속을 수행할 수 있다(S903').
비록, 본 개시의 일 실시예에서, 네트워크 기기(902)가 전자기기가 접속된 접속 단자의 종류를 기반으로 내부 접속인지 또는 외부의 원격지에 대한 접속인지를 확인하는 것을 예시하였으나, 본 개시가 이를 한정하는 것은 아니며, 다양하게 변경될 수 있다. 예컨대, 로컬단말(901)과 네트워크 기기(902), 또는 원격단말(55)과 네트워크 기기(902)는 무선 통신망을 통해 연결될 수 있으며, 무선 접속되는 경로를 기반으로 내부 접속인지 또는 외부의 원격지에 대한 접속인지를 확인할 수 있다.
나아가, 전술한 바와 같이, 로봇장치 제어 서버(904)는 접속 요청된 메시지의 주소 정보를 확인하고, 접속 요청의 종류를 확인할 수 있다(S904).
로봇장치 제어 서버(904)가 접속 요청된 메시지의 주소 정보를 확인한 결과, 해당 주소 정보(예, 233.169.173.1:9000)가 원격 접속을 나타내는 주소 정보일 경우, 로봇장치 제어 서버(904)는 원격 접속에 대응되는 제어 페이지(예, 제2웹 페이지)를 구성하여 제공할 수 있는데, 원격 접속에 대응되는 제어 페이지(예, 제2웹 페이지)의 제공은 로컬단말(901)을 통해 허용된 상태에서 제한적으로 수행되도록 구성될 수 있다. 이를 위해, 로봇장치 제어 서버(904)는 주소 정보(예, 233.169.173.1:9000)가 원격 접속을 나타내는 주소 정보일 경우, 로컬단말(901)에 의해 원격 접속이 허용된 상태인지를 확인하는 동작을 수행할 수 있다(S908).
로컬단말(901)에 의해 원격 접속이 허용된 상태일 경우, 로봇장치 제어 서버(904)는 원격 접속에 대응되는 제어 페이지(예, 제2웹 페이지)를 구성하여 네트워크 기기(902)를 통해 원격단말(55)로 제공할 수 있다(S909). 예컨대, 제어 페이지(예, 제2웹 페이지)는 RDP 서버/클라이언트의 동작을 기반으로 구성될 수 있으며, 이후, RDP를 기반으로, 로봇장치 제어 서버(904) 및 로봇장치 제어 서버(904)에 연결된 로봇장치에 대한 제어를 수행할 수 있다(S910). 이때, 제어 페이지(예, 제2웹 페이지)는 전술한 도 3b의 구성을 참조한다.
비록, 본 개시의 일 실시예에서, 로봇장치 제어 서버(904)는 클라이언트의 접속 주소를 기반으로 접속 종류, 즉, 로컬단말 또는 원격단말의 접속을 확인하는 것을 예시하였으나, 본 개시가 이를 한정하는 것은 아니며, 다양하게 변경될 수 있다. 예컨대, 로봇장치 제어 서버(904)는 HTTP에 기초하여 헤더에 수록된 정보를 기반으로 접속 종류를 확인할 수 있다. 또 다른 예로서, 로봇장치 제어 서버(904)는 사용자의 계정을 사용하여 로컬영역에서의 접속인지 또는 외부의 원격지에서의 접속인지를 확인할 수 있다.
한편, 로컬단말(901)에 의해 원격 접속이 허용되지 않은 상태일 경우, 로봇장치 제어 서버(904)는 원격단말(55)의 접속을 제한하는 상태를 유지하도록 구성된다. 이에 따라, 로컬단말(901)에 의해 원격 접속이 허용되지 않은 상태일 경우, 로봇장치 제어 서버(904)는 미리 정해진 소정의 시간을 대기(S911) 한 후, 로컬단말(901)에 의해 원격 접속이 허용되었는지 여부를 확인하는 동작을 반복적으로 수행할 수 있다.
도 10은 본 개시의 일 실시예에 따른 로봇장치의 원격제어 시스템 및 방법을 실행하는 컴퓨팅 시스템을 예시하는 블록도이다.
도 10을 참조하면, 컴퓨팅 시스템(1000)은 버스(1200)를 통해 연결되는 적어도 하나의 프로세서(1100), 메모리(1300), 스토리지(1600), 및 네트워크 인터페이스(1700)를 포함할 수 있다.
프로세서(1100)는 중앙 처리 장치(CPU) 또는 메모리(1300) 및/또는 스토리지(1600)에 저장된 명령어들에 대한 처리를 실행하는 반도체 장치일 수 있다. 메모리(1300) 및 스토리지(1600)는 다양한 종류의 휘발성 또는 불휘발성 저장 매체를 포함할 수 있다. 예를 들어, 메모리(1300)는 ROM(Read Only Memory) 및 RAM(Random Access Memory)을 포함할 수 있다.
따라서, 본 명세서에 개시된 실시예들과 관련하여 설명된 방법 또는 알고리즘의 단계는 프로세서(1100)에 의해 실행되는 하드웨어, 소프트웨어 모듈, 또는 그 2 개의 결합으로 직접 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 착탈형 디스크, CD-ROM과 같은 저장 매체(즉, 메모리(1300) 및/또는 스토리지(1600))에 상주할 수도 있다. 예시적인 저장 매체는 프로세서(1100)에 커플링되며, 그 프로세서(1100)는 저장 매체로부터 정보를 판독할 수 있고 저장 매체에 정보를 기입할 수 있다. 다른 방법으로, 저장 매체는 프로세서(1100)와 일체형일 수도 있다. 프로세서 및 저장 매체는 주문형 집적회로(ASIC) 내에 상주할 수도 있다. ASIC는 사용자 단말기 내에 상주할 수도 있다. 다른 방법으로, 프로세서 및 저장 매체는 사용자 단말기 내에 개별 컴포넌트로서 상주할 수도 있다.
본 개시의 예시적인 방법들은 설명의 명확성을 위해서 동작의 시리즈로 표현되어 있지만, 이는 단계가 수행되는 순서를 제한하기 위한 것은 아니며, 필요한 경우에는 각각의 단계가 동시에 또는 상이한 순서로 수행될 수도 있다. 본 개시에 따른 방법을 구현하기 위해서, 예시하는 단계에 추가적으로 다른 단계를 포함하거나, 일부의 단계를 제외하고 나머지 단계를 포함하거나, 또는 일부의 단계를 제외하고 추가적인 다른 단계를 포함할 수도 있다.
본 개시의 다양한 실시 예는 모든 가능한 조합을 나열한 것이 아니고 본 개시의 대표적인 양상을 설명하기 위한 것이며, 다양한 실시 예에서 설명하는 사항들은 독립적으로 적용되거나 또는 둘 이상의 조합으로 적용될 수도 있다.
또한, 본 개시의 다양한 실시 예는 하드웨어, 펌웨어(firmware), 소프트웨어, 또는 그들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 범용 프로세서(general processor), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.
본 개시의 범위는 다양한 실시 예의 방법에 따른 동작이 장치 또는 컴퓨터 상에서 실행되도록 하는 소프트웨어 또는 머신-실행가능한 명령들(예를 들어, 운영체제, 애플리케이션, 펌웨어(firmware), 프로그램 등), 및 이러한 소프트웨어 또는 명령 등이 저장되어 장치 또는 컴퓨터 상에서 실행 가능한 비-일시적 컴퓨터-판독가능 매체(non-transitory computer-readable medium)를 포함한다.

Claims (14)

  1. 전자장치의 원격 제어 시스템에 있어서,
    로봇장치로부터 미리 정해진 거리 이내의 로컬영역에 위치하는 로컬단말과,
    원격지에 위치하는 원격단말과,
    상기 로봇장치를 제어하는 제어정보를 생성하고, 상기 로컬단말의 입력에 기초하여 상기 원격단말의 접속 허용 여부를 설정하고, 상기 원격단말의 입력에 대응되는 상기 제어정보를 생성하는 로봇장치 제어 서버와,
    상기 로컬영역에 위치하며, 상기 로컬단말과 상기 로봇장치 제어 서버를 로컬 연결하고, 상기 원격 단말과 상기 로봇장치 제어 서버를 외부망을 통해 연결하는 네트워크 기기를 포함하는 로봇장치 원격 제어 시스템.
  2. 제1항에 있어서,
    상기 로봇장치 제어 서버는,
    외부 장치와 연결되는 인터페이스를 포함하되, 상기 인터페이스는 물리적 또는 논리적으로 접속이 제한되는 로봇장치 원격 제어 시스템.
  3. 제2항에 있어서,
    상기 로봇장치 제어 서버는,
    상기 인터페이스를 통해 입력되는 신호를 차단하여, 상기 논리적인 접속을 제한하는 MMS 원격 제어 시스템.
  4. 제3항에 있어서,
    상기 로봇장치 제어 서버는,
    HTTP, 또는 Web Socket 프로토콜을 포함하는 웹 통신 프로토콜을 통해 입력되는 신호를 허용하고,
    상기 웹 통신 프로토콜 이외의 프로토콜에 의해 입력되는 신호를 차단하는 MMS 원격 제어 시스템.
  5. 제1항에 있어서,
    상기 로봇장치 제어 서버는,
    상기 원격단말의 접속 허용 여부를 입력하는 메뉴 또는 UI를 포함하는 제1웹 페이지를 구성하고, 상기 제1웹 페이지를 상기 로컬단말에 제공하고, 상기 제1웹 페이지를 통해 입력되는 정보에 따라 상기 원격단말의 접속 허용 여부를 결정하는 로컬접속 제어부를 포함하는 로봇장치 원격 제어 시스템.
  6. 제5항에 있어서,
    상기 로봇장치 제어 서버는,
    상기 원격단말이 접속되는 포트에 연결되며,
    상기 원격단말의 접속을 지시하는 정보를 수록한 해더를 구성하고,
    상기 해더를 포함하는 데이터 패킷을 전달하는 프록시 처리부를 포함하는 로봇장치 원격 제어 시스템.
  7. 제6항에 있어서,
    상기 로봇장치 제어 서버는,
    상기 로컬접속 제어부는 상기 제1웹 페이지를 통해 입력되는 정보에 따라, 상기 프록시 처리부의 동작 또는 종료를 제어함으로써 상기 원격단말의 접속을 관리하는 로봇장치 원격 제어 시스템.
  8. 제6항에 있어서,
    상기 로봇장치 제어 서버는,
    상기 HTTP에 기초하여, 상기 해더의 값을 확인하고,
    상기 확인된 해더의 값에 기초하여 상기 로컬단말 또는 상기 원격단말의 접속을 확인하는 로봇장치 원격 제어 시스템.
  9. 제5항에 있어서,
    상기 로봇장치 제어 서버는,
    상기 로봇장치를 제어하는 메뉴 또는 UI를 포함하는 제2웹 페이지를 구성하고, 상기 제2웹 페이지를 상기 원격단말에 제공하고, 상기 제2웹 페이지를 통해 입력되는 정보에 기초하여 상기 제어정보를 생성하는 원격접속 제어부를 포함하는 로봇장치 원격 제어 시스템.
  10. 제4항에 있어서,
    상기 로봇장치 제어 서버는,
    원격 데스크톱 프로토콜(RDP; Remote Desktop Protocol) 또는 가상 네트워크 컴퓨팅(VNC; Virtual Network Computing)에 기초하여, RDP 서버 또는 VNC 서버를 구성하며, 상기 원격단말에 구축된 RDP 클라이언트 또는 VNC 클라이언트를 통해 입력되는 정보에 대응하여, 상기 로봇장치 제어 서버의 제어를 수행하는 원격접속 제어부를 포함하는 로봇장치 원격 제어 시스템.
  11. 제1항에 있어서,
    상기 로봇장치 제어 서버는,
    상기 네트워크 기기를 통해 접속되는 장치의 주소 정보를 확인하고, 상기 주소 정보를 기반으로 상기 로컬단말 또는 상기 원격단말의 접속을 식별하는 접속 확인부를 포함하는 로봇장치 원격 제어 시스템.
  12. 제1항에 있어서,
    상기 로봇장치 제어 서버는,
    상기 네트워크 기기를 통해 접속되는 장치로 사용자의 계정 정보를 요청하여 입력받고, 상기 사용자의 계정 정보에 기초하여 상기 로컬단말 또는 상기 원격단말의 접속을 식별하는 접속 확인부를 포함하는 로봇장치 원격 제어 시스템.
  13. 제1항에 있어서,
    상기 원격단말에 연결되고, 상기 로봇장치에 구비된 적어도 하나의 센서 장치를 통해 획득되는 데이터를 저장하는 관제서버를 더 포함하는 로봇장치 원격 제어 시스템.
  14. 전자장치의 원격 제어 방법에 있어서,
    로봇장치로부터 미리 정해진 거리 이내의 로컬영역에 위치한 네트워크 기기를 통해 로컬단말과의 연결을 수행하는 과정과,
    상기 네트워크 기기를 통해, 원격지에 위치하는 원격단말과의 연결을 수행하는 과정과,
    상기 로컬단말의 접속을 확인하고, 상기 원격단말의 접속 허용 여부를 입력하는 메뉴 또는 UI를 포함하는 제1웹 페이지를 구성하고, 상기 제1웹 페이지를 상기 로컬단말에 제공하는 과정과,
    상기 제1웹 페이지를 통해 입력되는 정보에 따라 상기 원격단말의 접속 허용 여부를 결정하는 과정과,
    상기 원격단말의 접속 허용 여부를 기반으로 하되, 상기 원격단말을 통해 입력되는 정보에 기초하여 로봇장치를 제어하는 제어정보를 생성하는 과정을 포함하는 로봇장치 원격 제어 방법.
KR1020200157097A 2020-11-20 2020-11-20 로봇장치의 원격 제어 시스템 및 방법 KR102509453B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200157097A KR102509453B1 (ko) 2020-11-20 2020-11-20 로봇장치의 원격 제어 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200157097A KR102509453B1 (ko) 2020-11-20 2020-11-20 로봇장치의 원격 제어 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20220069699A true KR20220069699A (ko) 2022-05-27
KR102509453B1 KR102509453B1 (ko) 2023-03-13

Family

ID=81791020

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200157097A KR102509453B1 (ko) 2020-11-20 2020-11-20 로봇장치의 원격 제어 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102509453B1 (ko)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004042230A (ja) * 2002-07-15 2004-02-12 Kawasaki Heavy Ind Ltd ロボットコントローラの遠隔操作方法および遠隔操作システム
JP2005184304A (ja) * 2003-12-18 2005-07-07 Sony Corp 遠隔制御システム、サーバおよびコンピュータプログラム
KR20090012542A (ko) * 2007-07-30 2009-02-04 주식회사 마이크로로봇 로봇을 이용한 홈 모니터링 시스템
KR20130017406A (ko) * 2011-08-10 2013-02-20 주식회사 비티비솔루션 이종의 원격 제어 서비스를 지원하는 서버 및 방법
KR20130039623A (ko) * 2011-10-12 2013-04-22 엘지전자 주식회사 로봇 청소기, 이의 동작 방법 및 원격 제어 시스템
JP5264837B2 (ja) * 2009-12-03 2013-08-14 韓國電子通信研究院 遠隔プラグイン装置、ロボットプラグイン実行エンジン装置及びロボットプラグイン実行システム
KR20130105714A (ko) * 2010-12-17 2013-09-25 노키아 지멘스 네트웍스 오와이 웹 리소스들을 위한 유저 인터랙션
KR20150042427A (ko) * 2013-10-11 2015-04-21 대우조선해양 주식회사 로봇제어기와 단말장치간의 인터페이스 장치 및 그 방법

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004042230A (ja) * 2002-07-15 2004-02-12 Kawasaki Heavy Ind Ltd ロボットコントローラの遠隔操作方法および遠隔操作システム
JP2005184304A (ja) * 2003-12-18 2005-07-07 Sony Corp 遠隔制御システム、サーバおよびコンピュータプログラム
KR20090012542A (ko) * 2007-07-30 2009-02-04 주식회사 마이크로로봇 로봇을 이용한 홈 모니터링 시스템
JP5264837B2 (ja) * 2009-12-03 2013-08-14 韓國電子通信研究院 遠隔プラグイン装置、ロボットプラグイン実行エンジン装置及びロボットプラグイン実行システム
KR20130105714A (ko) * 2010-12-17 2013-09-25 노키아 지멘스 네트웍스 오와이 웹 리소스들을 위한 유저 인터랙션
KR20130017406A (ko) * 2011-08-10 2013-02-20 주식회사 비티비솔루션 이종의 원격 제어 서비스를 지원하는 서버 및 방법
KR20130039623A (ko) * 2011-10-12 2013-04-22 엘지전자 주식회사 로봇 청소기, 이의 동작 방법 및 원격 제어 시스템
KR20150042427A (ko) * 2013-10-11 2015-04-21 대우조선해양 주식회사 로봇제어기와 단말장치간의 인터페이스 장치 및 그 방법

Also Published As

Publication number Publication date
KR102509453B1 (ko) 2023-03-13

Similar Documents

Publication Publication Date Title
US20220247624A1 (en) Managing network connected devices
US10637724B2 (en) Managing network connected devices
US9712486B2 (en) Techniques for the deployment and management of network connected devices
TWI470970B (zh) 開放式監控系統及其操作方法
US11316683B2 (en) Systems and methods for providing IoT security service using hardware security module
US11237636B2 (en) System and method for network configuration and behavior control by proximity enabled devices
BR102015004521B1 (pt) Método para comunicação entre usuários e dispositivos inteligentes
Singh et al. Wi-Fi surveillance bot with real time audio & video streaming through Android mobile
EP3018882A1 (en) Configuring a device in a network
Wendzel How to increase the security of smart buildings?
JP6455687B2 (ja) モノのインターネットのためのネットワークセキュリティ
US20150222329A1 (en) One touch product information on mobile communication device using near field communication
KR102509453B1 (ko) 로봇장치의 원격 제어 시스템 및 방법
JP7088104B2 (ja) 制御システム、および制御方法
CN112187869A (zh) Iot设备的远程调试系统、方法、电子设备及存储介质
TWI551100B (zh) 用以進行點對點連接的方法、伺服器與裝置
KR102454552B1 (ko) Mms 원격 제어 시스템 및 방법
Silva et al. Secure push notification service based on MQTT protocol for mobile platforms
Javed et al. Complex flows: Node-red
US20160285819A1 (en) Sharing and controlling electronic devices located at remote locations using xmpp server
JP6363139B2 (ja) スマートデバイスの脆弱性を除去する方法及びシステム
US20240048625A1 (en) Reducing latency and optimizing proxy networks
EP4047833A1 (en) Load balancing system, load balancing method, and carrier means
JP7367102B2 (ja) デバイスハンドオフ
US11303613B1 (en) Data access and firewall tunneling using a custom socket factory

Legal Events

Date Code Title Description
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant