6.1 제어 모듈의 정의와 역할
1. 제어 모듈의 정의
자율주행 시스템에서 제어(Control) 모듈은 상위 계층의 판단(Planning) 모듈이 생성한 참조 경로(reference trajectory)와 속도 프로파일(velocity profile)을 실제 차량의 물리적 구동기(actuator)에 대한 명령으로 변환하는 소프트웨어 구성 요소이다. 구체적으로, 조향 장치(steering mechanism), 스로틀(throttle), 브레이크(brake) 등의 구동기에 대하여 실시간으로 정밀한 명령 신호를 생성하며, 이를 통해 차량이 의도된 경로를 안정적으로 추종하도록 한다.
제어 모듈은 자동 제어 이론(automatic control theory)에 기반하며, 피드백 제어(feedback control)의 원리를 핵심 동작 메커니즘으로 사용한다. 즉, 차량의 현재 상태(위치, 속도, 방향각 등)를 지속적으로 계측하고, 이를 목표 상태와 비교하여 발생하는 오차를 최소화하는 방향으로 제어 입력을 산출한다. 이러한 폐루프(closed-loop) 구조는 외부 교란이나 모델 불확실성에 대한 강건성(robustness)을 확보하는 데 필수적이다.
2. 인지-판단-제어 파이프라인에서의 위치
자율주행 소프트웨어 아키텍처는 일반적으로 인지(Perception)-판단(Planning)-제어(Control)의 3단계 파이프라인으로 구성된다. 이 구조에서 제어 모듈은 파이프라인의 최하류(downstream)에 위치하며, 소프트웨어 계층과 물리적 차량 하드웨어 사이의 인터페이스 역할을 수행한다.
각 모듈의 기능적 경계를 명확히 하면 다음과 같다.
- 인지 모듈: 센서로부터 획득한 원시 데이터를 처리하여 주변 환경에 대한 구조화된 정보(객체 목록, 차선 위치, 자차 위치 등)를 생성한다.
- 판단 모듈: 인지 결과와 지도 정보 등을 종합하여 차량이 수행해야 할 행동을 결정하고, 이를 시공간적 경로(spatiotemporal trajectory)로 구체화한다.
- 제어 모듈: 판단 모듈이 출력한 경로를 물리적으로 실현하기 위하여 구동기 명령을 산출한다.
이와 같이 제어 모듈은 디지털 영역(digital domain)에서 결정된 추상적 명령을 물리적 영역(physical domain)의 구체적 동작으로 전환하는 변환기(transducer)로서 기능한다.
3. 제어 모듈의 핵심 역할
제어 모듈이 수행하는 핵심적인 역할은 다음과 같이 분류된다.
3.1 경로 추종(Path Tracking)
제어 모듈의 가장 근본적인 역할은 판단 모듈이 제공한 참조 경로를 차량이 정확하게 추종하도록 조향 명령을 생성하는 것이다. 경로 추종에서는 차량의 현재 위치와 참조 경로 사이의 횡방향 오차(lateral error)와 방향각 오차(heading error)를 동시에 최소화해야 한다. 이때 차량의 동역학적 특성(관성, 타이어 역학 등)을 고려하지 않으면 과도한 진동(oscillation)이나 불안정한 거동이 발생할 수 있으므로, 적절한 제어 기법의 선택이 필수적이다.
3.2 속도 조절(Speed Regulation)
제어 모듈은 목표 속도 프로파일에 따라 차량의 종방향 속도를 조절하는 역할을 수행한다. 이를 위하여 스로틀 개도와 브레이크 압력을 적절히 배분하여 가속 및 감속 명령을 생성한다. 속도 조절에서는 승객의 승차감(ride comfort)을 고려하여 가속도 및 저크(jerk, 가속도의 시간 미분)의 크기를 제한하는 것이 일반적이다.
3.3 안정성 확보(Stability Assurance)
차량이 고속 주행, 급격한 차선 변경, 미끄러운 노면 등 한계 조건(limit condition)에서도 안정적으로 운행될 수 있도록 하는 것은 제어 모듈의 중요한 책임이다. 안정성 확보를 위하여 제어 모듈은 차량의 요레이트(yaw rate), 슬립각(slip angle), 횡방향 가속도 등의 상태 변수를 모니터링하고, 이들이 안전한 범위 내에 유지되도록 제어 입력을 조정한다.
3.4 외란 보상(Disturbance Compensation)
실제 주행 환경에서는 도로 경사(road grade), 노면 마찰 계수 변화, 측풍(crosswind), 적재 하중 변동 등 다양한 외란(disturbance)이 차량의 거동에 영향을 미친다. 제어 모듈은 피드백 메커니즘을 통하여 이러한 외란의 영향을 실시간으로 감지하고 보상함으로써, 외란이 존재하는 환경에서도 목표 경로와 속도를 유지한다.
3.5 구동기 인터페이스(Actuator Interface)
제어 모듈은 상위 계층의 추상적 명령(예: 목표 곡률, 목표 가속도)을 하위 구동기가 이해할 수 있는 물리적 신호(예: 조향 모터 토크, 브레이크 유압 압력, 스로틀 밸브 개도)로 변환한다. 이 과정에서 구동기의 응답 특성(response characteristics), 시간 지연(time delay), 포화(saturation) 등의 하드웨어적 제약을 고려해야 한다.
4. 제어 모듈 설계의 기본 요구사항
자율주행 제어 모듈을 설계할 때 충족해야 하는 기본적인 요구사항은 다음과 같다.
- 실시간성(Real-time Performance): 제어 알고리즘은 정해진 제어 주기(control cycle) 내에 연산을 완료해야 한다. 일반적으로 횡방향 제어는 50~100 Hz, 종방향 제어는 20~50 Hz의 주기로 동작한다.
- 강건성(Robustness): 차량 파라미터의 불확실성(적재 하중 변화, 타이어 마모 등)과 외부 교란에 대하여 안정적인 성능을 유지해야 한다.
- 안전성(Safety): 제어 입력이 차량의 물리적 한계(최대 조향각, 최대 감속도 등)를 초과하지 않아야 하며, 이상 상황 발생 시 안전한 상태로 전이할 수 있어야 한다.
- 승차감(Ride Comfort): 급격한 조향이나 가감속을 회피하고, 부드러운 제어 입력을 생성하여 승객의 편안함을 확보해야 한다.
- 확장성(Scalability): 다양한 차종(승용차, 트럭, 버스 등)과 주행 조건에 대하여 파라미터 조정만으로 적용할 수 있는 유연한 구조를 갖추어야 한다.
5. 제어 모듈과 안전 체계의 관계
자율주행 시스템에서 제어 모듈은 안전의 최종 방어선(last line of defense)으로서 기능한다. 인지 또는 판단 모듈에서 오류가 발생하더라도, 제어 모듈이 차량의 물리적 한계와 안전 제약 조건을 준수하는 한, 치명적인 사고를 회피할 수 있는 가능성이 존재한다. 이러한 이유로 제어 모듈에는 독립적인 안전 감시(safety monitor) 기능이 내장되는 경우가 많으며, 기능 안전 표준 ISO 26262에 따른 체계적인 설계와 검증이 요구된다(ISO, 2018).
참고문헌
- ISO. (2018). ISO 26262: Road Vehicles — Functional Safety. International Organization for Standardization.
- Rajamani, R. (2012). Vehicle Dynamics and Control (2nd ed.). Springer.
- Paden, B., Čáp, M., Yong, S. Z., Yershov, D., & Frazzoli, E. (2016). A Survey of Motion Planning and Control Techniques Adopted in Self-Driving Vehicles. IEEE Transactions on Intelligent Vehicles, 1(1), 33–55.
버전: 2026-04-11 v1.0