Simulink를 사용한 가상 차량 구축

가상 차량은 일반적으로 차량 동작의 시스템 수준 시뮬레이션을 사용한 차량 제품 개발 라이프사이클의 가상화를 의미합니다. 자동차 엔지니어는 가상 차량 시뮬레이션을 통해 실제 동작에 대한 이해를 빠르게 증진하고 다양한 시나리오에서 가상 테스트를 수행하고 임베디드 소프트웨어의 기능을 검증할 수 있습니다. 이렇게 개발의 프론트로딩을 통해 Variant 평가를 가속화하고, 안전하게 경계 조건을 연구하고, 제품 품질을 개선할 수 있습니다.

가상 차량을 개발하기 위해서는 다음을 수행해야 합니다.

  • 차량 모델 생성
  • 임베디드 소프트웨어 통합
  • 테스트 시나리오 정의
  • 시뮬레이션 및 분석
  • 시뮬레이션 배포

“가상 차량 시뮬레이션은 개발 사이클 전반에 걸쳐 요구사항, 모델 및 소프트웨어를 지속적으로 평가하는 데 필수적입니다.”

Robert ter Waarbeek, Ford Technical Expert

차량 모델 생성

사전 준비된 참조 응용 사례를 차량 설계에 맞게 조정할 수 있습니다. 이렇게 파라미터화된 모델에는 파워트레인 및 차량 동역학이 포함되며, 이를 차량 에너지 최적화, 연비 분석, 열 분석 및 구성요소 크기 설정에 적용할 수 있습니다. 이러한 모델은 전기, 기계, 유체, 다물체 라이브러리의 구성요소를 사용하여 추가로 사용자 지정할 수 있습니다.

자율주행 응용 분야의 경우 카메라, 라이다, 레이다초음파 센서 등 다양하고 자세한 센서 모델을 통합할 수 있습니다.

Simulink는 Simulink 전용 통합 인터페이스를 갖춘 100개 이상의 연결 파트너로 구성된 개방형 통합 플랫폼입니다. Simulink의 FMI(Functional Mock-Up Interface)에 대한 내장 지원 기능을 통해 사용자 지정 FMU를 통합할 수 있습니다.


임베디드 소프트웨어 통합

임베디드 소프트웨어 통합

자체 제어 알고리즘을 사용하거나 사전 준비된 구성요소 및 감독 제어기를 사용하여 전체 차량의 폐루프 성능을 신속하게 평가할 수 있습니다.

Simulink 및 Stateflow에서 모델링된 제어기를 테스트하려면 MIL(Model-in-the-Loop) 시뮬레이션부터 시작할 수 있습니다. 이러한 구성요소를 가상 차량 모델과 간단하게 연결할 수 있으며, 이를 통해 초기 설계 단계에서 알고리즘을 효과적으로 평가할 수 있습니다.

이후의 개발 단계에서는 SIL(Software-in-the-Loop) 시뮬레이션을 위한 생산 C/C++ 코드를 가져올 수 있습니다. Simulink에 내장된 C/C++ 인터페이스를 통해 C 코드를 호출하거나 컴파일하고 가져온 코드 내에서 코드 커버리지를 분석할 수 있습니다.


테스트 시나리오 정의

사실감 있는 파라미터화된 장면과 주행 시나리오를 사용한 시뮬레이션은 가상 개발 공정에서 중요한 부분을 차지하며, 특히 자율주행의 경우에는 이 시뮬레이션만이 안전 보장에 꼭 필요한 수십억 마일의 테스트 주행을 달성할 수 있는 현실적인 방법이므로 더욱 중요합니다. MATLAB, Simulink 및 애드온 제품을 사용하면 복잡한 3차원 도로망과 노면 표시를 대화형 방식으로 만들거나 고해상도 지도 데이터를 가져온 다음 액터와 궤적을 추가하여 도로망의 영역을 생성할 수 있습니다. 카메라, 레이다 및 라이다 센서를 시뮬레이션할 경우에는 Simulink와의 연동 시뮬레이션이 가능한 Unreal® 환경에서 실행되는 센서 모델을 활용할 수 있습니다.

전동 파워트레인 개발이나 그 외의 전통적 차량 응용 분야의 경우에는 사전 정의된 일련의 주행 조작 또는 표준 드라이브 사이클 데이터를 사용하여 차량의 성능을 신속하게 평가할 수 있습니다. 이러한 데이터는 손쉽게 수정하거나 MATLAB에서 기록된 차량 테스트 데이터를 기반으로 사용자 지정 드라이브 사이클을 합성할 수 있습니다.

테스트 시나리오 설계

시뮬레이션 및 분석

시뮬레이션 및 분석

모델 기반 설계를 사용하면 모델링 시에 시스템의 설계 결함을 검출 및 수정할 수 있습니다.  시뮬레이션을 스텝 앞으로 그리고 뒤로 진행하여 차량 설계에 대한 이해를 증진하고 예상 외의 동작을 파악할 수 있습니다.

전체 차량 모델이 예상대로 시뮬레이션되면 성능을 최적화하고 대규모 시뮬레이션 연구를 실행하여 설계 공간을 탐색하거나 전체 시스템 거동을 검증할 수 있습니다. 병렬 실행을 위해 로컬 멀티코어, GPU, 클러스터 또는 클라우드로 작업을 분산하여 편리하게 시뮬레이션을 확장할 수 있습니다.

시뮬레이션 결과가 나오면 내장된 시각화 툴과 유연한 MATLAB 데이터 시각화 기능 (6:10)을 사용하여 결과를 검토할 수 있습니다. 또한 조직의 표준에 따라 시뮬레이션에 대한 리포트 생성을 자동화할 수도 있습니다.


시뮬레이션 배포

더 다양한 팀원들이 꼭 모델링 전문 지식이 없더라도 시뮬레이션의 이점을 누리도록 도와줄 수 있습니다. 앱 디자이너를 사용하면 사용자 지정 앱을 만들어서 MATLAB 앱, 독립형 데스크탑 앱 또는 웹 앱 형식으로 배포할 수 있게 패키징할 수 있습니다.

가상 차량 시뮬레이션을 실제 차량 테스트 데이터와 통합해야 할 경우에는 대규모 데이터가 흔히 저장되는 클라우드에 배포하는 방법을 선택할 수도 있습니다.

하드웨어/소프트웨어 통합을 검증해야 할 경우에는 MathWorks의 코드 생성 제품을 사용하여 HIL(Hardware-in-the-Loop) 테스트를 위한 전체 차량 모델을 배포할 수 있습니다.