아두이노를 활용해서 밸런싱 로봇 제어를 위해 PID 제어기를 구현했는데 각각의 개인 값을 수동으로 맞추다 보니 오버슈트가 너무 심하거나 응답 속도가 느려지는 문제가 발생하는데 실무에서 주로 사용하는 지글러-니콜스 방법 외에 시행착오를 줄이면서 시스템의 안정도를 확보할 수 있는데 튜닝 팁이 있다면 알려주시면 감사하겠습니다.
지글러-니콜스보다 안정적인 한계감도법 대신 ITSE 같은 오차 적분법을 활용해서, 제어 성능을 수치화하면 훨씬 정교한 튜닝이 가능합니다. 이게 말이 어렵지만, 우선 P 게인을 올리시고 진동을 확인하신뒤에 D 게인을 조금씩 섞으시면 됩니다. 그러면 오버슈트를 잡는데 효과가 좋습니다. 그리고 적분기 포화 현상인 와인드업을 막기 위해서, 안티 와인드업 코드를 꼭 추가해 보시길 추천함니다. 결론을 내보자면 파라미터 변화가 큰 시스템이라먄 루프 성형 기법으로 마진을 확보하는것도, 밸런싱 로봇의 안정도 향상에 큰 도움이 되는것도 기억해주시면 좋겠내요.