KR20170103424A - 협업로봇의 충돌을 감지하는 장치 및 방법 - Google Patents
협업로봇의 충돌을 감지하는 장치 및 방법 Download PDFInfo
- Publication number
- KR20170103424A KR20170103424A KR1020160026324A KR20160026324A KR20170103424A KR 20170103424 A KR20170103424 A KR 20170103424A KR 1020160026324 A KR1020160026324 A KR 1020160026324A KR 20160026324 A KR20160026324 A KR 20160026324A KR 20170103424 A KR20170103424 A KR 20170103424A
- Authority
- KR
- South Korea
- Prior art keywords
- command
- collision
- speed
- motor
- current
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
- B25J9/1666—Avoiding collision or forbidden zones
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/1605—Simulation of manipulator lay-out, design, modelling of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1674—Programme controls characterised by safety, monitoring, diagnostic
- B25J9/1676—Avoiding collision or forbidden zones
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Manipulator (AREA)
Abstract
본 명세서는 협업로봇의 충돌을 감지하는 장치 및 방법에 관한 것이다. 이러한 본 명세서는 외부로부터 모터를 제어하기 위한 지령 위치, 지령 속도 및 지령 가속도에 관한 정보를 입력받고, 상기 모터로부터 현재 위치 및 현재 속도에 관한 정보를 수신하며, 상기 지령 위치 및 상기 현재 위치를 기반으로 위치 오차를 계산하는 지령값 입력부, 상기 지령값 입력부로부터 상기 지령 위치, 상기 지령 속도, 상기 지령 가속도, 현재 위치 및 현재 속도에 관한 정보를 수신하여 이들 중 적어도 하나를 기반으로 PID(proportional integral derivative) 제어 신호를 생성하는 PID 제어부, 상기 지령 위치, 상기 지령 속도, 상기 지령 가속도 중 적어도 하나를 기반으로 충돌 임계값을 계산하는 임계값 계산부, 상기 위치 오차 및 상기 충돌 임계값을 기반으로 충돌 발생 여부를 판단하는 충돌 판정부 및 상기 PID 제어 신호에 의해 동작하며, 현재 위치 및 현재 속도에 관한 정보를 상기 지령값 입력부로 전송하는 상기 모터를 포함하는 충돌 감지 장치를 제공한다.
Description
본 발명은 산업용 로봇에 관한 것으로서, 보다 상세하게는 협업로봇의 충돌을 감지하는 장치 및 방법에 관한 것이다.
일반적으로, 로봇(Robot) 산업은 나날이 발전하고 있으며 가까운 미래에 국가 경쟁력을 결정하는 중요한 산업 중 하나가 될 것으로 예상된다. 이에 따라 로봇 산업과 로봇 기술의 대중화를 위한 가정용 로봇을 비롯하여, 교육용 및 완구용 로봇에 대한 관심이 증대되고 있다. 현재 다수의 업체가 산업용 로봇뿐만 아니라 가정, 교육, 완구용 로봇에 대한 관심이 증대되고 있다. 현재 다수의 업체가 산업용 로봇뿐만 아니라 가정, 교육, 완구 로봇을 중심으로 로봇 산업화에 크게 기여하고 있으며 향후에 지능형 로봇에 대한 투자 및 기술 개발이 가속화될 것으로 기대된다.
일반적으로 산업용 로봇은 대부분 고하중을 다루는 작업에 사용되며, 고출력의 엑츄에이터를 사용하고 있다. 이 중에서, 협업로봇은 도 1에 도시된 바와 같이 작업자와 근거리 작업을 하기 때문에 작업자의 안전에 대한 규정이 필요하다. 이에 따라 ISO 10218에는 로봇의 안전성에 대한 규정이 마련되어 있다. 상기 ISO 10218은 현재 개정작업이 진행 중이며, 로봇과 인간의 협동작업, 다중로봇 협동작업에 관한 규정 등이 신설되었다. 상기 ISO 10218은 파트 1(Part 1)과 파트 2(Part 2)의 2개의 파트로 나뉘어져 있다. 파트 1에서는 주로 로봇 자체에 관한 안정성, 즉, 로봇 제조자가 준수하여야 할 안전에 관하여 규정되어 있다. 예를 들어, 플랜지 속도는 0.25ms-1을 초과하지 말 것, 최대동력은 80W 이하일 것, 최대 정적 하중은 150N 이하일 것 등이 규정되어 있다. 파트 2에서는 로봇이 시스템에 통합되는 것과 관련한 안정성, 즉, 로봇 제조자, 통합자, 사용자가 모두 준수하여야 할 안전에 관하여 규정되어 있다.
특히, 협업 로봇은 로봇과 작업자가 근거리 작업을 하기 때문에 최근에는 협업 로봇의 안전에 대한 중요성이 대두되고 있다. 협업 로봇에 대한 안정성을 강화하기 위해서는 보다 신뢰성 있는 충돌 감지 기술이 필요한 실정이다.
본 발명의 기술적 과제는 안전성이 강화된 협업로봇의 충돌을 감지하는 장치 및 방법을 제공함에 있다.
본 발명의 다른 기술적 과제는 충돌감지의 신뢰성이 향상된 협업로봇의 충돌을 감지하는 장치 및 방법을 제공함에 있다.
본 발명의 또 다른 기술적 과제는 연산이 단순하고, 제작비용이 절감된 협업로봇의 충돌을 감지하는 장치 및 방법을 제공함에 있다.
본 발명의 일 양태에 따르면 협업로봇의 충돌 감지 장치가 제공된다. 상기 충돌 감지 장치는 외부로부터 모터를 제어하기 위한 지령 위치, 지령 속도 및 지령 가속도에 관한 정보를 입력받고, 상기 모터로부터 현재 위치 및 현재 속도에 관한 정보를 수신하며, 상기 지령 위치 및 상기 현재 위치를 기반으로 위치 오차를 계산하는 지령값 입력부, 상기 지령값 입력부로부터 상기 지령 위치, 상기 지령 속도, 상기 지령 가속도, 현재 위치 및 현재 속도에 관한 정보를 수신하여 이들 중 적어도 하나를 기반으로 PID(proportional integral derivative) 제어 신호를 생성하는 PID 제어부, 상기 지령 위치, 상기 지령 속도, 상기 지령 가속도 중 적어도 하나를 기반으로 충돌 임계값을 계산하는 임계값 계산부, 상기 위치 오차 및 상기 충돌 임계값을 기반으로 충돌 발생 여부를 판단하는 충돌 판정부 및 상기 PID 제어 신호에 의해 동작하며, 현재 위치 및 현재 속도에 관한 정보를 상기 지령값 입력부로 전송하는 상기 모터를 포함하여 구현된다.
본 발명의 다른 양태에 따르면, 상기 PID 제어부로부터 PID 제어 신호를 수신하고, 상기 충돌 판정부로부터 충돌 발생 여부에 관한 정보를 수신하여 이들을 기반으로 상기 모터를 제어하는 피드백 제어부를 더 포함하여 구현된다.
본 발명의 또 다른 양태에 따르면, 상기 지령값 입력부로부터 위치오차 값을 획득하여 미리 설정된 컷-오프(cut off) 주파수보다 높은 주파수 성분을 차단하는 저대역 필터를 더 포함하여 구현된다.
본 발명의 또 다른 양태에 따르면, 상기 모터로부터 상기 현재 위치 및 현재 속도에 관한 정보를 인코딩하여 상기 지령값 입력부로 전송하는 인코더를 더 포함하여 구현된다.
본 발명의 또 다른 양태에 따르면 협업로봇의 충돌 감지 장치에 의해 수행되는 충돌감지 방법이 제공된다. 상기 충돌 감지 방법은 모터의 지령 위치, 지령 속도, 지령 가속도, 현재 위치, 현재 속도를 획득하는 단계, 상기 지령 위치 및 상기 현재 위치를 기반으로 위치 오차를 계산하고, 상기 지령 속도 및 상기 현재 속도를 기반으로 속도오차를 계산하는 단계, 상기 지령 위치, 상기 지령 속도, 상기 지령 가속도를 기반으로 PID(proportional integral derivative) 제어 신호를 생성하는 단계, 상기 지령 위치, 상기 지령 속도, 상기 지령 가속도 및 로봇 암의 무게 중 어느 하나 이상을 기반으로 충돌 임계값을 계산하는 단계, 상기 지령 위치 및 상기 충돌 임계값을 기반으로 충돌이 발생하였는지 여부를 판단하는 단계, 상기 PID 제어 신호 및 상기 충돌이 발생하였는지 여부를 기반으로 모터 제어 신호를 생성하여 상기 모터를 제어하는 단계 및 상기 모터의 현재 위치 및 현재 속도를 피드백하는 단계를 포함하여 구현된다.
본 발명에 따르면 충돌 감지의 신뢰성이 향상된 협업로봇을 위한 충돌감지 장치 및 방법이 제공된다.
또한, 연산이 단순하고, 제작비용이 절감된 협업로봇의 충돌을 감지하는 장치 및 방법이 제공된다.
도 1은 협업로봇이 작업자와 함께 작업을 수행하는 예시를 나타낸다.
도 2(a)는 2차 폴리노미얼(polynomial) 모델을 사용하여 모터의 경로를 설정하는 방법의 일례를 나타낸다.
도 2(b)는 3차 폴리노미얼(polynomial) 모델을 사용하여 모터의 경로를 설정하는 방법의 일례를 나타낸다.
도 3은 본 발명의 일 실시예에 따른 협업로봇의 충돌을 감지하는 장치를 나타낸다.
도 4는 충돌이 발생하지 않은 임의의 조인트에서 측정된 위치, 속도, 가속도, 위치오차, 속도오차의 일례를 나타낸다.
도 5는 충돌이 발생한 임의의 조인트에서 측정된 위치, 속도, 가속도, 위치오차, 속도오차의 일례를 나타낸다.
도 6은 충돌이 발생한 임의의 조인트에서 측정된 위치, 속도, 가속도, 위치오차, 속도오차의 다른 일례를 나타낸다.
도 7은 본 발명의 일 실시예에 따른 협업로봇의 충돌을 감지하는 장치의 블록도이다.
도 8은 도 7의 저대역 필터(740)에 의해 추출된 신호의 일례를 나타낸다.
도 9는 본 발명의 일 실시예에 따른 협업로봇의 충돌을 감지하는 방법의 흐름도이다.
도 2(a)는 2차 폴리노미얼(polynomial) 모델을 사용하여 모터의 경로를 설정하는 방법의 일례를 나타낸다.
도 2(b)는 3차 폴리노미얼(polynomial) 모델을 사용하여 모터의 경로를 설정하는 방법의 일례를 나타낸다.
도 3은 본 발명의 일 실시예에 따른 협업로봇의 충돌을 감지하는 장치를 나타낸다.
도 4는 충돌이 발생하지 않은 임의의 조인트에서 측정된 위치, 속도, 가속도, 위치오차, 속도오차의 일례를 나타낸다.
도 5는 충돌이 발생한 임의의 조인트에서 측정된 위치, 속도, 가속도, 위치오차, 속도오차의 일례를 나타낸다.
도 6은 충돌이 발생한 임의의 조인트에서 측정된 위치, 속도, 가속도, 위치오차, 속도오차의 다른 일례를 나타낸다.
도 7은 본 발명의 일 실시예에 따른 협업로봇의 충돌을 감지하는 장치의 블록도이다.
도 8은 도 7의 저대역 필터(740)에 의해 추출된 신호의 일례를 나타낸다.
도 9는 본 발명의 일 실시예에 따른 협업로봇의 충돌을 감지하는 방법의 흐름도이다.
이하, 본 명세서에서는 일부 실시 예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 명세서의 실시 예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
협업 로봇은 작업의 수행 중에 작업자와 접촉이 이루어지는 경우 로봇각 축의 파라미터에 큰 변화량이 발생하기 때문에 이를 활용하여 충돌 감지를 구현할 수 있다. 협업 로봇의 충돌 감지를 구현하기 위하여 동역학이 활용될 수 있다. 예를 들어, 로봇의 원하는 조인트각(desired thetha) 를 움직이기 위해 요구되는 토크(desired torque)는 아래의 수학식 1에 의하여 계산될 수 있다.
수학식 1에서 는 관성 행렬(inertial matrix), 는 코리올리/원심력(Coriolis/centrifugal) 행렬(matrix), 는 중력항, 는 마찰항을 나타낸다. 하지만, 실제로 충돌이 발생하는 경우는 충돌에 의한 토크()를 고려해야 한다. 충돌에 의한 토크()는 실제 모터의 전류로부터 값을 측정하고, 이 값을 이용하여 도출할 수 있다. 상기 충돌에 의한 토크()는 아래 수학식 2를 이용하여 값으로부터 계산될 수 있다.
여러 개의 조인트를 가진 다축 로봇의 경우, 상기 수학식 1 및 수학식 2에 비하여 훨씬 복잡한 연산을 수행하여야 한다. 따라서, 실시간으로 다축 로봇의 충돌에 의한 토크를 계산하는 많은 어려움이 따른다. 또한, 수학식 1의 마찰항인 은 주위환경, 마모 정도 등에 따라 변화하여 정밀한 수식모델을 구성하는 데 한계가 있다. 이 때, 각각의 조인트에 토크센서를 부착하면 복잡한 계산식이 필요 없고 정밀한 토크 측정이 가능하여 활용도가 높다. 다만, 여러 개의 토크센서를 부착하는 데에 따른 로봇의 비용이 증가하는 단점이 있다.
이하에서는 복잡한 수식모델을 피하고 제작비용을 절감할 수 있는 본 발명의 실시예에 따른 충돌감지 장치 및 방법에 관하여 설명한다.
도 2는 로봇을 제어하기 위한 경로설정 방법의 일례를 나타낸다. 도 2(a)는 2차 폴리노미얼(polynomial) 모델을 사용하여 모터의 경로를 설정하는 방법을 나타내고, 도 2(b)는 3차 폴리노미얼(polynomial) 모델을 사용하여 모터의 경로를 설정하는 방법을 나타낸다. 도 2(a) 및 도 2(b)를 참조하면, 로봇을 각 위치에서 다음 목표 지점까지 이동하도록 제어하기 위하여 각 시간별로 위치, 속도, 가속도 등을 설정하여 모터를 제어할 수 있다.
도 3은 본 발명의 일 실시예에 따른 협업로봇의 충돌 감지 장치(300)를 나타낸다. 도 3을 참조하면, 충돌 감지 장치(300)는 지령값 입력부(310), 추적 오차 계산부(320), 피드포워드 토크(Feed forward Torque) 계산부(330), PID(proportional integral derivative) 보상부(340), 토크 합산부(350), 전류 제어부(360), 인코더(370), 피드백 제어부(380)를 포함한다.
지령값 입력부(310)는 모터를 제어하기 위한 위치, 속도, 가속도에 대한 정보를 외부로부터 입력받는다.
추적 오차 계산부(320)는 지령값 입력부(310)로부터 모터를 제어하기 위한 지령 위치(), 지령 속도(), 지령 가속도()에 대한 정보를 수신하고, 인코더(370)로부터 모터의 실제 위치(), 실제 속도()를 수신하여, 지령 위치와 실제 위치를 비교한 값으로부터 위치오차를 계산하고, 지령 속도와 실제 속도를 비교한 값으로부터 속도오차를 계산한다.
피드포워드 토크 계산부(330)는 지령값 입력부(310)를 통하여 입력된 위치, 속도, 가속도의 값으로부터 피드포워드 토크 값을 계산하여 토크 합산부(350)로 전송한다.
PID 보상부(340)는 추적 오차 계산부(320)로부터 수신되는 제어 값과 미리 설정된 PID(proportional integral derivative) 이득 스케줄(gain schedule)을 기반으로 PID 제어 값을 생성하고, 토크 합산부(350)로 전송한다.
토크 합산부(350)는 피드포워드 토크 계산부(330)로부터 수신된 피드포워드 토크 값과 PID 보상부(340)로부터 수신된 PID 제어 값을 합산하여 전류 제어부(360)로 전송한다.
전류 제어부(360)는 토크 합산부(350)로부터 수신된 토크 값을 기반으로 로봇의 암을 제어하기 위한 모터에 인가할 전류 값을 계산하여 인코더(370)로 전송한다.
인코더(370)는 전류 제어부(360)로부터 수신된 전류 값을 인코딩하여 로봇 암에 구비된 모터를 제어하고, 모터의 실제 위치를 측정하여 추적 오차 계산부(320)로 피드백한다.
상기와 같은 충돌 감지 장치(300)의 구성에 의하여, 외부로부터 입력된 지령 위치와 실제 위치 간의 위치오차 값을 계산할 수 있고, 상기 위치오차 값을 이용하여 로봇에 충돌이 발생하였는지 여부를 판단할 수 있다.
도 4는 도 3에 따른 모터 제어기에서 충돌이 발생하지 않은 임의의 조인트에서 측정된 위치(), 속도(), 가속도(), 위치오차(), 속도오차()의 일례를 나타낸다. 모터 제어기의 내부에서는 모터에 부가하는 전류를 계산하기 위하여 위치, 속도, 가속도를 이용한다. 모터에 충격이 발생하는 경우에는 상기 세 가지 값이 급격하게 변화한다. 속도 및 가속도의 경우에는 측정된 디지털화된(digitalize)된 위치값을 미분하여 측정하기 때문에 기본적으로 제어기의 사이클(cycle)과 비슷한 고주파수(high frequency)의 변화로 나타나지만, 상기 속도 및 가속도의 측정을 통해서는 충돌이 있는 경우와 없는 경우를 구분하기 어렵다. 하지만, 도 5 및 도 6에 나타난 것과 같이 위치오차를 참조하면 충돌이 있는 경우와 충돌이 없는 경우를 명확하게 구분할 수 있다. 따라서, 위치 오차의 크기가 미리 설정된 충돌 임계값(collision threshold)보다 클 경우에는 충돌이 발생한 것으로 판단하고, 이에 따른 적절한 안전 조치를 취할 수 있다.
도 5는 도 3에 따른 모터 제어기에서 충돌이 발생한 임의의 조인트에서 측정된 위치(), 속도(), 가속도(), 위치오차(), 속도오차()의 일례를 나타낸다. 도 5를 참조하면, 시간 t=2.3sec 일 때 충돌이 발생하였고, 이 때 위치오차()가 미리 설정된 충돌 임계값인 66을 초과하게 되어 이로부터 충돌이 발생한 것으로 판단될 수 있다.
도 6은 도 3에 따른 모터 제어기에서 충돌이 발생한 임의의 조인트에서 측정된 위치(), 속도(), 가속도(), 위치오차(), 속도오차()의 다른 일례를 나타낸다. 도 6을 참조하면, 시간 t=0~6 sec의 구간에서는 위치오차()가 상승하는 구간이 발생한다. 특히, t=5.5sec일 때 가속도의 지령값이 크고 위치오차도 일반적인 구간에 비하여 크지만, 위치 오차가 상기 시간에서의 미리 설정된 충돌 임계값인 216보다는 작아 충돌이 발생하지 않은 것으로 판단될 수 있다. 반면에 t=10.5sec에서는 가속도의 지령값과 속도의 지령값은 낮지만 위치 오차가 상기 시간에서의 미리 설정된 충돌 임계값인 21보다 크기 때문에 충돌이 발생한 것으로 판단될 수 있다.
위치 오차의 크기는 로봇이 작업하는 공작물의 무게, 경로의 위치, 속도 등에 따라 변한다. 충돌이 발생하는 경우에도 마찬가지로 공작물의 무게, 경로의 위치, 속도 등에 따라 변한다. 본 발명에서는 임계값은 가속도 명령의 크기에 따라 아래 수학식 3과 같이 구성될 수 있다.
수학식 3에서 n은 충돌의 민감도 값을 의미하고, 일반적으로 2-5의 값으로 설정될 수 있다. 상기 n의 값이 작은 값으로 설정되면 충돌 임계값이 작아지기 때문에 제어기는 충돌에 대하여 민감하게 구성될 수 있지만, 너무 작은 값으로 설정하는 경우 충돌하지 않은 경우를 충돌한 것으로 잘못 판단될 수 있다. 반대로 상기 n의 값이 큰 값으로 설정되면 충돌 임계값이 커지기 때문에 제어기는 충돌에 대하여 민감하지 않게 구성되어, 너무 큰 값으로 설정하는 경우 충돌을 인식하지 못할 우려가 있다.
도 7은 본 발명의 일 실시예에 따른 협업로봇을 위한 충돌 감지 장치의 블록도이다.
도 7을 참조하면, 충돌 감지 장치(700)는 지령값 입력부(710), PID 제어부(720), 저역 필터(Low pass filter, 730), 임계값 계산부(740), 충돌 판정부(750), 피드백 제어부(feed back controller, 760), 모터(770), 로봇 암(780), 인코더(790)를 포함하여 구성된다.
지령값 입력부(710)는 모터(770)를 제어하기 위한 지령 위치, 지령 속도, 지령 가속도에 대한 정보를 외부로부터 입력받고, 인코더(790)로부터 모터(770)의 현재 위치 및 현재 속도에 관한 정보를 수신한다. 지령값 입력부(710)는 모터(770)의 지령 위치와 현재 위치를 비교하여 위치오차를 계산하고, 지령 속도와 현재 속도를 비교하여 속도오차를 계산한다.
PID(proportional integral derivative) 제어부(720)는 지령값 입력부(710)를 통하여 입력된 지령 위치, 지령 속도, 지령 가속도 및 인코더(790)로부터 입력된 모터의 현재 위치, 현재 속도의 값으로부터 PID 제어 신호를 생성하고, 피드백 제어부(760)로 전송한다. 상기 PID 제어 신호는 모터(770)에 인가하기 위한 전류 신호일 수 있다.
충돌 임계값 계산부(730)는 지령 위치, 지령 속도, 지령 가속도 또는 로봇 암의 무게 중 하나 이상을 기반으로 충돌 임계값을 계산한다. 상기 지령 위치, 지령 속도, 지령 가속도는 지령 입력부(710)로부터 수신될 수 있으며, 로봇 암의 무게는 시스템에 미리 설정될 수 있다. 충돌 임계값은 수학식 3에 의하여 계산될 수 있다. 상기 수학식 3에서 n의 값은 미리 설정된 값이 사용될 수도 있고, 지령값 입력부(710)로 입력된 지령 위치, 지령 속도, 로봇 암의 무게 중 하나 이상의 값을 기반으로 설정될 수 있다. 예를 들어, 상기 지령 속도가 빠른 경우에는 n의 값이 작은 값으로 설정되어 충돌에 보다 민감하게 반응하고, 지령 속도가 느린 경우에는 n의 값이 큰 값으로 설정되어 충돌에 덜 민감하게 반응하도록 설정될 수 있다. 한편, 상기 충돌 임계값은 로봇 암의 무게에 따라 서로 다른 값으로 설정될 수도 있다. 예를 들어, 로봇 암의 무게가 무거운 경우에는 n의 값이 작은 값으로 설정되어 충돌에 보다 민감하게 반응하고, 로봇 암의 무게가 가벼운 경우에는 n의 값이 큰 값으로 설정되어 충돌에 덜 민감하게 반응하도록 설정될 수 있다. 한편, 상기 충돌 임계값은 가속도 지령 값에 따라 서로 다른 값으로 설정될 수도 있다.
저대역 필터(low pass filter, 740)는 지령값 입력부(710)로부터 수신된 위치오차 값 중에서 미리 설정된 컷-오프(cut off) 주파수 이하의 주파수 성분은 모두 통과시키고 컷-오프 주파수보다 높은 주파수 성분은 모두 차단한다. 따라서, 지령값 입력부(710)에 의해 계산된 위치오차로부터 실제 충돌에 의한 위치오차의 변화만을 추출한다. 상기 저대역 필터(740)는 아래의 수학식 4를 이용하여 입력 신호로부터 출력 신호를 도출한다.
수학식 4에서 xi는 입력 신호, yi는 출력 신호, t는 샘플링 간격(sampling interval), fc는 컷오프 주파수(cutoff frequency)를 나타낸다. 도 8은 저대역 필터(740)에 의해 추출된 신호의 일례를 나타낸다. 도 8의 예시에서 t=1msec, fc=10Hz, a=0.6, 충돌 임계값(collision threshold)=0.06으로 설정되었다. 도 8을 참조하면, 저대역 필터(740)에 의해 컷오프 주파수(cutoff frequency)보다 높은 주파수 성분이 차단되어 실제 충돌이 발생하지 않은 경우에 충돌을 잘못 감지하는 오류가 제거된다. 도 8의 예시에서는 t=2.5sec 부근에서 위치오차가 충돌 임계값을 초과하으므로, 이 때 충돌이 발생한 것으로 감지될 수 있다. 구성에 따라, 상기 저대역 필터(740)는 생략될 수도 있다.
충돌 판정부(750)는 저대역 필터(740)에 의해 추출된 위치오차와 충돌 임계값 계산부(730)에 의해 계산된 충돌 임계값을 기반으로 충돌이 발생하였는지 여부를 판단한다. 위치 오차의 절대값이 충돌 임계값보다 큰 경우에는 충돌이 발생한 것으로 판단하고, 위치 오차의 절대값이 충돌 임계값보다 작거나 같은 경우에는 충돌이 발생하지 않은 것으로 판단할 수 있다. 한편, 상기 충돌 판정부(750)는 속도오차를 임의의 충돌 임계값과 비교하여 충돌이 발생하였는지 여부를 판단할 수도 있고, 충돌이 발생하였는지 여부를 판단하는 보조적인 수단으로 상기 속도오차가 사용될 수 있다. 예를 들어, 상기 위치 오차의 절대값이 충돌 임계값보다 크고, 상기 속도 오차의 절대값이 임의의 다른 충돌 임계값보다 큰 경우를 모두 만족하거나, 이 둘 중 한가지 조건을 만족하는 경우에 충돌이 발생한 것으로 판단할 수도 있다. 충돌 판정부(750)는 충돌이 발생하였는지에 대한 여부를 지시하는 정보를 피드백 제어부(760)로 전송한다.
피드백 제어부(760)는 PID(proportional integral derivative) 제어부(720)로부터 PID 제어 값을 수신하고, 충돌 판정부(750)로부터 충돌 발생 여부에 대한 정보를 수신하여, 모터(770)를 제어한다. 예를 들어, 피드백 제어부(760)는 충돌이 발생하지 않은 경우에는 PID 제어부(720)로부터 수신한 전류 값을 모터에 인가하여 모터를 제어하고, 충돌이 발생한 경우에는 모터에 전류를 인가하지 않아 모터를 정지시킬 수 있다.
모터(770)는 피드백 제어부(760)로부터 수신한 제어 신호를 기반으로 회전을 수행하여 로봇 암(780)을 동작시킨다. 한편, 모터(770)는 현재 위치, 현재 속도에 관한 정보를 인코더(790)로 전송한다.
인코더(790)는 모터(770)로부터 수신한 모터의 현재 위치 및 현재 속도에 관한 정보를 인코딩하여 지령값 입력부(710)로 전송한다. 상기 지령값 입력부(710)로 전송된 모터의 현재 위치 및 현재 속도에 대한 정보는 위치 오차를 계산하는 데에 사용될 수 있다. 한편, 인코더(790)는 생략될 수 있으며, 이 때 모터(770)의 현재 위치, 현재 속도에 관한 정보는 모터(700)로부터 지령값 입력부(710)로 직접 전송될 수 있다.
상기 충돌 감지 장치(700)의 구성에 의하면, 외부로부터 입력된 지령 위치와 실제 위치 간의 위치오차 값을 계산할 수 있고, 위치오차 값과 충돌 임계값을 비교하여 로봇에 충돌이 발생하였는지 여부를 판단할 수 있다.
도 9는 본 발명의 일 실시예에 따른 협업로봇을 위한 충돌 감지 장치에서 수행되는 충돌 감지 방법의 흐름도이다.
도 9를 참조하면, 충돌 감지 장치(700)는 모터를 제어하기 위한 지령 위치, 지령 속도, 지령 가속도, 모터의 현재 위치 및 현재 속도에 관한 정보를 획득한다(S910). 상기 지령 위치, 지령 속도, 지령 가속도에 대한 정보는 외부 입력에 의해 획득될 수 있고, 모터의 현재 위치 및 현재 속도에 대한 정보는 인코더(790)로부터 획득될 수 있다.
다음으로, 충돌 감지 장치(700)는 위치오차 및 속도오차를 계산한다(S920). 오치오차는 지령 위치와 실제 위치를 비교하여 계산될 수 있고, 속도오차는 지령 속도와 실제 속도를 비교하여 계산될 수 있다.
다음으로, 충돌 감지 장치(700)는 지령 위치, 지령 속도, 지령 가속도의 값으로부터 PID(proportional integral derivative) 제어 신호를 생성한다(S930). 상기 PID 제어 신호는 모터에 인가하기 위한 전류 신호일 수 있다.
다음으로, 충돌 감지 장치(700)는 지령 위치, 지령 속도, 지령 가속도 또는 로봇 암의 무게 중 어느 하나 이상을 기반으로 충돌 임계값을 계산한다(S940). 상기 지령 위치, 지령 속도, 지령 가속도는 단계 S910에서 외부 입력에 의해 획득될 수 있으며, 상기 로봇 암의 무게는 시스템에 미리 설정될 수 있다. 충돌 임계값은 수학식 3에 의하여 계산될 수 있다. 상기 수학식 3에서 사용되는 n의 값은 미리 설정된 값이 사용될 수도 있고, 지령 위치, 지령 속도, 로봇 암의 무게 중 하나 이상의 값을 기반으로 설정될 수 있다. 예를 들어, 상기 지령 속도가 빠른 경우에는 n의 값이 작은 값으로 설정되어 충돌에 보다 민감하게 반응하고, 지령 속도가 느린 경우에는 n의 값이 큰 값으로 설정되어 충돌에 덜 민감하게 반응하도록 설정될 수 있다. 한편, 상기 충돌 임계값은 로봇 암의 무게에 따라 서로 다른 값으로 설정될 수도 있다. 예를 들어, 로봇 암의 무게가 무거운 경우에는 n의 값이 작은 값으로 설정되어 충돌에 보다 민감하게 반응하고, 로봇 암의 무게가 가벼운 경우에는 n의 값이 큰 값으로 설정되어 충돌에 덜 민감하게 반응하도록 설정될 수 있다. 한편, 상기 충돌 임계값은 가속도 지령 값에 따라 서로 다른 값으로 설정될 수도 있다.
다음으로, 충돌 감지 장치(700)는 위치오차 및 충돌 임계값을 기반으로 충돌이 발생하였는지 여부를 판단한다(S950). 상기 위치오차는 단계 S920에서 계산된 값이 사용될 수 있고, 단계 S920에서 계산된 위치오차를 저대역 필터(low pass filter)에 통과시킨 출력값이 사용될 수 있다. 저대역 필터는 수학식 4를 이용하여 입력 신호로부터 출력 신호가 도출될 수 있다. 충돌 감지 창치(700)는 위치오차와 단계 S940에서 계산된 충돌 임계값을 기반으로 충돌이 발생하였는지 여부를 판단한다. 위치오차의 절대값이 충돌 임계값보다 큰 경우에는 충돌이 발생한 것으로 판단하고, 위치오차의 절대값이 충돌 임계값보다 작거나 같은 경우에는 충돌이 발생하지 않은 것으로 판단할 수 있다. 상기 충돌이 발생하였는지에 대한 판단 결과는 일련의 신호를 생성하여 제공될 수 있다.
다음으로, 충돌 감지 장치(700)는 단계 S930에서 생성된 PID 제어 신호 및 단계 S950에서 생성된 충돌이 발생하였는지 여부에 대한 판단 결과를 기반으로 제어 신호를 생성하여 모터를 제어한다(S960). 상기 제어 신호는 모터에 인가되는 전류 값일 수 있다. 예를 들어, 충돌이 발생하지 않은 경우에는 모터에 PID 제어 신호 신호를 전송하여 모터를 제어하고, 충돌이 발생한 경우에는 아무런 신호를 전송하지 않아 모터를 정지시킬 수 있다. 충돌이 발생했을 때, 충돌 감지 장치(700)는 작업자의 안전을 위하여 모든 동작을 종료할 수 있다.
마지막으로, 충돌 감지 장치(700)는 로봇 암을 동작시키고, 모터의 현재 위치 및 현재 속도에 대한 정보를 피드백한다(S970). 상기 모터의 현재 위치 및 현재 속도에 대한 정보는 지령값 입력부(710)로 피드백될 수 있으며, 상기 피드백되는 모터의 현재 위치 및 현재 속도에 대한 정보는 단계 S920에서 위치 오차를 구하기 위한 값으로 사용될 수 있다.
본 발명에 따르면, 충돌감지의 신뢰성이 향상되고, 연산이 단순하여 협업로봇에서 충돌의 감지를 구현하기 위해 소요되는 비용이 절감될 수 있다.
상기에서 설명한 본 발명의 기술적 사상은 바람직한 실시예에서 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술적 분야의 통상의 지식을 가진자라면 본 발명의 기술적 사상의 범위 내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다. 따라서 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
Claims (2)
- 협업로봇의 충돌 감지 장치에 있어서,
외부로부터 모터를 제어하기 위한 지령 위치, 지령 속도 및 지령 가속도에 관한 정보를 입력받고, 상기 모터로부터 현재 위치 및 현재 속도에 관한 정보를 수신하며, 상기 지령 위치 및 상기 현재 위치를 기반으로 위치 오차를 계산하는 지령값 입력부;
상기 지령값 입력부로부터 상기 지령 위치, 상기 지령 속도, 상기 지령 가속도, 현재 위치 및 현재 속도에 관한 정보를 수신하여 이들 중 적어도 하나를 기반으로 PID(proportional integral derivative) 제어 신호를 생성하는 PID 제어부;
상기 지령 위치, 상기 지령 속도, 상기 지령 가속도 중 적어도 하나를 기반으로 충돌 임계값을 계산하는 임계값 계산부;
상기 위치 오차 및 상기 충돌 임계값을 기반으로 충돌 발생 여부를 판단하는 충돌 판정부;
상기 PID 제어 신호에 의해 동작하며, 현재 위치 및 현재 속도에 관한 정보를 상기 지령값 입력부로 전송하는 상기 모터;
상기 PID 제어부로부터 PID 제어 신호를 수신하고, 상기 충돌 판정부로부터 충돌 발생 여부에 관한 정보를 수신하여 이들을 기반으로 상기 모터를 제어하는 피드백 제어부;
상기 지령값 입력부로부터 위치오차 값을 획득하여 미리 설정된 컷-오프(cut off) 주파수보다 높은 주파수 성분을 차단하는 저대역 필터; 및
상기 모터로부터 상기 현재 위치 및 현재 속도에 관한 정보를 인코딩하여 상기 지령값 입력부로 전송하는 인코더
를 포함하는 충돌감지 장치.
- 협업로봇의 충돌 감지 장치에 의해 수행되는 충돌감지 방법에 있어서,
모터의 지령 위치, 지령 속도, 지령 가속도, 현재 위치, 현재 속도를 획득하는 단계;
상기 지령 위치 및 상기 현재 위치를 기반으로 위치 오차를 계산하고, 상기 지령 속도 및 상기 현재 속도를 기반으로 속도오차를 계산하는 단계;
상기 지령 위치, 상기 지령 속도, 상기 지령 가속도를 기반으로 PID(proportional integral derivative) 제어 신호를 생성하는 단계;
상기 지령 위치, 상기 지령 속도, 상기 지령 가속도 및 로봇 암의 무게 중 어느 하나 이상을 기반으로 충돌 임계값을 계산하는 단계;
상기 지령 위치 및 상기 충돌 임계값을 기반으로 충돌이 발생하였는지 여부를 판단하는 단계;
상기 PID 제어 신호 및 상기 충돌이 발생하였는지 여부를 기반으로 모터 제어 신호를 생성하여 상기 모터를 제어하는 단계; 및
상기 모터의 현재 위치 및 현재 속도를 피드백하는 단계;
를 포함하는 충돌감지 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160026324A KR101844542B1 (ko) | 2016-03-04 | 2016-03-04 | 협업로봇의 충돌을 감지하는 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160026324A KR101844542B1 (ko) | 2016-03-04 | 2016-03-04 | 협업로봇의 충돌을 감지하는 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170103424A true KR20170103424A (ko) | 2017-09-13 |
KR101844542B1 KR101844542B1 (ko) | 2018-04-02 |
Family
ID=59967628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160026324A KR101844542B1 (ko) | 2016-03-04 | 2016-03-04 | 협업로봇의 충돌을 감지하는 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101844542B1 (ko) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108582070A (zh) * | 2018-04-17 | 2018-09-28 | 上海达野智能科技有限公司 | 机器人碰撞检测***和方法、存储介质、操作*** |
CN108858190A (zh) * | 2018-06-28 | 2018-11-23 | 共享智能铸造产业创新中心有限公司 | 伺服控制***的安全监控装置 |
CN110053043A (zh) * | 2019-03-05 | 2019-07-26 | 华南理工大学 | 一种工业机器人碰撞检测方法、装置、电子设备及介质 |
CN110653821A (zh) * | 2019-10-10 | 2020-01-07 | 上海电气集团股份有限公司 | 用于机械臂的控制方法、***、介质及设备 |
KR102105626B1 (ko) * | 2019-10-30 | 2020-04-28 | 주식회사 뉴로메카 | 협동 로봇의 충돌 민감도 자동 설정 방법 |
CN111906775A (zh) * | 2020-06-08 | 2020-11-10 | 深圳众为兴技术股份有限公司 | 一种机器人碰撞检测方法、装置、存储介质及机器人 |
KR102226122B1 (ko) * | 2020-04-22 | 2021-03-11 | 주식회사 뉴로메카 | 협동 로봇의 충돌 민감도 자동 설정 방법 |
CN112731797A (zh) * | 2020-12-10 | 2021-04-30 | 清华大学 | 一种平面电机运动控制方法、装置及*** |
WO2021086103A1 (ko) * | 2019-10-30 | 2021-05-06 | 주식회사 뉴로메카 | 협동 로봇의 충돌 민감도 자동 설정 방법 |
KR102274770B1 (ko) * | 2019-12-27 | 2021-07-07 | 한국기술교육대학교 산학협력단 | 협업로봇의 충돌 감지 장치 및 그 방법 |
CN115674190A (zh) * | 2022-09-30 | 2023-02-03 | 深圳市越疆科技有限公司 | 协作机械臂及其运动控制方法、碰撞检测方法、控制*** |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102521151B1 (ko) * | 2021-05-26 | 2023-04-13 | 주식회사 뉴로메카 | 충돌감지 기능을 갖는 협동로봇 및 협동로봇의 충돌감지 방법 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101313245B1 (ko) * | 2012-02-10 | 2013-09-30 | 삼성중공업 주식회사 | 모션제어 칩 |
-
2016
- 2016-03-04 KR KR1020160026324A patent/KR101844542B1/ko active IP Right Grant
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108582070A (zh) * | 2018-04-17 | 2018-09-28 | 上海达野智能科技有限公司 | 机器人碰撞检测***和方法、存储介质、操作*** |
CN108858190A (zh) * | 2018-06-28 | 2018-11-23 | 共享智能铸造产业创新中心有限公司 | 伺服控制***的安全监控装置 |
CN110053043A (zh) * | 2019-03-05 | 2019-07-26 | 华南理工大学 | 一种工业机器人碰撞检测方法、装置、电子设备及介质 |
CN110653821A (zh) * | 2019-10-10 | 2020-01-07 | 上海电气集团股份有限公司 | 用于机械臂的控制方法、***、介质及设备 |
WO2021086103A1 (ko) * | 2019-10-30 | 2021-05-06 | 주식회사 뉴로메카 | 협동 로봇의 충돌 민감도 자동 설정 방법 |
KR102105626B1 (ko) * | 2019-10-30 | 2020-04-28 | 주식회사 뉴로메카 | 협동 로봇의 충돌 민감도 자동 설정 방법 |
KR102274770B1 (ko) * | 2019-12-27 | 2021-07-07 | 한국기술교육대학교 산학협력단 | 협업로봇의 충돌 감지 장치 및 그 방법 |
KR102226122B1 (ko) * | 2020-04-22 | 2021-03-11 | 주식회사 뉴로메카 | 협동 로봇의 충돌 민감도 자동 설정 방법 |
CN111906775A (zh) * | 2020-06-08 | 2020-11-10 | 深圳众为兴技术股份有限公司 | 一种机器人碰撞检测方法、装置、存储介质及机器人 |
CN112731797A (zh) * | 2020-12-10 | 2021-04-30 | 清华大学 | 一种平面电机运动控制方法、装置及*** |
CN112731797B (zh) * | 2020-12-10 | 2021-11-23 | 清华大学 | 一种平面电机运动控制方法、装置及*** |
CN115674190A (zh) * | 2022-09-30 | 2023-02-03 | 深圳市越疆科技有限公司 | 协作机械臂及其运动控制方法、碰撞检测方法、控制*** |
CN115674190B (zh) * | 2022-09-30 | 2024-05-07 | 深圳市越疆科技股份有限公司 | 协作机械臂及其运动控制方法、碰撞检测方法、控制*** |
Also Published As
Publication number | Publication date |
---|---|
KR101844542B1 (ko) | 2018-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101844542B1 (ko) | 협업로봇의 충돌을 감지하는 장치 및 방법 | |
CN102233588B (zh) | 机器人*** | |
EP2939797B1 (en) | Motion limiting device and motion limiting method | |
CN105034025B (zh) | 机器人的安全监视装置 | |
US20160121484A1 (en) | Control device with function to check load information settings | |
US11548153B2 (en) | Robot comprising safety system ensuring stopping time and distance | |
Geravand et al. | Human-robot physical interaction and collaboration using an industrial robot with a closed control architecture | |
JP2732159B2 (ja) | 異常負荷検出方法 | |
US6208105B1 (en) | Robot controller | |
US10960549B2 (en) | Vibration analyzer and vibration analysis method | |
US20090200978A1 (en) | Robot controller having component protecting function and robot control method | |
US20190001504A1 (en) | Method For Detecting A Collision Of A Robot Arm With An Object, And A Robot With A Robot Arm | |
US11766780B2 (en) | System identification of industrial robot dynamics for safety-critical applications | |
JP2016112627A (ja) | 人間協調型ロボットシステム | |
KR20090069595A (ko) | 이동 로봇의 이동 오류 검출 장치 및 방법 | |
CN107407931A (zh) | 通过触碰操纵器实现的鲁棒的直观的操作方法 | |
JP2665984B2 (ja) | 外乱推定オブザーバによる衝突検出方法 | |
KR101329853B1 (ko) | 머니퓰레이터 충돌 감지 장치와 이를 이용한 머니퓰레이터 제어 장치 및 제어 방법 | |
CN107932500A (zh) | 具有限制机器人的速度、加速度的功能的机器人控制装置 | |
KR20120108318A (ko) | 주파수 기반 로봇 머니퓰레이터 제어 방법 | |
JP2004364396A (ja) | モータの制御装置および制御方法 | |
CN113352331B (zh) | 一种机器人与外部对象力协作的方法及协作机器人 | |
US20070216332A1 (en) | Method for Effecting the Movement of a Handling Device and Image Processing Device | |
KR20090114890A (ko) | 로봇의 충돌검지 방법 | |
JP3997201B2 (ja) | 産業用ロボットおよびその異常判断方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |