KR20240083292A - Motion control system applicable to robots with various kinematic shapes - Google Patents

Motion control system applicable to robots with various kinematic shapes Download PDF

Info

Publication number
KR20240083292A
KR20240083292A KR1020220167090A KR20220167090A KR20240083292A KR 20240083292 A KR20240083292 A KR 20240083292A KR 1020220167090 A KR1020220167090 A KR 1020220167090A KR 20220167090 A KR20220167090 A KR 20220167090A KR 20240083292 A KR20240083292 A KR 20240083292A
Authority
KR
South Korea
Prior art keywords
robot
kinematic
control
server
robots
Prior art date
Application number
KR1020220167090A
Other languages
Korean (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 KR1020220167090A priority Critical patent/KR20240083292A/en
Publication of KR20240083292A publication Critical patent/KR20240083292A/en

Links

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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Manipulator (AREA)

Abstract

본 발명은 다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템에 관한 것으로, 다양한 기구학적 형상의 로봇을 식별하여 제어하는 단말기; 및 로봇과 교신하고, 로봇의 기구학적 형상을 식별하고, 교신된 로봇에 대한 명령을 입력받기 위해 모션컨트롤 프로그램을 실행하는 서버;를 포함하되, 단말기는, 서버에 의해 실행되고, 다양한 기구학적 형상의 로봇을 지원하는 제어툴을 제공하고, 제어툴을 통해 제어신호를 입력받고, 입력된 제어신호를 서버로 전달하는 모션컨트롤 프로그램; 및 서버에 의해 식별된 로봇의 기구학적 형상에 맞게 실행되고, 전달받은 상기 제어신호를 식별된 기구학적 형상의 로봇제어신호로 변환하고, 변환된 로봇제어신호를 로봇으로 전송하여 실행을 요청하고, 로봇의 실행 결과를 서버로 전달하는 신호변환 프로그램;을 설치하여 실행하는 것을 특징으로 한다. 본 발명에 따르면, 다양한 기구학적 형상을 갖는 로봇을 하나의 제어프로그램으로 제어할 수 있게 되므로, 프로그램을 개발하는데 소요되는 중복 비용을 절감할 수 있으며, 다양한 기구학적 형상의 로봇을 식별하고, 식별된 기구학적 형상별 로봇에 대해 제어툴을 제공하는 서버 환경을 제공받아 로봇의 기구학적 형상별 조작법이나 명령을 모르더라도 제어툴을 통해 공통된 제어신호로 로봇을 제어할 수 있다.
본 명세서는 인천 연구개발 활성화 사업(과제번호 : 2022-연구개발성과사업화-01)의 도움을 받아 작성 되었다.
The present invention relates to a motion control system applicable to robots of various kinematic shapes, including a terminal that identifies and controls robots of various kinematic shapes; and a server that communicates with the robot, identifies the kinematic shape of the robot, and executes a motion control program to receive commands for the communicated robot; wherein the terminal is executed by the server and has various kinematic shapes. A motion control program that provides a control tool to support the robot, receives control signals through the control tool, and transmits the input control signals to the server; And it is executed according to the kinematic shape of the robot identified by the server, converts the received control signal into a robot control signal of the identified kinematic shape, and transmits the converted robot control signal to the robot to request execution, It is characterized by installing and executing a signal conversion program that transmits the execution results of the robot to the server. According to the present invention, robots with various kinematic shapes can be controlled with a single control program, thereby reducing the redundant costs required to develop programs, identifying robots with various kinematic shapes, and identifying robots with various kinematic shapes. By providing a server environment that provides control tools for robots of each kinematic shape, you can control the robot with common control signals through the control tool even if you do not know the operation methods or commands for each kinematic shape of the robot.
This specification was prepared with the help of the Incheon Research and Development Activation Project (Task Number: 2022-R&D Performance Commercialization-01).

Description

다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템{MOTION CONTROL SYSTEM APPLICABLE TO ROBOTS WITH VARIOUS KINEMATIC SHAPES}Motion control system applicable to robots of various kinematic shapes {MOTION CONTROL SYSTEM APPLICABLE TO ROBOTS WITH VARIOUS KINEMATIC SHAPES}

본 발명은 모션 컨트롤 시스템에 관한 것이다. 보다 자세하게는 다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템에 관한 것이다.The present invention relates to a motion control system. More specifically, it concerns a motion control system applicable to robots of various kinematic shapes.

일반적으로 다양한 목적을 갖는 로봇은 자체의 중앙 연산 장치를 활용하여 복잡한 판단을 내리고 제어를 수행하도록 구비되었으나, 최근들어 어플리케이션 설치가 가능한 스마트기기를 활용하여 복잡한 컴퓨팅 기반의 서비스를 이용하는 것이 보편화됨에 따라, 로봇의 연산 장치를 로봇 내부에 구현하는 것보다 스마트기기의 연산 능력을 활용하는 방법이 하나의 대안으로 모색되고 있다.In general, robots with various purposes are equipped to make complex decisions and perform control using their own central computing unit, but recently, as it has become common to use complex computing-based services using smart devices that can install applications, Rather than implementing the robot's computing device inside the robot, utilizing the computing power of smart devices is being explored as an alternative.

이를 실현하기 위해서는 로봇이 스마트기기로부터 명령을 내려받고 수행할 수 있어야 하므로, 스마트기기에 로봇 제어용으로 제작된 소프트웨어가 설치되어야 한다. 그러나 로봇의 기구학적 형상이 다양하므로, 제조사별로 제작되어 스마트기기에 설치되는 전용 어플리케이션은 해당 제조사의 로봇만을 제어할 수 있는 한계가 명확했다.In order to realize this, the robot must be able to receive and execute commands from a smart device, so software designed for robot control must be installed on the smart device. However, since the kinematic shapes of the robots are diverse, the dedicated applications created for each manufacturer and installed on smart devices have clear limitations in that they can only control the robots of that manufacturer.

본 발명에서는 상기한 한계점을 극복하기 위해, 다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템을 제공하고자 한다.In order to overcome the above-mentioned limitations, the present invention seeks to provide a motion control system applicable to robots of various kinematic shapes.

본 발명의 기술적 과제는 다양한 로봇의 제어가 가능한 서버의 제어 프로그램을 이용하여 다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템을 제공하는 것이다.The technical task of the present invention is to provide a motion control system applicable to robots of various kinematic shapes using a control program of a server capable of controlling various robots.

상기한 과제를 해결하기 위해, 본 발명은 다양한 기구학적 형상의 로봇을 식별하여 제어하는 단말기; 및 로봇과 교신하고, 로봇의 기구학적 형상을 식별하고, 교신된 로봇에 대한 명령을 입력받기 위해 모션컨트롤 프로그램을 실행하는 서버;를 포함하되, 단말기는, 서버에 의해 실행되고, 다양한 기구학적 형상의 로봇을 지원하는 제어툴을 제공하고, 제어툴을 통해 제어신호를 입력받고, 입력된 제어신호를 서버로 전달하는 모션컨트롤 프로그램; 및 서버에 의해 식별된 로봇의 기구학적 형상에 맞게 실행되고, 전달받은 상기 제어신호를 식별된 기구학적 형상의 로봇제어신호로 변환하고, 변환된 로봇제어신호를 로봇으로 전송하여 실행을 요청하고, 로봇의 실행 결과를 서버로 전달하는 신호변환 프로그램;을 설치하여 실행하는 것을 특징으로 하는 다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템을 제공한다.In order to solve the above problems, the present invention includes a terminal that identifies and controls robots of various kinematic shapes; and a server that communicates with the robot, identifies the kinematic shape of the robot, and executes a motion control program to receive commands for the communicated robot; wherein the terminal is executed by the server and has various kinematic shapes. A motion control program that provides a control tool to support the robot, receives control signals through the control tool, and transmits the input control signals to the server; And it is executed according to the kinematic shape of the robot identified by the server, converts the received control signal into a robot control signal of the identified kinematic shape, and transmits the converted robot control signal to the robot to request execution, Provides a motion control system applicable to robots of various kinematic shapes, characterized by installing and executing a signal conversion program that transmits the execution results of the robot to the server.

본 발명에 따르면, 다양한 기구학적 형상을 갖는 로봇을 하나의 제어프로그램으로 제어할 수 있게 되므로, 프로그램을 개발하는데 소요되는 중복 비용을 절감할 수 있다.According to the present invention, robots with various kinematic shapes can be controlled with a single control program, thereby reducing the redundant costs required to develop the program.

본 발명에 따르면, 다양한 기구학적 형상의 로봇을 식별하고, 식별된 기구학적 형상별 로봇에 대해 제어툴을 제공하는 서버 환경을 제공받아 로봇의 기구학적 형상별 조작법이나 명령을 모르더라도 제어툴을 통해 공통된 제어신호로 로봇을 제어할 수 있다.According to the present invention, a server environment is provided that identifies robots of various kinematic shapes and provides control tools for robots for each identified kinematic shape, so that even if you do not know the operation method or command for each kinematic shape of the robot, you can use the control tool. Robots can be controlled with common control signals.

도 1은 본 발명의 일 실시예에 따른 모션 컨트롤 시스템의 개략적 순서도이다.
도 2는 본 발명의 일 실시예에 따른 단말기가 신호변환 프로그램을 다운받는 과정의 예시도이다.
도 3은 본 발명의 일 실시예에 따른 단말기가 서버 환경에서 로봇을 제어하는 개략적 예시도이다.
도 4는 본 발명의 일 실시예에 따른 모션 컨트롤 시스템의 구조도이다.
1 is a schematic flowchart of a motion control system according to an embodiment of the present invention.
Figure 2 is an exemplary diagram of a process in which a terminal downloads a signal conversion program according to an embodiment of the present invention.
Figure 3 is a schematic illustration of a terminal controlling a robot in a server environment according to an embodiment of the present invention.
Figure 4 is a structural diagram of a motion control system according to an embodiment of the present invention.

본 발명의 목적 및 효과는 다음의 상세한 설명을 통하여 보다 분명해질 것이나 하기의 기재만으로 본 발명의 목적 및 효과가 제한되는 것은 아니다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. The purpose and effect of the present invention will become clearer through the following detailed description, but the purpose and effect of the present invention are not limited to the following description. Additionally, in describing the present invention, if it is determined that a detailed description of known technologies related to the present invention may unnecessarily obscure the gist of the present invention, the detailed description will be omitted.

이하, 첨부된 도면을 참조하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 이하에서 개시되는 실시 예에 한정되지 않는다. 또한 도면에서 본 발명을 명확하게 개시하기 위해서 본 발명과 관계없는 부분은 생략하였으며, 도면에서 동일하거나 유사한 부호들은 동일하거나 유사한 구성요소들을 나타낸다.Hereinafter, with reference to the attached drawings, embodiments of the present invention will be described in detail so that those skilled in the art can easily implement the present invention. However, the present invention may be implemented in various different forms and is not limited to the embodiments disclosed below. In addition, in order to clearly disclose the present invention in the drawings, parts not related to the present invention are omitted, and identical or similar symbols in the drawings indicate identical or similar components.

도 1은 본 발명의 일 실시예에 따른 모션 컨트롤 시스템의 개략적 순서도이다. 설명의 편의상 단말기(200)에는 모션컨트롤 프로그램(211)이 이미 설치되어 있다고 가정한다. 사용자는 로봇(100)을 제어하기 위해 서버(300)의 실행을 선택한다.1 is a schematic flowchart of a motion control system according to an embodiment of the present invention. For convenience of explanation, it is assumed that the motion control program 211 is already installed in the terminal 200. The user selects execution of the server 300 to control the robot 100.

단말기(200)는 서버(300)를 실행한다(S100). 실행된 서버(300)는 소정 반경의 로봇(100)과 교신을 수행하여 로봇(100)을 식별한다(S200). 그러면, 서버(300)는 교신된 로봇(100)으로부터 식별번호를 수신한다. The terminal 200 runs the server 300 (S100). The executed server 300 identifies the robot 100 by communicating with the robot 100 within a predetermined radius (S200). Then, the server 300 receives the identification number from the communicated robot 100.

식별번호가 수신되면, 서버(300)는 수신된 식별번호에 대응되는 신호변환 프로그램(212)의 설치 유무를 판단할 수 있다. 신호변환 프로그램(212)이 단말기(200)에 설치되지 않은 경우, 단말기(200)는 서버(300)로 식별번호를 전송하여 대응되는 신호변환 프로그램(212)을 다운받아 설치한다(S300). 만약, 식별번호에 대응되는 신호변환 프로그램(212)이 이미 설치된 경우, 기 설치된 신호변환 프로그램(212)을 교신된 로봇(100)의 전용 프로그램으로 선택한다.When the identification number is received, the server 300 can determine whether the signal conversion program 212 corresponding to the received identification number is installed. If the signal conversion program 212 is not installed in the terminal 200, the terminal 200 transmits an identification number to the server 300 to download and install the corresponding signal conversion program 212 (S300). If the signal conversion program 212 corresponding to the identification number is already installed, the already installed signal conversion program 212 is selected as a dedicated program for the communicated robot 100.

여기서, 서버(300)는 본 발명이 제공하는 모션 컨트롤 시스템의 공통 프로그램이다. 모션컨트롤 프로그램(211)은 개발자들의 다양한 프로그램 중에서 단말기(200)의 사용자에 의해 선택되어 설치된 프로그램이다. 그리고 신호변환 프로그램(212)은 단말기(200)에 교신되는 로봇(100)의 모델에 따라 선택적으로 설치된다.Here, the server 300 is a common program of the motion control system provided by the present invention. The motion control program 211 is a program selected and installed by the user of the terminal 200 from among various programs provided by developers. And the signal conversion program 212 is selectively installed according to the model of the robot 100 communicated to the terminal 200.

이후, 서버(300)는 모션컨트롤 프로그램(211)을 실행한다(S400). 실행된 모션컨트롤 프로그램(211)은 다양한 기구학적 형상의 로봇(100)들을 상대로 사용자의 입력을 지원하는 제어툴을 이용하여 제어신호를 입력받는다(S500). 여기서, 모션컨트롤 프로그램(211)은 화면, 음성, 버튼 등의 다양한 입력 방식에 기반되는 제어툴을 통해 입력받은 사용자의 입력 데이터를 제어신호으로 해석한다. 제어신호가 해석되면, 모션컨트롤 프로그램(211)은 상기 제어신호를 서버(300)로 리턴한다. 서버(300)는 상기 식별번호에 의해 선택된 신호변환 프로그램(212)의 실행을 호출하여 리턴받은 제어신호를 전달한다.Afterwards, the server 300 executes the motion control program 211 (S400). The executed motion control program 211 receives control signals using a control tool that supports user input for robots 100 of various kinematic shapes (S500). Here, the motion control program 211 interprets the user's input data received through a control tool based on various input methods such as screen, voice, and button into control signals. When the control signal is interpreted, the motion control program 211 returns the control signal to the server 300. The server 300 calls execution of the signal conversion program 212 selected by the identification number and delivers the returned control signal.

서버(300)에 의해 신호변환 프로그램(212)이 실행된다(S600). 실행된 신호변환 프로그램(212)은 서버(300)로부터 제어신호를 수신하고, 수신된 제어신호에 맞는 로봇제어신호로 변환한다(S700). 그러면, 신호변환 프로그램(212)은 변환된 로봇제어신호를 교신된 로봇(100)으로 전송하여 실행을 요청한다(S800).The signal conversion program 212 is executed by the server 300 (S600). The executed signal conversion program 212 receives a control signal from the server 300 and converts the received control signal into a robot control signal suitable for it (S700). Then, the signal conversion program 212 transmits the converted robot control signal to the communicated robot 100 and requests execution (S800).

이후, 로봇(100)은 수신된 로봇제어신호를 실행한다. 로봇제어신호에 의해 로봇(100)은 동작, 음성, 램프 등의 출력이 수반될 수 있고 컨텐츠가 실행될 수 있다. 로봇(100)은 실행 결과를 신호변환 프로그램(212)으로 전송한다. 신호변환 프로그램(212)은 전송된 실행 결과를 실행 호출에 대한 응답으로서 서버(300)로 리턴한다. 서버(300)는 리턴받은 실행 결과를 모션컨트롤 프로그램(211)으로 전달한다. 그러면, 모션컨트롤 프로그램(211)은 전달받은 실행 결과를 제어툴을 통해 사용자에게 안내한다.Afterwards, the robot 100 executes the received robot control signal. By robot control signals, the robot 100 can output actions, voices, lamps, etc., and content can be executed. The robot 100 transmits the execution result to the signal conversion program 212. The signal conversion program 212 returns the transmitted execution result to the server 300 as a response to the execution call. The server 300 transmits the returned execution result to the motion control program 211. Then, the motion control program 211 guides the user to the received execution results through the control tool.

도 2는 본 발명의 일 실시예에 따른 단말기(200)가 신호변환 프로그램(212)을 다운받는 과정의 예시도이다. 도 2를 참조하면, 로봇(100)은 식별번호를 저장하고, 단말기(200)와 교신하여 식별번호를 전송한다. 단말기(200)의 서버(300)는 교신된 로봇(100)으로부터 식별번호를 수신하여 소정 반경에 로봇(100)이 있음을 인식하고, 수신된 식별번호를 통해 로봇(100)의 기구학적 형상을 식별한다.Figure 2 is an exemplary diagram of a process in which the terminal 200 downloads the signal conversion program 212 according to an embodiment of the present invention. Referring to Figure 2, the robot 100 stores the identification number and transmits the identification number through communication with the terminal 200. The server 300 of the terminal 200 receives the identification number from the communicated robot 100, recognizes that the robot 100 is within a predetermined radius, and determines the kinematic shape of the robot 100 through the received identification number. Identify.

서버(300)의 식별부(310)는 단말기(200) 소정 반경의 적어도 하나 이상의 로봇(100)을 식별하여 화면에 표시하고, 사용자에 의해 선택된 어느 하나의 로봇(100)과 교신한다. 이 과정에서 식별부(310)는 교신된 로봇(100)으로부터 식별번호를 수신한다. 상기 식별번호는 로봇의 기구학적 형상과 모델을 식별하는 식별 정보이다.The identification unit 310 of the server 300 identifies at least one robot 100 within a predetermined radius of the terminal 200, displays it on the screen, and communicates with one robot 100 selected by the user. In this process, the identification unit 310 receives an identification number from the communicated robot 100. The identification number is identification information that identifies the kinematic shape and model of the robot.

서버(300)가 로봇(100)과 교신되면, 제1 실행부(340)는 메모리부(210)에 저장된 모션컨트롤 프로그램(211)을 실행한다.When the server 300 communicates with the robot 100, the first execution unit 340 executes the motion control program 211 stored in the memory unit 210.

여기서, 모션컨트롤 프로그램(211)은 복수 기구학적 형상의 로봇(100)에 대해 제어툴을 제공하고, 상기 인터페이스를 통해 사용자로부터 로봇(100)을 제어하기 위한 데이터를 입력받는다. 즉, 사용자는 기구학적 형상별 또는 기능별로 서로 다른 임의의 로봇(100)을 제어하더라도 동일한 모션컨트롤 프로그램(211)을 이용할 수 있다.Here, the motion control program 211 provides control tools for the robot 100 of multiple kinematic shapes and receives data for controlling the robot 100 from the user through the interface. In other words, the user can use the same motion control program 211 even if he or she controls different robots 100 by kinematic shape or function.

상기 제어툴은 다양한 로봇에서 실행 가능한 명령 및 그 명령의 입력 방식을 지원한다. 예를 들면, 모션컨트롤 프로그램(211)은 화면, 음성, 버튼 등의 입출력 방식을 이용하여 제어툴을 제공할 수 있다. 모션컨트롤 프로그램(211)이 사용자로부터 데이터를 입력받으면, 입력된 데이터를 분석하여 적어도 하나 이상의 명령에 해당하는 제어신호로 해석한다. 이후, 모션컨트롤 프로그램(211)은 해석된 제어신호를 서버(300)로 전달한다. 그러면, 서버(300)의 제2 실행부(332)는 신호변환 프로그램(212)을 실행하여 전달된 제어신호를 로봇제어신호로 변환하는 실행을 요청한다.The control tool supports commands that can be executed on various robots and input methods for those commands. For example, the motion control program 211 can provide control tools using input/output methods such as screens, voices, and buttons. When the motion control program 211 receives data input from the user, it analyzes the input data and interprets it as a control signal corresponding to at least one command. Afterwards, the motion control program 211 transmits the interpreted control signal to the server 300. Then, the second execution unit 332 of the server 300 requests execution of the signal conversion program 212 to convert the transmitted control signal into a robot control signal.

상세하게, 로봇(100)과 서버(300)의 식별부(310)가 교신되면(A), 식별부(310)는 로봇(100)으로부터 식별번호를 수신하여 로봇(100)의 기구학적 형상을 식별하고 인식한다(B). 서버(300)의 신호요청부(340)는 수신된 식별번호로 신호변환 프로그램(212)을 메모리부(210)로부터 조회한다. 신호변환 프로그램(212)의 조회가 실패되면, 신호요청부(340)는 서버(300)로 식별번호를 전송하여 신호변환 프로그램(212)의 다운로드를 요청한다(C). 그러면, 서버(300)의 신호변환 프로그램(212)이 다운로드되어 메모리부(210)에 설치된다(D).In detail, when the robot 100 and the identification unit 310 of the server 300 communicate (A), the identification unit 310 receives the identification number from the robot 100 and determines the kinematic shape of the robot 100. Identify and recognize (B). The signal request unit 340 of the server 300 searches the signal conversion program 212 from the memory unit 210 using the received identification number. If the inquiry of the signal conversion program 212 fails, the signal request unit 340 transmits an identification number to the server 300 and requests download of the signal conversion program 212 (C). Then, the signal conversion program 212 of the server 300 is downloaded and installed in the memory unit 210 (D).

도 3은 본 발명의 일 실시예에 따른 단말기(200)가 서버 환경에서 로봇(100)을 제어하는 개략적 예시도이다.Figure 3 is a schematic illustration of how the terminal 200 controls the robot 100 in a server environment according to an embodiment of the present invention.

도 3을 참조하면, 설명의 편의상 신호변환 프로그램(212)이 메모리부(210)에 이미 설치되었다고 가정한다. 로봇(100)과 서버(300)가 교신되면(A), 서버(300)의 식별부(310)가 로봇(100)으로부터 식별번호를 수신한다(B). 서버(300)의 신호선택부(320)가 수신된 식별번호로 대응되는 신호변환 프로그램(212)을 조회하는데 성공하면, 조회된 제어신호를 해당 로봇(100)의 신호변환 프로그램(212)로 선택한다(E). 따라서, 신호변환 프로그램(212)의 다운로드 과정(C, D)은 생략된다.Referring to FIG. 3, for convenience of explanation, it is assumed that the signal conversion program 212 is already installed in the memory unit 210. When the robot 100 and the server 300 communicate (A), the identification unit 310 of the server 300 receives an identification number from the robot 100 (B). If the signal selection unit 320 of the server 300 succeeds in querying the signal conversion program 212 corresponding to the received identification number, the searched control signal is selected as the signal conversion program 212 of the corresponding robot 100. Do (E). Therefore, the download processes (C, D) of the signal conversion program 212 are omitted.

로봇(100)과 단말기(200)가 교신을 완료한 이후에, 서버(300)의 제1 실행부(340)는 모션컨트롤 프로그램(211)을 실행한다. 실행된 모션컨트롤 프로그램(211)은 단말기(200)를 통해 제어툴을 제공하여 사용자로부터 데이터를 입력받는다. 모션컨트롤 프로그램(211)은 제어툴을 기반으로 사용자의 입력 데이터를 제어신호으로 해석한다. 모션컨트롤 프로그램(211)은 사용자의 입력 이벤트가 발생할 때마다 해석된 제어신호를 제1 실행부(340)로 전달한다. After the robot 100 and the terminal 200 complete communication, the first execution unit 340 of the server 300 executes the motion control program 211. The executed motion control program 211 provides a control tool through the terminal 200 and receives data input from the user. The motion control program 211 interprets the user's input data into control signals based on the control tool. The motion control program 211 transmits the interpreted control signal to the first execution unit 340 whenever a user input event occurs.

그러면, 서버(300)의 제2 실행부(332)는 식별번호와 대응하여 선택된 신호변환 프로그램(212)의 실행을 호출하여 상기 제어신호를 전달한다. 즉, 제어신호는 모션컨트롤 프로그램(211)으로부터 서버(300)의 중개를 통해 신호변환 프로그램(212)로 전달된다(F). 여기서, 모션컨트롤 프로그램(211)은 다양한 로봇의 기구학적 형상별 명령에 대해 공통된 제어신호으로 지원하는 통합 프로그램에 해당된다. 신규 로봇(100)이 출시되거나 또는 로봇(100)이 업그레이드될 때마다 사용자는 당해 로봇(100)을 제어하는 명령을 새롭게 배워야 한다. 하지만, 본 발명에서는 제어툴을 통해 공통된 제어신호로 로봇을 제어할 수 있어 사용자의 로봇 제어 환경은 크게 개선된다.Then, the second execution unit 332 of the server 300 calls execution of the signal conversion program 212 selected corresponding to the identification number and transmits the control signal. That is, the control signal is transmitted from the motion control program 211 to the signal conversion program 212 through the mediation of the server 300 (F). Here, the motion control program 211 corresponds to an integrated program that supports commands for each kinematic shape of various robots with common control signals. Whenever a new robot 100 is released or the robot 100 is upgraded, the user must newly learn commands to control the robot 100. However, in the present invention, the robot can be controlled with common control signals through a control tool, greatly improving the user's robot control environment.

실행 호출에 의해, 신호변환 프로그램(212)은 수신된 제어신호를 로봇제어신호로 변환하고, 로봇(100)으로 로봇제어신호를 전송하여 실행을 요청한다(G). 로봇(100)은 수신된 로봇제어신호를 실행한다. 이후, 신호변환 프로그램(212)은 로봇(100)으로부터 상기 로봇제어신호의 실행 결과를 수신하고, 수신된 실행 결과를 제2 실행부(332)로 리턴한다. 그리고 제1 실행부(340)가 리턴받은 상기 실행 결과를 모션컨트롤 프로그램(211)으로 전달하면, 모션컨트롤 프로그램(211)은 단말기(200)의 화면에 실행 결과를 출력하여 사용자에게 안내한다.By executing the call, the signal conversion program 212 converts the received control signal into a robot control signal and transmits the robot control signal to the robot 100 to request execution (G). The robot 100 executes the received robot control signal. Afterwards, the signal conversion program 212 receives the execution result of the robot control signal from the robot 100 and returns the received execution result to the second execution unit 332. And when the first execution unit 340 transfers the returned execution result to the motion control program 211, the motion control program 211 outputs the execution result on the screen of the terminal 200 and guides the user.

도 4는 본 발명의 일 실시예에 따른 모션 컨트롤 시스템의 구조도이다.Figure 4 is a structural diagram of a motion control system according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 단말기(200)는 서버 환경에서 로봇(100)을 제어한다. 상기 서버 환경은 단말기(200)에 설치된 제어 프로그램(213)에 의해 구축된다. 상기 단말기(200)는 유, 무선 통신망과 연결되어 각종 프로그램을 다운받아 설치하고, 설치된 프로그램을 실행하는 전자 기기이다. 단말기(200)의 예를 들면, 컴퓨터 단말, 스마트 폰, 스마트 패드, 태블릿, IP TV 등이 있다.The terminal 200 according to an embodiment of the present invention controls the robot 100 in a server environment. The server environment is established by the control program 213 installed in the terminal 200. The terminal 200 is an electronic device that is connected to a wired or wireless communication network, downloads and installs various programs, and executes the installed programs. Examples of the terminal 200 include a computer terminal, smart phone, smart pad, tablet, IP TV, etc.

상기 로봇(100)은 통신 기능, 이동 기능, 입력 기능 및 출력 기능 등을 가지며 로봇(100)의 기능, 형태, 기구학적 형상 등에 특별한 제한은 없다.The robot 100 has communication functions, movement functions, input functions, and output functions, and there are no particular limitations on the function, form, or kinematic shape of the robot 100.

여기서, 단말기(200)는 서버 환경을 기반으로 소정 반경의 로봇(100)과 교신하고, 교신된 로봇(100)을 인식하고, 인식된 로봇(100)을 소정 반경 장치로 제어한다.Here, the terminal 200 communicates with the robot 100 of a predetermined radius based on the server environment, recognizes the communicated robot 100, and controls the recognized robot 100 with a predetermined radius device.

상기 단말기(200)의 제어 프로그램(213)은 로봇과 사용자 사이에서 전체 서비스 실행의 과정을 제어하는 서버(300), 서버(300)에 의해 실행되어 제어신호를 입력받는 모션컨트롤 프로그램(211) 및 서버(300)에 의해 실행되어 상기 제어신호를 로봇제어신호로 변환하여 로봇(100)으로 전송하는 신호변환 프로그램(212)로 구성되어 서버 실행 환경을 제공한다.The control program 213 of the terminal 200 includes a server 300 that controls the entire service execution process between the robot and the user, a motion control program 211 that is executed by the server 300 and receives a control signal, and It is composed of a signal conversion program 212 that is executed by the server 300 to convert the control signal into a robot control signal and transmit it to the robot 100, providing a server execution environment.

여기서, 단말기(200)는 제어 프로그램(213)의 실행에 의해 소정 반경 로봇(100)의 기구학적 형상을 식별하고, 식별된 기구학적 형상에 맞게 로봇(100)의 실행을 제어한다. 상기 제어 프로그램(213)은 다양한 기구학적 형상의 로봇을 소정 반경 장치로서 활용하기 위해, 단말기(200)에 미리 설치될 것이 요구된다. 상기 제어 프로그램(213)은 적어도 하나 이상의 프로그램 단위에 해당되는 독립된 실행 모듈로 구성될 수 있다. 로봇(100)과 단말기(200)는 블루투스, 지그비 등과 같은 근거리 통신을 이용하여 교신될 수 있다.Here, the terminal 200 identifies the kinematic shape of the robot 100 with a predetermined radius by executing the control program 213, and controls the execution of the robot 100 according to the identified kinematic shape. The control program 213 is required to be installed in advance on the terminal 200 in order to utilize robots of various kinematic shapes as a predetermined radius device. The control program 213 may be composed of independent execution modules corresponding to at least one program unit. The robot 100 and the terminal 200 may communicate using short-distance communication such as Bluetooth or ZigBee.

단말기(200)에서 실행된 상기 제어 프로그램(213)은 교신된 로봇(100)의 기구학적 형상에 관계없이 통일된 인터페이스의 제어 화면을 출력하고, 출력된 제어 화면을 통해 사용자가 내린 명령을 해당 로봇(100)의 명령으로 변환하여 상기 로봇(100)으로 내린다.The control program 213 executed in the terminal 200 outputs a control screen of a unified interface regardless of the kinematic shape of the communicated robot 100, and executes the command given by the user through the output control screen to the corresponding robot. It is converted into a command (100) and given to the robot (100).

일반적으로, 로봇(100)은 로봇(100)에 구비된 입력 장치를 통해 사용자로부터 직접 제어신호를 입력받아 내부 명령으로 실행한다. 사용자는 로봇(100)의 기구학적 형상마다 대응되는 사용자 매뉴얼을 참조하여 당해 로봇(100)의 입력 장치로 제어신호를 입력한다. 그러나, 본 발명에서는 사용자가 로봇(100)에 구비된 입력 장치를 이용하여 직접 로봇(100)으로 명령을 입력하는 것이 아니라 상기 제어 프로그램(213)이 실행된 단말기(200)에서 제공되는 통일된 제어신호의 인터페이스를 통해 제어신호를 내린다. 때문에, 사용자는 다양한 기구학적 형상의 로봇에 기반되는 고유한 입력 방법을 모르더라도 단말기(200)에서 제공되는 공통된 제어툴을 통해 쉽게 로봇(100)을 제어하는 명령을 입력하는 것이 가능하다. 제어 프로그램(213)은 제어툴을 통해 입력된 제어신호를 로봇에서 실행 가능한 로봇제어신호로 변환한다.In general, the robot 100 receives control signals directly from the user through an input device provided in the robot 100 and executes them as internal commands. The user inputs a control signal to the input device of the robot 100 by referring to the user manual corresponding to each kinematic shape of the robot 100. However, in the present invention, the user does not directly input commands to the robot 100 using the input device provided in the robot 100, but provides unified control provided by the terminal 200 on which the control program 213 is executed. A control signal is sent through the signal interface. Therefore, even if the user does not know the unique input method based on robots of various kinematic shapes, it is possible to easily input commands to control the robot 100 through a common control tool provided in the terminal 200. The control program 213 converts the control signal input through the control tool into a robot control signal that can be executed by the robot.

이하에서는 상기 제어 프로그램(213)이 서버(300), 모션컨트롤 프로그램(211) 및 신호변환 프로그램(212)에 해당하는 3개의 독립된 프로그램으로 구성된다고 가정하여 각각의 프로그램을 설명한다.Hereinafter, each program will be described assuming that the control program 213 is composed of three independent programs corresponding to the server 300, the motion control program 211, and the signal conversion program 212.

상기 서버(300)는 로봇(100)과 교신을 수행하여 로봇(100)을 소정 반경 장치로서 인식하는 식별부(310), 인식된 로봇(100)의 기구학적 형상별 제어신호를 다운받는 신호요청부(340), 설치된 제어신호를 조회하여 로봇(100)의 신호변환 프로그램(212)으로 선택하는 신호선택부(320), 사용자의 제어 명령을 입력받기 위해 모션컨트롤 프로그램(211)을 실행하는 제1 실행부(340) 및 입력받은 제어신호으로 로봇(100)을 제어하기 위해 신호변환 프로그램(212)을 실행하는 제2 실행부(332)를 포함한다.The server 300 communicates with the robot 100 and provides an identification unit 310 that recognizes the robot 100 as a device with a predetermined radius, and a signal request to download control signals for each kinematic shape of the recognized robot 100. Unit 340, a signal selection unit 320 that searches for installed control signals and selects them as the signal conversion program 212 of the robot 100, and a control unit that executes a motion control program 211 to receive control commands from the user. It includes an execution unit 1 340 and a second execution unit 332 that executes a signal conversion program 212 to control the robot 100 using an input control signal.

상기한 본 발명의 바람직한 실시예는 예시의 목적으로 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경 및 부가가 가능할 것이며 이러한 수정, 변경 및 부가는 상기의 특허청구 범위에 속하는 것으로 보아야 할 것이다. 또한 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.The preferred embodiments of the present invention described above have been disclosed for illustrative purposes, and those skilled in the art will be able to make various modifications, changes, and additions within the spirit and scope of the present invention, and such modifications, changes, and additions will be possible. It should be considered as falling within the scope of the above patent claims. In addition, those skilled in the art to which the present invention pertains can make various substitutions, modifications and changes without departing from the technical spirit of the present invention. Therefore, the present invention is based on the above-described embodiments and the accompanying drawings. It is not limited.

상술한 예시적인 시스템에서, 방법들은 일련의 단계 또는 블록으로써 순서도를 기초로 설명되고 있지만, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당업자라면 순서도에 나타낸 단계들이 배타적이지 않고, 다른 단계가 포함되거나 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.In the above-described exemplary system, the methods are described on a flowchart basis as a series of steps or blocks; however, the invention is not limited to the order of the steps, and some steps may occur simultaneously or in a different order than other steps as described above. You can. Additionally, those skilled in the art will understand that the steps shown in the flowchart are not exclusive and that other steps may be included or one or more steps in the flowchart may be deleted without affecting the scope of the present invention.

100 : 로봇 200 : 단말기
210 : 메모리부 211 : 모션컨트롤 프로그램
212 : 신호변환 프로그램 213 : 제어 프로그램
300 : 서버 310 : 식별부
320 : 신호선택부 331 : 제1 실행부
332 : 제2 실행부 340 : 신호요청부
100: Robot 200: Terminal
210: Memory unit 211: Motion control program
212: signal conversion program 213: control program
300: Server 310: Identification unit
320: signal selection unit 331: first execution unit
332: second execution unit 340: signal request unit

Claims (5)

다양한 기구학적 형상의 로봇을 식별하여 제어하는 단말기; 및
상기 로봇과 교신하고, 상기 로봇의 기구학적 형상을 식별하고, 교신된 로봇에 대한 명령을 입력받기 위해 모션컨트롤 프로그램을 실행하는 서버;를 포함하되,
상기 단말기는,
상기 서버에 의해 실행되고, 다양한 기구학적 형상의 로봇을 지원하는 제어툴을 제공하고, 제어툴을 통해 제어신호를 입력받고, 입력된 제어신호를 상기 서버로 전달하는 모션컨트롤 프로그램; 및
상기 서버에 의해 식별된 로봇의 기구학적 형상에 맞게 실행되고, 전달받은 상기 제어신호를 식별된 기구학적 형상의 로봇제어신호로 변환하고, 변환된 로봇제어신호를 상기 로봇으로 전송하여 실행을 요청하고, 로봇의 실행 결과를 상기 서버로 전달하는 신호변환 프로그램;을 설치하여 실행하는 것을 특징으로 하는 다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템.
A terminal that identifies and controls robots of various kinematic shapes; and
A server that executes a motion control program to communicate with the robot, identify the kinematic shape of the robot, and receive commands for the communicated robot;
The terminal is,
A motion control program that is executed by the server, provides a control tool that supports robots of various kinematic shapes, receives control signals through the control tool, and transmits the input control signals to the server; and
It is executed according to the kinematic shape of the robot identified by the server, converts the received control signal into a robot control signal of the identified kinematic shape, and transmits the converted robot control signal to the robot to request execution. A motion control system applicable to robots of various kinematic shapes, characterized by installing and executing a signal conversion program that transmits the execution results of the robot to the server.
제 1 항에 있어서,
상기 단말기는,
상기 로봇의 기구학적 형상에 대응되는 적어도 하나 이상의 상기 모션컨트롤 프로그램; 및 상기 신호변환 프로그램이 다운되어 설치되는 메모리부;를 포함하는 것을 특징으로 하는 다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템.
According to claim 1,
The terminal is,
At least one motion control program corresponding to the kinematic shape of the robot; And a memory unit in which the signal conversion program is downloaded and installed. A motion control system applicable to robots of various kinematic shapes, comprising a.
제 1 항에 있어서,
상기 서버는,
소정 반경의 상기 로봇과 교신하고, 교신된 로봇으로부터 기구학적 형상을 식별하는 식별번호를 수신하여 상기 로봇을 인식하는 식별부;
인식된 로봇의 상기 식별번호에 대응하는 제어신호를 조회하고, 조회된 제어신호를 신호변환 프로그램에서 선택하는 신호선택부;
설치된 모션컨트롤 프로그램을 조회하고 실행하여 상기 제어신호를 실행 결과로서 수신하는 제1 실행부;
선택된 신호변환 프로그램에 상기 제어신호를 전달하여 실행하고, 로봇의 실행 결과를 전달받는 제2 실행부; 및
상기 로봇의 신호변환 프로그램이 조회되지 않으면, 상기 제어신호를 요청하여 다운로드 받는 신호요청부;를 포함하는 것을 특징으로 하는 다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템.
According to claim 1,
The server is,
an identification unit that communicates with the robot within a predetermined radius and recognizes the robot by receiving an identification number identifying a kinematic shape from the communicated robot;
A signal selection unit that searches for a control signal corresponding to the identification number of the recognized robot and selects the searched control signal from a signal conversion program;
a first execution unit that searches and executes the installed motion control program and receives the control signal as an execution result;
a second execution unit that transmits and executes the control signal to the selected signal conversion program and receives the execution result of the robot; and
A motion control system applicable to robots of various kinematic shapes, comprising a signal request unit that requests and downloads the control signal if the signal conversion program of the robot is not queried.
제 1 항에 있어서,
상기 신호변환 프로그램은,
상기 로봇의 기구학적 형상에 종속되어 개별 로봇에서 실행될 수 있는 로봇제어신호로 변환하도록 각각의 로봇의 기구학적 형상별로 개발되어 상기 단말기에 설치되는 것을 특징으로 하는 다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템.
According to claim 1,
The signal conversion program is,
A motion applicable to robots of various kinematic shapes, characterized in that it is developed for each robot's kinematic shape and installed in the terminal to be converted into a robot control signal that can be executed on an individual robot in dependence on the kinematic shape of the robot. control system.
제 1 항에 있어서,
상기 신호변환 프로그램은,
상기 제어신호과 대응되는 로봇제어신호가 저장된 데이터를 참조하여 상기 로봇제어신호로 변환 실행하는 것을 특징으로 하는 다양한 기구학적 형상의 로봇에 적용 가능한 모션 컨트롤 시스템.

According to claim 1,
The signal conversion program is,
A motion control system applicable to robots of various kinematic shapes, characterized in that the robot control signal corresponding to the control signal is converted into the robot control signal by referring to stored data.

KR1020220167090A 2022-12-02 2022-12-02 Motion control system applicable to robots with various kinematic shapes KR20240083292A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220167090A KR20240083292A (en) 2022-12-02 2022-12-02 Motion control system applicable to robots with various kinematic shapes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220167090A KR20240083292A (en) 2022-12-02 2022-12-02 Motion control system applicable to robots with various kinematic shapes

Publications (1)

Publication Number Publication Date
KR20240083292A true KR20240083292A (en) 2024-06-12

Family

ID=91469378

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220167090A KR20240083292A (en) 2022-12-02 2022-12-02 Motion control system applicable to robots with various kinematic shapes

Country Status (1)

Country Link
KR (1) KR20240083292A (en)

Similar Documents

Publication Publication Date Title
CN103051693B (en) Apparatus control method and mobile communication terminal
CN102684720B (en) For the method and apparatus carrying out radio communication in process control or monitoring of environmental
US9122269B2 (en) Method and system for operating a machine from the field of automation engineering
KR20150074375A (en) Smart device for controlling robot of various type in robot platform configuration and method thereof
CN105302364B (en) It is remotely controlled the method and system of Android device
CN109696832B (en) Method for supporting an installation process of an automation system
CN114327628A (en) Hierarchical control method, system, terminal device and storage medium
KR20240083292A (en) Motion control system applicable to robots with various kinematic shapes
KR100422069B1 (en) apparatus and method for cross development using wireless communication
KR20160091384A (en) Integrated circuit radio devices
KR101749023B1 (en) Electronic Device supporting the Internet of Things and Do It Yourself Platform
US11449318B2 (en) Application optimization method and electronic device supporting the same
JP2003348649A (en) Dynamic machine synthesis method for wireless device access and management
JP7478862B2 (en) ROBOT CONTROL DEVICE, ROBOT CONTROLLER, ROBOT CONTROL METHOD, TERMINAL DEVICE, AND TERMINAL CONTROL METHOD
CN101997905A (en) Computer system and control method thereof
JP2011186607A (en) Field device, setting method for the same, field device management method and program
CN102929159B (en) State control method and device for simulation model
CN109725621B (en) Secondary bus program online programming method based on 1553B bus and CAN bus
CN112272820B (en) Support device and recording medium for supporting program
CN114490134A (en) Event processing method, system, device, computer equipment and storage medium
KR20040069530A (en) Method and system for remote control to electronic products
WO2019210674A1 (en) Method for simulation manual operation smart device, system and apparatus
KR20240024878A (en) Cooperation control system for machine tool and working robot and method thereof
CN105681927A (en) Application sorting method and system, mobile terminal and smart television
JPH0546631A (en) Production line