IndexFigures |
Automobile Cruise Control System Using PID Controller and Kalman Filter |
Performance Index | Performance Criteria |
---|---|
Desired Speed | 20m/s |
Rise Time | < 10s |
Overshoot | < 10% |
Steady-state Error | < 2% |
아울러, 본 논문에서 고려하는 정속주행 시스템의 제어목표를 달성하기 위한 성능지표와 성능기준은 Table 2와 같다. 자동차는 정상상태에서 최대 속도 20m/s에 도달해야 하며, 이 기준 속도(Desired Speed)까지 가속해서 도달해야 하는 상승 시간(Rise Time)은 10s 이내여야 한다. 또한, 속도에 대한 오버슈트(Overshoot)는 10% 이내, 정상상태 오차(Steady-state Error)는 2% 이내이어야 한다.
3. 외란(Disturbance) 영향을 줄이기 위한 PID 제어기 기반 피드백 제어
본 절에서는 정속주행 시스템 제어를 위한 개루프 제어(Open-loop Control)의 한계를 수치적 시뮬레이션을 통해 분석하고 이를 해결하기 위한 피드백 제어(Feedback Control) 방법을 제안한다.
3.1 개루프 제어의 한계
정속주행 시스템을 시뮬레이션하기 위해서 MathWorks사의 Simulink를 사용하였고, 개루프 제어시스템은 Fig. 2와 같은 블록선도로 표현할 수 있다.
개루프 제어시스템에서는 목표 속도인 20m/s를 만족하기 위해서 제어입력인 가속 페달의 눌림 각도(Pedal Position or Pedal Angle)를 구한다. 제어입력에 따라 플랜트로 인가되는 조작량은 액추에이터(Actuator)인 자동차 엔진에서 발생하는 엔진 힘(Engine Force)이 된다. 개루프 제어시스템이기 때문에 정상상태에서의 조작량은 시행착오를 통해 구하거나 혹은 입출력 전달함수를 이용한 라플라스 변환의 최종값정리(Final Value Theorem)로부터 쉽게 구할 수 있다. 제어입력을 단위계단함수라 가정하면 최종값정리로부터 차량속도 20m/s를 이르기 위해서 조작량, 즉 자동차로 인 가되는 엔진의 힘은 1000[N]임을 구할 수 있다. 본 시뮬레이 션에서는 1000[N]의 힘에 대한 페달의 눌림 각도를 30∘(π/6)으로 간주한다. 다시 말해서, 정속주행 시스템을 위해 개루프 제어시스템을 적용하는 경우 가속 페달을 30∘ 누르면 된다는 것이다. Fig. 3은 시뮬레이션 기동 후 5초부터 가속 페달의 눌림 각도가 30∘인 경우의 시뮬레이션 결과를 나타낸다.
Fig. 3의 결과로부터 다음과 같은 두 가지 문제점을 확인할 수 있다. 첫 번째로, 비록 개루프 제어시스템이 오버슈트나 진동(Oscillation)을 나타내지 않고 원하는 정상상태 속 도인 20m/s에 도달했지만, 상승시간이 거의 60초로 이미 설정한 제어목표 달성을 위한 성능기준인 10초에 턱없이 미흡함을 알 수 있다. 두 번째로, 앞서 언급한대로 조작량을 시행착오 혹은 최종값정리를 통해 구할 수 있는데 이 때 자동차는 평탄한 길을 달린다고 가정한 것이다. 즉, 자동차가 도로에서 주행할 때 바람이나 도로 경사의 변화와 같은 외란(Disturbance)이 발생할 수 있는데 이를 고려하지 않았다는 것이다.
다음 시뮬레이션을 통해 개루프 제어시스템이 외란에 의해 성능이 저하되는 것을 확인할 수 있다. 20m/s로 정속주행을 하던 자동차가 200초가 지난 후 /45도의 언덕길을 만나는 가정을 하였다. 언덕길에 의한 방해 받는 힘이 외란이 되는 것이며 시뮬레이션에서 −1000g⋅sin(π/45)[N]으로 인가하였다. 여기에서 는 중력가속도를 의미한다. 시뮬레이션 블록선도는 Fig. 4와 같으며, 시뮬레이션 결과를 나타내는 Fig. 5와 같이 200초 시점에서 정속주행이 안되고 속도가 현격히 줄어드는 것을 확인할 수 있다. 그 이유는 Fig. 6에서 확인할 수 있는데, 200초에서 언덕길이라는 외란을 만났음에도 엔진의 힘은 그대로 유지되고 있기 때문이다.
따라서 응답 속도, 즉 성능지표인 상승시간을 향상시키면서 외란에 대한 정속주행을 만족시키기 위한 피드백 제어시스템 설계가 필요하다.
3.2 PID 제어기를 이용한 피드백 제어
PID 제어는 원하는 제어목표에 도달하기 위한 잘 알려진 기본적인 자동 피드백 제어 방법 중 하나로, 이해하기 쉽고 효과적이기 때문에 널리 사용된다[6,7]. PID 제어는 제어 이론에 대한 깊은 이해가 없어도 시스템의 동특성 등의 경험을 통해 직관적이고 쉽게 제어 시스템을 구성할 수 있다는 점이다. PID 제어기 설계의 핵심은 제어 이득인 Kp,Ki,Kd의 이득 조정(Gain Tunning)이다. 이 과정은 일반적으로 여러 번의 시행착오를 수반하지만, 본 논문에서는 조정 과정에 대한 자세한 설명을 생략하고 몇 가지 설정값에 따른 시뮬레이션 결과를 제시한다.
1) P 제어기를 이용한 피드백 제어
가장 간단한 P(Proportion)제어는 제어 목표값에 도달하는 속도는 우수하나 목표값에 완전히 수렴하지 못해 잔류 편차가 생기는 단점이 있다.
P제어기를 통해 제어입력을 구하는 시뮬레이션 블록선도는 Fig. 7과 같으며 P제어기를 타나내는 전달함수 P(s)는 다음과 같다.
먼저, Kp는 다음과 같이 설정하고 시뮬레이션을 수행하였다.
Fig. 8(a)에서 볼 수 있듯이 성능지표 정상상태 오차와 상승시간에 대해 모두 충족하지 않으며, 외란에 대해서도 정속 주행을 유지 못하고 있다. 비례 이득 Kp 값을 높여서 상승시간과 정상상태 오차를 줄일 수 있기 때문에 앞선 시뮬레이션에서의 Kp 값을 50배 크게 했다.
Fig. 8(b)에서 보듯이 정상상태 오차는 거의 0이며 상승시간이 상당히 감소했을 뿐만아니라 외란에 대해 정속주행을 만족하고 있는 것처럼 보인다. 하지만, 실제 정속주행 시스템은 일반적으로 액추에이터(엔진)의 출력 제한으로 인해 순간적으로 차량의 속도를 0에서 20m/s로 변경할 수 없기 때문에 실제 환경에서는 제어가 불가능하다. 이러한 액츄에이터 제약조건은 정속주행 시스템의 제어에서 반드시 고려해야 할 사항으로 P 제어기의 단독 구성을 통해 원하는 제어 입력을 얻는 것은 매우 어렵다. 따라서, 합리적인 상승시간을 가지는 더 낮은 비례 이득 Kp의 설계가 필요하며, 정상상태 오차를 해결하기 위한 추가적인 방안이 필요하다.
2) PI 제어기를 이용한 피드백 제어
앞서 설명한 P제어기의 문제점을 해결하기 위해 P제어에 적분항(Integral)을 추가하는 PI제어을 고려한다. PI제어기는 오차의 비례값과 오차의 누적값을 제어량으로 사용해 P제어의 문제인 오차를 낮추기 때문에 목표값에 정확히 수렴할 수 있도록 한다.
PI제어기를 통해 제어입력을 구하는 시뮬레이션 블록선도는 Fig. 9와 같으며 PI제어기를 타나내는 전달함수는 다음과 같다.
PI 제어기에서는 비례 이득 Kp와 적분 이득 Ki를 모두 조정하여 원하는 결과를 얻는다. 적분 이득 Ki를 조정할 때 Ki가 크면 응답이 불안정해질 수 있으므로 작은 값으로 시작하는 것이 좋다. 먼저, Kp와 Ki를 다음과 같이 설정하고 시뮬레이션을 수행하였다.
이상과 같은 이득 설정을 통한 결과는 Fig. 10(a)와 같으며, 이 결과로부터 성능지표인 정상상태 오차와 상승시간에 대한 성능을 모두 만족하지 못하여 외란에 대한 정속주행을 유지하지 못하는 것을 확인할 수 있다. 따라서, Kp와 Ki를 다음과 같이 다시 설정하고 시뮬레이션을 수행하였다.
Fig. 10(b)과 같이 성능지표 모두 기준을 충족할 뿐만아니라 외란에 대해서도 정속주행을 유지하는 결과를 보이고 있다. 그 이유는 Fig. 11에서 확인할 수 있는데, 200초에서 언덕길이라는 외란을 만났을 때 엔진의 힘이 그에 맞춰 증가되었기 때문이다. 또한, 정속주행 시스템에서는 미분 제어기 구현은 필요 없음을 확인할 수 있다. 이로써, 외란이 발생하는 경우에 대해서 성능 기준을 만족하는 PI 제어기 설계를 완료하였다.
4. 센서 잡음(Noise) 영향을 줄이기 위한 Kalman 필터 적용
앞선 PID 제어기 기반의 피드백 제어를 위해서는 제어량인 출력 속도와 목표값인 기준 속도의 비교를 위해 출력 속도를 계속 측정하여 피드백해야 함을 알 수 있다. 따라서, 출력 속도 측정을 위한 센서가 필요하다. 그런데 센서는 여러 가지 원인으로 발생하는 잡음(Noise)의 영향을 받는다. 이러한 잡음 역시 정속주행 시스템의 성능에 영향을 줄 수 있기 때문에 해결책이 필요하다.
4.1 센서 잡음으로 인한 성능 저하
먼저, 센서의 잡음으로 인한 정속주행 시스템의 성능 영향을 살펴본다. 이를 위해 출력 속도를 피드백하는 과정에 잡음을 인가하는 시뮬레이션을 위해 Fig. 9의 블록선도에 잡음 신호 발생 블록만 추가하여 Fig. 12와 같이 구성하였다. 시뮬레이션에서 잡음은 0 평균값(Mean)과 분산값(Variance)을 갖는 백색잡음으로 가정하였다. 잡음의 전력을 의미하는 잡음 분산값의 크기에 따라 잡음의 크기 역시 커지게 되는데 잡음 크기에 따른 영향을 살펴보기 위해 σ=0.1 과 σ=0.5 두 가지 경우를 고려하였다.
Fig. 13(b)와 같이 큰 분산을 가지는 잡음이 유입되는 경우, 정속주행 시스템의 제어 입력이 고주파 특성을 가지게 되어 승차감에 많은 영향을 줄 수 있다. 따라서, 이러한 잡음을 제거하는 것도 정속주행 시스템에 매우 중요한 제어목표라 할 수 있다.
4.2 Kalman 필터 적용을 통한 잡음 제거
Kalman 필터는 기존에 알고 있는 과거 측정값과 새로운 측정값을 사용하여 값에 포함된 잡음을 제거시켜 새로운 결과를 추정(Estimate)하는 알고리즘으로 선형적 움직을 갖는 대상에 대해서 재귀적(Recursive) 방식으로 동작하는 알고리즘이다[9,10]. Kalman 필터는 우주 분야뿐 아니라 항공, 통신, 계측, 제어, 플랜트, 로봇, 화상처리, 전력, 토목, 농업, 의학, 통계학, 사회과학, 경제 등의 다양한 분야에서 성공적으로 사용되고 있다. 자동차의 동적 모델 Equation (1), (2)로부터 Kalman 필터 식은 다음과 같이 표현된다.
Equation (3)에서 q와 r은 Kalman 필터에서 필요한 설계 변수이며 잡음제거와 추적성능에 영향을 준다. 본 논문에서는 q와 r의 설정 방법에 대한 자세한 설명은 생략한다. vR은 정속주행 시스템의 제어목표인 기준 속도 20m/s를 의미하며 ˆv(t)는 출력 속도 v(t)에 Kalman 필터를 적용하여 잡음을 제거한 출력 속도의 필터링 된 추정값이다.
Kalman 필터를 통해 출력 속도에 섞인 잡음을 제거하는 시뮬레이션 블록선도는 Fig. 14와 같다. 앞선 Fig. 13의 시뮬레이션 결과와 비교할 때 Fig. 15, Fig. 16과 같이 정속주행 시스템의 결과에 잡음이 상당히 제거 되어 있음을 확인할 수있다. 특히, 분산값이 큰 잡음의 경우에도 출력 속도가 꽤 매끄럽게 얻어짐을 볼 수 있다.
5. 결 론
본 논문에서는 외란과 잡음이 있는 환경에서 자동차 정속 주행의 개선을 위해 PID 제어기와 Kalman 필터를 적용하고 다양한 시뮬레이션을 통해 성능을 검증하였다. 먼저, 기본적인 개루프 제어 기반 정속주행 시스템에 외란으로 인한 성능 저하를 확인하고 이를 개선하기 위한 PID 제어기 기반의 피드백 제어 시스템의 성능을 검증하였다. P 제어기로는 성능 기준을 만족하기 어려웠고 PI 제어기를 적용하였을 때 성능 기준이 만족됨을 확인하였다. 피드백 과정에서 발생할 수 있는 센서 잡음으로 인한 성능 저하를 확인하고 이를 개선하기 위해 Kalman 필터를 적용하여 성능을 검증하였다. PID 제어기와 Kalman 필터를 적용하여 최종적으로 설계된 정속주행 시스템이 성능 기준을 모두 만족할 뿐만 아니라 외란 및 잡음 제거 능력까지 있음을 확인하였다.
Biography
김 수 열
https://orcid.org/0000-0002-9157-6501
e-mail : tnduf03@naver.com
2021년 한국산업기술대학교 전자공학부(학사)
2021년 ~ 현 재 한국공학대학교 IT반도체융합공학과 석사과정
관심분야 : 제어 시스템 설계, 임베디드시스템 소프트웨어 등
Biography
김 평 수
https://orcid.org/0000-0002-9589-446X
e-mail : pskim@tukorea.ac.kr
1994년 인하대학교 전기공학과(학사)
1996년 서울대학교 제어계측공학과(석사)
2001년 서울대학교 전기컴퓨터공학부(박사)
2001년 ~ 2005년 삼성전자 디지털미디어연구소 책임연구원
2012년 UC Irvine CECS(Visiting Scholar)
2005년 ~ 현 재 한국공학대학교 전자공학부 교수
관심분야 : 최적 추정 필터링, 통계적 신호처리, 시스템 소프트웨어 솔루션 등
References
- 1. B. Messner, D. Tilbury, R. Hill, and J. D. Taylor, "DC motor speed: system modeling: Control tutorials for MATLAB and Simulink (CTMS)," University of Michigan, 2017.
- 2. C. Wu, Z. Xu, Y. Liu, C. Fu, K. Li, and M. Hu, "Spacing policies for adaptive cruise control: A survey," IEEE Access, Vol.8, pp.50149-50162, 2020.
- 3. L. Yu and R. Wang, "Researches on adaptive cruise control system: A state of the art review," Proceedings of the Institution of Mechanical Engineers, Part D: Journal of Automobile Engineering, Vol.236, No.2-3, pp.211-240, 2022.
- 4. Y. Du, W. Cao, J. She, M. Wu, M. Fang, and S. Kawata, "Disturbance rejection and control system design using improved equivalent input disturbance approach," IEEE Transactions on Industrial Electronics, Vol.67, No.4, pp.3013-3023, 2020.
- 5. Y. Du, W. Cao, J. She, M. Wu, M. Fang, and S. Kawata, "Disturbance rejection and robustness of improved equivalent-input-disturbance-based System," IEEE Transactions on Cybernetics, Vol.52, No.8, pp.8537-8546, 2022.
- 6. L. Wang, PID Control System Design and Automatic Tuning using MATLAB/Simulink. Wiley-IEEE Press, 2020.
- 7. R. P. Borase, D. K. Maghade, S. Y. Sondkar, and S. N. Pawar, "A review of PID control, tuning methods and applications," International Journal of Dynamics and Control, Vol.9, pp.818-827, 2021.
- 8. C. Z. Sun, B. Zhang, and C. S. Zhang, "Study of PID control system based on Kalman filter," 2021 International Conference on Control Science and Electric Power Systems (CSEPS), pp.5-8, 2021.
- 9. M. Grewal, "Applications of Kalman filtering in aerospace 1960 to the present," IEEE Control Systems Magazine, Vol.30, No.3, pp.69-78, 2010.
- 10. M. Rhudy, R. Salguero, and K. Holappa, "A Kalman filtering tutorial for undergraduate students," International Journal of Computer Science & Engineering Survey, Vol.8, No.1, pp.1-18, 2017.
Article information Continued
Copyright © 1976-2025 KIPS. All rights reserved.
Statistics
Cite this article
IEEE StyleACM Style
TKIPS Style