1. MBD 개요
가. 모델(Model)?
1) 정의
- 실제 시스템의 중요한 특징에 집중하여 이를 간략화한 그래픽, 수학적 또는 물리적 표현
- 현실의 복잡성을 제거하고 분석, 추론, 예측 등을 가능하게 함
2) 활용 목적
- 실제 시스템 없이도 기능 검증 및 시스템 동작 예측 가능
- 시뮬레이션 환경 내 테스트 및 검증의 효율성 증대
나. MBD의 정의와 목적
1) 정의
- 수학적, 시각적 모델을 중심으로 시스템 개발 전 과정을 수행하는 방법론
- 자동차, 항공, 산업기기 등 임베디드 SW가 포함된 복합 시스템 개발에 활용
2) 목적 및 기대 효과
- 개발 초기 단계에서의 결함 조기 발견
- 요구사항 변경의 유연한 수용
- 고객 요구사항에 부합하는 시스템 구현
다. MBD의 구성 요소
① 공정 단계
- 요구사항 분석 → 시스템 아키텍처 모델링
- 설계 및 시뮬레이션 → 코드 자동 생성 → Verification & Validation
② 협업 강화
- 다분야 팀 간 공통 언어 제공
- 협업 효율성 증대 및 커뮤니케이션 오류 감소
③ 주요 구성
- Plant Modeling
- 제어기 설계 및 합성
- 오프라인 및 실시간 시뮬레이션
- 소프트웨어 배포
2. Verification 단계의 핵심 시뮬레이션: MIL, SIL, PIL, HIL
가. Model In the Loop(MIL)
① 개념
- 플랜트와 컨트롤러 모두 모델로 구성하여 PC상에서 시뮬레이션
- 대표적인 도구: Simulink
② 절차
- 플랜트 모델 구축 → 컨트롤러 모델 생성
- 요구사항에 맞춰 동작 여부 확인 및 입출력 저장
- 저장된 데이터는 추후 SIL, PIL 등의 비교 기준으로 활용
③ 목적
- 요구사항 기반 테스트 케이스 생성
- 설계된 알고리즘의 유효성 검증
나. Software In the Loop(SIL)
① 개념
- 컨트롤러 모델을 C 코드로 대체한 후, 플랜트 모델과 시뮬레이션 수행
- 모든 연산은 여전히 PC상에서 실행
② 목적
- 컨트롤러 로직이 정상적으로 코드로 변환되었는지, 하드웨어 구현 가능성까지 검토 가능
다. Processor In the Loop(PIL)
① 개념
- 컨트롤러 코드를 실제 임베디드 프로세서(ECU)에 탑재
- 플랜트는 여전히 PC 기반 시뮬레이션
② 목적
- 개발된 코드가 실제 임베디드 환경에서도 정상적으로 수행 가능한지 확인
- 문제 발생 시 MIL 또는 SIL 단계로 회귀하여 수정
라. FPGA In the Loop(FIL)
① 개념
- 컨트롤러를 HDL 기반으로 FPGA에 구현
- PC 기반 플랜트 모델과 연결하여 시뮬레이션 수행
② 특징
- C 기반이 아닌 HDL 로직 설계 필요
- 높은 정밀도의 타이밍 제어 가능
마. Hardware In the Loop(HIL)
① 개념
- 컨트롤러 SW를 실제 ECU에 탑재
- HIL 머신에서 플랜트 모델을 실시간 실행
② 특장점
- 실시간 시뮬레이션 및 실제 입출력(I/O) 인터페이스 활용(CAN, 아날로그 등)
- MIL/SIL/PIL로는 검출할 수 없는 감쇠, 지연, 통신 이상 등 문제 식별 가능
③ 활용 분야
- 안전이 핵심인 시스템: 자동차, 항공 등
- 실차에서 불가능한 테스트(예: 차량 전복) 수행 가능
3. RCP와 실제 하드웨어 적용
가. Rapid Control Prototyping (RCP)
① 개념
- 다양한 플랜트에 적합한 입출력 인터페이스를 갖춘 실시간 시스템과 실제 플랜트를 연결
- 수동 프로그래밍 없이 컨트롤러 로직을 빠르게 테스트 가능
② 목적
- 빠른 컨트롤 전략 반복 실험
- 시스템 응답 시간과 안정성 검증
나. 실제 하드웨어 적용
① 검증 절차
- PIL 시뮬레이션을 통해 플랜트 모델 검증
- 이후 실제 플랜트와 ECU를 연결하여 최종 시스템 테스트
<참고 자료>
전재욱 교수님, SDV 이해하기(K-MOOC), 성균관대학교 반도체시스템공학과, '24.12.09.~'25.02.28.