티스토리 뷰

Improving Low-Impedance Performance

사람이랑 같이 협동하는 로봇을 만들 경우 당연히 낮은 기계적 임피던스를 가져야 한다. 가장 쉬운 방법은 낮은 임피던스 하드웨어로 간단한 임피던스 컨트롤 알고리즘을 접목시키는 것이다. 하지만 낮은 기계적 임피던스를 갖는 하드웨어를 만들기란 쉽지 않다. 특히 복잡한 구조와 큰 힘과 파워를 낼 경우 더욱 더 쉽지 않다. 또한 마찰과 이노시아도 고려해야하는 상황이 많은데 간단한 임피던스 컨트롤의 경우 이런 부분을 고려하지 않는다.

Force Feedback

힘 피드백은 존재하는 임피던스를 줄이는 방법중 하나이다. 위와 같은 1차원 시스템에 간단한 임피던스 컨트롤이 적용되며 이때 비선형 마찰력이 발생하고 있다고 해보자. 또한 비례적인 힘 피드백 컨트롤러가 같이 있다고 보자. 이에 대한 식은 아래와 같이 표현 가능한데

KBstiffnessdamping 값이며 r은 가상의 위치를 말한다. 여기서 힘 피드백 항은 원하는 끝단의 힘과 실제 끝단의 힘의 차이를 줄이는 방향으로 작용한다. 이는 다시 생각해보면, 가상의 경로(trajectory)로 연결 된 damped 된 스프링(K와 B 상수를 갖는)과 같다.

(여기서 다시한번 임피던스 컨트롤과 PD 컨트롤의 유사성을 발견할 수 있다.

K(1+Kf)가 P gain, B(1+Kf)가 D gain과 같이 작용한다는 걸 볼 수 있다.)

비선형 마찰이 작용하는 시스템에 제어기가 붙지 않는 식은 아래와 같다.

이 식과 힘 피드백이 있는 식을 같이 고려하면 모션 제어 식은

이렇게 표시된다.

이 식은 비례적 힘 피드백이 질량과 마찰을 힘 피드백 게인만큼 줄이는 것을 보여준다. 따라서 이론적으로는 큰 힘 게인은 실제 임피던스를 원하는 임피던스로 가게 해준다. 마찰, 이노시아 혹은 다른 행동들도 최소화 될 수 있다.분명 힘 피드백 기반 임피던스 제어가 좋은 점이 있지만, 한계점도 존재한다. 게인 값을 올릴 수록 언제나 시스템의 불안정성도 같이 가져온다는 점이다.

(이부분은 이해가 잘 안되긴 합니다. 결국 gain값 설정이 높아지면 실제 임피던스 자체에는 이점이 있지만, 시스템 전반적인 불안정성을 야기한다는 뜻인 것 같습니다.)

Colgate는 힘 피드백의 physical equivalent representation을 유도했다. 이는 기계적 시스템의 모델 표현으로 피드백 컨트롤로 움직이는 시스템의 행동을 보여준다. 위 그림은 force 피드백에 대한 단순 구조의 진동 모드에 대한 로봇 모델을 보여준다. 이때 힘 피드백 게인이 1보다 클 경우 음수의 stiffness, mass, damping 값을 가지게 된다.

끝 단의 힘 피드백이 state 피드백이 아니기 때문에, isolated stability는 영향을 받지 않는다. 시스템은 interaction 힘 F_e가 0일 경우에는 자연스럽게 안정적이다. 하지만 Kf가 1보다 커지기 시작하면 패시브하지 않기 때문에, contact에 대한 행동이 negative 점탄성을 가져서 coupled 된 불안정성을 만든다. 이 Kf 게인의 제약은 구조적 stiffness와 damping 값과는 별개라는 걸 생각해야된다. 대부분의 로봇이 공진을 겪기 때문에, 힘 피드백으로 구성된 시스템의 경우 1보다 큰 힘 피드백 루프 게인에 의해 nonpassive해지고 이는 coupled instability에 불안정성하게 된다.

