KR102492869B1 - 영공간으로 투영된 작업 공간을 활용한 볼봇의 자세 균형 제어 방법 및 이를 이용하는 제어 시스템 - Google Patents

영공간으로 투영된 작업 공간을 활용한 볼봇의 자세 균형 제어 방법 및 이를 이용하는 제어 시스템 Download PDF

Info

Publication number
KR102492869B1
KR102492869B1 KR1020200140151A KR20200140151A KR102492869B1 KR 102492869 B1 KR102492869 B1 KR 102492869B1 KR 1020200140151 A KR1020200140151 A KR 1020200140151A KR 20200140151 A KR20200140151 A KR 20200140151A KR 102492869 B1 KR102492869 B1 KR 102492869B1
Authority
KR
South Korea
Prior art keywords
ball
robot
equation
matrix
projected
Prior art date
Application number
KR1020200140151A
Other languages
English (en)
Other versions
KR20220055738A (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 KR1020200140151A priority Critical patent/KR102492869B1/ko
Publication of KR20220055738A publication Critical patent/KR20220055738A/ko
Application granted granted Critical
Publication of KR102492869B1 publication Critical patent/KR102492869B1/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/1679Programme controls characterised by the tasks executed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J5/00Manipulators mounted on wheels or on carriages
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1607Calculation of inertia, jacobian matrixes and inverses
    • 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
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1615Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven 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/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Manipulator (AREA)

Abstract

본 발명은, 볼과 로봇을 구비하는 볼봇의 자세 균형 제어 방법으로서, 볼, 로봇 및 지면에 대한 제1운동방정식을 구성하는 단계; 상기 제1운동방정식으로부터 지면접촉 영공간 행렬을 이용하여 제2운동방정식을 도출하는 단계; 볼과 로봇 각각의 속도에 근거하여 작업 변수를 설정하는 단계; 상기 작업 변수 및 제2운동방정식에 근거하여, 제2운동방정식이 작업 변수에 의해 변환된 방정식인 제3방정식을 도출하는 단계; 및 상기 제3방정식으로부터 볼과 로봇 사이의 접촉힘 및 제어 토크 중 적어도 하나를 제어하는 단계를 포함하는 볼봇의 자세 균형 제어 방법 및 제어 시스템을 제공한다.

Description

영공간으로 투영된 작업 공간을 활용한 볼봇의 자세 균형 제어 방법 및 이를 이용하는 제어 시스템{Control Method for Balancing and Tracking of a Ballbot using Projected Task Space Dynamics with Inequality Constraints and Control System using the same}
본 발명은 볼봇의 자세 균형 제어 방법 및 제어 시스템에 관한 것으로서, 보다 상세하게는 영공간으로 투영된 작업 공간을 활용한 볼봇의 자세 균형 제어 방법 및 제어 시스템에 관한 것이다.
볼봇(ballbot)은 지면과 바로 접촉하지 않고, 지면 위의 공과 접촉한다.
기존의 볼봇의 경우는, 공과 지면 사이의 속도나 마찰 등의 접촉 정보를 알기가 어려운 문제가 있었다.
따라서, 볼봇 전체 시스템에 대한 동역학을 다루기 어려우므로 공과 지면에 대한 작업의 영공간으로 시스템 운동방정식을 투영하여 독립적인 운동방정식을 획득할 수 있는 방법이 요구된다.
특히, 영공간의 운동방정식을 이용한 작업공간 운동방정식을 통해 지면 접촉에 대한 정보 없이 자유 운동할 수 있도록 하는 제어 방법 및 제어 시스템의 개발이 요구된다.
한국 특허 등록 공보 제10-0176249호(1999.5.1)
본 발명은 상기의 과제를 해결하기 위해 안출된 것으로서, 본 발명의 목적은 영공간의 운동방정식을 이용한 작업공간 운동방정식을 통해 지면 접촉에 대한 정보 없이 자유 운동할 수 있도록 하는 제어 방법 및 제어 시스템을 제공하는 것이다.
상기의 과제를 해결하기 위해, 본 발명의 볼봇의 자세 균형 제어 방법은, 볼과 로봇을 구비하는 볼봇의 자세 균형 제어 방법으로서, 볼, 로봇 및 지면에 대한 제1운동방정식을 구성하는 단계; 상기 제1운동방정식으로부터 지면접촉 영공간 행렬을 이용하여 제2운동방정식을 도출하는 단계; 볼과 로봇 각각의 속도에 근거하여 작업 변수를 설정하는 단계; 상기 작업 변수 및 제2운동방정식에 근거하여, 제2운동방정식이 작업 변수에 의해 변환된 방정식인 제3방정식을 도출하는 단계; 및 상기 제3방정식으로부터 볼과 로봇 사이의 접촉힘 및 제어 토크 중 적어도 하나를 제어하는 단계를 포함한다.
본 발명과 관련된 일 예에 따르면, 상기 제1운동방정식은 [수학식 1]에 의해 정의된다.
[수학식 1]
Figure 112020113977969-pat00001
[수학식 1]에서, M'B은 로봇의 관성 행렬, M'K은 볼의 관성 행렬,
Figure 112020113977969-pat00002
은 일반화 좌표계의 가속도, C'B은 로봇에 대한 코리올리 힘 및 원심력, C'K은 볼에 대한 코리올리 힘 및 원심력,
Figure 112020113977969-pat00003
Figure 112020113977969-pat00004
에 의해 표현되는 일반화 좌표계, ξ B T는 로봇의 일반화 좌표계를 표현하는 전치행렬, ξ K T는 볼의 일반화 좌표계를 표현하는 전치행렬,
Figure 112020113977969-pat00005
은 일반화 좌표계의 속도,
Figure 112020113977969-pat00006
은 일반화 좌표계의 가속도, g'B는 로봇에 대한 중력 벡터, g'K는 볼에 대한 중력 벡터, B'B는 로봇 작업 선택 행렬,
Figure 112020113977969-pat00007
는 로봇의 관절 토크, J T CB는 로봇과 접촉점 사이의 자코비안(Jacobian)의 전치행렬, G T CK는 볼과 접촉점 사이의 자코비안의 전치행렬, f C는 휠과 볼 사이의 접촉힘, G T NK는 볼과 지면 사이의 자코비안, f N는 볼과 지면 사이의 접촉힘을 각각 나타낸다.
또한, 상기 제2운동방정식은 [수학식 2]에 의해 도출될 수 있다.
[수학식 2]
Figure 112020113977969-pat00008
[수학식 2]에서 ,
Figure 112020113977969-pat00009
는 지면접촉 영공간으로 투영된 관성을 나타내는 행렬,
Figure 112020113977969-pat00010
은 지면접촉 영공간으로 투영된 코리올리힘 및 원심력을 나타내는 행렬,
Figure 112020113977969-pat00011
Figure 112020113977969-pat00012
에 의해 표현되는 일반화 좌표계, ξ B는 로봇의 일반화 좌표계를 표현하는 벡터, ξ K는 볼의 일반화 좌표계를 표현하는 벡터,
Figure 112020113977969-pat00013
은 일반화 좌표계의 속도,
Figure 112020113977969-pat00014
은 일반화 좌표계의 가속도,
Figure 112020113977969-pat00015
는 지면접촉 영공간으로 투영된 중력 벡터,
Figure 112020113977969-pat00016
는 지면접촉 영공간으로 투영된 선택 행렬,
Figure 112020113977969-pat00017
은 지면접촉 영공간으로 투영된 휠과 볼 사이의 접촉 자코비안,
Figure 112020113977969-pat00018
은 휠과 볼 사이의 접촉힘을 나타낸다.
또한, 상기 작업 변수의 설정은 [수학식 3]에 의해 이루어질 수 있다.
[수학식 3]
Figure 112020113977969-pat00019
[수학식 3]에서,
Figure 112020113977969-pat00020
는 작업 변수,
Figure 112020113977969-pat00021
은 로봇의 무게 중심에서의 x방향으로의 속도,
Figure 112020113977969-pat00022
은 로봇의 무게 중심에서의 y방향으로의 속도,
Figure 112020113977969-pat00023
은 공의 중심에서의 x방향으로의 속도, 윗첨자 T는 전치 행렬(transposed matrix),
Figure 112020113977969-pat00024
은 공의 중심에서의 y방향으로의 속도,
Figure 112020113977969-pat00025
은 로봇의 무게중심 작업 공간 행렬,
Figure 112020113977969-pat00026
은 볼 작업 공간 행렬,
Figure 112020113977969-pat00027
은 일반화 좌표계의 속도, T
Figure 112020113977969-pat00028
에서 T는 작업 공간 행렬이다.
본 발명과 관련된 다른 일 예에 따르면, 상기 제3방정식은 [수학식 4]에 의해 표현될 수 있다.
[수학식 4]
Figure 112020113977969-pat00029
[수학식 4]에서,
Figure 112020113977969-pat00030
은 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 관성행렬,
Figure 112020113977969-pat00031
은 영공간에서 작업공간으로 투영된 볼 관련 관성행렬,
Figure 112020113977969-pat00032
는 로봇의 무게중심과 공의 중심에서의 x 및 y 방향으로의 가속도를 포함하는 작업 변수이고,
Figure 112020113977969-pat00033
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 코리올리 힘 및 원심력 행렬,
Figure 112020113977969-pat00034
는 영공간에서 작업공간으로 투영된 볼 관련 코리올리 힘 및 원심력 행렬,
Figure 112020113977969-pat00035
는 전술한 바와 같이 로봇의 무게중심과 공의 중심에서의 x 및 y 방향으로의 속도를 포함하는 작업 변수이고,
Figure 112020113977969-pat00036
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 중력 벡터,
Figure 112020113977969-pat00037
는 영공간에서 작업공간으로 투영된 볼 관련 중력 벡터,
Figure 112020113977969-pat00038
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 선택 행렬,
Figure 112020113977969-pat00039
는 로봇의 관절 토크,
Figure 112020113977969-pat00040
는 영공간에서 작업공간으로 투영된 휠과 볼 사이의 자코비안의 전치행렬,
Figure 112020113977969-pat00041
는 영공간에서 작업공간으로 투영된 볼과 지면 사이의 자코비안의 전치행렬,
Figure 112020113977969-pat00042
은 휠과 볼 사이의 접촉힘을 나타낸다.
또한, 상기 접촉힘은 [수학식 5]에 의해 표현될 수 있다.
[수학식 5]
Figure 112020113977969-pat00043
[수학식 5]에서,
Figure 112020113977969-pat00044
는 영공간에서 작업공간으로 투영된 볼에 가해지는 접촉힘,
Figure 112020113977969-pat00045
는 영공간에서 작업공간으로 투영된 볼관련 관성행렬,
Figure 112020113977969-pat00046
은 레퍼런스 작업 가속도, G T C,K는 휠과 볼 사이의 자코비안의 전치행렬,
Figure 112020113977969-pat00047
은 휠과 볼사이의 접촉힘이다.
본 발명과 관련된 또 다른 일 예에 따르면, 상기 제어 토크는 [수학식 6]에 의해 표현될 수 있다.
[수학식 6]
Figure 112020113977969-pat00048
[수학식 6]에서,
Figure 112020113977969-pat00049
는 로봇의 관절 토크,
Figure 112020113977969-pat00050
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 선택 행렬의 일반화 역행렬이고,
Figure 112020113977969-pat00051
은 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 관성행렬,
Figure 112020113977969-pat00052
은 레퍼런스 작업 가속도이고,
Figure 112020113977969-pat00053
이고,
Figure 112020113977969-pat00054
은 로봇 작업 레퍼런스 가속도,
Figure 112020113977969-pat00055
은 볼 작업 레퍼런스 가속도,
Figure 112020113977969-pat00056
는 스케일링 이득,
Figure 112020113977969-pat00057
은 모멘트 중심 반사 운동(Com reflex), K K,p는 볼 작업 비례이득, K K,d는 볼 작업 감쇠이득,
Figure 112020113977969-pat00058
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 코리올리 힘 및 원심력 행렬,
Figure 112020113977969-pat00059
는 작업 속도,
Figure 112020113977969-pat00060
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 중력 벡터,
Figure 112020113977969-pat00061
는 영공간에서 작업공간으로 투영된 휠과 볼 사이의 자코비안의 전치행렬,
Figure 112020113977969-pat00062
은 Quadratic Programming(QP)로부터 계산된 접촉힘이다.
또 다른 과제를 해결하기 위해, 전술한 볼봇의 자세 균형 제어 방법을 이용하는 볼봇의 자세 균형 제어 시스템으로서, 볼봇의 자세 균형 제어 시스템은, 정의된 작업들을 이용해 레퍼런스 값을 생성하는 목표치 생성부; 목표치 생성부로부터 생성된 로봇의 레퍼런스 값을 제공받아서 제어 입력과 접촉힘을 계산하는 제어부; 지면에 놓여지는 볼과, 볼에 접촉하는 로봇을 포함하고, 외부힘에 의해 운동하는 볼봇; 및 볼봇의 운동으로부터 얻어진 변수들을 계산하고, 계산된 변수들을 제어부로 제공하는 산출부를 포함한다.
본 발명의 제어 방법 및 제어 시스템은, Quadratic Programming(QP)을 이용한 균형 제어가 적용될 수 있으며, 볼과 지면의 공간의 영공간에서의 작업을 기반으로 수행될 수 있다.
또한, 본 발명의 제어 방법 및 제어 시스템은, 영공간으로의 투영을 통해 볼과 지면의 접촉에 대한 정보 없이 로봇 시스템 운동방정식을 다룰 수 있다.
또한, 본 발명의 제어 방법 및 제어 시스템은, 지면 접촉에 대한 정보 없이 제어가 요구되는 모바일 로봇 등의 분야에도 적용될 수 있다.
도 1은 본 발명의 볼봇의 자세 균형 제어 방법을 도시하는 순서도.
도 2는 일반화 좌표 내에 볼봇이 배치된 예를 도시하는 개념도.
도 3은 본 발명의 볼봇의 자세 균형 제어 시스템을 도시하는 블록도.
도 4는 일반화 좌표 내에서 볼봇이 이동하는 예를 도시하는 개념도.
도 5a는 일반화 좌표 내에 볼봇이 배치된 예를 3차원으로 도시하는 개념도.
도 5b는 도 5a에서 볼봇의 질량 및 길이를 표시한 개념도.
도 6은 로봇의 작업 이동을 나타내는 그래프.
도 7은 로봇의 작업 속도를 나타내는 그래프.
도 8은 로봇의 작업 이동을 나타내는 그래프.
이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 동일하거나 유사한 구성요소에는 동일, 유사한 도면 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. 또한, 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않는다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
도 1을 참조하면, 본 발명의 볼봇의 자세 균형 제어 방법(S100)은 볼, 로봇 및 지면에 대한 제1운동방정식을 구성하는 단계(S10), 상기 제1운동방정식으로부터 지면접촉 영공간 행렬을 이용하여 제2운동방정식을 도출하는 단계(S20), 볼과 로봇 각각의 속도에 근거하여 작업 변수를 설정하는 단계(S30), 상기 작업 변수 및 제2운동방정식에 근거하여, 제2운동방정식이 작업 변수에 의해 변환된 방정식인 제3운동방정식을 도출하는 단계(S40) 및 상기 제3운동방정식으로부터 볼과 로봇 사이의 접촉힘 및 제어 토크 중 적어도 하나를 제어하는 단계(S50)를 포함한다.
또한, 본 발명에서, 볼봇(ballbot, 30)은, 볼(31)과 로봇(35)을 구비하는데(도 2), 볼봇의 구조에 대해 보다 자세한 설명은 후술한다.
볼, 로봇 및 지면에 대한 제1운동방정식을 구성하는 단계(S10)에서, 제1운동방정식은, 로봇과 볼에 대한 정보, 및 지면과 볼 사이의 구속 조건을 포함하는 로봇과 볼 시스템에 대한 운동방정식으로 이해될 수 있다.
볼, 로봇 및 지면에 대한 제1운동방정식을 구성하는 단계(S10)에서, 볼, 로봇 및 지면에 대한 제1운동방정식은 [수학식 1]에 의해 표현될 수 있다.
[수학식 1]
Figure 112020113977969-pat00063
[수학식 1]에서, M'B은 로봇의 관성 행렬, M'K은 볼의 관성 행렬,
Figure 112020113977969-pat00064
은 일반화 좌표계의 가속도, C'B은 로봇에 대한 코리올리 힘 및 원심력, C'K은 볼에 대한 코리올리 힘 및 원심력,
Figure 112020113977969-pat00065
Figure 112020113977969-pat00066
에 의해 표현되는 일반화 좌표계, ξ B T는 로봇의 일반화 좌표계를 표현하는 전치행렬, ξ K T는 볼의 일반화 좌표계를 표현하는 전치행렬,
Figure 112020113977969-pat00067
은 일반화 좌표계의 속도,
Figure 112020113977969-pat00068
은 일반화 좌표계의 가속도, g'B는 로봇에 대한 중력 벡터, g'K는 볼에 대한 중력 벡터, B'B는 로봇 작업 선택 행렬,
Figure 112020113977969-pat00069
는 로봇의 관절 토크, J T CB는 로봇과 접촉점 사이의 자코비안(Jacobian)의 전치행렬, G T CK는 볼과 접촉점 사이의 자코비안의 전치행렬, f C는 휠과 볼 사이의 접촉힘, G T NK는 볼과 지면 사이의 자코비안, f N는 볼과 지면 사이의 접촉힘을 각각 나타낸다.
또한, [수학식 1]에서의 좌변은
Figure 112020113977969-pat00070
으로 나타낼 수 있고, 우변은
Figure 112020113977969-pat00071
으로 나타낼 수 있는데, M'는 관성 행렬, C'는 코리올리 힘 및 원심력 행렬, g'는 중력 벡터, B'는 작업 선택 행렬, G T' C는 휠과 볼 사이의 자코비안, G T' N는 볼과 지면 사이의 자코비안(Jacobian)이다.
또한, [수학식 1]에서 구속조건은,
Figure 112020113977969-pat00072
Figure 112020113977969-pat00073
식을 포함할 수 있고,
Figure 112020113977969-pat00074
는 휠과 볼 사이의 접촉점 속도, J CB는 로봇과 접촉점 사이의 자코비안,
Figure 112020113977969-pat00075
는 로봇의 일반화 좌표계의 속도, G CK는 볼과 접촉점 사이의 자코비안,
Figure 112020113977969-pat00076
는 볼의 일반화 좌표계의 속도,
Figure 112020113977969-pat00077
은, G NK는 볼과 지면 사이의 자코비안이다.
볼, 로봇 및 지면에 대한 제1운동방정식으로부터 지면접촉 영공간 행렬을 이용하여 제2운동 방정식을 도출해내는 단계(S20)에서, 제2운동 방정식은 볼봇이 지면과 접촉하는 영공간을 나타내는 투영 운동 방정식으로 이해될 수 있다.
볼과 지면 사이의 정보를 측정할 수 없으므로 제2운동방정식의 도출에 의해 볼과 지면 사이의 접촉 정보와 무관한 운동 방정식을 얻을 수 있다. 제2운동방정식은 볼과 지면 사이의 공간에 대해 독립적인 운동방정식으로, 볼과 지면 사이의 접촉힘 관련 정보들을 포함하지 않는다.
또한, 제2운동방정식은 [수학식 2]에 의해 도출될 수 있다.
[수학식 2]
Figure 112020113977969-pat00078
[수학식 2]에서,
Figure 112020113977969-pat00079
는 지면접촉 영공간으로 투영된 관성을 나타내는 행렬,
Figure 112020113977969-pat00080
은 지면접촉 영공간으로 투영된 코리올리힘 및 원심력을 나타내는 행렬,
Figure 112020113977969-pat00081
Figure 112020113977969-pat00082
에 의해 표현되는 일반화 좌표계, ξ B는 로봇의 일반화 좌표계를 표현하는 벡터, ξ K는 볼의 일반화 좌표계를 표현하는 벡터,
Figure 112020113977969-pat00083
은 일반화 좌표계의 속도,
Figure 112020113977969-pat00084
은 일반화 좌표계의 가속도,
Figure 112020113977969-pat00085
는 지면접촉 영공간으로 투영된 중력 벡터,
Figure 112020113977969-pat00086
는 지면접촉 영공간으로 투영된 선택 행렬,
Figure 112020113977969-pat00087
은 지면접촉 영공간으로 투영된 휠과 볼 사이의 접촉 자코비안,
Figure 112020113977969-pat00088
은 휠과 볼 사이의 접촉힘을 나타낸다.
또한, [수학식 2]에서,
Figure 112020113977969-pat00089
Figure 112020113977969-pat00090
로 나타낼 수 있는데, P N은 지면접촉 영공간 행렬로서
Figure 112020113977969-pat00091
이고, I는 단위 행렬,
Figure 112020113977969-pat00092
은 볼과 지면 사이의 자코비안의 유사역행렬,
Figure 112020113977969-pat00093
은 볼과 지면 사이의 자코비안,
Figure 112020113977969-pat00094
은 관성행렬,
Figure 112020113977969-pat00095
Figure 112020113977969-pat00096
로 나타낼 수 있는데, P N은 전술한 지면접촉 영공간 행렬,
Figure 112020113977969-pat00097
은 코리올리 힘 및 원심력 행렬,
Figure 112020113977969-pat00098
Figure 112020113977969-pat00099
로 나타낼 수 있는데, P N은 전술한 지면접촉 영공간 행렬, g'는 중력 벡터,
Figure 112020113977969-pat00100
Figure 112020113977969-pat00101
로 나타낼 수 있는데, P N은 전술한 지면접촉 영공간 행렬, B'는 작업 선택 행렬,
Figure 112020113977969-pat00102
Figure 112020113977969-pat00103
로 나타낼 수 있고, P N은 전술한 지면접촉 영공간 행렬, G T' C는 볼과 접촉점 사이의 자코비안의 전치행렬이다.
한편, [수학식 2]에서 구속조건은,
Figure 112020113977969-pat00104
로 표현될 수 있고,
Figure 112020113977969-pat00105
는 휠과 볼 사이의 접촉점 속도, J CB는 로봇과 접촉점 사이의 자코비안,
Figure 112020113977969-pat00106
는 로봇의 일반화 좌표계의 속도, G CK는 볼과 접촉점 사이의 자코비안,
Figure 112020113977969-pat00107
는 볼의 일반화 좌표계의 속도이다.
볼과 로봇 각각의 속도에 근거하여 작업 변수를 설정하는 단계(S30)에서, 작업 변수의 설정은 [수학식 3]에 의해 이루어질 수 있다.
[수학식 3]
Figure 112020113977969-pat00108
[수학식 3]에서,
Figure 112020113977969-pat00109
는 작업 변수,
Figure 112020113977969-pat00110
은 로봇의 무게 중심에서의 x방향으로의 속도,
Figure 112020113977969-pat00111
은 로봇의 무게 중심에서의 y방향으로의 속도,
Figure 112020113977969-pat00112
은 공의 중심에서의 x방향으로의 속도, 윗첨자 T는 전치 행렬(transposed matrix),
Figure 112020113977969-pat00113
은 공의 중심에서의 y방향으로의 속도,
Figure 112020113977969-pat00114
은 로봇의 무게중심 작업 공간 행렬,
Figure 112020113977969-pat00115
은 볼 작업 공간 행렬,
Figure 112020113977969-pat00116
은 일반화 좌표계의 속도, T
Figure 112020113977969-pat00117
에서 T는 작업 공간 행렬이다.
또한, [수학식 3]에서,
Figure 112020113977969-pat00118
는 작업 변수로서, 로봇의 무게중심과 공의 중심에서의 x 및 y 방향으로의 속도를 포함하는 개념으로 4차원(R4)인 작업 공간을 포함할 수 있다.
상기 작업 변수 및 제2운동방정식에 근거하여, 제2운동방정식이 작업 변수에 의해 변환된 방정식인 제3운동방정식을 도출하는 단계(S40)에서, 제3운동방정식은 작업 공간으로 투영된 운동방정식으로 이해될 수 있다.
제3운동방정식의 도출함으로써, 볼-지면 접촉 정보 없는 공간에서 작업 공간을 구성하여 로봇과 볼의 접촉 정보만으로 로봇과 볼의 운동 방정식을 얻을 수 있다.
제3운동방정식의 도출은, 로봇과 볼의 자유 운동을 위한 작업 공간을 설정하고, 지면접촉 영공간으로 투영된 운동 방정식을 작업 공간으로 투영하여 작업공간 운동방정식으로 변환한다.
또한, 제3운동방정식은 로봇과 볼 사이의 접촉힘 등의 구속 조건을 포함하는 운동방정식으로 이해될 수 있다.
일례로, 제3운동방정식을 도출하는 단계(S40)에서, [수학식 3]에 의해 설정된 작업 변수 및 제2운동방정식에 근거하여, 제3운동방정식은 [수학식 4]에 의해 표현될 수 있다.
[수학식 4]
Figure 112020113977969-pat00119
[수학식 4]에서,
Figure 112020113977969-pat00120
은 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 관성행렬,
Figure 112020113977969-pat00121
은 영공간에서 작업공간으로 투영된 볼 관련 관성행렬,
Figure 112020113977969-pat00122
는 로봇의 무게중심과 공의 중심에서의 x 및 y 방향으로의 가속도를 포함하는 작업 변수이고,
Figure 112020113977969-pat00123
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 코리올리 힘 및 원심력 행렬,
Figure 112020113977969-pat00124
는 영공간에서 작업공간으로 투영된 볼 관련 코리올리 힘 및 원심력 행렬,
Figure 112020113977969-pat00125
는 전술한 바와 같이 로봇의 무게중심과 공의 중심에서의 x 및 y 방향으로의 속도를 포함하는 작업 변수이고,
Figure 112020113977969-pat00126
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 중력 벡터,
Figure 112020113977969-pat00127
는 영공간에서 작업공간으로 투영된 볼 관련 중력 벡터,
Figure 112020113977969-pat00128
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 선택 행렬,
Figure 112020113977969-pat00129
는 로봇의 관절 토크,
Figure 112020113977969-pat00130
는 영공간에서 작업공간으로 투영된 휠과 볼 사이의 자코비안의 전치행렬,
Figure 112020113977969-pat00131
는 영공간에서 작업공간으로 투영된 볼과 지면 사이의 자코비안의 전치행렬,
Figure 112020113977969-pat00132
은 휠과 볼 사이의 접촉힘을 나타낸다.
또한, 제3운동방정식을 도출하기 위해, [보조식 1]이 이용될 수 있다.
[보조식 1]
Figure 112020113977969-pat00133
[보조식 1]은 [수학식 2]의 좌변에
Figure 112020113977969-pat00134
을 곱하고, [수학식 3]에서,
Figure 112020113977969-pat00135
Figure 112020113977969-pat00136
Figure 112020113977969-pat00137
Figure 112020113977969-pat00138
에 대한 식으로 변환한 식이고,
Figure 112020113977969-pat00139
는 볼-작업 공간 행렬의 역전치행렬,
Figure 112020113977969-pat00140
는 볼-작업 공간 행렬의 유사역행렬,
Figure 112020113977969-pat00141
Figure 112020113977969-pat00142
이고,
Figure 112020113977969-pat00143
는 영공간에서 작업공간으로 투영된 관성행렬,
Figure 112020113977969-pat00144
C이고, C는 영공간에서 작업공간으로 투영된 코리올리 힘 및 원심력 행렬이고,
Figure 112020113977969-pat00145
g이고, g는 중력 벡터이고,
Figure 112020113977969-pat00146
B이고, B는 영공간에서 작업공간으로 투영된 선택 행렬이고,
Figure 112020113977969-pat00147
G T C이고, G T C는 휠과 볼 사이의 자코비안이다.
본 발명에서, 볼과 로봇 사이의 접촉힘은 [수학식 5]에 의해 표현될 수 있다.
[수학식 5]
Figure 112020113977969-pat00148
[수학식 5]에서,
Figure 112020113977969-pat00149
는 영공간에서 작업공간으로 투영된 볼에 가해지는 접촉힘,
Figure 112020113977969-pat00150
는 영공간에서 작업공간으로 투영된 볼관련 관성행렬,
Figure 112020113977969-pat00151
은 레퍼런스 작업 가속도, G T C,K는 휠과 볼 사이의 자코비안의 전치행렬,
Figure 112020113977969-pat00152
은 휠과 볼사이의 접촉힘이다.
[수학식 5]의 도출을 위해 이차프로그래밍이 사용될 수 있으며, Quadratic Programming은 이차프로그래밍의 일례로 이해될 수 있다.
[수학식 5]의 도출을 위해 이차프로그래밍이 사용됨으로써, 구속 조건을 만족하는 로봇과 볼 사이의 접촉힘을 구할 수 있다.
전술한 제3방정식은, 로봇 관련 운동 방정식 파트({B})와 볼 관련 운동 방정식 파트({K})로 나뉘는데, 이차프로그래밍에 의해, 볼 관련 운동 방정식 파트를 만족하는 동시에, 구속 조건들을 만족하는 로봇과 볼 사이의 접촉힘이 계산된다.
제3운동방정식으로부터 볼과 로봇 사이의 접촉힘 및 제어 토크 중 적어도 하나를 제어하는 단계(S50)에서, 이차프로그래밍에 의해 계산된 접촉힘을 포함하여 일반화 제어 입력 토크를 구하고 시뮬레이터를 통해 구현 및 결과가 확인된다.
[수학식 5]의 도출을 위해, [보조식 2] 내지 [보조식 6]이 이용된다.
[보조식 2]
Figure 112020113977969-pat00153
[보조식 3]
Figure 112020113977969-pat00154
[보조식 4]
Figure 112020113977969-pat00155
[보조식 5]
Figure 112020113977969-pat00156
[보조식 6]
Figure 112020113977969-pat00157
[보조식 2] 내지 [보조식 6]에서,
Figure 112020113977969-pat00158
는 볼-접촉 힘 오차 최소화 항목이고,
Figure 112020113977969-pat00159
는 접촉힘 최소화 항목이며,
Figure 112020113977969-pat00160
는 영공간에서 작업공간으로 투영된 볼 힘,
Figure 112020113977969-pat00161
은 휠과 볼 사이의 접촉힘,
Figure 112020113977969-pat00162
은 x축 방향의 i번째 접촉힘,
Figure 112020113977969-pat00163
은 y축 방향의 i번째 접촉힘,
Figure 112020113977969-pat00164
은 z축 방향의 i번째 접촉힘,
Figure 112020113977969-pat00165
은 설정된 i번째 접촉힘의 최소값이고, [보조식 5]의 우변은 마찰력 근사치이고, [보조식 6]은 옴니휠 구속조건을 나타낸다.
제3운동방정식으로부터 볼과 로봇 사이의 접촉힘 및 제어 토크 중 적어도 하나를 제어하는 단계(S50)에서, 전술한 [수학식 4]에 의해 표현된, 작업 변수에 근거한 제3운동방정식을 이용하여, 제어 토크가 [수학식 6]에 의해 표현될 수 있다.
[수학식 6]
Figure 112020113977969-pat00166
[수학식 6]에서,
Figure 112020113977969-pat00167
는 로봇의 관절 토크,
Figure 112020113977969-pat00168
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 선택 행렬의 일반화 역행렬이고,
Figure 112020113977969-pat00169
은 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 관성행렬,
Figure 112020113977969-pat00170
은 레퍼런스 작업 가속도이고,
Figure 112020113977969-pat00171
이고,
Figure 112020113977969-pat00172
은 로봇 작업 레퍼런스 가속도,
Figure 112020113977969-pat00173
은 볼 작업 레퍼런스 가속도,
Figure 112020113977969-pat00174
는 스케일링 이득,
Figure 112020113977969-pat00175
은 모멘트 중심 반사 운동(Com reflex), K K,p는 볼 작업 비례이득, K K,d는 볼 작업 감쇠이득,
Figure 112020113977969-pat00176
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 코리올리 힘 및 원심력 행렬,
Figure 112020113977969-pat00177
는 작업 속도,
Figure 112020113977969-pat00178
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 중력 벡터,
Figure 112020113977969-pat00179
는 영공간에서 작업공간으로 투영된 휠과 볼 사이의 자코비안의 전치행렬,
Figure 112020113977969-pat00180
은 Quadratic Programming(QP)로부터 계산된 접촉힘이다.
[수학식 6]에서,
Figure 112020113977969-pat00181
은 하강 모멘트(falling moment)인
Figure 112020113977969-pat00182
을 이용한 최적화 값(cost)
Figure 112020113977969-pat00183
을 이용해 구비강화법(gradient descent method)으로부터 구해진 모멘트 중심 반사 운동(Com reflex)을 통해 얻어질 수 있고,
Figure 112020113977969-pat00184
은 xy 평면에서 볼 위치에서 로봇의 무게 중심까지의 벡터이다.
또한, [수학식 6]은 [보조식 7]에 근거하여 도출될 수 있다.
[보조식 7]
Figure 112020113977969-pat00185
[보조식 7]에서,
Figure 112020113977969-pat00186
은 레퍼런스 작업 가속도이고,
Figure 112020113977969-pat00187
는 작업 가속도 목표값이고, K p는 비례 이득이고,
Figure 112020113977969-pat00188
는 작업 위치 목표값이고, x는 작업 위치이고, K p는 감쇠 이득이고,
Figure 112020113977969-pat00189
는 작업 속도 목표값이고
Figure 112020113977969-pat00190
는 작업 속도이다.
또한, 영공간 힘을 고려한, 일반화 제어 토크가 [수학식 7]에 의해 표현된다. 일반화 제어 토크는 일반화 좌표계의 제어에 이용된다.
[수학식 7]
Figure 112020113977969-pat00191
[수학식 7]에서,
Figure 112020113977969-pat00192
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 선택 행렬의 일반화 역행렬이고,
Figure 112020113977969-pat00193
은 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 관성행렬,
Figure 112020113977969-pat00194
은 레퍼런스 작업 가속도이고,
Figure 112020113977969-pat00195
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 코리올리 힘 및 원심력 행렬,
Figure 112020113977969-pat00196
는 작업 속도,
Figure 112020113977969-pat00197
는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 중력 벡터,
Figure 112020113977969-pat00198
는 영공간에서 작업공간으로 투영된 휠과 볼 사이의 자코비안의 전치행렬,
Figure 112020113977969-pat00199
은 Quadratic Programming(QP)로부터 계산된 접촉힘,
Figure 112020113977969-pat00200
는 영공간 작업힘으로서, f 0의 로봇 부분의 힘을 나타내며, 작업 공간에 독립적인 힘으로 로봇의 기울기를 제어하기 위해 사용된다.
또한, [수학식 7]은 [보조식 8]에 근거하여 도출될 수 있다.
[보조식 8]
Figure 112020113977969-pat00201
[보조식 8]에서, f 0는 작업 영공간 힘이고, P T는 작업 행렬의 영공간 투영자이고,
Figure 112020113977969-pat00202
이고, K 0는 포텐셜 이득이고,
Figure 112020113977969-pat00203
는 볼-작업 공간 행렬의 역전치행렬이고,
Figure 112020113977969-pat00204
는 일반화 좌표계 함수로서,
Figure 112020113977969-pat00205
이고,
Figure 112020113977969-pat00206
Figure 112020113977969-pat00207
에 의해 표현되는 일반화 좌표계, ξ B는 로봇의 일반화 좌표계를 표현하는 벡터, ξ K는 볼의 일반화 좌표계를 표현하는 벡터,
Figure 112020113977969-pat00208
는 목표 일반화 좌표계,
Figure 112020113977969-pat00209
은 영공간의 힘이다.
한편, [보조식 8]에서, 영공간 제어를 위한 일반화 좌표계의 포텐셜 레퍼런스
Figure 112020113977969-pat00210
는,
Figure 112020113977969-pat00211
을 제외하고는, 모든 i에 대해 ξ i,d = 0 이고
Figure 112020113977969-pat00212
이며,
Figure 112020113977969-pat00213
는 관절 선택 변수이다.
도 3은 본 발명의 볼봇의 자세 균형 제어 방법(S100)을 수행하는 볼봇의 자세 균형 제어 시스템(100)을 도시하는 블록도이다.
본 발명의 볼봇의 자세 균형 제어 시스템(100)은 목표치 생성부(10), 제어부(20), 볼봇(30) 및 산출부(40)를 포함한다.
도 3을 참조하여 이하, 볼봇의 자세 균형 제어 시스템(100)에 대하여 서술한다.
목표치 생성부(10)는, 도 3의 제어기(22)의 좌측에 배치된 예가 도시된다.
목표치 생성부(10)는, 정의된 작업들을 이용해 레퍼런스 값을 생성한다.
목표치 생성부(10)는, 기준 계획부(11), 무게 중심 작업 생성부(13) 및 볼 작업 생성부(15)를 포함할 수 있다.
기준 계획부(11)는 로봇의 무게 중심에서의 x 방향과 y 방향의 기준 변위값(x G,ref , y G,ref)을 제공받아서 로봇의 무게 중심에서의 x 방향과 y 방향의 목표 변위값(x G,d , y G,d)과 공의 중심에서의 x 방향과 y 방향의 목표 변위값(x K,d , y K,d)을 생성한다.
무게 중심 작업 생성부(13)는 기준 계획부(11)로부터 로봇의 무게 중심에서의 x 방향과 y 방향의 목표 변위값(x G,d, y G,d)을 제공받아서 로봇의 무게 중심에서의 x 방향과 y 방향의 목표힘(f Gx,d, f Gy,d)을 생성하여 제어부(20)로 제공한다.
볼 작업 생성부(15)는 기준 계획부(11)로부터 공의 중심에서의 x 방향과 y 방향의 목표 변위값(x K,d, y K,d)을 제공받아서, 볼의 중심에서의 x 방향과 y 방향의 목표힘(f Kx,d, f Ky,d)을 생성하여 제어부(20)로 제공한다.
제어부(20)는 목표치 생성부(10)로부터 로봇의 무게 중심과 볼의 중심 각각에서의 x 방향과 y 방향의 목표힘(f Gx,d, f Gy,d , f Kx,d, f Ky,d)을 제공받아서 제어 입력과 접촉힘을 계산한다.
제어부(20)는 제어 입력을 계산하는 제어기(22) 및 접촉힘을 계산하는 접촉힘산출부(25)를 포함할 수 있다. 접촉힘산출부(25)는 일례로, Quadratic Programming(QP)을 수행하도록 이루어질 수 있다.
접촉힘산출부(25)에 의해 계산된 접촉힘(f QP C)은 제어기(22)로 제공되어 로봇의 관절 토크(
Figure 112020113977969-pat00214
)를 도출한다.
한편, 접촉힘산출부(25)는 후술하는 산출부(40)로부터 산출된 값들(로봇의 질량중심위치값(p G ), 몸통회전 목표값(R B), 관절변위(q), 일반화 좌표계(ξ), 작업공간에서의 운동 자코비안(J), 볼-작업 공간 행렬(T), 질량 및 관성모멘트(M), 코리올리의 힘 및 원심력(C), 중력값(g))을 제공받을 수 있다.
목표치 생성부(10) 및 산출부(40)로부터 얻어진 변수들을 이용해 이차 프로그래밍 기법으로 접촉힘을 구하고 제어 입력을 계산함으로써, 볼봇(30)의 자세 균형을 제어한다.
도 2를 참조하면, 볼봇(30)은, 지면에 놓여지는 볼(31)과, 볼(31)에 접촉하는 로봇(35)을 포함할 수 있다. 또한, 로봇(35)은, 볼(31)과 접촉하는 휠(wheel, 36)을 구비할 수 있다. 휠(36)은 일례로, 옴니휠(omnidirectional wheel)일 수 있다. 볼봇(30)은 외부힘에 의해 운동한다.
도 3에 도시된 바와 같이, 볼봇(30)은 제어부(20) 및 산출부(40)와 전기적으로 연결될 수 있다.
볼봇(30)에는 외부힘(f c)과 제어부(20)로부터 도출된 로봇의 관절 토크(
Figure 112020113977969-pat00215
)가 입력되어 질량중심위치값(p G ), 몸통회전 목표값(R B), 관절변위(q), 로봇의 일반화 좌표계(ξ B)를 산출하여 산출부(40)로 제공한다.
산출부(40)는 볼봇(30)으로부터 얻어진 상태 변수들(질량중심위치값(p G ), 몸통회전 목표값(R B), 관절변위(q), 로봇의 일반화 좌표계(ξ B))을 이용하여 여러 운동 방정식들을 계산하고 이를 이용해 작업 공간 변수들을 계산하여, 계산된 변수들(로봇의 질량중심위치값(p G ), 몸통회전 목표값(R B), 관절변위(q), 일반화 좌표계(ξ), 작업공간에서의 운동 자코비안(J), 볼-작업 공간 행렬(T), 질량 및 관성모멘트(M), 코리올리의 힘 및 원심력(C), 중력값(g), 작업 공간 T 위치(x T), 작업 공간 T 속도(
Figure 112020113977969-pat00216
T), 로봇의 코리올리의 힘 및 원심력(
Figure 112020113977969-pat00217
), 코리올리의 힘 및 원심력(C), 중력값(g))을 제어부(20)로 제공하도록 한다.
산출부(40)는 시스템 운동방정식과 지면접촉 영공간 운동방정식을 계산할 수 있으며, 작업공간 운동방정식을 또한 계산할 수 있다.
본 발명의 볼봇의 자세 균형 제어 방법(S100) 및 볼봇의 자세 균형 제어 시스템(100)은, Quadratic Programming(QP)을 이용한 균형 제어가 적용될 수 있으며, 볼과 지면의 공간의 영공간에서의 작업을 기반으로 수행될 수 있다.
또한, 본 발명의 볼봇의 자세 균형 제어 방법(S100) 및 볼봇의 자세 균형 제어 시스템(100)은, 영공간으로의 투영을 통해 볼과 지면의 접촉에 대한 정보 없이 로봇 시스템 운동방정식을 다룰 수 있다.
또한, 본 발명의 볼봇의 자세 균형 제어 방법(S100) 및 볼봇의 자세 균형 제어 시스템(100)은, 지면 접촉에 대한 정보 없이 제어가 요구되는 모바일 로봇 등의 분야에도 적용될 수 있다.
이상에서 설명한 볼봇의 자세 균형 제어 방법(S100) 및 볼봇의 자세 균형 제어 시스템(100)은 위에서 설명된 실시예들의 구성과 방법에 한정되는 것이 아니라, 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.
S100:볼봇의 자세 균형 제어 방법
S10:볼, 로봇 및 지면에 대한 제1운동방정식을 구성하는 단계
S20:제1운동방정식으로부터 지면접촉 영공간 행렬을 이용하여 제2운동방정식을 도출하는 단계
S30:볼과 로봇 각각의 속도에 근거하여 작업 변수를 설정하는 단계
S40:상기 작업 변수 및 제2운동방정식에 근거하여, 제2운동방정식이 작업 변수에 의해 변환된 방정식인 제3운동방정식을 도출하는 단계
S50:상기 제3운동방정식으로부터 볼과 로봇 사이의 접촉힘 및 제어 토크 중 적어도 하나를 제어하는 단계
100:볼봇의 자세 균형 제어 시스템
10:목표치 생성부 11:기준 계획부 13:무게 중심 작업 생성부 15:볼 작업 생성부
20:제어부 22:제어기 25:접촉힘산출부
30:볼봇 31:볼 35:로봇 36:휠
40:산출부

Claims (8)

  1. 볼과 로봇을 구비하는 볼봇의 자세 균형 제어 방법으로서,
    볼, 로봇 및 지면에 대한 제1운동방정식을 구성하는 단계;
    상기 제1운동방정식으로부터 지면접촉 영공간 행렬을 이용하여 제2운동방정식을 도출하는 단계;
    볼과 로봇 각각의 속도에 근거하여 작업 변수를 설정하는 단계;
    상기 작업 변수 및 제2운동방정식에 근거하여, 제2운동방정식이 작업 변수에 의해 변환된 방정식인 제3방정식을 도출하는 단계; 및
    상기 제3방정식으로부터 볼과 로봇 사이의 이차 프로그래밍(Quadratic Programming)으로 계산된 접촉힘 및 제어 토크 중 적어도 하나를 제어하는 단계를 포함하고,
    상기 제1운동방정식은 [수학식 1]에 의해 정의되는 것을 특징으로 하는 볼봇의 자세 균형 제어 방법.
    [수학식 1]
    Figure 112022107157931-pat00289

    [수학식 1]에서, M'B은 로봇의 관성 행렬, M'K은 볼의 관성 행렬,
    Figure 112022107157931-pat00290
    은 일반화 좌표계의 가속도, C'B은 로봇에 대한 코리올리 힘 및 원심력, C'K은 볼에 대한 코리올리 힘 및 원심력,
    Figure 112022107157931-pat00291
    Figure 112022107157931-pat00292
    에 의해 표현되는 일반화 좌표계, ξ B T는 로봇의 일반화 좌표계를 표현하는 전치행렬, ξ K T는 볼의 일반화 좌표계를 표현하는 전치행렬,
    Figure 112022107157931-pat00293
    은 일반화 좌표계의 속도,
    Figure 112022107157931-pat00294
    은 일반화 좌표계의 가속도, g'B는 로봇에 대한 중력 벡터, g'K는 볼에 대한 중력 벡터, B'B는 로봇 작업 선택 행렬,
    Figure 112022107157931-pat00295
    는 로봇의 관절 토크, J T CB는 로봇과 접촉점 사이의 자코비안(Jacobian)의 전치행렬, G T CK는 볼과 접촉점 사이의 자코비안의 전치행렬, f C는 휠과 볼 사이의 접촉힘, G T NK는 볼과 지면 사이의 자코비안, f N는 볼과 지면 사이의 접촉힘을 각각 나타낸다.
  2. 삭제
  3. 제1항에 있어서,
    상기 제2운동방정식은 [수학식 2]에 의해 도출되는 것을 특징으로 하는 볼봇의 자세 균형 제어 방법.
    [수학식 2]
    Figure 112022107157931-pat00225

    [수학식 2]에서 ,
    Figure 112022107157931-pat00226
    는 지면접촉 영공간으로 투영된 관성을 나타내는 행렬,
    Figure 112022107157931-pat00227
    은 지면접촉 영공간으로 투영된 코리올리힘 및 원심력을 나타내는 행렬,
    Figure 112022107157931-pat00228
    Figure 112022107157931-pat00229
    에 의해 표현되는 일반화 좌표계, ξ B는 로봇의 일반화 좌표계를 표현하는 벡터, ξ K는 볼의 일반화 좌표계를 표현하는 벡터,
    Figure 112022107157931-pat00230
    은 일반화 좌표계의 속도,
    Figure 112022107157931-pat00231
    은 일반화 좌표계의 가속도,
    Figure 112022107157931-pat00232
    는 지면접촉 영공간으로 투영된 중력 벡터,
    Figure 112022107157931-pat00233
    는 지면접촉 영공간으로 투영된 선택 행렬,
    Figure 112022107157931-pat00234
    은 지면접촉 영공간으로 투영된 휠과 볼 사이의 접촉 자코비안,
    Figure 112022107157931-pat00235
    은 휠과 볼 사이의 접촉힘을 나타낸다.
  4. 제3항에 있어서,
    상기 작업 변수의 설정은 [수학식 3]에 의해 이루어지는 것을 특징으로 하는 볼봇의 자세 균형 제어 방법.
    [수학식 3]
    Figure 112020113977969-pat00236

    [수학식 3]에서,
    Figure 112020113977969-pat00237
    는 작업 변수,
    Figure 112020113977969-pat00238
    은 로봇의 무게 중심에서의 x방향으로의 속도,
    Figure 112020113977969-pat00239
    은 로봇의 무게 중심에서의 y방향으로의 속도,
    Figure 112020113977969-pat00240
    은 공의 중심에서의 x방향으로의 속도, 윗첨자 T는 전치 행렬(transposed matrix),
    Figure 112020113977969-pat00241
    은 공의 중심에서의 y방향으로의 속도,
    Figure 112020113977969-pat00242
    은 로봇의 무게중심 작업 공간 행렬,
    Figure 112020113977969-pat00243
    은 볼 작업 공간 행렬,
    Figure 112020113977969-pat00244
    은 일반화 좌표계의 속도, T
    Figure 112020113977969-pat00245
    에서 T는 작업 공간 행렬이다.
  5. 제4항에 있어서,
    상기 제3방정식은 [수학식 4]에 의해 표현되는 것을 특징으로 하는 볼봇의 자세 균형 제어 방법.
    [수학식 4]
    Figure 112020113977969-pat00246

    [수학식 4]에서,
    Figure 112020113977969-pat00247
    은 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 관성행렬,
    Figure 112020113977969-pat00248
    은 영공간에서 작업공간으로 투영된 볼 관련 관성행렬,
    Figure 112020113977969-pat00249
    는 로봇의 무게중심과 공의 중심에서의 x 및 y 방향으로의 가속도를 포함하는 작업 변수이고,
    Figure 112020113977969-pat00250
    는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 코리올리 힘 및 원심력 행렬,
    Figure 112020113977969-pat00251
    는 영공간에서 작업공간으로 투영된 볼 관련 코리올리 힘 및 원심력 행렬,
    Figure 112020113977969-pat00252
    는 전술한 바와 같이 로봇의 무게중심과 공의 중심에서의 x 및 y 방향으로의 속도를 포함하는 작업 변수이고,
    Figure 112020113977969-pat00253
    는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 중력 벡터,
    Figure 112020113977969-pat00254
    는 영공간에서 작업공간으로 투영된 볼 관련 중력 벡터,
    Figure 112020113977969-pat00255
    는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 선택 행렬,
    Figure 112020113977969-pat00256
    는 로봇의 관절 토크,
    Figure 112020113977969-pat00257
    는 영공간에서 작업공간으로 투영된 휠과 볼 사이의 자코비안의 전치행렬,
    Figure 112020113977969-pat00258
    는 영공간에서 작업공간으로 투영된 볼과 지면 사이의 자코비안의 전치행렬,
    Figure 112020113977969-pat00259
    은 휠과 볼 사이의 접촉힘을 나타낸다.
  6. 제5항에 있어서,
    상기 접촉힘은 [수학식 5]에 의해 표현되는 것을 특징으로 하는 볼봇의 자세 균형 제어 방법.
    [수학식 5]
    Figure 112020113977969-pat00260

    [수학식 5]에서,
    Figure 112020113977969-pat00261
    는 영공간에서 작업공간으로 투영된 볼에 가해지는 접촉힘,
    Figure 112020113977969-pat00262
    는 영공간에서 작업공간으로 투영된 볼관련 관성행렬,
    Figure 112020113977969-pat00263
    은 레퍼런스 작업 가속도, G T C,K는 휠과 볼 사이의 자코비안의 전치행렬,
    Figure 112020113977969-pat00264
    은 휠과 볼사이의 접촉힘이다.
  7. 제6항에 있어서,
    상기 제어 토크는 [수학식 6]에 의해 표현되는 것을 특징으로 하는 볼봇의 자세 균형 제어 방법.
    [수학식 6]
    Figure 112020113977969-pat00265

    [수학식 6]에서,
    Figure 112020113977969-pat00266
    는 로봇의 관절 토크,
    Figure 112020113977969-pat00267
    는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 선택 행렬의 일반화 역행렬이고,
    Figure 112020113977969-pat00268
    은 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 관성행렬,
    Figure 112020113977969-pat00269
    은 레퍼런스 작업 가속도이고,
    Figure 112020113977969-pat00270
    이고,
    Figure 112020113977969-pat00271
    은 로봇 작업 레퍼런스 가속도,
    Figure 112020113977969-pat00272
    은 볼 작업 레퍼런스 가속도,
    Figure 112020113977969-pat00273
    는 스케일링 이득,
    Figure 112020113977969-pat00274
    은 모멘트 중심 반사 운동(Com reflex), K K,p는 볼 작업 비례이득, K K,d는 볼 작업 감쇠이득,
    Figure 112020113977969-pat00275
    는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 코리올리 힘 및 원심력 행렬,
    Figure 112020113977969-pat00276
    는 작업 속도,
    Figure 112020113977969-pat00277
    는 영공간에서 작업공간으로 투영된 로봇의 무게 중심 관련 중력 벡터,
    Figure 112020113977969-pat00278
    는 영공간에서 작업공간으로 투영된 휠과 볼 사이의 자코비안의 전치행렬,
    Figure 112020113977969-pat00279
    은 Quadratic Programming(QP)로부터 계산된 접촉힘이다.
  8. 청구항 제1항 및 제3항 내지 제7항 중 어느 한 항의 볼봇의 자세 균형 제어 방법을 이용하는 볼봇의 자세 균형 제어 시스템으로서,
    정의된 작업들을 이용해 레퍼런스 값을 생성하는 목표치 생성부;
    목표치 생성부로부터 생성된 로봇의 레퍼런스 값을 제공받아서 제어 입력과 접촉힘을 계산하는 제어부;
    지면에 놓여지는 볼과, 볼에 접촉하는 로봇을 포함하고, 외부힘에 의해 운동하는 볼봇; 및
    볼봇의 운동으로부터 얻어진 변수들을 계산하고, 계산된 변수들을 제어부로 제공하는 산출부를 포함하는 것을 특징으로 하는 볼봇의 자세 균형 제어 시스템.
KR1020200140151A 2020-10-27 2020-10-27 영공간으로 투영된 작업 공간을 활용한 볼봇의 자세 균형 제어 방법 및 이를 이용하는 제어 시스템 KR102492869B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200140151A KR102492869B1 (ko) 2020-10-27 2020-10-27 영공간으로 투영된 작업 공간을 활용한 볼봇의 자세 균형 제어 방법 및 이를 이용하는 제어 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200140151A KR102492869B1 (ko) 2020-10-27 2020-10-27 영공간으로 투영된 작업 공간을 활용한 볼봇의 자세 균형 제어 방법 및 이를 이용하는 제어 시스템

Publications (2)

Publication Number Publication Date
KR20220055738A KR20220055738A (ko) 2022-05-04
KR102492869B1 true KR102492869B1 (ko) 2023-01-31

Family

ID=81584013

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200140151A KR102492869B1 (ko) 2020-10-27 2020-10-27 영공간으로 투영된 작업 공간을 활용한 볼봇의 자세 균형 제어 방법 및 이를 이용하는 제어 시스템

Country Status (1)

Country Link
KR (1) KR102492869B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011188590A (ja) 2010-03-05 2011-09-22 Hitachi Ltd 発電機運用計画決定装置、発電機運用計画決定方法及び発電機運用計画決定プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2874238B2 (ja) 1990-01-23 1999-03-24 株式会社安川電機 多関節形ロボットの制御方法
EP2933068B1 (en) * 2014-04-17 2021-08-18 Aldebaran Robotics Omnidirectional wheeled humanoid robot based on a linear predictive position and velocity controller

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011188590A (ja) 2010-03-05 2011-09-22 Hitachi Ltd 発電機運用計画決定装置、発電機運用計画決定方法及び発電機運用計画決定プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
이지헌 외 1명, "볼봇 로봇시스템의 균형제어에 관한 연구", J. Korean Soc. Manuf. Technol. Eng., Vol.27(3), pp.244~251(2018.06.)*

Also Published As

Publication number Publication date
KR20220055738A (ko) 2022-05-04

Similar Documents

Publication Publication Date Title
Henze et al. Posture and balance control for humanoid robots in multi-contact scenarios based on model predictive control
Katsura et al. Analysis and experimental validation of force bandwidth for force control
Lam et al. Artificial force field for haptic feedback in UAV teleoperation
Kim et al. Designing a robust adaptive dynamic controller for nonholonomic mobile robots under modeling uncertainty and disturbances
CN111538234B (zh) 任务分层控制方法、装置、机器人和可读存储介质
Cheah et al. Task-space sensory feedback control of robot manipulators
Rijnen et al. Control of humanoid robot motions with impacts: Numerical experiments with reference spreading control
Lee et al. Robust translational force control of multi-rotor UAV for precise acceleration tracking
Mishra et al. Robust task-space motion control of a mobile manipulator using a nonlinear control with an uncertainty estimator
Lee et al. Hybrid control scheme for robust tracking of two-link flexible manipulator
KR102492869B1 (ko) 영공간으로 투영된 작업 공간을 활용한 볼봇의 자세 균형 제어 방법 및 이를 이용하는 제어 시스템
KR102350193B1 (ko) 확장 작업 공간을 활용한 휴머노이드 제어방법
JPH05143161A (ja) 位置および力を制御するハイブリツドシステム
Doulgeri et al. A position/force control for a robot finger with soft tip and uncertain kinematics
US11407467B2 (en) Stable balance controller
Djeha et al. Robust task-space quadratic programming for kinematic-controlled robots
Qiao et al. Anti-disturbance iterative learning tracking control for space manipulators with repetitive reference trajectory
Chen et al. Integrating local motion planning and robust decentralized fault-tolerant tracking control for search and rescue task of hybrid UAVs and biped robots team system
CN114161402B (zh) 机器人稳定控制方法、模型构建方法、装置和机器人
US20190232490A1 (en) System and method for balance control of humanoid
Krafes et al. Backstepping controller design for a 5 DOF spherical inverted pendulum
CN112975965B (zh) 仿人机器人的解耦控制方法、装置和仿人机器人
JP2552279B2 (ja) ロボツトの姿勢制御方法
Tung et al. Application of MRAC theory for adaptive control of a constrained robot manipulator
US11472024B2 (en) Humanoid robot and its control method and computer readable storage medium

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant