티스토리 뷰

 

#임피던스제어 #제어공학 #로봇공학 #제어

Series Dynamics

이전 글에서 Force feedback이 있을 경우 시스템의 Positivity와 관련 된 방법으로 Natural Admittance control에 대해 이야기 했다.

확실하게 이해를 못했지만, 다음 챕터로 넘어가서 정리를 해보려한다. Force feedback이 있을 때 interaction을 안정화 시키는 다른 방법으로는 compliant 와 viscous 요소를 manipulator와 환경 사이에 연속으로 넣는 것이다.

 

이런 방법은 옛날부터 로봇에 많이 사용됐는데, 한가지의 예시로 로봇의 끝 부분에 붙어 있는 compliant pad(아마 고무 패드 같은 걸 이야기 하는듯)를 생각할 수 있다. 이런 방법의 단점은 미세한 움직임이 잘 안될 수도 있다는 것이다. 최근에는 여러개의(series) 스프링이 force control 액추에이터에 같이 들어가서 나온다. 이는 force feedback을 활용하고 외부 힘(impacts)를 흡수할 수 있다.

 

아래 그림은 연결 된 다이나믹 요소들이 주는 이득을 보여준다.

 

스피링과 mass로 구성 된 환경은 그래프의 위쪽으로 파라미터들이 설정 될 경우 stable해지고, 아래쪽으로 떨어질 경우 불안정해진다.

 

그림1
 

그림에서는 환경과 상호작용하는 단일 공진(single resonance) 모델 사이 포트(interaction port)에 직렬로 배치된 (Series dynamics) 시스템을 확인 할 수 있다.

그림2

힘제어가 된 시스템에서의 직렬 배치된 (series) 스프링의 안정화 효과는 Figure 19.2와 같은 간단한 로봇 모델을 기준으로 알아볼 수 있다.

식 1번
식 2번

식 1번이나 2번의 제어 법칙에 의해 위 시스템은 nonpassive 임피던스를 가질 수도 있고 주변 환경과의 상호작용으로 불안정화 될 수 있다. 하지만 넓은 범위의 스프링이나 질량(mass) 환경과의 상호 작용으로 안정적일 수 있는데, 이는 위에서 언급한 그래프를 확인하면 이해가 쉽게 된다. 이런 예시에서 높은 강성의 스프링들은 불안정성을 높이고, 질량은 안정성을 높인다. 로봇의 상호작용 포트와 환경 사이에 질량과 스프링이 놓이게 되면, 사진에서의 Ks와 ms 상수가 보여주듯이, 제어되는 로봇(시스템)의 강성은 Ks를 넘을 수 없다.

 

따라서 Ks값의 선택에 따라서 상호작용 포트의 임피던스가 passive하게 만들어지고, 상호작용을 안정화 시킨다. 사실상 제어기의 "환경"은 로봇과 같이 다니면서 시스템을 불안정하게 하는 환경과 만나는 것을 막아주는 "필터" 역할을 한다. (쉽게 말해서 로봇에 추가한 Series dynamics 자체가 로봇이 환경과 상호작용하면서 생기는 불안정성을 안정하게 만들어 준다는 뜻)

 

"Series elastic actuators"

https://fab.cba.mit.edu/classes/865.15/people/rebecca.kleinberger/assets/papers/SEA_Pratt.pdf

 

위의 논문의 구현은 Ks와 환경 사이의 이너시아 ms를 추가하기도 한다. 제어기의 환경을 최대 강성만이 아니라 최소 이너시아로 만들어서 시스템 자체를 더욱 안정시킨다. 그림 1번을 보면, 강성 Ks와 이너시아 ms는 안정한 영역으로 uncoupled 로봇이 들어오도록 선택할 수 있다는 것이다. 수동적인(passisve) 환경과 상호작용 한다고 해보자, 상호작용 포트는 환경에서 위쪽으로와 왼쪽 지점에서만 만나도록 보장되면서, coupled 안정성을 보장하게 된다. (coupled, uncoupled의 뜻이 헷갈린다.)

 

여기서 언급한 방법이 nonpassive 시스템들의 안정성을 보장하지만, 모든 nonpassive 시스템에 적용이 가능한 것은 아니다. 다른 논문에서는

nonpassive 행동의 제어기나 환경에서 생성되는 에너지를 쓰는(drain, 빨아드리는?) damping에 대한 식을 보이기도 한다. 이 방법에서는 스프링과 댐퍼가 병렬로 환경과 연결되어 있다(위 사진처럼). 상호작용 포트에서의 admittance 함수의 passivity를 분석하여 스프링과 댐퍼 상수 값을 설정할 수 있다. 병렬 연결 된 댐퍼와 스프링을 2개의 포트로 모델링 하는 것으로, 스프링과 댐퍼의 outboard side에서의 admittance인 Y(s) 값은 Y_o(s)인 로봇의 기존 admittance 값으로 계산될 수 있다. 아래식을 참고하자.

 

댐퍼 상수 bs는 고주파수 영역대에서 net admittance에 positive 상수 항에 기여하게 되는데, 이는 Yo(s)에서의 negative 상수 항을 상쇄시켜주게 된다. 스프링의 경우 댐핑이 지배적인 주파수 영역을 지정해준다. 이 두개를 조절해서 Y(s)를 passive하게 만들 수 있다.

 

이렇게 고의적으로 혹은 가상으로 넣은 연속적인 다이나믹스는 아날로그-디지털 컨버터와 같이 사용되는 anti-aliasing 필터와 약간 유사한 "기계적 필터"로 생각할 수 있다. 이는 coupled 불안정성에 대해 시스템을 취약하게 만드는 주변 주파수 영역의 효과를 줄이고, 원하는 다이나믹 행동을 하는 관심 주파수 영역을 보존하는 방향으로 진행된다.

Conclusion

상호작용에 대한 제어기의 궁극적인 목표는 시스템의 포트에서의 상호작용에 대한(Input에 대한) 원하는 다이나믹 행동의 변화(deviation)을 최소하 하기 위함이다. 이를 위해 힘과 모션의 관점에서 제어를 하게 되는데, 각각 하나의 포트 변수에 대해서만 집중한다. zero admittance나 infinite impedance는 적용된 힘에 대한 반응으로 모션을 하나도 취하지 않는다. 즉, 모션을 가지고 있을 때 모션은 들어오는 힘에 영향을 받지 않는 다는 것이다. 반대로 zero impedance나 infinite admittance는 상호작용 포트에 대한 모션에 아무런 의존성이 없다. 즉, 힘 제어기로서 가장 이상적인 상태라는 말이다.

 

따라서 모션이나 힘 제어기를 디자인할 때는 상호작용 안정성을 조금 잊고(포기하고) 포트 임피던스의 최대화나 최소화를 조금 더 가져가기로(선호하기로) 결정하고는 한다. 이런 결정은 로봇과 환경 사이에 교환되는 작업(상호작용)이 무시할 수 있는 경우에는 괜찮다. 하지만 일의 교환이 무시될 수 없는 경우에는 상호작용 제어가 교환에 대한 효과(영향)을 수용할 수 있게 해준다.

 

이것으로 일반적인, 러프한 임피던스 컨트롤에 대한 정리를 끝입니다.

아마도 간단한 구현 코드를 작성해보거나, (최교수님 연구실의 백ㅊㄹ과 함께 진행해보려고 노력할 수도 있을 듯)

아니면 힘/강성 제어에 대한 이론 공부를 진행할 수도 있을 것 같습니다.

 

참고자료

 

Summer_camp_Impedence_control from MIT

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
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