KR20210090020A - 로봇 제어 시스템 및 방법 - Google Patents

로봇 제어 시스템 및 방법 Download PDF

Info

Publication number
KR20210090020A
KR20210090020A KR1020200003305A KR20200003305A KR20210090020A KR 20210090020 A KR20210090020 A KR 20210090020A KR 1020200003305 A KR1020200003305 A KR 1020200003305A KR 20200003305 A KR20200003305 A KR 20200003305A KR 20210090020 A KR20210090020 A KR 20210090020A
Authority
KR
South Korea
Prior art keywords
robot
area
driving speed
user
safe
Prior art date
Application number
KR1020200003305A
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 KR1020200003305A priority Critical patent/KR20210090020A/ko
Priority to PCT/KR2021/000030 priority patent/WO2021141336A1/ko
Publication of KR20210090020A publication Critical patent/KR20210090020A/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
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/06Safety devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • B25J9/046Revolute coordinate type
    • 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/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion

Landscapes

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

Abstract

본 개시는 로봇 제어 시스템 및 방법에 관한 것으로, 본 개시의 일 실시예에 따른 로봇 제어 시스템은, 지정된 동작으로 구동되고, 객체를 파지할 수 있는 로봇, 사용자의 위치를 감지하는 센서부, 상기 로봇이 파지하는 객체의 낙하 지점 또는 상기 로봇의 구동 속도를 계산하는 명령어들(instructions)이 저장된 메모리 및 상기 센서부 및 상기 메모리와 작동적으로(operatively) 연결되는 제어부를 포함하고, 상기 센서부는, 상기 센서부를 통해 감지된 상기 사용자의 위치에 기초하여, 가상의 위험 영역과 상기 위험 영역을 둘러싸는 가상의 안전 영역을 설정하고, 상기 제어부는, 상기 메모리에 저장된 명령어에 기초하여, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산하고, 상기 계산된 안전 구동 속도에 기초하여, 상기 로봇의 구동 속도를 제어하도록 구성될 수 있다.

Description

로봇 제어 시스템 및 방법{ROBOT CONTROL SYSTEM AND METHOD}
본 개시의 다양한 실시예들은 로봇 제어 시스템 및 방법에 관한 것이다.
협업 로봇(collaborative robot)(또는 '협동 로봇')은 인간과의 직접적인 상호 작용을 통해 사용자가 특정 작업을 수행하는 것을 도와주는 로봇을 의미한다.
각종 센서 기술, 로봇 기술 및 인공지능 기술 등이 혁신적으로 발달함에 따라, 협업 로봇의 개발이 활발하게 이루어지고 있으며, 협업 로봇이 적용되는 분야 또한 산업 분야에서 서비스 분야로 점차 확대되고 있다.
특히, 산업 분야에서 협업 로봇이 적용됨으로써, 인간은 작업 과정을 모니터링하고, 로봇이 신체적으로 부담이 되는 작업을 대신할 수 있으며, 그 결과 생산성 및 품질을 높이고, 작업자의 위험 부담을 줄일 수 있으므로, 산업 분야에서 협업 로봇에 대한 필요성이 점차 증가하고 있다.
협업 로봇이 산업 분야에 적용되는 경우, 작업 과정에서 사용자(또는 작업자)의 부상을 방지하는 차원에서 사용자와 협업 로봇 사이의 위치에 따라 협업 로봇의 구동 속도를 조절할 수 있다. 예를 들어, 사용자가 협업 로봇과 인접한 영역에 위치한 경우, 사용자의 부상을 방지하기 위하여 협업 로봇을 저속으로 구동하거나 구동을 멈출 수 있으며, 반대로 사용자가 협업 로봇으로부터 지정된 거리만큼 떨어진 위치에 위치한 경우, 협업 로봇을 고속으로 구동하여 생산성을 높일 수 있다.
다만, 협업 로봇이 고속으로 구동되는 동안 툴(tool) 파손 또는 공압 부족 등의 이유로 협업 로봇이 파지하고 있는 작업물을 놓치는 경우가 발생할 수 있으며, 그 결과 사용자가 협업 로봇으로부터 지정된 거리 이상 떨어져 있음에도 사용자가 부상당하는 경우가 종종 발생하였다.
작업물의 낙하에 의한 사용자의 부상을 방지하는 방안으로, 협업 로봇을 저속으로 구동하거나, 구동을 멈추는 영역을 더 넓게 설정하거나, 협업 로봇의 구동 속도를 감속하는 방안 등이 제안된 바 있다. 다만, 상술한 방안들의 경우, 사용자의 안전성을 확보할 수 있는 반면, 작업 생산성은 떨어질 수밖에 없으므로, 작업 생산성 및 사용자의 안정성을 동시에 확보할 수 있는 새로운 방안이 요구되는 실정이다.
이에, 본 개시는 작업물의 낙하 지점을 계산하고, 계산된 낙하 지점에 기초하여 협업 로봇의 구동 속도를 제어함으로써, 작업 생산성과 사용자의 안정성을 모두 확보할 수 있는 로봇 제어 시스템 및 방법을 제공하고자 한다.
본 개시의 일 실시예에 따른 로봇 제어 시스템은, 지정된 동작으로 구동되고, 객체를 파지할 수 있는 로봇, 사용자의 위치를 감지하는 센서부, 상기 로봇이 파지하는 객체의 낙하 지점 또는 상기 로봇의 구동 속도를 계산하는 명령어들(instructions)이 저장된 메모리 및 상기 센서부 및 상기 메모리와 작동적으로(operatively) 연결되는 제어부를 포함하고, 상기 센서부는, 상기 센서부를 통해 감지된 상기 사용자의 위치에 기초하여, 가상의 위험 영역과 상기 위험 영역을 둘러싸는 가상의 안전 영역을 설정하고, 상기 제어부는, 상기 메모리에 저장된 명령어에 기초하여, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산하고, 상기 계산된 안전 구동 속도에 기초하여, 상기 로봇의 구동 속도를 제어하도록 구성될 수 있다.
본 개시의 일 실시예에 따른 방법은, 복수 개의 바, 상기 복수 개의 바를 회전 가능하게 연결하는 조인트 및 상기 복수 개의 바의 일단에 결합되고, 객체를 파지하는 파지부를 포함하는 로봇의 구동을 제어하는 방법에 있어서, 사용자의 위치를 감지하는 위치 감지 동작, 감지된 상기 사용자의 위치에 기초하여, 가상의 위험 영역과 상기 위험 영역을 둘러싸는 가상의 안전 영역을 설정하는 영역 설정 동작, 상기 로봇이 파지하는 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산하는 안전 구동 속도 계산 동작 및 계산된 상기 안전 구동 속도에 기초하여, 상기 로봇의 구동 속도를 제어하는 제어 동작을 포함할 수 있다.
본 개시의 일 실시예에 따른 로봇은, 복수 개의 바, 상기 복수 개의 바를 회전 가능하게 연결하는 복수 개의 조인트 및 상기 복수 개의 바의 일단에 결합되고, 객체를 파지하는 파지부를 포함하고, 상기 로봇은, 상기 객체가 낙하하는 경우, 상기 객체의 낙하 지점이 상기 로봇과 사용자 사이의 거리에 기초하여 설정된 가상의 위험 영역 내에 위치하기 위한 안전 구동 속도로 구동될 수 있다.
본 개시의 일 실시예에 따른 로봇 제어 시스템은, 협업 로봇이 파지하고 있던 작업물이 낙하하는 경우에도 사용자의 안정성을 확보할 수 있다.
또한, 본 개시의 일 실시예에 따른 로봇 제어 시스템은, 협업 로봇을 최적의 속도로 구동함으로써, 사용자의 안전성을 확보하면서 작업 생산성까지 향상시킬 수 있다.
아울러, 본 개시의 일 실시예에 따른 로봇 제어 시스템은, 작업 공간 내에 안전 펜스의 유무에 관계없이 사용자의 안전성을 확보할 수 있다.
도 1은, 로봇과 사용자의 작업 과정을 나타내는 도면이다.
도 2는, 일 실시예에 따른 로봇을 나타내는 사시도이다.
도 3은, 일 실시예에 따른 로봇 제어 시스템의 구성 요소를 나타내는 도면이다.
도 4는, 일 실시예에 따라, 로봇을 제어하는 동작을 나타내는 순서도이다.
도 5는, 일 실시예에 따라, 로봇을 제어하는 동작을 나타내는 흐름도이다.
도 6a는, 일 실시예에 따라 사용자와 로봇의 위치에 따라 위험 영역과 안전 영역을 설정하는 동작을 설명하기 위한 도면이다.
도 6b는, 다른 실시예에 따라, 사용자와 로봇의 위치에 따라 위험 영역과 안전 영역을 설정하는 동작을 설명하기 위한 도면이다.
도 6c는, 일 실시예에 따라, 객체(object)의 낙하 지점을 계산하는 과정을 설명하기 위한 도면이다.
도 7은, 안전 펜스가 존재할 때, 로봇을 제어하는 동작을 나타내는 흐름도이다.
도 8은, 안전 펜스가 존재할 때, 객체(object)의 낙하 지점을 계산하는 과정을 설명하기 위한 도면이다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나","A 또는 B 중 적어도 하나,""A, B 또는 C," "A, B 및 C 중 적어도 하나,"및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
도 1은, 로봇(100)과 사용자(10)의 작업 과정을 나타내는 도면이고, 도 2는, 일 실시예에 따른 로봇을 나타내는 사시도이다.
도 1을 참조하면, 일 실시예에 따르면, 산업 현장에서 사용자(10)(또는 작업자)는 로봇(100)과 함께 협업하여 다양한 종류의 작업을 수행할 수 있다. 일 예시에서, 사용자(10)는 로봇(100)과 협업하여 부품을 조립하거나, 부품을 운반하는 등의 작업을 수행할 수 있다.
도 2를 참조하면, 일 실시예에 따르면, 사용자(10)와 협업 또는 협동 가능한 로봇(100)은, 협업 로봇(collaborative robot)(또는 "협동 로봇")으로 지칭될 수 있으며, 고정부(110), 복수 개의 바(bar)(120), 복수 개의 조인트(joint)(130), 파지부(140)를 포함할 수 있다.
일 실시예에 따르면, 로봇(100)은 고정부(110)를 통해 특정 영역에 고정될 수 있으며, 복수 개의 바(120)는 고정부(110)에 회전 가능하게 결합되어, 고정부(110)를 기준으로 회전 운동할 수 있다.
일 실시예에 따르면, 복수 개의 바(120)는 복수 개의 조인트(130)에 의해 회전 가능하게 결합될 수 있으며, 복수 개의 바(120)를 통해 로봇(100)의 다양한 동작이 구현될 수 있다. 일 예시에서, 복수 개의 바(120)는 제1 바(121), 제2 바(122), 제3 바(123), 제4 바(124), 제5 바(125), 제6 바(126)을 포함하고, 복수 개의 조인트(130)는 제1 조인트(131), 제2 조인트(132), 제3 조인트(133), 제4 조인트(134), 제5 조인트(135), 제6 조인트(136)를 포함할 수 있다. 제1 바(121)는 제1 조인트(131)를 통해 고정부(110)와 회전 가능하게 결합될 수 있으며, 이에 따라 제1 바(121)는 로봇(100)의 움직임에 따라 고정부(110)를 기준으로 지정된 회전 각도 범위 내에서 회전(예: 도 2의 rz 방향의 회전)할 수 있다. 이와 유사하게, 제2 바(122)는 제2 조인트(132)를 통해 제1 바(121)와 회전 가능하게 결합될 수 있고, 제3 바(123)는 제3 조인트(133)를 통해 제2 바(122)와 회전 가능하게 결합될 수 있다. 또한, 제4 바(124)는 제4 조인트(134)를 통해 제3 바(123)와 회전 가능하게 결합되고, 제5 바(125)는 제5 조인트(135)를 통해 제4 바(124)와 회전 가능하게 결합되며, 제6 바(126)는 제6 조인트(136)를 통해 제5 바(125)와 회전 가능하게 결합될 수 있다. 상술한 복수 개의 바(120)와 복수 개의 조인트(130)가 각각 6개로 구성됨에 따라, 로봇(100)은 6 자유도(6 -DOF: 6 degree of freedom) 운동(예: 도 2의 x, y, z, rx, ry, rz 방향의 운동)을 할 수 있으며, 그 결과 로봇(100)은 작업 과정에서 다양한 동작으로 운동할 수 있다.
다만, 상술한 실시예에서는 복수 개의 바(120)와 복수 개의 조인트(130)가 6개인 경우에 대해서만 언급하였으나 이에 한정되는 것은 아니며, 다른 실시예에 따르면 복수 개의 바(120)와 복수 개의 조인트(130)의 개수는 4개이거나, 7개, 8개일 수도 있다. 또한, 도 1 및 도 2에는 로봇(100)이 일종의 암(arm) 구조인 경우에 대해서만 도시되어 있으나, 다른 실시예에 따르면 로봇(100)은 암(arm) 구조 외에 다른 구조로 형성될 수도 있다.
일 실시예에 따르면, 파지부(140)는 복수 개의 바(120)의 일단에 결합되어, 객체(object)(20)(예: 부품)을 파지할 수 있다. 일 예시에서, 파지부(140)는 복수 개의 바(120) 중에서 제6 바(126)의 일단에 결합될 수 있으며, 그 결과 파지부(140)는 제6 바(126)와 함께 구동될 수 있다. 일 실시예에 따른 로봇(100)은 지정된 동작 및/또는 구동 속도로 구동하면서, 상술한 파지부(140)를 통해 다양한 작업을 수행할 수 있다. 예를 들어, 로봇(100)은 파지부(140)를 통해 객체(20)를 파지하고, 파지한 객체(20)를 지정된 위치에 운반하는 작업을 수행할 수 있다. 또한, 로봇(100)은 파지부(140)를 통해 객체(20)를 파지하고, 상술한 객체(20)를 다른 객체(미도시)에 조립할 수도 있다.
다만, 로봇(100)이 지정된 동작 및/또는 구동 속도로 구동되는 과정에서 로봇(100)과 사용자(10)이 충돌하거나, 로봇(100)이 파지하는 객체(20)와 사용자(10)가 충돌하여, 사용자(10)가 부상당하는 경우가 발생할 수 있다. 일 실시예에 따르면, 로봇 제어 시스템은 센서부(200) 및 제어부(미도시)를 포함할 수 있으며, 사용자(10)의 위치를 감지하고, 감지된 사용자(10)의 위치에 기초하여 로봇(100)의 구동을 제어함으로써, 로봇(100)에 의해 사용자(10)가 부상당하는 것을 방지할 수 있다.
일 실시예에 따르면, 센서부(200)는 작업 환경 내에 위치하여, 사용자(10)의 위치를 감지할 수 있고, 감지된 사용자(10)의 위치에 기초하여 가상의 위험 영역(danger area) 및 위험 영역을 둘러싸는 안전 영역(safety area)를 생성할 수 있다. 일 예시에서, 센서부(200)는 사용자(10)와 로봇(100) 사이의 거리에 기초하여 가상의 위험 영역 및/또는 안전 영역을 생성할 수 있으나, 이에 한정되는 것은 아니다.
일 실시예에 따르면, 제어부는 센서부(200)에서 가상의 위험 영역 및/또는 안전 영역이 설정된 후, 사용자(10)의 위치가 위험 영역 내에 존재하는지 또는 안전 영역에 존재하는지에 기반하여 로봇(100)의 구동을 제어할 수 있다. 제어부는, 일 예시에서, 사용자(10)가 안전 영역 내에 위치하는 것으로 판단되는 경우, 로봇(100)을 제1 구동 속도로 구동시킬 수 있다. 반면, 제어부는 사용자(10)가 위험 영역 내에 위치하는 것으로 판단되는 경우, 로봇(100)을 제1 구동 속도보다 느린 제2 구동 속도로 구동시키거나, 또는 로봇(100)의 구동을 멈춤으로써, 로봇(100)과 사용자(10)가 충돌하는 것을 방지할 수 있다.
즉, 제어부는 사용자(10)가 안전 영역 내에 위치하는 경우에는 로봇(100)을 상대적으로 빠른 속도로 구동시키고, 사용자(10)가 위험 영역 내에 위치하는 경우에는 로봇(100)을 상대적으로 느린 속도로 구동시키거나, 로봇(100)의 구동을 중지시킴으로써, 사용자(10)의 부상을 방지할 수 있다.
다만, 로봇(100)의 일부 구성(예: 파지부)이 손상되거나, 로봇(100)에 공급되는 공압이 부족하여 로봇(100)이 파지하고 있던 객체(20)를 놓치는 경우가 발생할 수 있다. 즉, 로봇(100)의 파지 실패로 인해 객체(20)가 로봇(100)에서 떨어지는 경우가 발생할 수 있으며, 그 결과 안전 영역 내에 위치하고 있는 사용자(10)도 로봇(100)에서 떨어지는 객체(20)에 의해 부상을 입는 경우가 발생할 수 있다.
이에, 일 실시예에 따른 제어부는, 로봇(100)이 파지하고 있는 객체(20)의 낙하 지점을 계산하고, 계산된 낙하 지점에 기초하여 로봇(100)의 구동 속도를 제어함으로써, 낙하하는 객체(20)에 의해 사용자(10)가 부상당하는 것을 방지할 수 있다. 다만, 이에 대한 구체적인 설명은 후술하도록 한다.
도 3은, 일 실시예에 따른 로봇 제어 시스템의 구성 요소를 나타내는 도면이다.
도 3을 참조하면, 일 실시예에 따른 로봇 제어 시스템은, 로봇(100)(예: 도 1, 도 2의 로봇(100)), 센서부(200)(예: 도 1의 센서부(200)), 메모리(300), 제어부(400)를 포함할 수 있다.
일 실시예에 따르면, 로봇(100)은 모션 플래닝(motion planning)에 의해 지정된 동작 및/또는 구동 속도로 구동될 수 있으며, 사용자(또는 '작업자')와 협업하여 다양한 작업을 수행할 수 있다. 로봇(100)은, 예를 들어, 복수 개의 바(예: 도 2의 복수 개의 바(120)), 복수 개의 바를 회전 가능하게 결합하는 복수 개의 조인트(예: 도 2의 복수 개의 조인트(130)), 복수 개의 바의 일단에 결합되는 파지부(예: 도 2의 파지부(140))를 포함할 수 있다. 상술한 로봇(100)은 파지부를 통해 객체(예: 도 1, 도 2의 객체(20))을 파지할 수 있으며, 그 결과 로봇(100)의 산업 현장에서 다양한 작업을 수행할 수 있다.
일 실시예에 따르면, 센서부(200)는 적어도 하나의 센서(210), 영역 설정부(220)를 포함할 수 있으며, 사용자의 위치를 감지하고, 감지된 사용자의 위치에 기초하여 가상의 위험 영역(danger area)과 안전 영역(safety area)을 설정할 수 있다.
일 예시에서, 적어도 하나의 센서(210)는 사용자의 위치를 감지하여, 사용자와 로봇(100) 사이의 거리를 측정할 수 있다. 적어도 하나의 센서(210)는, 예를 들어, 카메라 센서, 레이저 센서, 및/또는 위치 센서를 포함할 수 있으나 이에 한정되는 것은 아니며, 적어도 하나의 센서(210)는 사용자의 위치를 감지할 수 있다면 위치 센서 외에 다른 센서를 포함할 수도 있다.
일 예시에서, 영역 설정부(220)는 적어도 하나의 센서(210)에서 감지된 사용자의 위치에 기초하여, 가상의 위험 영역 및 안전 영역을 설정할 수 있다. 이 때, 위험 영역은 사용자와 로봇(100)의 협업 과정에서 사용자가 로봇(100)에 의해 부상을 당할 가능성이 있는 영역을 의미한다. 또한, 안전 영역은 위험 영역의 가장자리를 둘러싸도록 형성되는 영역을 의미하며, 사용자와 로봇(100) 사이의 거리가 상대적으로 멀리 떨어져 있어 사용자가 로봇(100)에 의해 부상당할 가능성이 높지 않은 영역을 의미한다. 일 예시에서, 영역 설정부(220)는 적어도 하나의 센서(210)에서 감지된 사용자와 로봇(100) 사이의 거리에 기초하여, 가상의 위험 영역 및 안전 영역을 설정할 수 있으며, 이에 대한 구체적인 설명은 후술하도록 한다.
일 실시예에 따르면, 메모리(300)는 제어부(400)를 구동시키기 위한 다양한 명령어들(instructions)이 저장되어 있을 수 있다. 일 예시에서, 메모리(300)에는 로봇(100)이 파지하고 있는 객체가 낙하할 때, 객체의 낙하 지점을 계산하는 제1 명령어(instruction), 낙하하는 객체에 의해 사용자가 부상당하지 않을 수 있는 로봇(100)의 안전 구동 속도를 계산하는 제2 명령어들(instructions)이 저장되어 있을 수 있다. 메모리(300)는 제어부(400)와 작동적으로(operatively) 연결될 수 있으며, 제어부(400)에 메모리(300)에 저장된 명령어들이 입력되는 경우, 제어부(400)는 명령어들에 기초하여 객체의 낙하 지점을 계산하거나, 로봇(100)의 안전 구동 속도를 계산할 수 있다. 일 예시에서, 메모리(300)는 제어부(400) 내에 위치할 수 있으나 이에 한정되는 것은 아니며, 다른 예시에서, 메모리(300)는 제어부(400) 외부에 위치할 수도 있다.
일 실시예에 따르면, 제어부(400)는 센서부(200) 및 메모리(300)와 작동적으로(operatively) 연결될 수 있으며, 센서부(200)에서 설정된 가상의 위험 영역과 안정 영역 및 메모리(300)에 저장된 명령어들에 기초하여 로봇(100)의 구동 동작 및/또는 구동 속도를 제어할 수 있다. 로봇(100)의 파지부(예: 도 2의 파지부(140))가 손상되거나, 로봇(100)에 공급되는 공압 부족으로 로봇(100)이 파지하고 있던 객체가 낙하할 수 있으며, 이에 따라 로봇(100)으로부터 낙하되는 객체에 의해 가상의 안전 영역 내에 위치하는 사용자가 부상당하는 경우가 발생할 수 있다. 이에 따라, 제어부(400)는 객체의 낙하 지점 및 객체가 위험 영역 내에 낙하하기 위한 로봇(100)의 안전 구동 속도를 계산하고, 로봇(100)을 안전 구동 속도로 제어함으로써, 낙하하는 객체의 의한 사용자의 부상을 방지할 수 있다. 다만, 제어부(400)의 객체의 낙하 지점을 계산하고, 로봇(100)의 안전 구동 속도를 계산하는 동작에 대한 구체적인 설명은 후술하도록 한다.
도 4는, 일 실시예에 따라, 로봇을 제어하는 동작을 나타내는 순서도이다.
도 4를 참조하면, 401 동작에서, 일 실시예에 따른 로봇 제어 시스템은 센서부(예: 도 1, 도 3의 센서부(200))를 통해 사용자의 위치를 감지할 수 있다. 일 예시에서, 센서부는 적어도 하나의 센서(예: 도 3의 적어도 하나의 센서(210)) 및/또는 영역 설정부(예: 도 3의 영역 설정부(220))를 포함할 수 있으며, 로봇 제어 시스템은 센서부의 적어도 하나의 센서를 통해 사용자의 위치를 감지할 수 있다.
402 동작에서, 일 실시예에 따른 로봇 제어 시스템의 영역 설정부는 401 동작에서 감지된 사용자의 위치에 기초하여, 가상(virtual)의 영역을 설정할 수 있다. 일 예시에서, 센서부의 영역 설정부는 401 동작을 통해 감지된 사용자의 위치에 기초하여, 사용자와 로봇 사이의 거리를 계산할 수 있으며, 계산된 사용자와 로봇 사이의 거리에 기초하여, 가상의 위험 영역과 안전 영역을 설정할 수 있다. 이 때, 위험 영역은 작업 과정에서 사용자가 로봇에 의해 부상당할 가능성이 높은 영역을 의미하고, 안전 영역은 사용자가 로봇에 의해 부상당할 가능성이 상대적으로 낮은 영역을 의미한다. 일 예시에서, 영역 설정부는, 로봇과 사용자 사이의 영역 중 로봇으로부터 지정된 거리 이내의 영역을 위험 영역으로 설정할 수 있다. 또한, 상술한 영역 설정부는 로봇으로부터 지정된 거리 이상 떨어져 있으며, 위험 영역의 적어도 일 영역을 둘러싸는 영역을 안전 영역으로 설정할 수 있다.
403 동작에서, 일 실시예에 따른 로봇 제어 시스템의 제어부는, 로봇이 파지하고 있는 객체가 낙하하는 경우, 객체의 낙하 지점이 402 동작에서 설정된 위험 영역 내에 위치하기 위한 안전 구동 속도를 계산할 수 있다. 일 예시에서, 제어부는 현재 파지부의 위치, 파지부의 구동 속도에 기초하여, 객체의 낙하 지점을 계산할 수 있으며, 계산된 객체의 낙하 지점이 402 동작에서 설정된 위험 영역 내에 위치하는지 또는 안전 영역 내에 위치하는지 판단할 수 있다. 객체의 낙하 지점이 안전 영역 내에 위치하는 경우, 사용자가 작업 과정에서 낙하하는 객체에 의해 부상당할 수 있으므로, 제어부는 객체의 낙하 지점이 위험 영역 내에 위치하기 위한 안전 구동 속도를 계산할 수 있다. 다만, 제어부의 객체의 낙하 지점을 계산하고, 안전 구동 속도를 계산하는 동작에 관한 구체적인 설명은 후술하도록 한다.
404 동작에서, 일 실시예에 따른 로봇 제어 시스템의 제어부는 403 동작에서 계산된 안전 구동 속도에 기초하여, 로봇의 구동 속도를 제어할 수 있다. 이에 따라, 일 실시예에 따른 로봇 제어 시스템은 파지부의 파손 및/또는 공압 부족 등의 요인으로 로봇이 파지하고 있던 객체가 낙하하는 경우, 객체의 낙하 지점이 위험 영역을 벗어나지 않도록 할 수 있다. 즉, 일 실시예에 따른 로봇 제어 시스템은 상술한 401 동작 내지 404 동작을 통해 로봇이 파지하고 있던 객체가 낙하하는 경우에도 사용자의 안전성을 확보할 수 있다.
도 5는, 일 실시예에 따라, 로봇을 제어하는 동작을 나타내는 흐름도이다.
도 6a는, 일 실시예에 따라 사용자와 로봇의 위치에 따라 위험 영역과 안전 영역을 설정하는 동작을 설명하기 위한 도면이며, 도 6b는, 다른 실시예에 따라, 사용자와 로봇의 위치에 따라 위험 영역과 안전 영역을 설정하는 동작을 설명하기 위한 도면이고, 도 6c는, 일 실시예에 따라, 객체(object)의 낙하 지점을 계산하는 과정을 설명하기 위한 도면이다.
이하, 도 5의 로봇을 제어하는 동작을 설명함에 있어, 도 6a 내지 도 6c를 참고하여 설명하도록 한다.
도 5, 도 6a, 도 6b 및 도 6c를 참조하면, 501 동작에서, 일 실시예에 따른 로봇 제어 시스템은 센서부(예: 도 1, 도 3의 센서부(200))를 통해 사용자(10)의 위치를 감지할 수 있다. 센서부는, 예를 들어, 적어도 하나의 센서(예: 도 3의 적어도 하나의 센서(210))를 포함할 수 있으며, 적어도 하나의 센서를 통해 사용자의 위치를 감지할 수 있다.
502 동작에서, 일 실시예에 따른 로봇 제어 시스템의 센서부는 501 동작에서 감지된 사용자(10)의 위치에 기초하여, 가상의 위험 영역(예: 도 6a의 D1 영역)과 가상의 안전 영역(예: 도 6a의 S1 영역)을 설정할 수 있다. 일 예시에서, 센서부는 상술한 적어도 하나의 센서 외에 영역 설정부(예: 도 3의 영역 설정부(220))를 더 포함할 수 있다. 영역 설정부는 501 동작에서 감지된 사용자의 위치에 기초하여, 사용자(10)와 로봇(100) 사이의 거리(예: 도 6a의 L1 또는 도 6b의 L2)를 계산할 수 있으며, 계산된 사용자(10)와 로봇(100) 사이의 거리에 기초하여 가상의 위험 영역(예: D1, D2 영역)과 가상의 안전 영역(예: S1, S2 영역)을 설정할 수 있다. 도 6a 및 도 6b를 참조하면, 영역 설정부는, 예를 들어, 사용자와 로봇 사이의 거리가 제1 길이(L1)인 경우, 사용자와 로봇 사이의 일정 영역을 가상의 제1 위험 영역(D1)으로 설정하고, 제1 위험 영역(D1)을 둘러싸는 일정 영역을 제1 안전 영역(S1)으로 설정할 수 있다. 또한, 영역 설정부는, 사용자와 로봇 사이의 거리가 제1 길이(L1)보다 짧은 제2 길이(L2)인 경우, 제1 위험 영역(D1)에 비해 상대적으로 좁은 영역을 가상의 제2 위험 영역(D2)으로 설정하고, 제2 위험 영역(D2)을 둘러싸는 일정 영역을 제2 안전 영역(S2)으로 설정할 수 있다. 즉, 영역 설정부는 사용자와 로봇 사이의 거리가 멀어질수록, 가상의 위험 영역의 면적을 크게 형성할 수 있다. 도 6a 및/또는 도 6b 상에는 위험 영역(예: D1, D2 영역)과 안전 영역(예: S1, S2 영역)이 사각형 형상으로 형성된 실시예에 대해서만 도시되어 있으나, 다른 실시예(미도시)에 따르면 위험 영역과 안전 영역은 원형, 타원형, 사각형 외의 다른 다각형 형상으로 형성될 수도 있다. 일 실시예에 따른 로봇 제어 시스템의 제어부는 502 동작에서 설정된 위험 영역(예: D1, D2 영역)과 안전 영역(예: S1, S2 영역)에 기초하여, 로봇(100)의 구동 속도를 제어할 수 있다. 일 예시에서, 사용자(10)가 502 동작에서 설정된 위험 영역 내로 접근하는 경우, 제어부는 로봇(100)의 구동 속도를 느리게 하여 사용자(10)의 부상을 방지할 수 있다. 반대로, 사용자(10)가 위험 영역에서 안전 영역으로 나가는 경우, 제어부는 로봇(100)의 구동 속도를 다시 빠르게 하여 작업 생산성을 높일 수 있다.
503 동작에서, 일 실시예에 따른 로봇 제어 시스템의 제어부는 메모리(예: 도 3의 메모리(300))에 저장된 명령어들(insturctions)에 기초하여, 파지부(140)의 위치 및/또는 파지부의 구동 속도를 계산할 수 있다. 파지부(140)는 복수 개의 바(예: 도 2의 복수 개의 바(120))의 일단에 결합되므로, 제어부는 복수 개의 바의 위치(
Figure pat00001
) 및/또는 복수 개의 바의 구동 속도(
Figure pat00002
)에 기초하여, 파지부(140)의 위치(p) 및/또는 파지부(140)의 구동 속도(v)를 실시간으로 계산할 수 있다.
일 실시예에 따르면, 제어부는 하기 수학식 1 및 수학식 2를 통해 파지부(140)의 위치(p) 및/또는 파지부의 구동 속도(v)를 계산할 수 있다.
Figure pat00003
Figure pat00004
이 때, 수학식 1의
Figure pat00005
는 파지부(140)의 x 방향(예: 도 6a의 x 방향)의 위치,
Figure pat00006
는 파지부(140)의 y 방향(예: 도 6a의 y 방향)의 위치,
Figure pat00007
는 파지부(140)의 z 방향(예: 도 6a의 z 방향)의 위치를 의미하며, f는 로봇(100)의 정기구학(forward kinematics) 식을 의미한다.
또한, 수학식 2의
Figure pat00008
는 파지부(140)의 x 방향(예: 도 6a의 x 방향)의 속도,
Figure pat00009
는 파지부(140)의 y 방향(예: 도 6a의 y 방향)의 속도,
Figure pat00010
는 파지부(140)의 z 방향(예: 도 6a의 z 방향)의 속도를 의미하고, J는 로봇(100)의 자코비안 행렬(jacobian matrix)를 의미하며,
Figure pat00011
은 복수 개의 바 중 각각의 바의 구동 속도를 나타내는 속도 벡터를 의미한다. 특히, 수학식 2의 자코비안 행렬 J는 하기 수학식 3과 같이 수학식 1의 로봇(100)의 정기구학 식 f를 편미분(partial derivatives)하여, 획득될 수 있다.
Figure pat00012
일 예시에서, 제어부는 수학식 1과 같이 복수 개의 바의 복수 개의 바(예: 도 2의 복수 개의 바(120))의 위치(
Figure pat00013
)를 정기구학을 통해 분석함으로써, 복수 개의 바의 일단에 결합된 파지부(140)의 위치(p)를 계산할 수 있다. 구체적으로, 로봇(100)의 설계 과정에서 복수 개의 바의 위치 및/또는 복수 개의 바의 연결 관계가 미리 설정되어 있으므로, 제어부는 복수 개의 바의 위치 및/또는 복수 개의 바의 연결 관계에 기초하여, 파지부(140)의 위치(p)를 계산할 수 있다.
일 예시에서, 제어부는 수학식 2와 같이 복수 개의 바의 위치 및/또는 복수 개의 바의 연결 관계에 따라 결정되는 자코비안 행렬(J) 및 복수 개의 바의 구동 속도(
Figure pat00014
)에 기초하여, 복수 개의 바의 일단에 결합된 파지부(140)의 구동 속도(v)를 계산할 수 있다.
도 6c를 참조하면, 504 동작에서, 일 실시예에 따른 로봇 제어 시스템의 제어부는, 503 동작에서 계산된 파지부(140)의 위치(p) 및 파지부(140)의 구동 속도(v)에 기초하여, 로봇(100)이 파지하고 있는 객체(20)가 낙하하는 경우, 객체(20)의 낙하 지점을 계산할 수 있다.
일 예시에서, 제어부는 하기 수학식 4을 통해 로봇(100)으로부터 낙하하는 객체(20)가 지면에 접촉할 때(예: 도 6c의 z=0일 때)까지 걸리는 시간(이하, '낙하 시간(t)'으로 지칭함)을 계산할 수 있다.
Figure pat00015
이 때, 수학식 4의 g는 도 6c의 -z축 방향의 중력 가속도를 의미한다.
구체적으로, 제어부는 504 동작에서 계산된 파지부(140)의 지면 방향(예: 도 6c의 +z 방향)의 위치(
Figure pat00016
및 구동 속도(
Figure pat00017
)에 기초하여, 객체(20)의 낙하 시간(t)를 계산할 수 있다.
일 예시에서, 제어부는 객체(20)의 낙하 시간(t)을 계산한 후, 하기 수학식 5를 통해 객체(20)의 낙하 지점(
Figure pat00018
)을 계산할 수 있다. 구체적으로, 상술한 제어부는 계산된 낙하 시간(t) 및 503 동작에서 계산된 파지부(140)의 구동 속도에 기초하여, 객체(20)의 낙하 지점의 구체적인 위치(
Figure pat00019
및/또는
Figure pat00020
)를 계산할 수 있다.
Figure pat00021
이 때, 수학식 5의
Figure pat00022
는 복수 개의 바의 위치(
Figure pat00023
) 및 복수 개의 바의 구동 속도(
Figure pat00024
)를 변수로 하는 객체(20)의 낙하 지점에 대한 함수를 의미할 수 있다.
505 동작에서, 일 실시예에 따른 제어부는 504 동작에서 계산된 객체의 낙하 지점이 위험 영역(예: 도 6c의 D 영역) 내에 위치하는지 또는 안전 영역(예: 도 6c의 S 영역) 내에 위치하는지 판단할 수 있다. 일 예시에서, 제어부는 하기 수학식 6을 통해 객체(20)의 낙하 지점의 위치를 파악할 수 있다.
Figure pat00025
Figure pat00026
이 때, 수학식 6의
Figure pat00027
또는
Figure pat00028
은 502 동작에서 설정된 위험 영역과 안전 영역 사이의 경계를 나타내며, 상기 경계의 외부에 위치하는 안전 영역은
Figure pat00029
으로 나타내고, 상기 경계의 내부에 위치하는 위험 영역은
Figure pat00030
으로 나타낼 수 있다.
일 예시에서, 제어부는
Figure pat00031
인 것으로 판단되는 경우, 객체(20)의 낙하 지점이 안전 영역(예: 도 6c의 S 영역) 내에 위치하는 것으로 판단할 수 있다. 반대로, 제어부는
Figure pat00032
인 것으로 판단되는 경우, 객체(20)의 낙하 지점이 위험 영역(예: 도 6c의 D 영역) 내에 위치하는 것으로 판단할 수 있다.
505 동작에서 객체(20)의 낙하 지점이 위험 영역(예: 도 6c의 D 영역) 내에 위치하는 것으로 판단되는 경우, 506 동작에서, 일 실시예에 따른 로봇 제어 시스템의 제어부는 별도의 구동 속도 변경 없이, 로봇(100)이 현재 구동 속도로 구동하도록 제어할 수 있다. 객체(20)의 낙하 예상 지점이 위험 영역 내에 위치하는 것으로 판단되는 경우, 사용자(10)가 로봇(100)의 구동 및/또는 로봇(100)으로부터 낙하하는 객체(20)에 의해 부상당할 가능성이 높지 않으므로, 제어부는 로봇(100)이 현재 상태로 구동하도록 제어할 수 있다.
이와 달리, 505 동작에서 객체(20)의 낙하 지점이 안전 영역(예: 도 6c의 S 영역) 내에 위치하는 것으로 판단되는 경우, 사용자(10)가 안전 영역(S 영역) 내에 위치하고 있더라도, 로봇(100)으로부터 낙하하는 객체(20)에 의해 부상당할 가능성이 있다.
이에 따라, 일 실시예에 따른 로봇 제어 시스템의 제어부는, 507 동작에서, 객체(20)의 낙하 지점이 위험 영역 내에 위치하기 위한 로봇(100)의 구동 속도(이하, '안전 구동 속도(
Figure pat00033
)'로 지칭함)를 계산할 수 있다. 제어부는 수치 계산법(numerical method)을 이용하여, 객체(20)의 낙하 지점이 위험 영역 내에 위치하기 위한 안전 구동 속도(
Figure pat00034
)를 계산할 수 있다. 예를 들어, 제어부는 뉴턴-랩슨 기법(Newton-Raphson method)를 이용하여, 현재 로봇(100)의 구동 위치(또는 복수 개의 바의 위치)에서 객체(20)의 낙하 지점이 위험 영역 내에 위치하기 위한 안전 구동 속도(
Figure pat00035
)를 계산할 수 있다. 본 개시에서 뉴턴-랩슨 기법은 현재
Figure pat00036
값에서,
Figure pat00037
의 접선을 구하고, 접선이
Figure pat00038
축과 만나는 지점으로
Figure pat00039
값을 이동시키면서,
Figure pat00040
이 되기 시작하는 로봇의 구동 속도 즉, 안전 구동 속도(
Figure pat00041
)를 계산하는 과정을 의미한다. 다만, 제어부는 상술한 뉴턴-랩슨 기법 외에도 다른 수치 계산법을 통해 안전 구동 속도(
Figure pat00042
)를 계산할 수도 있다.
508 동작에서, 일 실시예에 따른 로봇 제어 시스템의 제어부는, 로봇(100)이 507 동작에서 계산된 안전 구동 속도(
Figure pat00043
)로 구동하도록, 로봇(100)의 구동을 제어할 수 있다. 즉, 일 실시예에 따른 로봇 제어 시스템은 507 동작 및 508 동작을 통해 객체(20)의 예상 낙하 지점이 위험 영역 내에 위치하기 위한 안전 구동 속도(
Figure pat00044
)를 계산하고, 안전 구동 속도(
Figure pat00045
)에 기초하여 로봇(100)의 구동을 제어함으로써, 객체(20)의 낙하에 의한 사용자의 부상을 방지할 수 있다.
일 실시예에 따른 로봇 제어 시스템은 506 동작 또는 507 동작, 508 동작을 수행한 후, 로봇(100)의 움직임이 변화(예: 복수 개의 바의 위치의 변화)하는 경우, 503 동작, 504 동작, 505 동작을 재 수행하여, 객체(20)의 낙하 지점 및 로봇(100)의 안전 구동 속도를 다시 계산할 수 있다. 즉, 일 실시예에 따른 로봇 제어 시스템은 안전 펜스(30)가 존재하는 경우에도 안전 펜스가 없는 경우와 실질적으로 동일 또는 유사하게 객체의 낙하 지점을 계산할 수 있다.
도 7은, 안전 펜스가 존재할 때, 로봇을 제어하는 동작을 나타내는 흐름도이고, 도 8은, 안전 펜스가 존재할 때, 객체(object)의 낙하 지점을 계산하는 과정을 설명하기 위한 도면이다. 이하, 도 7의 로봇을 제어하는 동작을 설명함에 있어, 도 8을 참고하여 설명하도록 한다.
도 7 및 도 8을 참조하면, 일 실시예에 따른 로봇 제어 시스템은 앞서 설명한 바와 같이 안전 펜스(30)가 없는 경우(예: 도 6c 참조)는 물론, 로봇(100)과 인접한 영역 중 일부 영역에 안전 펜스(safety fence)(30)가 배치된 경우에도 로봇(100)의 구동을 제어할 수 있다.
701 동작에서, 일 실시예에 따른 로봇 제어 시스템의 제어부(예: 도 3의 제어부(400))는, 로봇(100)과 인접한 영역에 배치된 안전 펜스(30)의 존재를 고려하여 가상의 위험 영역과 가상의 안전 영역을 설정할 수 있다. 일 예시에서, 제어부는 가상의 위험 영역과 안전 영역을 설정하기에 앞서, 상술한 501 동작과 실질적으로 동일 또는 유사하게 사용자(예: 도 6a의 사용자(10))의 위치를 감지할 수 있다. 제어부는 감지된 사용자의 위치에 기초하여 가상의 위험 영역(예: 도 8의 D 영역, B 영역)과 가상의 안전 영역(예: 도 8의 S 영역)을 설정할 수 있다. 이 때, 로봇 제어 시스템의 제어부는, 앞선 실시예와 달리, 안전 펜스(30)에 의해 차단되는 영역(예: 도 8의 B 영역)을 고려하여, 위험 영역과 안전 영역을 설정할 수 있으며, 이에 대한 구체적인 설명은 후술하도록 한다.
702 동작에서, 일 실시예에 따른 로봇 제어 시스템의 제어부는 객체(20)의 낙하 지점을 계산할 수 있다. 일 예시에서, 제어부는 상술한 503 동작 및/또는 504 동작과 실질적으로 동일 또는 유사하게 로봇(100)(예: 도 6a의 로봇(100))의 파지부(140)(예: 도 6a의 파지부(140))의 위치 및/또는 파지부(140)의 구동 속도를 계산하고, 계산된 파지부(140)의 위치 및/또는 구동 속도에 기초하여 객체(20)(예: 도 6c의 객체(20))의 낙하 지점을 계산할 수 있다. 상술한 702 동작은 도 5의 504 동작과 실질적으로 동일 또는 유사하므로, 이하 중복되는 설명은 생략하도록 한다.
703 동작에서, 일 실시예에 따른 로봇 제어 시스템의 제어부는, 701 동작에서 계산된 객체(20)의 낙하 지점이 가상의 안전 영역 내에 위치하는지 또는 위험 영역 내에 위치하는지 여부를 판단할 수 있다. 다만, 로봇(100)과 인접한 영역에 안전 펜스(30)가 배치된 로봇 제어 시스템은, 앞선 실시예의 로봇 제어 시스템(예: 도 5의 로봇 제어 시스템)과 달리, 안전 펜스(30)의 존재를 고려하여 객체(20)의 낙하 지점이 위험 영역 내 또는 안전 영역 내에 위치하는지 판단할 수 있다.
객체(20)의 낙하 지점이 로봇(100)으로부터 지정된 거리 이상 떨어진 영역(예: 도 8의 S 영역)에 계산되더라도, 상기 낙하 지점이 안전 펜스(30)에 의해 차단되는 영역(예: 도 8의 B 영역) 내에 위치하는 경우, 안전 펜스(30)가 객체(20)의 낙하를 차단할 수 있다. 이 때, 안전 펜스(30)에 의해 차단되는 영역(B 영역)은 가상의 안전 영역(예: 도 8의 S 영역) 중에서도 로봇(100)과 안전 펜스(30)의 가장자리 사이의 연장선(예: 도 8의 E1, E2)에 의해 다른 안전 영역과 구분되는 영역을 의미한다. 즉, 사용자가 안전 펜스(30)에 의해 차단되는 영역(B 영역) 내에 위치하는 경우, 안전 펜스(30)가 낙하하는 객체(20)로부터 사용자를 보호할 수 있으므로, 사용자가 객체(20)의 낙하에 의해 부상당할 가능성은 높지 않을 수 있다. 이에 따라, 일 실시예에 따른 로봇 제어 시스템의 제어부는, 객체(20)의 낙하 지점이 로봇(100)으로부터 지정된 거리 이상 떨어진 영역(예: 도 8의 S 영역)에 위치하는 것으로 계산된 경우라도, 객체(20)의 낙하 지점이 안전 펜스(30)에 의해 차단되는 영역(B 영역) 내에 위치한다면, 객체(20)의 낙하 지점이 위험 영역 내에 위치하는 것으로 판단할 수 있다.
일 예시에서, 제어부는 하기 수학식 7에 기초하여, 객체(20)의 낙하 지점이 가상의 위험 영역(D 영역, B 영역) 내에 위치하는지 또는 가상의 안전 영역(S 영역) 내에 위치하는지 여부를 판단할 수 있다.
Figure pat00046
Figure pat00047
이 때,
Figure pat00048
또는
Figure pat00049
은 앞선 실시예와 달리, 안전 펜스(30)에 의해 차단되는 영역(B 영역)을 고려하여 설정된 가상의 안전 영역과 위험 영역 사이의 경계를 의미하며,
Figure pat00050
은 객체(20)의 낙하 지점의 좌표를 의미할 수 있다.
일 예시에서, 제어부는 상기 수학식 7과 같이
Figure pat00051
인 것으로 판단되는 경우, 객체(20)의 낙하 지점이 안전 영역(예: 도 8의 S 영역) 내에 위치하는 것으로 판단할 수 있다. 반대로, 제어부는
Figure pat00052
인 것으로 판단되는 경우, 객체(20)의 낙하 지점이 위험 영역(예: 도 8의 D 영역 및/또는 B 영역) 내에 위치하는 것으로 판단할 수 있다.
703 동작에서 객체(20)의 낙하 지점이 위험 영역(예: 도 8의 D 영역 및/또는 B 영역) 내에 위치하는 것으로 판단되는 경우, 704 동작에서, 일 실시예에 따른 제어부는 별도의 구동 속도 변경 없이, 로봇(100)이 현재 구동 속도로 구동하도록 제어할 수 있다. 객체(20)의 낙하 예상 지점이 위험 영역 내에 위치하는 것으로 판단되는 경우, 사용자(10)가 로봇(100)의 구동 및/또는 로봇(100)으로부터 낙하하는 객체(20)에 의해 부상당할 가능성이 높지 않다. 이에 따라, 제어부는 로봇(100)이 현재 상태로 구동하도록 제어하여, 작업의 생산성을 향상시킬 수 있다.
이와 달리, 703 동작에서 객체(20)의 낙하 지점이 안전 영역(예: 도 8의 S 영역)에 위치하는 것으로 판단되는 경우, 705 동작에서, 일 실시예에 따른 제어부는 객체(20)의 낙하 지점이 위험 영역 내에 위치하기 위한 안전 구동 속도(
Figure pat00053
)를 계산할 수 있다. 제어부는 수치 계산법(numerical method)를 이용하여, 객체(20)의 낙하 지점이 위험 영역 내에 위치하기 위한 안전 구동 속도(
Figure pat00054
)를 계산할 수 있다. 예를 들어, 제어부는 뉴턴-랩슨 기법(Newton-Raphson method)를 이용하여 객체(20)의 낙하 지점이 위험 영역 내에 위치하기 시작하는 안전 구동 속도(
Figure pat00055
)를 계산할 수 있으며, 705 동작은 도 5의 507 동작과 동일 또는 유사하므로, 이하 중복되는 설명은 생략하도록 한다.
706 동작에서, 일 실시예에 따른 제어부는 705 동작에서 계산된 안전 구동 속도(
Figure pat00056
)에 기초하여, 로봇(100)이 안전 구동 속도로 구동하도록 로봇(100)의 구동을 제어할 수 있다. 즉, 일 실시예에 따른 로봇 제어 시스템은 상술한 704 동작 및 705 동작을 통해 객체(20)의 예상 낙하 지점이 위험 영역 내에 위치하기 위한 안전 구동 속도(
Figure pat00057
)를 계산하고, 안전 구동 속도(
Figure pat00058
)에 기초하여 로봇(100)의 구동을 제어함으로써, 객체(20)의 낙하에 의한 사용자의 부상을 방지할 수 있다.
즉, 일 실시예에 따른 로봇 제어 시스템은, 상술한 701 동작 내지 706 동작을 통해 로봇(100)과 인접한 영역에 안전 펜스(30)가 존재하는 경우에도 객체(20)의 예상 낙하 지점을 계산하고, 객체(20)의 낙하에 의한 사용자의 부상을 방지할 수 있다. 또한, 로봇 제어 시스템은 객체(20)의 낙하 지점이 안전 펜스(30)에 의해 차단되는 영역인 경우에는 로봇(100)의 구동 속도를 감속하지 않음으로써, 작업의 생산성을 높일 수 있다.
본 개시의 일 실시예에 따른 로봇 제어 시스템은, 지정된 동작으로 구동되고, 객체(예: 도 1, 도 2의 객체(20))를 파지할 수 있는 로봇(예: 도 1, 도 2의 로봇(100)), 사용자(예: 도 1의 사용자(10))의 위치를 감지하는 센서부(예: 도 1, 도 3의 센서부(200)), 상기 로봇이 파지하는 객체의 낙하 지점 또는 상기 로봇의 구동 속도를 계산하는 명령어들(instructions)이 저장된 메모리(예: 도 3의 메모리(300)) 및 상기 센서부 및 상기 메모리와 작동적으로(operatively) 연결되는 제어부(예: 도 3의 제어부(400))를 포함하고, 상기 센서부는, 상기 센서부를 통해 감지된 상기 사용자의 위치에 기초하여, 가상의 위험 영역(예: 도 6a의 D 영역)과 상기 위험 영역을 둘러싸는 가상의 안전 영역(예: 도 6a의 S 영역)을 설정하고, 상기 제어부는, 상기 메모리에 저장된 명령어에 기초하여, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산하고, 상기 계산된 안전 구동 속도에 기초하여, 상기 로봇의 구동 속도를 제어하도록 구성될 수 있다.
일 실시예에 따르면, 상기 센서부(200)는, 사용자의 위치를 감지하는 적어도 하나의 센서(210), 및 상기 적어도 하나의 센서를 통해 감지된 위치에 기초하여, 상기 위험 영역과 상기 안전 영역을 설정하는 영역 설정부(220)를 포함할 수 있다.
일 실시예에 따르면, 상기 영역 설정부는, 상기 사용자와 상기 로봇 사이의 거리(예: 도 6a의 L1 또는 도 6b의 L2)에 기초하여, 상기 위험 영역과 상기 안전 영역을 설정하도록 구성될 수 있다.
일 실시예에 따르면, 상기 로봇은, 복수 개의 바(bar)(예: 도 2의 복수 개의 바(120)), 상기 복수 개의 바를 회전 가능하게 연결하는 복수 개의 조인트(joint)(예: 도 2의 복수 개의 조인트(130)) 및 상기 복수 개의 바의 일단에 결합되고, 객체를 파지하는 파지부(예: 도 2의 파지부(140))를 포함할 수 있다.
일 실시예에 따르면, 상기 제어부는, 상기 복수 개의 조인트의 위치 및 상기 복수 개의 조인트의 구동 속도에 기초하여, 상기 객체를 파지하는 상기 파지부의 위치 및 상기 파지부의 구동 속도를 계산하도록 구성될 수 있다.
일 실시예에 따르면, 상기 제어부는, 상기 계산된 파지부의 위치 및 상기 파지부의 구동 속도에 기초하여, 상기 로봇이 파지하는 객체의 낙하 지점을 계산하도록 구성될 수 있다.
일 실시예에 따르면, 상기 제어부는, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하는 것으로 판단되는 경우, 상기 로봇의 구동 속도를 변경하지 않도록 구성될 수 있다.
일 실시예에 따르면, 상기 제어부는, 상기 복수 개의 조인트의 위치 및 상기 복수 개의 조인트의 구동 속도가 변경되는 경우, 상기 객체의 낙하 지점을 다시 계산하도록 구성될 수 있다.
일 실시예에 따르면, 상기 제어부는, 수치 계산법(numerical method)을 이용하여, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산하도록 구성될 수 있다.
일 실시예에 따르면, 상기 로봇과 인접한 영역에 배치되고, 상기 객체가 지정된 영역 내에 낙하하는 것을 차단하는 안전 펜스(safety fence)(예: 도 8의 안전 펜스(30))를 더 포함할 수 있다.
일 실시예에 따르면, 상기 제어부는, 상기 객체의 낙하 지점이 상기 안전 펜스에 의해 차단되는 영역 내에 위치하는지 여부를 판단하고,
상기 객체의 낙하 지점이 상기 안전 펜스에 의해 차단되는 영역 내에 위치하는 것으로 판단되는 경우, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하는 것으로 판단하도록 구성될 수 있다.
본 개시의 일 실시예에 따른 방법은, 복수 개의 바, 상기 복수 개의 바를 회전 가능하게 연결하는 조인트 및 상기 복수 개의 바의 일단에 결합되고, 객체를 파지하는 파지부를 포함하는 로봇의 구동을 제어하는 방법에 있어서, 사용자의 위치를 감지하는 위치 감지 동작, 감지된 상기 사용자의 위치에 기초하여, 가상의 위험 영역과 상기 위험 영역을 둘러싸는 가상의 안전 영역을 설정하는 영역 설정 동작, 상기 로봇이 파지하는 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산하는 안전 구동 속도 계산 동작 및 계산된 상기 안전 구동 속도에 기초하여, 상기 로봇의 구동 속도를 제어하는 제어 동작을 포함할 수 있다.
일 실시예에 따르면, 상기 영역 설정 동작은, 상기 사용자와 상기 로봇 사이의 거리에 기초하여, 상기 위험 영역과 상기 안전 영역을 설정할 수 있다.
일 실시예에 따르면, 상기 안전 구동 속도 계산 동작은, 상기 복수 개의 조인트의 위치 및 상기 복수 개의 조인트의 구동 속도에 기초하여, 상기 객체를 파지하는 상기 파지부의 위치 및 상기 파지부의 구동 속도를 계산하는 동작을 포함할 수 있다.
일 실시예에 따르면, 상기 안전 구동 속도 계산 동작은, 상기 계산된 파지부의 위치 및 상기 파지부의 구동 속도에 기초하여, 상기 객체의 낙하 지점을 계산하는 동작을 더 포함할 수 있다.
일 실시예에 따르면, 상기 안전 구동 속도 계산 동작은, 상기 복수 개의 조인트의 위치 및 상기 복수 개의 조인트의 구동 속도가 변경되는 경우, 상기 객체의 낙하 지점을 다시 계산할 수 있다.
일 실시예에 따르면, 상기 안전 구동 속도 계산 동작은, 상기 객체의 낙하 지점이 안전 펜스에 의해 차단되는 영역 내에 위치하는지 여부를 판단하는 동작을 더 포함할 수 있다.
일 실시예에 따르면, 상기 안전 구동 속도 계산 동작은, 상기 객체의 낙하 지점이 상기 안전 펜스에 의해 차단되는 영역 내에 위치하는 것으로 판단되는 경우, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하는 것으로 판단할 수 있다.
일 실시예에 따르면, 상기 안전 구동 속도 계산 동작은, 수치 계산법(numerical method)을 이용하여, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산할 수 있다.
본 개시의 일 실시예에 따른 로봇(예: 도 2의 로봇(100))은, 복수 개의 바(예: 도 2의 복수 개의 바(120)), 상기 복수 개의 바를 회전 가능하게 연결하는 복수 개의 조인트(예: 도 2의 복수 개의 조인트(130)) 및 상기 복수 개의 바의 일단에 결합되고, 객체(예: 도 2의 객체(20))를 파지하는 파지부(예: 도 2의 파지부(140))를 포함하고, 상기 로봇은, 상기 객체가 낙하하는 경우, 상기 객체의 낙하 지점이 상기 로봇과 사용자 사이의 거리에 기초하여 설정된 가상의 위험 영역 내에 위치하기 위한 안전 구동 속도로 구동될 수 있다.
상술한 본 개시의 구체적인 실시예들에서, 개시에 포함되는 구성 요소는 제시된 구체적인 실시 예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 개시가 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편, 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (20)

  1. 로봇 제어 시스템에 있어서,
    지정된 동작으로 구동되고, 객체를 파지할 수 있는 로봇;
    사용자의 위치를 감지하는 센서부;
    상기 로봇이 파지하는 객체의 낙하 지점 또는 상기 로봇의 구동 속도를 계산하는 명령어들(instructions)이 저장된 메모리; 및
    상기 센서부 및 상기 메모리와 작동적으로(operatively) 연결되는 제어부;를 포함하고,
    상기 센서부는,
    상기 센서부를 통해 감지된 상기 사용자의 위치에 기초하여, 가상의 위험 영역과 상기 위험 영역을 둘러싸는 가상의 안전 영역을 설정하고,
    상기 제어부는,
    상기 메모리에 저장된 명령어에 기초하여, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산하고,
    상기 계산된 안전 구동 속도에 기초하여, 상기 로봇의 구동 속도를 제어하도록 구성되는, 로봇 제어 시스템.
  2. 청구항 1에 있어서,
    상기 센서부는,
    사용자의 위치를 감지하는 적어도 하나의 센서; 및
    상기 적어도 하나의 센서를 통해 감지된 위치에 기초하여, 상기 위험 영역과 상기 안전 영역을 설정하는 영역 설정부;를 포함하는, 로봇 제어 시스템.
  3. 청구항 2에 있어서,
    상기 영역 설정부는,
    상기 사용자와 상기 로봇 사이의 거리에 기초하여, 상기 위험 영역과 상기 안전 영역을 설정하도록 구성되는, 로봇 제어 시스템.
  4. 청구항 1에 있어서,
    상기 로봇은,
    복수 개의 바(bar);
    상기 복수 개의 바를 회전 가능하게 연결하는 복수 개의 조인트(joint); 및
    상기 복수 개의 바의 일단에 결합되고, 객체를 파지하는 파지부;를 포함하는, 로봇 제어 시스템.
  5. 청구항 4에 있어서,
    상기 제어부는,
    상기 복수 개의 조인트의 위치 및 상기 복수 개의 조인트의 구동 속도에 기초하여, 상기 객체를 파지하는 상기 파지부의 위치 및 상기 파지부의 구동 속도를 계산하도록 구성되는, 로봇 제어 시스템.
  6. 청구항 5에 있어서,
    상기 제어부는,
    상기 계산된 파지부의 위치 및 상기 파지부의 구동 속도에 기초하여, 상기 로봇이 파지하는 객체의 낙하 지점을 계산하도록 구성되는, 로봇 제어 시스템.
  7. 청구항 6에 있어서,
    상기 제어부는,
    상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하는 것으로 판단되는 경우, 상기 로봇의 구동 속도를 변경하지 않도록 구성되는, 로봇 제어 시스템.
  8. 청구항 6에 있어서,
    상기 제어부는,
    상기 복수 개의 조인트의 위치 및 상기 복수 개의 조인트의 구동 속도가 변경되는 경우, 상기 객체의 낙하 지점을 다시 계산하도록 구성되는, 로봇 제어 시스템.
  9. 청구항 6에 있어서,
    상기 제어부는,
    수치 계산법(numerical method)을 이용하여, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산하도록 구성되는, 로봇 제어 시스템.
  10. 청구항 6에 있어서,
    상기 로봇과 인접한 영역에 배치되고, 상기 객체가 지정된 영역 내에 낙하하는 것을 차단하는 안전 펜스(safety fence);를 더 포함하는, 로봇 제어 시스템.
  11. 청구항 10에 있어서,
    상기 제어부는,
    상기 객체의 낙하 지점이 상기 안전 펜스에 의해 차단되는 영역 내에 위치하는지 여부를 판단하고,
    상기 객체의 낙하 지점이 상기 안전 펜스에 의해 차단되는 영역 내에 위치하는 것으로 판단되는 경우, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하는 것으로 판단하도록 구성되는, 로봇 제어 시스템.
  12. 복수 개의 바, 상기 복수 개의 바를 회전 가능하게 연결하는 조인트 및 상기 복수 개의 바의 일단에 결합되고, 객체를 파지하는 파지부를 포함하는 로봇의 구동을 제어하는 방법에 있어서,
    사용자의 위치를 감지하는 위치 감지 동작;
    감지된 상기 사용자의 위치에 기초하여, 가상의 위험 영역과 상기 위험 영역을 둘러싸는 가상의 안전 영역을 설정하는 영역 설정 동작;
    상기 로봇이 파지하는 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산하는 안전 구동 속도 계산 동작; 및
    계산된 상기 안전 구동 속도에 기초하여, 상기 로봇의 구동 속도를 제어하는 제어 동작;을 포함하는, 방법.
  13. 청구항 12에 있어서,
    상기 영역 설정 동작은,
    상기 사용자와 상기 로봇 사이의 거리에 기초하여, 상기 위험 영역과 상기 안전 영역을 설정하는, 방법.
  14. 청구항 12에 있어서,
    상기 안전 구동 속도 계산 동작은,
    상기 복수 개의 조인트의 위치 및 상기 복수 개의 조인트의 구동 속도에 기초하여, 상기 객체를 파지하는 상기 파지부의 위치 및 상기 파지부의 구동 속도를 계산하는 동작;을 포함하는, 방법.
  15. 청구항 14에 있어서,
    상기 안전 구동 속도 계산 동작은,
    상기 계산된 파지부의 위치 및 상기 파지부의 구동 속도에 기초하여, 상기 객체의 낙하 지점을 계산하는 동작;을 더 포함하는, 방법.
  16. 청구항 15에 있어서,
    상기 안전 구동 속도 계산 동작은,
    상기 복수 개의 조인트의 위치 및 상기 복수 개의 조인트의 구동 속도가 변경되는 경우, 상기 객체의 낙하 지점을 다시 계산하는, 방법.
  17. 청구항 15에 있어서,
    상기 안전 구동 속도 계산 동작은,
    상기 객체의 낙하 지점이 안전 펜스에 의해 차단되는 영역 내에 위치하는지 여부를 판단하는 동작;을 더 포함하는, 방법.
  18. 청구항 17에 있어서,
    상기 안전 구동 속도 계산 동작은,
    상기 객체의 낙하 지점이 상기 안전 펜스에 의해 차단되는 영역 내에 위치하는 것으로 판단되는 경우, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하는 것으로 판단하는, 방법.
  19. 청구항 15에 있어서,
    상기 안전 구동 속도 계산 동작은,
    수치 계산법(numerical method)을 이용하여, 상기 객체의 낙하 지점이 상기 위험 영역 내에 위치하기 위한 상기 로봇의 안전 구동 속도를 계산하는, 방법.
  20. 로봇에 있어서,
    복수 개의 바;
    상기 복수 개의 바를 회전 가능하게 연결하는 복수 개의 조인트; 및
    상기 복수 개의 바의 일단에 결합되고, 객체를 파지하는 파지부;를 포함하고,
    상기 로봇은, 상기 객체가 낙하하는 경우, 상기 객체의 낙하 지점이 상기 로봇과 사용자 사이의 거리에 기초하여 설정된 가상의 위험 영역 내에 위치하기 위한 안전 구동 속도로 구동되는, 로봇.
KR1020200003305A 2020-01-09 2020-01-09 로봇 제어 시스템 및 방법 KR20210090020A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200003305A KR20210090020A (ko) 2020-01-09 2020-01-09 로봇 제어 시스템 및 방법
PCT/KR2021/000030 WO2021141336A1 (ko) 2020-01-09 2021-01-04 로봇 제어 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200003305A KR20210090020A (ko) 2020-01-09 2020-01-09 로봇 제어 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR20210090020A true KR20210090020A (ko) 2021-07-19

Family

ID=76788808

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200003305A KR20210090020A (ko) 2020-01-09 2020-01-09 로봇 제어 시스템 및 방법

Country Status (2)

Country Link
KR (1) KR20210090020A (ko)
WO (1) WO2021141336A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100542207B1 (ko) * 2003-07-10 2006-01-10 고등기술연구원연구조합 로봇의 작업자 감지 안전 시스템
JP5035768B2 (ja) * 2006-04-18 2012-09-26 独立行政法人産業技術総合研究所 人間ロボット共存作業用安全装置
DE102010063208A1 (de) * 2010-12-16 2012-06-21 Robert Bosch Gmbh Verfahren zum Betreiben einer Sicherungseinrichtung für eine Handhabungsvorrichtung, Sicherungseinrichtung für eine Handhabungsvorrichtung und Handhabungsvorrichtung
EP2890529A2 (en) * 2012-08-31 2015-07-08 Rethink Robotics Inc. Systems and methods for safe robot operation
JP2018176397A (ja) * 2017-04-21 2018-11-15 オムロン株式会社 ロボットシステム

Also Published As

Publication number Publication date
WO2021141336A1 (ko) 2021-07-15

Similar Documents

Publication Publication Date Title
JP3975959B2 (ja) ロボット動作規制方法とその装置およびそれを備えたロボット
US9821459B2 (en) Multi-joint robot having function for repositioning arm
EP1901151B1 (en) A method and a device for avoiding collisions between an industrial robot and an object
US6597971B2 (en) Device for avoiding interference
KR102115983B1 (ko) 컨테이너 내에 배치된 공작물을 자동으로 제거하기 위한 장치
KR101581095B1 (ko) 다관절형 로봇의 제어 장치, 제어 방법 및 제어 프로그램을 기록한 컴퓨터 판독가능한 기록 매체
CN108942880B (zh) 机器人系统
US11717964B2 (en) Control device for robot that works collaboratively with people
US20190160688A1 (en) Robot
CN109318244B (zh) 多关节机器人的控制装置
KR102418451B1 (ko) 로봇 제어 시스템
US10562185B2 (en) Robot system
JP6478771B2 (ja) 産業用ロボットの回避軌道生成装置および回避軌道生成方法
WO2010060475A1 (en) Industrial robot
JP2017007010A (ja) ロボット、制御装置およびロボットシステム
KR20210090020A (ko) 로봇 제어 시스템 및 방법
US11194316B2 (en) Controller and control method for collaborative robot
KR20230112356A (ko) 안전영역 자동감지 다관절 로봇
JP4289219B2 (ja) 人間介入型ロボットの制御装置
EP2900432B1 (en) Method for supervising a robot
KR101968751B1 (ko) 충돌 감지 장치, 그를 갖는 엔드 이펙터, 로봇 및 그를 이용한 충돌 감지 방법
JP7259487B2 (ja) 制御方法およびロボットシステム
US20230234227A1 (en) Robot control device
JP2023147723A (ja) ロボット制御装置、ロボット制御方法およびロボット制御プログラム
JP2021098248A (ja) ロボットシステムの制御方法、ロボットシステム、ロボットシステムを用いた物品の製造方法、制御プログラム及び記録媒体