정회원 이상 전용 게시판입니다.
  • Q: [강좌] 다빈치리졸브 강좌 joypara 2017.12.23
  • Q: [정보] 323,328 웰컴센터,배내골 버스시간표 joypara 2016.01.17
  • Q: [기타] 윈도우 7 빌드 7061 정품이 아닙니다 뜰때. joypara 2015.12.18
  • Q: 색보정 관심있으신분 들려보세요. joypara 2015.11.23
  • Q: [강좌] simpleBGC 소프트웨어 기본 셋팅법 하늘치기 2015.11.17
  • Q: [강좌] 알렉스 모스 짐벌 온도 캘리브레이션 하는 방법 joypara 2015.10.03
  • Q: [강좌] 알렉스모드 짐벌과 관련해서 .( 펀글) 하늘치기 2015.10.03
    A:

    딴곳에서 퍼온것입니다.

    필요하신분 시간날때 영상도보시고 글도 함 읽어 보세요.

    인터넷에 찾아 보면 짐벌과 관련된 많은 자료가 있습니다.

    아래 글과 영상은 개념이해에 도움이되리라 보입니다.

     감사합니다.

     

    =======================================================================================================================

    영상링크

    1. : https://youtu.be/AciGdobP798

    2. : https://youtu.be/9lf2EhDTMRU

    3. : https://youtu.be/bsMfIYjZYyE

    4. : https://youtu.be/Pn-05pAJzCY

    5. : https://youtu.be/aGNJB5eOvzI

    ========================================================================================================================

     
     

     

    아래글은 멀티로터 남상호님글을 퍼왔습니다.

     

    안녕하세요.

    제가 어쩌다 보니 정회원이 되었군요^^

    정회원이 된 기념으로 글 하나 투척합니다.

    다들 어려워 하시는 PID 세팅(짐벌 세팅)입니다.

    솔직히 이 글은 올리기 두렵습니다. 카페에 짐벌의 도사님들이 막강 포진하고 계신데 초보인 제가 짐벌 세팅에 대해 이야기 하는게… 주제가 무슨 높이뛰기도 아닌데 주제 넘은 짓이라 생각이 되어서…

     

    그래서 PID 세팅이 무엇이며 도대체 어떻게 작동하는 것이냐 하는 기본 개념 중심으로만 설명드릴까 합니다.

    미리 밝히는 것은 저는 전자 제어나 이런 쪽을 전공한 사람이 아닙니다. 따라서 제가 잘 못 알고 있는 내용도 있을겁니다. 틀린 부분 있으면 잘 못된 정보가 전달되면 안되므로 고수님들의 사정없는(?) 지적질 부탁드립니다.

    처음에 짐벌을 사서 전원을 넣었더니 혼자서 벌벌떨고 트위스트를 추면서 난리도 아니더군요.

    고장날까봐 얼른 전원을 빼 버렸습니다. 그냥 사서 연결하면 되는 것인 줄 알았는데......

    또 전원 넣으니 또 트위스트를 춥니다. 그래서 도저히 안되겠다 싶어 우스꽝스럽게도 음악을 틀어놓고 짐벌이 춤을 추는 동영상을 찍어서 해외 판매처에 보내고서는 “이거 고장이니 바꿔달라”고 했습니다. ㅎㅎㅎ~

    아주 공손한 이메일을 판매 업체로부터 받았는데 말투는 더 할 나위없이 친절하고 공손했지만 내용은 “니가 무식한거다”더라구요. 그래서 연구에 돌입했습니다. 그리고 이것저것 연구를 해 보니 P.I.D. 값을 맞추어 주어야 한다는군요.

    자 그럼 본격적으로 PID 제어에 대해서 알아 보겠습니다.

     

    PID 제어란 여러가지 제어 방법 가운데서 목표 값에 신속하게 도달하기 위해 사용되는 대표적인 제어 방법입니다.

     

    사실 우리는 살아가면서 여러 사안에서 본능적으로 PID제어를 하면서 살고 있습니다.

     

    가장 대표적인 것이 샤워입니다.

    "수도꼭지의 바보"라는 말이 있지요. 샤워를 하러 들어갑니다. 왼쪽으로 끝까지 샤워 꼭지를 돌립니다. 처음에는 괜찮다가 이내 뜨거운 물이 확 쏟아집니다. 그러면 앗 뜨거 하면서 이번에는 샤워 꼭지를 오른쪽으로 끝까지 돌립니다. 조금만 지나면 이번에는 찬물이 확 쏟아집니다. 그러면 앗 차거 하면서 또 이번에는 왼쪽으로 끝까지 샤워 꼭지를 돌립니다. 그걸 반복하지요. 그래서 수도꼭지의 바보라고 합니다. 이것이 바로 On-Off 제어입니다. 뜨거운 물과 찬 물 사이를 왔다갔다 하는 것이지요. 원하는 값인 샤워에 적당한 미지근 한 물에는 도달 할 수 없습니다. 다행이 샤워 꼭지를 이렇게 조절하는 사람은 없습니다.

     

    실제로는 이렇게 합니다. 처음에 약간 왼쪽으로 물을 틉니다. 그러고 샤워를 하는 중에 물이 차가우면 조금만 왼쪽으로 돌리거나 뜨거우면 조금만 오른쪽으로 돌립니다. 그리고 갈수록 그 조절의 크기는 작아지고 정밀해집니다. 결국 자신이 원하는 물 온도에 도달하게 됩니다. 이것이 PID 제어입니다. 원하는 값에 신속하게 도달하는 방법이지요. 늘 하는 단순한 행동이지만 그 안에는 대단한 메카니즘이 숨어있습니다.

     

    그럼 PID가 무엇을 의미하기에 이런 조절이 가능한 것일까요.

     

    PID는 Proportional Integral Derivative (Control) 의 머리 글자입니다.

    비례적으로(Proportional), 적분(Integral)과 미분(Derivative) 값을 이용하여 제어하는 것입니다.

    위의 글을 읽는 순간 머리가 띵~해 옵니다. 비례까지는 어찌어찌 알겠는데 미분과 적분이라니...... 헐~

     

    먼저 비례적 제어(P)는 목표 값과 현재 측정 값의 차이를 비례적으로 제어하는 것을 말합니다. 차이가 크던 작던 10만 조절하는 것이 아니라 차이가 작으면 작게 조절하고 차이가 크면 한방에 크게 조절하여 신속하게 목표값 근처에 다가가게 됩니다. 예를들어 목표 값과 현재 측정 값의 차이가 10일 때 1을 조정하면 10 (1*10)을 조절하는 것이 됩니다. 2를 조정하면 20(2*10)을 조절하는 것이 됩니다. 이렇게 1이나 2처럼 비례를 결정짓는 어떤 상수가 존재하게 되는데 이것을 비례감도 혹은 비례상수라고 합니다. 우리가 짐벌을 조절하기 위해 P값을 입력하게 되는데 이것이 바로 비례 상수입니다. 비례 상수가 충분히 크다면 짧은 순간에 신속하게 목표값에 접근할 수 있습니다. 샤워를 할 때 뜨거운 물이 나온다고 샤워 꼭지를 눈꼽만큼 오른쪽으로 돌리지 않습니다. 적당한 온도의 물이 나올 것이라고 예측되는 지점까지 과감하게 돌리게 되지요. 우리 뇌가 비례제어를 하는 것입니다. 그러나 비례 제어를 통해서 목표값에 아주 근접하게 다가 갈 수는 있지만 결코 목표 값에 도달하지는 못 합니다. 편차에 일정 값(비례 상수)을 곱하여 목표값에 근접시키는 것이므로 편차가 16에서 제어를 통해 8로 다시 제어를 통해 4로...... 가겠지만 결코 0이 되지는 않습니다. 계산(분석)이 불가능해지는 어느 순간 일정한 값의 잔류 편차라는 것이 남는 것이지요. 충분히 높은 비례 상수를 주어서 한방에 16이라는 편차를 제거하면 되지 않겠냐라고 생각할 수 있지만 그럴 경우에는 지나치게 높은 비례 감도로 인하여 진동(발진)이 발생합니다. 즉 목표값을 넘어서는 결과(오버슈트라고 합니다)가 나올 수 있는 것이지요. 목표값에 수렴하는 것이 아니라 오락가락을 반복하게 됩니다. 그래서 보다 더 정확한 제어를 위하여 적분값(I)을 이용합니다.

     

    적분하는 방법은 몰라도 됩니다. 그건 짐벌이 알아서 합니다. 다만 기억을 떠 올려보면 적분은 그래프의 아랫 부분의 면적을 모두 더하는… 어쩌구… 네 그것만 기억나면 됩니다. 적분 제어(I)는 위의 P제어에서 필연적으로 발생하는 잔류 편차를 제거하기 위하여 고안되었습니다. 잔류 편차 그 자체는 너무나 작아서 P제어로는 목표 값 도달이 어려우므로 잔류 편차가 발생하는 것을 계속 누적해 나가다가(그래프 아랫 부분의 면적을 모두 더해 나가다가) 그 값이 일정 값(P제어가 가능한 값)에 도달하면 즉시 쌓였던 잔류 편차를 한방에 조절을 하여 없애는 것입니다. 샤워를 하면서 물이 슬슬 따뜻해 져도 어느 정도까지는 샤워를 하다가 뜨거워지면 그때 수도꼭지를 돌립니다. 계속 원하는 온도를 맞추기 위해서 수도 꼭지를 붙들고 있지는 않지요. 왜냐하면 우리의 목표는 샤워를 하는 것이지 수도 꼭지를 부여 잡고 있으려고 샤워 부스에 들어간 것이 아니니까요.

     

    이렇게 P.I. 제어만으로도 목표값에는 도달 할 수 있습니다. 그런데 문제는 P제어는 비례상수 때문에 때로는 목표값을 넘어서는 결과가 나오게 되고 그러면 다시 줄이는 동작을 하게되고 그러면 또 이번에는 목표값에 미달하는 결과를 낳게 됩니다. 즉시 목표값에 도달하는 것이 아니라 목표값을 넘어섰다 미달했다 하는 과정을 통해 목표값에 수렴해 나가서 결국 도달하는 것이지요. 특히 짐벌의 경우에는 측정값 자체가 계속 변하는 특성을 가지고 있습니다. 날리는 사람이 어찌 할 수 없는 순간적인 바람에 언제나 노출되어 있는 환경인 공중에 떠 있을 뿐만 아니라 그 떠 있는 물건 자체가 모터를 돌리는 진동체입니다. 즉, 예측 불가능하면서도 지속적인 진동 상황에 놓여있습니다. 이 경우 순간적인 바람과 조종사의 스틱 동작, 비행체의 진동 등 불안정의 요소가 많기에 짐벌이 신속하게 목표값에 도달하는 것(카메라를 고정시키는 것)이 무엇보다 중요하게 됩니다. 바람 한번 불었는데 카메라가 제자리로 돌아오는데 1초만 걸려도 영상에는 치명적으로 티가 납니다. 그래서 미분을 통한 제어(D)를 하게 됩니다. 수학적으로 설명하자면 끊임없이 변화하는 진동 그래프에서 그 접선의 기울기를 구하여 비교하는 것이 될테고, 그냥 설명하면 단순히 목표값과 측정값의 차이만 반영하는 것이 아니라, 지난번과 이번의 측정값의 크기를 비교하여 그 크기에 알맞은 미세 조절이 가능하도록 해 주는 것이지요. "지난번 측정값과 목표값의 차이가 10이었는데 이번에는 5네? 그러면 조절량을 줄여야겠다" 이렇게 작동하는 것입니다. 이 경우 미세한 변화량이 조절에 반영되기 때문에 P 보정에서 나타나는 순간적으로 목표값을 넘어서는 결과(오버슈트)를 막아줍니다. 즉 외부 요인으로 큰 변화가 발생 할 때 일단은 P제어를 통해 큰 값을 보정하여 목표값 근처에에 신속하게 도달한 다음 D제어를 통해 미세하게 남은 제어를 하고 그러고도 남은 잔류 편차를 I 제어를 통해 제거하는 것이라고 보면 되겠습니다(물론 설명을 위해서 이렇게 말씀드렸지만 사실 3가지 동작은 거의 동시에 순간적으로 모두 일어납니다). 그래서 실제로 PID 값을 정해 줄 때도 그 순서대로 합니다. 제일 먼저 P값을 조절하고 그 다음 D값 마지막으로 I 값을 조절하게 됩니다. 우리가 샤워를 할 때 뜨거운 물이 나온다고해서 샤워꼭지를 오른쪽 끝까지 돌리지 않습니다. 그러면 금방 차가운 물이 쏟아질 것을 알기 때문이지요. 물 온도의 변화량을 느끼고 그 온도에 적합한 만큼만 샤워꼭지를 조절합니다. 이렇게 우리 뇌도 D 제어를 하는 것이지요.

     

    위의 글에서는 PID 제어에 대해서만 적었는데 사실 짐벌 세팅의 절반은 무게 중심 잡기에 있다고 해도 과언이 아닙니다. 허공에 떠 있는 모든 물건은 중력의 지배를 받습니다. 땅으로 떨어지려고 하지요. 그런데 수직으로 세운 바늘 하나 위에 그 물건을 올려야 한다라는 과제가 주어진다면 눈에 불을 켜고 찾아야 하는 것이 무게 중심입니다.

     

    즉, 짐벌에 전원이 들어가서 모터가 자세를 바로 잡지 않아도, 무전원 상태에서도 카메라가 좌우, 앞뒤, 위아래 여섯 방향에 대해서 직각을 유지하며 앞을 바라보아야 한다는 것이지요. 그렇지 않을 경우 두가지 악영향이 있습니다. 카메라가 정면(0도)에서부터 고개를 숙여서 아래로 90도까지 틸트(피치) 제어를 한다고 가정하겠습니다. 이 경우,

     

    첫째는 무게 중심을 잘 못 잡아서 정면을 보고있는 0도 각도에서 앞이 무거워서 자꾸 고개가 숙여질 경우 그것을 잡기 위해서는 모터가 계속해서 힘을 주고 있어야겠지요. 사실 모터는 돌기 위해 태어난 놈입니다. 그런데 짐벌에서는 돌지말고 버텨라는 명령이 내려가 있습니다. 모터는 태생적으로 돌고 싶은데 명령이 돌지 말고 버텨라면 열받는 일이고 돌아버리지 않겠습니까? 그래서 그 결과는 실제로 모터가 열 받습니다^^

     

    둘째는 그래도 모터가 힘이 있으면 열이 날지언정 버티는데 기체가 뒤로 숙여져서 짐벌이 기체랑 아래로 45도 각도를 이루면 그때 모터가 견뎌야 하는 힘이 최대가 됩니다. 중학교 때 배운 벡터를 생각하시면 됩니다. 0도에서 44도까지는 그나마 세팅해 놓은 무게 중심이 모터를 도와줍니다. 46도부터 90도까지는 중력이 모터를 도와줍니다. 하지만 45도 각도에서는 세팅해 놓은 무게 중심은 손을 놓아 버리고 오직 중력만이 최대로 작용하게 됩니다. 그 모든 중력을 모터가 견뎌야 합니다. 그래서 짐벌 세팅하다가 보면 짐벌을 들고 이리저리 기울이는 와중에 대체로 잘 잡아주다가도 45도 근처만 가면 벌벌떠는 현상을 발견 할 수 있습니다. 야구 방망이를 90도로 세워서 들고 있으면 덜 무거운데 팔을 앞으로 쭉~ 뻗어 지면과 평행하고 들고 있으면 더 무거운 것을 생각하시면 되겠네요. 짐벌도 역시 그 상태에서 최대의 무게를 감당해야 합니다. 그렇지 않아도 45도에서 최대의 무게인데, 무게 중심까지 안 맞을 경우에는 앞으로 쏠리는 무게까지 더해져서 한층 더 짐벌이 힘겨워 하는 것이지요.

     

    이제 짐벌의 경우를 예로들어 PID 제어에 대한 기본 개념을 익혔으니 이것을 똑 같이 FC에 적용해 볼까요.

     

    여기서 잠깐, 아직도 FC와 GCU(짐벌 컨트롤러)가 전혀 다른 장비라는 생각이 드시는지요? 그렇다면 아래의 두 표현을 보시기 바랍니다.

     

    - FC는 원하지 않는 외부의 영향에 반응하여 기체의 자세를 잡아주는 장치이다.

     

    - GCU는 원하지 않는 외부의 영향에 반응하여 카메라의 자세를 잡아주는 장치이다.

     

    어떤가요? 다만, FC는 GCU와는 다르게, 현재 떠 있는 높이도 알아야 하고, 위치도 알아야 하고, 동서남북의 방향도 알아야 하고… 그러기 때문에 좀 더 많은 기능들이 달라붙어 있는 것뿐 입니다. 두 장치는 형제까지는 아니더라도 사촌지간 정도는 됩니다. 그래서 나자를 만드는 DJI가 젠뮤즈도 만드는 것입니다. 실제로 NAZE32의 경우 FC로도 사용 할 수 있지만 짐벌 컨트롤러로도 사용 할 수 있습니다. 다만 그 크기로 인하여 센서를 부착할 장소가 마땅치 않다보니 사용이 쉽지 않은 것 뿐이지요.

     

    FC 메뉴에도 PID 세팅이 있습니다.

     

    각각의 숫자 값에 무엇을 어떻게 건드려야 할지 막막하기만 하지요.

     

    이제 기본 개념을 알았으면 그대로 적용하면 됩니다.

     

    - P값은 기체의 자세를 신속하게 잡아줍니다. 다만 과도하게 높을 경우 폭이 크고 눈에 보일 정도로 기체가 기우뚱 기우뚱을 반복하는 저주파 진동이 발생합니다. 예를들어 Roll의 P값이 너무 높으면 기체가 좌로 기울었다 우로 기울었다를 반복합니다. Pitch의 P값이 너무 높으면 앞으로 기울었다 뒤로 기울었다를 반복합니다. Roll과 Pitch 모두 P값이 높으면 기체가 지랄발광을 합니다^^

     

    - I값은 P값으로는 더 이상 보정되지 않는 잔류편차를 누적하였다가 보정합니다. I값이 너무 낮으면 잔류편차가 한참이나 누적되어야 보정이 이루어지므로 신속한 보정이 안되고, 너무 높으면 역시 오버슈트(과보정)를 발생 시킵니다.

     

    - D값은 과도보정 없이 목표값에 도달할 수 있게 해 줍니다. D값이 너무 높으면 눈으로는 거의 보이지 않는 고주파 진동이 발생합니다. 손을 대면 굉장히 빠른 미세 진동을 느낄 수 있습니다. 영상을 촬영했을 때 워블링, 젤로 같은 현상이 나타나서 온갖 방진 대책을 다 써 봐도 효과가 없다면 D값이 범인일 가능성이 높습니다. 이때 D값을 줄여주면 효과가 있습니다.

     

     

    PID 세팅의 기본은 “진동이 발생하기 시작하는 직전까지 값을 올린다” 입니다. 그렇게 세팅을 하면, 그 느낌을 표현하기 참으로 어려운데… 굳이 언어적으로 표현하자면 “물렁물렁 하지 않고 단단하게 잡아 준다”는 느낌을 받게 됩니다.

     

    몇가지 쓸 이야기가 더 있는 것 같은데… 생각이 안 나네요^^ 뇌세포가 많이 죽었나 봅니다.

     

    생각나는데로 덧붙이겠습니다.

     

     

    김형수님덧글

    ..........

    설명을 잘 해 주셨는데, 조금은 D(미분텀)에 대해 설명이 부족한듯 해서, 몇자 적고 갑니다. D는 원래 수렴속도를 빨리해주는 텀입니다. 급격한 움직임 생길때, 급격한 쪽으로 틀어지는 것을 반대로, 급격하게 값을 주어 보정할때 사용합니다. 미분을 생각해보면 알겠지만, 급격한 움직임은 값이 급격하게 변하기에 값의 변화에 해당하는 기울기가 커집니다. 그러니, 커진 기울기를 더이상 커지지 못하게 반대방향으로 D에 해당하는 만큼 역으로 힘을 주는 것이지요. 이를 보통 feedback control(되먹임제어)이라고 합니다. 보통 제어를 할때 D는 수렴속도를 빠르게 하기 위해 사용됩니다. 대신 D를 너무 주면, 요동을 치게 됩니다. 원하는 값에 근접할때도 너무 큰힘을 준 나머지 반대로 넘어가고, 지난치게 넘어간 값에 의해 D가 역으로 다시 치고 들어가는 경우 원하는 짐벌위를 기준으로 좌우로 요동을 치게 되어 있습니다. 빠릿빠릿하게 자이로가 반응하는 것은 D에 의해 역할이 크다고 보시면 됩니다. D는 그래서 수렴속도를 빠르게 하지만, 요동치지 않는 범위에서 가장 크게 하는 것이 요점입니다. 이런내용은 전자과와 기계과에서 제어이론때 배웁니다.

     

     

     

     

  • Q: [강좌] compegps 에러 해결법 최병태 2013.11.23
  • Q: [정보] 전국 카메라 수리하는곳 joypara 2009.11.08
  • Q: [정보] 매듭. 최병태 2007.12.28
  • Q: [매뉴얼] COMPETINO Manual Vers.1.16메뉴얼 최병태 2007.11.05
  • Q: [정보] 무선국 허가(연장.변경)신청 (인터넷)방법 최병태 2007.10.17
  • Q: [매뉴얼] FLYTEC 4005 바리오 설명서 chin9 2007.01.29
  • Q: [정보] 등산화 끈묶는법 최병태 2007.01.09
  • Q: [정보] 나이프강제정리 최병태 2006.12.12
  • Q: [강좌] 어워드 바이오스설정 chin9 2006.11.29
  • Q: [강좌] 아미 바이오스 비프음 으로 고장진단 최병태 2006.11.26
  • Q: 나이프 강재 정리 1 chin9 2006.10.04
  • Q: 8자매듭 chin9 2006.05.21
  • Q: 케논렌즈 사양 정리. chin9 2006.01.08
Board Pagination Prev 1 2 3 Next
/ 3