본문 바로가기

PID

쿼드콥터 PID의 수치미분 vs 자이로 이전번에 올린 글에도 나와있듯이 D 제어에서 수치 미분과 자이로중 항공기에서는 자이로값을 이용하신다는 분이 계셨다. 나도 그 글을 읽기 전에는 수치 미분을 이용하고 있었는데 이게 어떻게 다른지 궁금하여 값을 출력해 보았다. 하나는 기울기 값을 미분하여 미분값을 얻었고 다른 하나는 자이로값에 D제어상수를 곱하여 출력하여 보았다. 신기했던것은 자이로값의 상수배만으로 미분값과 매우 근접하게 나왔다는 것이다. 아마도 연산중 실력이 부족하여 미분값이 80의 배수로 나오는 점이 있었지만 자이로 값과 수치미분을 비교하는데 별 문제는 없으리라 생각된다. 청색이 기울기값이고 적색이 자이로값, 흰색이 자이로값의 3개를 평균한것 녹색이 수치미분의 값이다. 저렇게 딱 맞아 떨어지는 것도 신기하고..정말 참으로 신기한점이 많았.. 더보기
쿼드콥터 PID 파형분석 쿼드콥터 PID 파형이다. 쿼드콥터의 분해능은 현재 2000 일것이다...(아니면 1000이거나....이 캡처는 예전거라 정확히는 잘....) 청색 : 기울기로 단위는 deg 이다. 적색 : P 제어값 녹색 : I 제어값 흰색 : D 제어값 (자이로값) 미분값은 자이로값이다. 왜 미분값과 자이로값을 동일시하는지는 다음에 보도록 하자!!! 현재의 상태는 모터의 출력이 달라 왼쪽 모터가 더 세게 돌아 오른쪽으로 기울어져 있는 상태이며 기울기에서 오른쪽으로 기울이짐이 + 왼쪽으로 기울어짐이 - 이다. 파형을 분석하면 처음에 적색이 높이 뛴것은 그때부터 PID제어를 시작한 것이다. 기울어져 있기 때문에 가장 먼저 P 값이 반응을 하여 P제어상수 만큼의 출력을 나타내기 시작했고 그 출력으로 인해 미분값(자이로)이.. 더보기
20110812 쿼드콥터 진행사항2 (PID 제어) 한동안 밀렸으니 열심히 써야겠다. 주기를 줄이고 분해능을 늘리기 전에는 P제어가 전혀 되지 않았다. 하지만 타이머의 주기를 2.5ms로 변경하고 분해능을 1로 변경후 그제서야 P 제어가 됨을 확인하였다. 얼마나 기뻤는지..... 그리고 한동안 PID 를 가지고 테스트를 하였는데...... 글쎄... 맘에 쏙!!! 드는 정답같은 PID 파형은 나오지 않았다. 다만 테스트를 하면서 경험한걸 풀어보면..... P 값이 크면 발진한다.... P 값이 적당한 상테에서 D 값을 조금 크게하면 0도 부근에서 떨림이 매우 크다. P 값이 적당한 상테에서 D 값을 크게하면...(D값 적정 이상) 매우 빠르게 진동하며 무섭게 발진한다. 어느정도 안정된 PD 제어에서 P 값을 크게할경우 처음에는 빠른진동.....그리고 그 .. 더보기
110812 진행사항1 (진동,신호주기) 지난번 진행사항이 스폰지 까지였나?.... 500원짜리 스폰지를 사다가 적당한 크기로 잘라 붙였다. 자르는게 문제였지 글루건으로도 붙었고 약간 스폰지 같이 두꺼운 양면 테이프로도 잘 붙었다. 그래서 스폰지로 고정을 시켜놓고 동작을 시켜보니 이건 정말 다른 센서라고 싶을 정도로 노이즈가 줄었고 고주파 진동으로 인한 자이로의 오차도 없어졌다. 모터를 돌려도 이제야 기울기가 제대로 출력된다고 할까? 그렇게 하여 실험을 해보았다. PID 제어.... PID 제어시에는 일단 P 제어로 수렴을 확인하고 D 제어로 오버슈트와 수렴시간을 획기적으로 줄이고 I 값을 통해 오차를 보정한다는 식인데..... 일단 내 상황에서는 P제어 자체가 되질 않았다. 그럼에도 D 제어값을 약간이라도 주면 상당히 빨리 수렴하였다. (수렴.. 더보기