전동화는 전기차(예: 승용차, 버스), 선박, 전기 항공기, 계통 연계형 에너지 저장 시스템, 태양광 발전 시스템 등 다양한 응용 분야에서 배터리 사용을 이끌고 있습니다. 이러한 응용 분야는 셀 선택, 전력/에너지 밀도, 부피, 무게, 수명 등 배터리 시스템 설계에 대한 서로 다른 요구사항이 있습니다.
테스트하기 전에 배터리 시스템 설계를 시뮬레이션하면 배터리팩의 동적 거동에 대한 이해를 얻을 수 있습니다. 다음과 같은 작업도 가능해집니다.
- 소프트웨어 알고리즘 탐색 및 비교
- 구동 테스트 케이스 확장
- 배터리 셀부터 배터리 시스템까지의 기술 개발 사이클 단축
배터리 시스템 개발 워크플로는 배터리 셀 구축에서 시작합니다. 5가지 주요 작업이 배터리 셀 설계와 배터리 시스템 사이에서 가교 역할을 합니다. 그러한 작업은 다음과 같습니다.
- 배터리팩 설계
- 전기 및 열 배터리팩 구성요소 설계
- BMS(배터리 관리 시스템) 알고리즘 개발
- 구성요소를 통합하여 데스크탑 시뮬레이션 실행
- HIL(Hardware-in-the-Loop) 테스트 및 배포
Simulink® 및 Simscape™를 사용한 배터리 시스템 개발 워크플로는 구성요소 설계 및 알고리즘을 검증하기 위한 데스크탑 시뮬레이션을 수행할 수 있도록 시스템 구성요소들을 통합하는 단계부터 시작합니다(데스크탑 시뮬레이션 참조). 그다음 단계는 신속 프로토타이핑과 HIL(Hardware-in-the-Loop) 테스트를 사용한 실시간 모델 시뮬레이션입니다(배터리 시스템의 실시간 시뮬레이션 참조). 개발의 마지막 단계는 하드웨어 구현, 배포 및 테스트입니다(하드웨어 구현 참조).
MATLAB®에서 Simscape Battery™ API(애플리케이션 프로그래밍 인터페이스)를 사용하여 배터리팩을 설계할 수 있습니다. 설계의 기초 요소에는 셀 설계, 병렬 조립, 모듈, 모듈 조립, 배터리팩 설계 등이 포함됩니다.
Simscape Battery를 사용하면 다음과 같은 작업을 수행할 수 있습니다.
- 전열 거동 모델링 및 배터리 셀 모델의 충전 동역학, 노화, 열 및 열 전달 효과 포함.
- 제조사의 데이터시트 기준으로 셀 파라미터화.
- 셀에서 모듈까지 그리고 모듈에서 팩까지, 다양한 기하구조와 위상으로 배터리 모델 구축 및 시각화.
- 사용자 지정 가능한 유체 경로 및 배터리팩으로의 열적 결합으로 냉각 플레이트 모델링.
- 셀 간 온도 편차 탐색 및 냉각 효율 측정.
- 배터리팩 설계를 위한 사용자 지정 Simulink 라이브러리 모델 생성.
- 적절한 모델 해상도를 설정하여 모델 충실도와 시뮬레이션 속도 간의 균형 달성.
핵심 요점
- 다양한 모델 해상도로 사용자 지정 배터리팩 개발.
- 배터리 모델에 열 효과 추가.
- 단 한 줄의 코드로 시뮬레이션을 위한 배터리팩 모델 생성.
배터리 셀부터 배터리 시스템까지
엔지니어는 MATLAB 및 Simulink로 배터리 열 관리 시스템을 설계하여 배터리팩의 온도가 사양 범위를 벗어나지 않도록 조절하고, 다양한 동작 조건에서 최적의 성능을 내도록 할 수 있습니다.
Simscape 및 Simscape Battery를 사용하면 배터리 셀 수준에서 시작해 모델을 생성하고 주변 온도 효과, 방열 소재, 냉각 플레이트 연결부를 추가하여 더욱 현실적인 모델을 생성할 수 있습니다. 주변, 냉매, 냉각 플레이트 위치로의 열 경로를 정의함으로써 셀 간, 셀과 플레이트 간, 셀과 환경 간의 관점에서 열 전달을 반영할 수 있습니다. Simscape Battery는 평행 유로, U자형 사각 유로, 가장자리 냉각 등 다양한 유동 형상을 지원하는 사전 구축된 냉각 플레이트 블록을 제공합니다.
열 효과와 함께 셀들을 모듈로 조립하고 모듈들을 팩 안에 배열함으로써 팩 수준 열 모델을 구축할 수 있습니다. EOL(수명 종료) 시점에 보증 기준을 충족하기 위해 다양한 노화 수준의 배터리팩에 대해 열 성능 분석을 수행할 수 있습니다.
가스, 유체, 열 도메인의 Simscape 및 Simscape Fluids™ 블록을 사용하여 능동형, 수동형 또는 하이브리드형 냉각/가열 솔루션들을 모델링할 수 있습니다. 파이프, 밸브, 열교환기, 탱크를 배치할 설계도를 작성하여 냉각/가열 시스템 아키텍처를 살펴볼 수도 있습니다.
유체 순환 시스템인 경우, 저장 유체가 담긴 팽창 탱크, 작동 유체를 배터리 셀 근처로 연결하는 냉각 플레이트, 펌프, 유동 경로, 밸브가 있는 모터 구동 순환 시스템, 유선 히터 또는 방열기 같은 다양한 유형의 열교환기를 모델링할 수 있습니다.
냉각/가열 시스템을 만든 다음에는 시뮬레이션을 실행하고 구성요소 크기와 시스템 파라미터를 탐색하여 설계를 정교화하고 열 발산 및 전력 소모량 같은 요구사항을 충족할 수 있습니다.
Simulink를 사용하면 피드 스트림(밸브) 제어, 질량 유량(펌프) 제어, 열교환 경로 선택 제어 등 순환 시스템 제어에 사용되는 피드포워드 및 PID 기법을 조합한 폐루프 제어를 손쉽게 설계할 수 있습니다. Simscape Battery를 사용하면 Battery Coolant Control, Battery Heater Control 등 사전 구축된 블록들을 사용하여 배터리 열 관리 제어 알고리즘을 구축할 수 있습니다. Stateflow®를 사용하면 주변 온도와 배터리 온도에 기반하여 가열 및 냉각 등의 동작 모드 간의 전환을 위한 감독 제어 논리를 설계할 수 있습니다.
핵심 요점
- 열 효과와 함께 셀을 모듈로 조립하여 팩 수준의 열 모델 구축.
- 사전 구축된 냉각 플레이트 블록 사용.
- 다양한 작동 유체를 사용하여 냉각/가열 시스템의 모델 구축.
- "가정" 시나리오에 대비해 설계하기 위해 극한의 온도 조건 시뮬레이션.
- 시나리오 연구를 수행하여 다양한 설계 옵션의 열 효과 평가.
- 모델링과 시뮬레이션을 통해 구성요소 선정 및 크기 설정 수행.
잘 설계된 BMS(배터리 관리 시스템)는 다양한 충전-방전 조건 및 환경 조건에서 최상의 성능, 안전한 작동, 최적의 수명을 확보할 수 있습니다. Simulink 및 Simscape를 사용하면 배터리팩의 동적 거동을 이해하고 소프트웨어 아키텍처를 살펴보고 작동 케이스를 테스트하고 조기에 하드웨어 테스트를 시작하여 설계 오류를 줄일 수 있습니다. 엔지니어는 Simscape Battery에 내장된 BMS 제어 블록을 사용하여 설계된 배터리팩 성능을 평가하고 열 관리 시스템을 개발하고 시스템 수준 시뮬레이션을 실행할 수 있습니다.
이러한 목표를 달성하기 위해 BMS는 배터리팩의 거동과 성능을 제어하는 알고리즘으로 구성되어 있습니다.
SoC(충전 상태) 추정을 위한 알고리즘 개발에서 정확한 배터리 모델은 필수적입니다. OCV(개방회로 전압) 측정 및 전류 적분(전하 집적법)과 같은 일반적인 SoC 추정 방식은 어떤 경우에는 상당히 정확합니다. 그러나 평탄한 OCV-SoC 방전 시그니처를 갖는 현대 배터리 화학 구조의 SoC를 추정하기 위해서는 다른 방식이 필요합니다. EKF(확장 칼만 필터) 및 UKF(무향 칼만 필터)는 합리적인 수준의 연산으로 정확한 결과를 제공하는 것으로 입증된 방식들입니다.
Simscape Battery에는 다음과 같은 3가지 SoC 추정기가 있습니다. 전하 집적법, 적응형 칼만 필터, 칼만 필터. 칼만 필터 SoC 추정기에 비해, 적응형 칼만 필터 SoC 추정기는 추가 상태로서 단자 저항을 가집니다. 적응형 칼만 필터 SoC 추정기와 칼만 필터 SoC 추정기는 모두 SoC 추정을 위한 관측기를 개발하기 위해 EKF 또는 UKF 중에서 선택할 수 있습니다. 일반적으로 이러한 관측기에는 셀에서 측정된 전류 및 전압을 입력으로 사용하는 비선형 시스템(배터리) 모델, 그리고 2단계 예측/업데이트 프로세스를 기반으로 하여 시스템의 내부 상태를 계산하는(그중에 SoC도 있음) 재귀 알고리즘이 포함되어 있습니다.
칼만 필터에 비해, 신경망을 사용하여 SoC 추정기를 개발할 경우에는 배터리 및 배터리의 비선형 거동에 관한 광범위한 정보가 필요하지 않습니다. 대신에 전류, 전압, 온도 데이터로 신경망을 훈련시키고 SoC를 응답으로 활용합니다.
핵심 요점
- Simscape Battery는 다음과 같은 3가지 SoC(충전 상태) 추정기가 있습니다. 전하 집적법, 적응형 칼만 필터, 칼만 필터.
- 적응형 칼만 필터 SoC 추정기와 칼만 필터 SoC 추정기는 모두 EKF 또는 UKF 중에서 선택할 수 있습니다.
- 적응형 칼만 필터 SoC 추정기는 추가 상태로서 단자 저항을 가집니다.
- 배터리에 관한 많은 정보가 없어도 신경망을 사용하여 SOC 추정기를 개발할 수 있습니다.
딥러닝을 사용하여 배터리 충전 상태를 추정하는 방법
제조 시점에서 성능 사양을 충족하는 배터리를 포함한 모든 배터리는 시간이 경과하면서 캘린더 수명과 사이클링으로 인해 성능이 저하되어 보유 용량이 점진적으로 줄어들고 내부 저항이 높아집니다. 후자는 짧은 시간 측정을 사용하여 비교적 간단하게 추정할 수 있지만 전자는 정확한 계산을 위해 완전 충전 또는 방전 과정이 필요하며 이는 실용성이 떨어질 수 있습니다. 이 과제를 해결하기 위해 SoH(성능 상태) 추정, 그리고 상태 외에 배터리 파라미터도 포함하도록 확대된 적응형 칼만 필터 공식 개발에 대한 관심이 높아졌습니다. 순시 내부 저항의 정확한 추정은 BMS가 전력 제한을 설정하는 데 있어 매우 유용합니다.
SoH 추정은 SoC 추정에 비해 더 주관적입니다. SoH의 정의에 대한 보편적인 합의는 없는 상황입니다. 그 결과, 조직마다 SoH 추정을 정량화하는 방법이 다를 수 있고, 이로 인해 범용적인 솔루션을 사용하는 것이 불가능합니다. Simulink 및 Simscape를 사용하면 배터리 성능에 대한 조직의 특정 해석에 맞게 사용자 지정 SoH 추정 알고리즘을 개발 및 시뮬레이션할 수 있습니다.
핵심 요점
- Simscape Battery는 칼만 필터를 사용한 SoH 추정기 블록을 제공합니다.
전기차 응용 사례에서 정상 및 노화 리튬이온 배터리의 모델 기반 파라미터 식별
Simscape Battery에는 셀 밸런싱, 배터리 충전, 배터리 보호를 위한 사전 구축된 라이브러리 블록이 제공되어 있습니다.
셀 밸런싱 기능은 과잉 전하를 블리드 저항을 통해 발산시킴으로써 모든 셀의 SoC를 비슷하게 유지해 줍니다. 밸런싱은 과충전 또는 방전으로 인해 손상될 수 있는 셀의 수명을 연장하기 위해 필요합니다. 셀 밸런싱이 이루어진 경우에는 셀이 많아지면 용량이 개선됩니다.
배터리 충전은 CC-CV(정전류-정전압) 알고리즘으로 제어됩니다. 이는 충전 중에 과전류와 과전압을 방지하여 배터리 수명을 유지하는 일반적인 방식입니다. 사전 설정된 전압에 도달할 때까지 충전 중에 전류가 제한됩니다.
배터리를 보호하려면 전류, 전압, 온도를 모니터링해야 합니다. Simscape Battery에는 BMS 알고리즘에 통합할 수 있는 블록이 제공됩니다.
핵심 요점
- Simscape Battery에는 셀 밸런싱, 전류 및 전압의 제어, 전압, 전류 및 온도의 모니터링을 위한 블록이 제공됩니다.
Simulink에서의 배터리 관리 시스템 개발
Simulink에서 데스크탑 시뮬레이션을 사용하면 배터리 시스템 설계의 기능적 측면들을 검증할 수 있습니다. 데스크탑에서는 거동 모델을 사용하여 배터리 시스템, 환경 및 알고리즘이 시뮬레이션됩니다. 예를 들어 능동 및 수동 셀 밸런싱 구성과 알고리즘을 살펴보면서 특정 응용 사례에 대한 각 밸런싱 방식의 적합성을 평가할 수 있습니다. 하드웨어 프로토타입 과정에 돌입하기 전에 데스크탑 시뮬레이션을 사용하여 새로운 설계 아이디어를 탐색하고 여러 시스템 아키텍처를 테스트할 수 있습니다. 또한 예를 들어 절연 이상이 감지되었을 때 접촉기의 개폐가 차단되는지를 검증함으로써 데스크탑 시뮬레이션에서 요구사항 테스트도 수행할 수 있습니다.
BMS 제어 소프트웨어 개발에 중심이 되는 사실적인 시뮬레이션을 수행하려면 먼저 배터리팩의 정확한 모델이 필요합니다. 배터리는 배터리의 물리적 구성을 고려하고 전자 열화학 속성을 포착하는 FEA(유한 요소 해석) 모델을 사용하여 설계되는 경우가 많습니다. 이러한 모델은 배터리팩의 화학 및 기하 구조를 설계하는 용도로는 손색이 없지만 제어 엔지니어에게는 시스템 수준의 설계 및 소프트웨어 개발에 더 적합한 모델이 필요합니다.
핵심 요점
- Simscape Battery는 더욱 정확한 배터리팩 모델을 제공합니다.
Simulink에서 BMS 알고리즘을 개발하는 경우, 등가 회로를 사용하여 배터리 셀의 열전 거동을 시뮬레이션할 수 있습니다. 등가 회로는 일반적으로 전압원, 직렬 저항, 그리고 하나 이상의 저항-커패시터 병렬 쌍으로 구성됩니다. 전압원은 개방 회로 전압을 제공하며 이외의 구성요소는 셀의 내부 저항과 시간 종속 거동을 모델링합니다. 이러한 등가 회로 소자는 일반적으로 온도 및 SoC(충전 상태)에 종속적입니다. 이러한 종속성은 각 배터리의 화학 구조에 따라 고유하므로, 설계 중인 제어기를 사용할 배터리 셀과 동일한 유형의 배터리 셀에 대해 수행된 측정값을 사용하여 이러한 종속성을 파악해야 합니다. Simulink와 MATLAB의 최적화를 사용하여 실험 데이터와 모델의 상관관계를 통해 등가 회로를 파라미터화할 수 있습니다.
핵심 요점
- Simulink와 MATLAB의 최적화를 사용하여 배터리 셀의 등가 회로를 파라미터화할 수 있습니다.
배터리팩 모델 외에도, 사실적인 배터리 시스템 시뮬레이션을 위해서는 배터리 시스템을 전원 및 부하에 연결하는 회로 구성요소의 정확한 모델이 필요합니다. Simulink의 애드온 제품인 Simscape Electrical은 셀 밸런싱을 위한 아날로그 프론트 엔드 등의 완전한 배터리 시스템 회로를 구성하는 데 필요한 능동 및 수동 전기 소자 라이브러리 일체를 제공합니다. 충전원은 PV(태양광 발전) 시스템과 같은 DC 공급 또는 전류가 정류되는 AC 전원으로 이루어질 수 있습니다.
Simulink 및 Simscape를 사용한 시스템 수준의 시뮬레이션을 통해 배터리를 중심으로 정교한 충전원을 구축하고 다양한 작동 범위 및 결함 상태에서 배터리 시스템을 검증할 수 있습니다. 배터리팩 부하도 유사한 방식으로 모델링 및 시뮬레이션할 수 있습니다. 예를 들어 배터리팩은 인버터를 통해 EV(전기차)의 PMSM(영구자석 동기모터)에 연결될 수 있습니다. 시뮬레이션으로 드라이브 사이클을 통해 EV의 동작에 변화를 주고 변하는 동작 조건에 따른 BMS의 유효성을 평가할 수 있습니다.
핵심 요점
- Simulink와 MATLAB의 최적화를 사용하여 배터리 셀의 등가 회로를 파라미터화할 수 있습니다.
제어되는 3상 인버터를 통해 IPMSM에 전원을 공급하는 고전압 배터리
테스트 절차에 데스크탑 시뮬레이션을 도입하면 테스트 케이스를 작성 및 실행하여 가능한 모든 로직 및 폐루프 제어 브랜치를 따라 배터리 시스템을 실행할 수 있습니다. 이는 하드웨어를 사용한 테스트에서는 거의 불가능한 수준의 커버리지입니다. 이 접근법에서 시뮬레이션 모델은 BMS 설계 및 테스트를 이끄는 실행 가능한 사양 역할을 합니다. Simulink는 다음과 같은 작업을 가능하게 해주는 다양한 기능으로 데스크탑 시뮬레이션을 통한 테스트를 지원합니다.
- 제한, 허용오차, 논리 확인, 시간 조건 등의 요구사항을 원래 사양으로의 추적성을 갖는 모델에 통합
- 복잡한 시뮬레이션 기반 테스트 시퀀스를 구성하여 기능 테스트, 기준 테스트, 동등성 테스트 및 백투백 테스트 수행
- 관계적 경계 커버리지를 비롯하여 결정, 조건 및 MC/DC(수정 조건/결정 커버리지)와 같은 업계 표준 메트릭 및 추적
- 모델 커버리지 및 사용자 지정 목표를 달성하기 위한 테스트 입력값 생성
- 정형 기법을 사용하여 정수 오버플로, 데드 로직, 0으로 나누기를 유발하는 숨겨진 설계 오류 식별
개발 중인 배터리 시스템이 안전 요구사항을 충족해야 하는 경우 IEC 61508, IEC 61851, ISO® 26262와 같은 표준에 따라 정형 기법 기반의 테스트를 소프트웨어 개발 공정에 통합할 수 있습니다.
데스크탑 시뮬레이션을 통해 검증한 후에는 Simulink 모델을 사용하여 RP(신속 프로토타이핑) 또는 HIL(Hardware-in-the-Loop) 테스트를 위한 C 및 HDL 코드를 생성하여 실시간으로 BMS 알고리즘을 추가적으로 검증할 수 있습니다. RP에서는 실시간 테스트를 위한 제어 소프트웨어 코드를 손으로 직접 작성하지 않고 그 대신 제어기 모델에서 코드를 생성하여 이를 프로덕션 마이크로컨트롤러의 기능을 수행하는 실시간 컴퓨터에 배포합니다. 자동 코드 생성을 통해 모델에 적용된 알고리즘 변경 사항을 며칠이 아닌 몇 시간 안에 실시간 하드웨어에서 테스트할 수 있습니다. 또한 Simulink 내에서 실시간 제어 하드웨어와 상호 작용하여 알고리즘 파라미터를 변경하고 테스트 데이터를 기록할 수 있습니다.
신속 프로토타이핑과 마찬가지로 HIL 테스트에서는 Simulink 모델에서 코드를 생성하여 이를 실시간 컴퓨터에 배포하게 됩니다. HIL 테스트의 경우, 코드는 제어 알고리즘 모델이 아닌 배터리 시스템 모델로부터 생성되어 배터리팩, 능동 및 수동 회로 소자, 부하, 충전기 및 기타 시스템 구성요소를 나타내는 가상 실시간 환경을 제공합니다. 이 가상 환경을 통해 하드웨어 프로토타입을 개발하기 전에, 하드웨어가 손상되지 않는 환경에서 실시간으로 BMS 제어기의 기능을 검증할 수 있습니다.
데스크탑 시뮬레이션 중에 개발된 테스트는 HIL 테스트로 전달되어 BMS 설계를 발전시키는 과정에서 요구사항을 충족하도록 합니다. 마이크로컨트롤러 또는 FPGA에서 실행되는 코드를 테스트하는 데 HIL 테스트가 주로 사용되지만, Simulink Real-Time™ 및 Speedgoat® 타겟 하드웨어와 같은 신속 프로토타이핑 시스템을 대신 사용하고 HIL 설정에 연결한 후에 프로덕션 제어 하드웨어를 선택할 수도 있습니다.
신속 프로토타이핑과 HIL 테스트를 모두 포괄하는 실시간 시뮬레이션을 통해 전력 전자 제어 엔지니어는 BMS 설계가 하드웨어에서 어떻게 동작할지에 대해 더 깊게 이해할 수 있습니다. RP와 HIL의 공통적인 목표는 전체 설계의 한 측면을 하드웨어에서 모방하는 것입니다. RP에서는 BMS 제어기를, HIL에서는 배터리 시스템의 밸런스를 모방합니다. 실시간 시뮬레이션은 BMS 설계에서 여러 큰 이점을 제공하여 다음을 수행할 수 있게 해줍니다.
- 최종 제어기 하드웨어를 선택하기 전에 RP를 수행하여 알고리즘 검증 시작.
- 빠른 설계 반복 및 테스트를 위해 실시간 테스트 시스템의 유연성 활용.
- 배터리 시스템 프로토타입 하드웨어가 준비되기 전에 HIL 테스트 수행.
- 실제 하드웨어를 사용할 경우 어렵고 값비싸거나 위험할 수 있는 테스트 케이스에 대해 RP와 HIL 테스트 조합을 사용하여 BMS 알고리즘 실행.
Simulink에서 데스크탑 시뮬레이션을 재사용하여 실시간 시뮬레이션을 위한 코드를 생성함으로써 전체적인 개발 시간을 단축할 수 있습니다. 실시간 성능에 최적화된 컴퓨터에서 실행되는 C/C++ 및 HDL 코드를 생성할 수 있습니다. 실시간 시뮬레이션을 위해 Simulink 모델에서 생성되는 코드에는 실시간 시뮬레이션 실행 중에 제어 파라미터를 조정할 수 있게 해주는 인터페이스가 포함됩니다.
하드웨어 테스트 중에 제어기 코드를 변경하면 지연과 부가적인 위험이 발생할 수 있습니다. 코드를 손으로 수정하고 다시 컴파일하고 마이크로컨트롤러 또는 FPGA에 배포하려면 시간이 소요되며, 변경 작업을 소프트웨어 또는 하드웨어 엔지니어에게 의존하는 제어 알고리즘 개발자라면 그 시간이 길어질 수 있습니다. 또한 필요한 변경의 범위에 따라 구현된 코드에 새로운 문제가 발생할 위험도 있습니다.
컨트롤러 소프트웨어에 대한 코드 업데이트를 손으로 작성하는 대신 Simulink를 사용하여 전용 컴퓨터에서 실시간으로 실행되고 고속 I/O를 사용하여 테스트 하드웨어와 통신하는 코드를 생성할 수 있습니다. 수동 코딩 및 이와 관련된 지연을 없애는 것 외에, 이 RP 접근법의 또 다른 이점은 데스크탑에서 먼저 시뮬레이션 모델을 실행하여 다른 문제가 발생하지 않는지 확인함으로써 BMS 소프트웨어에 대한 변경을 검증할 수 있다는 것입니다.
배터리 시스템에 대한 하드웨어 프로토타입을 구축하고 수정하는 데는 많은 노력이 들 수 있고 수리하는 데도 큰 비용이 드는 경우가 많으므로 배터리팩이 작동할 전기 시스템을 대상으로 이러한 프로토타입을 테스트하는 방법은 항상 가능하진 않습니다. 이러한 한계를 감안하면 작은 설계 변경이라 해도 개발 일정에 지장을 초래할 수 있습니다. 또한 팀들은 이전 설계에서 급격한 변경을 시도하는 것은 너무 위험하다고 생각하므로 BMS 설계는 느리게 발전하는 경향이 있습니다.
Simulink를 사용하면 배터리 시스템, 그리고 공급과 부하를 포함하는 배터리 시스템이 속한 더 큰 시스템의 하드웨어의 모델에서 C/C++ 및 HDL 코드를 생성할 수 있습니다. 이 코드를 실시간 컴퓨터에 배포하면 배터리 시스템 프로토타입 내 제어기를 테스트하기 전에 제어기 코드를 대상으로 하드웨어의 실시간 시뮬레이션을 실행할 수 있습니다. 결과적으로 제어 설계 오류가 값비싸고 교체하기 어려운 프로토타입 하드웨어를 손상시키기 전에 오류를 찾아 수정할 수 있습니다. 또한 부정확한 구성요소 크기 설정과 같은 하드웨어 설계 오류도 발견할 수 있습니다.
Speedgoat 타겟 하드웨어를 비롯한 많은 HIL 실시간 시스템은 배터리 에뮬레이터를 포함하므로 이동식 배터리 전력 공급 장치를 모방하고 전기차 또는 싱크 전류에 대한 배터리 스택을 모방하여 충전 중인 배터리를 시뮬레이션할 수 있습니다.
HIL(Hardware-in-the-Loop)을 사용한 배터리 관리 시스템 테스트
하드웨어 구현 단계에서 데스크탑 시뮬레이션, RP 및 HIL을 통해 검증된 Simulink 제어 모델은 BMS를 위한 프로덕션 준비 코드를 생성하는 데 사용됩니다. 필요한 경우 자동차, 항공우주 및 기타 규제 대상 산업에 사용되는 공식 인증 표준에 준용하는 워크플로에 프로덕션 코드 생성을 도입할 수 있습니다.
Simulink는 프로덕션 마이크로컨트롤러, FPGA 및 ASIC에서 구현할 준비가 된 제어기 모델로부터 가독성이 좋고 간소하며 효율적인 C/C++ 및 HDL 코드를 생성합니다. 프로덕션 목적으로 생성되는 코드는 RP 목적으로 생성된 코드와 달리 실시간 모니터링, 파라미터 조정 및 데이터 로깅을 지원하는 데 필요한 부가적인 인터페이스를 포함하지 않습니다. 최적화 설정을 통해 사용자는 생성된 함수, 파일 및 데이터를 정밀하게 제어하여 코드 효율성을 개선하고 레거시 코드, 데이터형 및 보정 파라미터와의 통합을 원활하게 진행할 수 있습니다.
PIL(Processor-in-the-Loop) 시뮬레이션에서는 C/C++ 또는 HDL 코드는 마이크로컨트롤러 또는 FPGA에서 실행되고 소자는 BMS 하드웨어의 Simulink 모델로 실행에 개입하여, BMS 코드의 초기 평가 중 하드웨어 프로토타입이 손상될 위험을 낮춥니다. PIL 시뮬레이션은 실시간으로 실행되지는 않지만 Bit-True 시뮬레이션이므로 사용자는 다양한 조건에서 코드를 확인하고 실제 시스템에 배포되는 경우 올바르게 실행될 것이라는 믿음을 가질 수 있습니다.
데스크탑 시뮬레이션, RP, HIL, PIL 시뮬레이션을 통해 사용자는 BMS에 대한 제어 알고리즘을 확인 및 검증할 수 있습니다. Simulink를 사용하여 프로덕션 준비 코드(마이크로컨트롤러에 구현하기 위한 최적화되고 안정적인 C/C++ 코드 또는 FPGA 프로그래밍 또는 ASIC 구현을 위한 합성 가능한 HDL 코드)를 생성하기 위한 기반으로 이러한 알고리즘을 사용할 수 있습니다. 자동 코드 생성을 통해 수동 알고리즘 변환 오류를 없애고 Simulink에서 검증한 알고리즘과 수치적 동등성을 갖춘 C/C++ 및 HDL 코드를 생성할 수 있습니다. 가능한 모든 동작 및 결함 상태에서 제어 알고리즘을 시뮬레이션하면 직접 이런 조건에서 모두 테스트할 수 없더라도 생성된 코드가 실제 시스템에서 이러한 상황에 대처할 수 있다는 믿음을 가질 수 있습니다. 이후의 하드웨어 테스트에서 알고리즘 변경이 필요한 것으로 나타나면 모델에서 알고리즘을 수정하고 시뮬레이션 테스트 케이스를 다시 실행하여 정확하게 변경이 되었음을 확인하고 새로 업데이트된 코드를 생성하기만 하면 됩니다. 생성된 모든 C/C++ 및 HDL 코드는 전체적으로 이식성이 좋고, 다양한 옵션으로 최적화할 수 있으며, Simulink 모델과의 양방향 추적성을 갖습니다.
프로덕션 코드 생성하기
추천하는 다음 단계
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)