passivitiy에 대해 보고 가면 좋은 영상

https://www.youtube.com/watch?v=yFS5PSmlp6E

Natural Admittance Control

힘 피드백에 의한 passivitiy를 없애기 위한 방법 중 하나가 NAC이다. 이 방법은 컨트롤러가 분명한(apparent) 이너시아를 줄였을 때 nonpassive 해지는 힘 피드백이 있는 시스템의 observation을 기반으로 두고 있다. 하지만 passivity는 마찰의 제거만으로는 타협되지 않는다. NAC는 실제 물리적 시스템의 이너시아와 비슷한 원하는 이너시아를 설정해주고 마찰을 최대한 줄이면서 passivity를 보존하는 방향으로 집중한다.

NAC에 대한 자세한 내용은 아래 논문에서 확인할 수 있다.

https://onlinelibrary.wiley.com/doi/abs/10.1002/rob.4620110103?casa_token=1tpKqZeUhh4AAAAA:flYRZtMSBsN_AdAPV-XHUKmjXIPSS8FiHGv7UvwboBEFB0qb4SssNKdPwcZBt6C3pQahPwkQa_ec9nG_hA

앞에서 봤던 1차원의 단순한 로봇 시스템에서 NAC를 확인해보자.

1차원 단순한 로봇 시스템은 마찰력에 의해 느려지는 질량과 액츄에이터와 환경에 의한 힘으로 구성되어 있다.

이때 시스템은 비선형 마찰도 가지고 있을 수 있고, 이는 NAC를 통해 없애려고 한다고 해보자. 없애기 위해서 이를 모델에 고려할 필요는 없다.

단순히 컨트롤러가 비선형 마찰은 외란이라고 생각하고 없애려고 하기 때문이다.

비선형 마찰을 고려하지 않은 시스템 모션의 모델은 아래와 같다.

라플라스 도메인으로 바꿔주게 되면

Compensator Gv로 구성 된 속도 피드백과 Compensator Gf로 구성 된 힘 피드백으로 이루어진 컨트롤러는 아래와 같이 표현될 수 있다.

v에 대한 식과 Fa에 대한 식을 이용하여 실제 끝 단의 admittance Y(s)=v/Fe를 구할 수 있다.

위 식은 목표(target) 포트 admittance와 동일하다. 목표 stiffness K와 damping B 값은 임의로 선택되지만 목표 질량 m은 실제 시스템의 질량과 동일하다.

위 두식을 이용해서 Compensator인 Gf를 Gv 항의 식으로 계산할 수 있다.

Gv에 대한 값은 상수값으로 설정될 수 있으니 위 식처럼 컨트롤러에 필요한 Compensator를 설정할 수 있다.

이 식은 "Force feedback filter"라고도 표현할 수 있는데, 이 필터가 그 위에 있는 식인 admittance 값을 나타낸다고 볼 수 있다. 비록 질량 자체가 줄지는 않지만, 원하는 행동에 대한 마찰 외란은 compensator의 피드백 게인으로 지워진다(rejected). 이 지워지는 정도는 속도 게인(Gv)이 커질수록 효과는 작아진다. 비선형적인 마찰힘에 대한 외란을 줄이는데도 적용할 수 있다. 원칙적으로는 컨트롤되는 시스템은 원하지 않는 마찰로 인한 효과를 줄이기 위해 속도 게인을 증가시켜도 passive 해야된다. 하지만 실제로는 모델링 되지 않은 다이나믹 효과들은 passivity와 타협하지 않고 사용될 수도 있는 게인값을 제한한다. 그럼에도 이 compsensator를 추가하는 방법은 간단한 비례적인 힘 피드백에서 꽤 효과적인 향상(passivity를 보존하는(?)) 을 보여준다.

이번 내용도 머리속으로는 대충 알겠는데, 디테일한 부분들이 이해가 잘 안되네요.

먼저 정리해두고, 글에서 언급한 논문들을 읽어봐야겠습니다.

 
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30