렌터 엔진 관리 소프트웨어 완전 가상화와 시스템 개발 적용
초록
본 논문은 MATLAB/Simulink 기반 엔진 제어 소프트웨어를 Windows PC 상에서 가상 ECU로 실행하여, 하드웨어‑인‑루프(HIL)와 실제 차량 시험을 대체하거나 보완하는 방법을 제시한다. 1500개 이상의 런너블을 포함하는 대규모 모델에 대해 가상화가 어려워지는 문제를 해결하기 위한 구체적 기법을 설명하고, 가상 ECU가 개발 일정 단축, 비용 절감, 테스트 효율성 향상에 어떻게 기여하는지를 사례와 함께 논한다.
상세 분석
이 논문은 Renault가 2010년부터 구축해 온 엔진 관리 시스템(EMS) 개발 프레임워크를 기반으로, 모델 기반 개발(Model‑Based Development, MBD)과 가상화(Virtualization)의 결합이 가져오는 변화를 심도 있게 분석한다. 먼저, EMS는 약 20개의 기능(Function)으로 구성되며, 각 기능은 여러 모듈(Module)로 세분화되고, 모듈은 OS가 스케줄링하는 런너블(Runnable) 단위로 구현된다. 현재 프로세스는 1) Simulink 모델로 모듈 정의, 2) Embedded Coder를 통한 자동 코드 생성, 3) 모듈 수준의 MiL 테스트, 4) 프로젝트별 모듈 구성, 5) 실제 ECU에 통합, 6) 시스템 수준 검증 순으로 진행된다. 이 흐름에서 가장 큰 병목은 3단계에서 생성된 코드가 실제 ECU에 탑재되어 전체 시스템 테스트가 이루어지는 6단계까지의 시간 차이다. 특히, 전체 소프트웨어가 1500개 이상의 런너블을 포함하면 가상 ECU 실행이 메모리와 스케줄링 측면에서 비효율적이 된다.
논문은 이러한 한계를 극복하기 위해 두 가지 핵심 기술을 제시한다. 첫째, 런너블을 기능별 혹은 중요도별로 그룹화하고, 필요 시 동적 로딩(dynamic loading)과 가상 스레드 스케줄링을 적용해 실행 부하를 분산시킨다. 둘째, Simulink 모델을 그대로 Windows 환경에서 실행 가능한 형태로 변환하는 ‘Rapid‑In‑the‑Loop(RITL)’ 프레임워크를 구축한다. RITL은 모델‑코드 일관성을 보장하면서도, 실제 OS 스케줄링 로직을 소프트웨어 레벨에서 에뮬레이션한다. 이를 통해 가상 ECU는 실제 하드웨어와 동일한 인터럽트 주기, CAN 버스 통신, 타이머 동작을 재현한다.
가상화 적용 결과, 개발팀은 ECU 물리적 프로토타입 없이도 시스템 수준의 피드백을 조기에 얻을 수 있었다. 이는 특히 ECU 하드웨어가 아직 설계 단계에 있거나, 테스트 벤치가 부족한 상황에서 큰 장점으로 작용한다. 또한, 가상 ECU는 자동화된 회귀 테스트와 지속적 통합(CI) 파이프라인에 쉽게 통합될 수 있어, 코드 변경 시 즉시 시뮬레이션을 수행하고 품질 게이트를 통과하도록 지원한다.
하지만 논문은 가상화의 한계도 언급한다. 예를 들어, 전자기적 간섭(EMI)이나 실제 센서 노이즈와 같은 물리적 현상은 모델링 정확도에 크게 의존한다. 또한, 가상 ECU가 실제 ECU와 동일한 실시간 성능을 보장하려면 호스트 PC의 하드웨어 사양과 실시간 운영체제(RTOS) 지원이 필수적이다. 따라서 가상화는 완전한 대체가 아니라, 물리적 시험과 병행하는 보완적 수단으로 보는 것이 현실적이다.
전반적으로 이 연구는 대규모 엔진 제어 소프트웨어의 가상화에 필요한 구체적 방법론을 제시하고, Renault 내부 개발 프로세스에 실질적인 효율성을 도입한 점에서 의미가 크다. 향후 연구에서는 가상 ECU와 물리적 ECU 간의 자동 동기화 메커니즘, 그리고 머신러닝 기반 오류 탐지 기법을 결합해 더욱 정교한 검증 체계를 구축할 여지가 있다.
댓글 및 학술 토론
Loading comments...
의견 남기기