|
마이크로 하이브리드 자동차용 납축전지의 효율적 관리
By 마이클 후터러(Michael Hutterer), 안토니오 리온(Antonio Leone)
전체 요약
오늘날의 자동차에는 전기를 사용하는 부품이 점점 더 많아져서 배터리 전력을 높이는 것이 중요 과제로 떠오르고 있다. 전기 계통에서 발생한 자동차 고장의 원인을 추적하면 결국 절반 이상이 납축전지 때문이며 대부분은 배터리 상태를 알면 막을 수 있었던 고장이었다. 또한 스타트-스톱 또는 지능형 교류 발전기 제어 등과 같은 마이크로 하이브리드 자동차의 새 기능을 제대로 이용하려면 배터리 상태를 정확히 알아야 한다. 배터리 관리 시스템(BMS)은 충전 상태(SoC), 자동차 정상도 상태(SoH) 및 기능 상태(SoF)를 크랭킹 기능을 통해 빠르고 신뢰성 있게 탐지하는 데 필요한 정보를 제공한다. 그러므로 BMS을 사용하면 예기치 못한 배터리 고장으로 인한 자동차 고장 횟수를 최소화하고 배터리 사용시간과 효율을 최대로 높이고 CO2 저감 기능을 활성화할 수 있다. BMS의 핵심 요소는 배터리 단자 전압, 전류 및 온도를 측정하여 배터리 상태를 계산하는 지능형 배터리 센서(IBS)이다. 이 논문에서는 최신 SoC, SoH 및 SoF 계산 알고리즘을 사용한 BMS 구현과 프리스케일의 납축전지용 IBS에서 이 알고리즘을 효율적으로 구현하는 방법에 대해 설명한다.
1) 머리말
전통적으로 자동차 배터리의 충전 수준은 제대로 알 수가 없어 많은 경우 자동차 고장의 원인이 되곤 했다. 자동차 수명에 따라 배터리 관련 고장률은 최고 10000 ppm까지 상승할 수 있다[1].
자동차 배터리가 중요해진 것은 이미 현실이 된 상황이지만 여기에 더하여 전기 에너지와 전력 수요의 증가와 동시에 CO2 배출 감소도 시급히 해결해야 할 당면과제로 떠올랐다. 자동차 혁신의 많은 부분이 전자공학으로 실현됨에 따라, 쾌적함, 안전 관련 기능의 전자화, 자동차의 하이브리드화, 운전자 지원 및 인포테인먼트의 기능 향상을 감안하여 에너지 공급을 늘려야 한다. 다른 한편으로는 CO2 배출 감소와 연료 소비량 감소에 대한 규제가 더욱 더 많아지고 있다.
이러한 규제 요건을 관리하려면 첨단 에너지 관리 시스템이 필요하다. 광범위한 운전 시나리오에서 배터리가 엔진 크랭킹에 충분한 에너지를 제공할 수 있고 배터리를 수동 전원으로 사용할 수 있도록(예: 지능형 교류 발전기와 스타트-스톱 시스템 지원) 보장해야 한다.
2) 에너지 관리 시스템
대표적인 스타트-스톱 시스템을 지원하기 위해 사용되는 대표적인 전원 네트워크는 차체 제어 모듈(BCM), 배터리 관리 시스템(BMS), 발전기 및 DC/DC 컨버터로 구성된다(그림 1 참조). BMS는 BCM에 배터리 상태를 제공하며, 이 상태 정보를 바탕으로 특정 부하 관리 알고리즘을 통해 발전기와 DC/DC 컨버터를 제어하여 전원 네트워크를 안정화하고 효과적으로 관리할 수 있다. DC/DC 컨버터는 자동차의 전기 사용 부품에 전력을 분배한다.
배터리 관리 시스템 발전기 제어 에너지 DC-DC 컨버터 BCM 전기 사용 부품
그림 1: 대표적인 스타트-스톱 시스템에 사용되는 전원 네트워크의 예
납축전지에 대한 대표적인 BMS는 배터리 클램프의 스마트 커넥터 안에 직접 장착된다. 커넥터는 저저항(대개 100마이크로옴 범위) 분로 저항기, 정밀 측정 기능을 가진 고도 집적 소자가 실장된 소형 PCB 및 일명 지능형 배터리 센서(IBS, 그림 2 참조)라고 부르는 처리 기능으로 구성되어 있다. IBS는 배터리 전압, 전류 및 온도를 최악의 조건에서도 수명이 다할 때까지 높은 분해능과 정확도로 측정하여 배터리의 정상도 상태(SoH), 충전 상태(SoC) 및 기능 상태(SoF)를 제대로 예측할 수 있게 해준다. 이러한 매개변수는 주기적으로 또는 요구할 때 자동차 인증 자동차 내 네트워크를 통해 BCM에 전달된다.
그림 2: 대표적인 납축전지용 지능형 배터리 센서
위에 열거한 기능과 매개변수 기능 외에, IBS에 대한 다른 핵심 요건으로 낮은 소비전력, 혹독한 자동차 환경에서 운전이 가능하게 하는 기능(즉, EMC, ESD), 자동차 OEM이 수용한 자동차 내 통신 인터페이스(즉, LIN)에 대한 준법성 테스트, 자동차 등급 테스트 한계(테스트 대상 매개변수에 대한 식스 시그마 한계)를 만족해야 하며, 물론 AEC-Q100 검증 절차도 만족해야 한다.
프리스케일은 전술한 매개변수를 모두 만족하는 프리스케일 S12 MCU 기술[2]을 기반으로 한 완전 통합된 LIN 배터리 감시 디바이스를 발표했다. 이 디바이스는 외부 분로 저항기를 통한 전류 측정, 배터리 양극에 직접 연결된 직렬 저항기를 통한 배터리 전압 측정 및 통합형 센서를 이용한 온도 측정의 세 가지 독립 측정 채널을 포함하고 있다. 센서를 다른 부품 없이 LIN 버스에 직접 연결하기 위해 통합형 LIN 2.1 인터페이스가 사용된다. 프리스케일의 IBS는 AEC-Q100에 따라 자동차에 적합한 것으로 완전히 검증되었다.
다음 장에서는 프리스케일의 IBS를 사용한 BMS 구현과 IBS의 하드웨어 기능 및 고정 소수점 수학 기능을 사용하여 높은 BMS 효율을 달성할 수 있는 방법에 대해 설명한다.
3) 배터리 감시
2)에서 언급했듯이, IBS의 주 목적은 배터리의 상태를 감시하고 필요한 경우 상태 변수를 BCM 또는 다른 ECU에 전달하는 것이다. 배터리 감시를 위한 입력으로 측정된 배터리 전류, 배터리 전압 및 온도 샘플 값이 사용된다. 배터리 감시의 출력은 SoC, SoH 및 SoF이다.
3.1) 충전 상태(SoC) SoC에 대한 정의는 매우 직관적이며 대개 백분율로 표시된다. 완전 충전된 배터리의 SoC는 100%이며, 완전 방전된 배터리의 SoC는 0%이다. SoC는 배터리가 충전 및 방전됨에 따라 변화한다. 이것을 공식 (1)로 나타낼 수 있는데, 여기서 Cr은 남은(방전 가능한) 배터리 용량이며 Ca는 총 사용 가능 배터리 용량이다.
단, 사용 가능 배터리 용량은 공칭 용량(대개 배터리 케이스의 라벨에 표시되어 있음)과 다른 경우가 많다는 문제가 있다. 새 배터리의 경우, 사용 가능 용량이 공칭 용량보다 오히려 높을 수도 있지만 배터리를 오래 사용할수록 이 용량이 감소한다. 또 다른 문제는 실제 사용 가능 용량을 IBS의 입력치를 기반으로 결정하기가 매우 어렵다는 것이다. 그래서 SoC를 공칭 용량 Cn과 관련시키는 경우가 많은데, 이렇게 하면 다음과 같은 여러 가지 장점이 있다. 특정 SoC에서 배터리의 사용 가능한 충전량을 알 수 있다(오래 사용한 배터리도 포함). Cn을 테스트할 때의 전류(I=Cn/20h) 및 온도(27°C)가 정의되어 있다.
SoC 계산을 위해 널리 사용되는 두 가지 방법이 있다. 하나는 쿨롱 계산 방법으로 일명 전류 적분 또는 암페어-시 평형화라고도 하며, 다른 하나는 개방 회로 전압(OCV) 측정 방법이다. 쿨롱 계산 방법은 SoC의 빠른 변화를 가장 잘 추적할 수 있는 방법인데, 이 방법은 배터리에 흘러드는 전류와 배터리에서 흘러나가는 전류를 적분하고 그에 따라 계산된 배터리의 SoC를 적응시킨다. SoC 계산에는 공식 (2)를 사용하는데, 여기서 Q(t0)은 배터리의 초기 충전량, α는 효율 계수, i(t)는 전류(포지티브 또는 네거티브), 그리고 Cn은 배터리의 공칭 용량이다.
공식의 매개변수는 계수 α를 제외하고는 매우 직관적이다. 이 계수는 포이케르트(Peukert)의 법칙[3] [4]이라는 효과를 기술한다. 이 계수는 납축전지의 용량을 방전율 단위로 표시한다. 방전율이 높아지면 배터리의 사용 가능 용량은 감소한다. 사용 가능 용량에 영향을 끼치는 또 다른 매개변수는 온도이며, 온도가 높으면 사용 가능 용량이 더 크다. 두 가지 영향 모두 α를 사용하여 기술하므로, 필요한 α-값의 2차원 배열(온도 대 방전율)이 생긴다. 측정된 온도와 방전율에 따라 각 통합 단계에 대해 개별적으로 적절한 값을 취한다. α-값은 배터리 설계와 화학적 특성에 따라 크게 달라지며 대개 같은 제조업체라 하더라도 모델에 따라 서로 다르다. 일반적으로 α-값은 실험실의 충전 테스트와 방전 테스트에서 얻는다.
포이케르트 법칙은 방전에 대해서만 유효하지만, α와 유사한 효율 계수를 충전 주기에도 적용해야 한다. 높은 SoC에서의 충전 효율은 SoC가 보통일 때보다 더 작기 때문에, 온도 및 충전율 외에 실제 SoC도 고려해야 한다. 전류와 α 값의 적분으로 인해 배터리 충전 조건에 따른 오차와 전류 측정 오차 및 수량화 오차는 시간이 경과할수록 더 커진다. 따라서 전류 적분의 시작점인 매개변수 Q(t0)은 대개 더 나은 정확도를 제공하는 다른 방법, 즉 OCV 방법을 통해 얻는다. OCV는 전기 사용 부품이 배터리에서 전류를 인가하지 않는 경우의 배터리 극간 전압이다. 납축전지는 OCV와 SoC 간에 양호한 선형 관계를 나타내기 때문에, OCV를 측정하면 SoC를 바로 계산할 수 있다. OCV와 SoC 사이의 정확한 계수는 특성분석을 해야 한다. 이 방법의 유일한 결점은 자동차가 주차되어 있어야만, 즉 (거의)모든 전기 사용 부품이 꺼진 상태에서, 그것도 자동차 시동이 꺼진 지 수십 분, 심지어 수 시간이 지난 후에만 OCV를 측정할 수 있다는 것이다. 따라서 OCV 방법은 쿨롱 계산을 가능하면 자주 재교정하기 위해 사용되며 지속적으로 사용하는 방법은 쿨롱 계산 방법이다. 이러한 조합에 의해 SoC의 계산이 정확해지며 SoC를 오래 주차해 둘 때의 자연방전율로 보정해서 이 계산을 더 정확하게 개선할 수 있다.
3.2) 정상도 상태(SoH) 납축전지에는 배터리에 다양한 영향을 끼칠 수 있는 여러 가지 노화 효과가 있다[5]. 이 효과는 IBS에서 개별적으로 탐지하여 수량화하기가 어렵기 때문에, SoH는 대개 이러한 노화 효과를 직접 기준으로 해서 계산하지 않는다. 그 대신에 노화 효과의 주된 결과인 남은 수명에 대한 용량 감소를 계산한다. 두 번째 매우 중요한 매개변수는 역시 배터리 노화와 관련되어 있는데 크랭킹 성능이다. 단, 이 매개변수는 대개 크랭킹 기능에 대한 기능 상태(SoF)를 사용하여 표시한다(3.3절 참조). 그러므로 SoH는 공식 (3)을 사용하여 추정되며, 여기서 Caged는 노화된 용량, Cn은 SoC 계산에 따라 참고로 취한 공칭 용량이다.
Cn을 알아내고 나서 SoH를 계산하기 위해 중요한 작업은 Caged를 알아내는 것이다. 이때 가능한 방법이 남은 수명에 대한 최대 충전 도달량(또는 SoC)을 추적하는 것이다. 몇 번 완전 충전한 후에도 배터리의 최대 충전 수준이 이전에 계산한 노화 용량보다 낮으면 노화 용량이 작아진 것이다. 따라서 Caged와 SoH를 쿨롱 계산 및 OCV 방법에 의해 결정된 용량에 적응시켜야 한다. 완전 충전 상태는 충전 전류가 특정 한계치보다 낮게 감소한 것으로 탐지할 수 있다. SoH를 결정하는 또 다른 방법은 충전 및 방전 주기를 추적하고 이것을 배터리 제조업체가 제공한 주기 안정성에 대응시키는 것이다. 일반적으로 제조업체가 보장한 지정 온도에서 지정한 심도의 충전/방전 주기의 양이 있다(예: 섭씨 27도에서 방전 심도가 25%인 500주기).
모든 주기를 이러한 수치에 대응시키고 온도와 충전 상태에 대한 보정 계수를 적용하면 전술한 Caged 추적을 지원할 수 있다. 이 보정 계수를 배터리의 특성분석에 의해 알아낼 수 있어야 한다. 그러나 이 두 가지 방법은 대개 남은 수명에 대한 다양한 배터리 매개변수 관찰과 밀접하게 결합된 다른 독자적 알고리즘과 조합하여 사용된다. 이러한 배터리 매개변수는 실험실에서의 방대한 배터리 특성분석에서 알아낸 것이며 대개 특정 배터리 모델에만 적용된다.
3.3) 기능 상태(SoF) 납축전지의 가장 중요한 기능은 아니더라도 매우 중요한 기능은 자동차의 엔진의 크랭킹이다. 따라서 BMS의 매우 중요한 작업은 실제 조건에서 크랭킹이 가능한지 여부를 예측하는 것이다. 이 크랭킹 예측은 SoF 매개변수를 사용하여 표시된다. "전통적인" 주차 후 크랭킹 외에도, 크랭킹 예측은 마이크로-하이브리드 자동차의 스타트-스톱 시스템 도입을 통해 훨씬 더 중요해졌다. BMS는 엔진을 정지한 후 다시 크랭킹할 수 있는지 여부 및 그에 따라 정지 모드로 들어가는 것이 안전한지 여부를 결정하여 BCM에 전달해야 한다. SoF를 구하는 좋은 방법은 가장 최근의 엔진 크랭크, 남은 배터리 충전량(SoC와 SoH의 함수로) 및 실제 온도를 분석하는 것이다. 크랭킹 중에 배터리의 내부 저항(Ri) (전압 강하와 전류로부터 계산)을 기록해야 한다. Ri는 대개 남은 수명에 대해 일정하고 배터리의 수명이 종료하기 직전에 크게 상승하므로[5], 안전 크랭킹을 보장하려면 Ri의 평균치가 특정 한계치보다 낮아야 한다. 노화 배터리의 또 다른 영향은 크랭킹 단계에서 전압 및 전류 샘플로부터 계산한 Ri 값이 비선형[5]인, 즉 동일한 전압 샘플에 대해 전류치가 서로 다른 경향이 있다는 것이다. 새 배터리의 경우 Ri가 선형이다. 크랭킹 중의 대표적인 전압 및 전류 프로필은 그림 3과 4를 참조한다.
크랭킹 전압[V] 전압 그림 3: 크랭킹 전압 프로필
크랭킹 전류[A] 전류 그림 4: 크랭킹 전류 프로필
Ri(전압 강하와 전류로부터 계산한)는 배터리의 남은 충전량 및 실제 온도와 함께 크랭킹 기능의 좋은 지표를 제공한다. 역시 한계치는 배터리 특성분석을 통해 결정해야 한다. Ri의 선형 또는 비선형 작동을 필요한 정확도로 결정하려면, 크랭킹 단계에서 샘플링한 모든 전압치와 전류치를 선형 필터(아마도 대역 통과 필터)로 필터링해야 한다.
4) 하드웨어와 소프트웨어에 BMS를 효율적으로 구현하는 방법
전기 에너지의 효율은 새 자동차의 매우 중요한 특성 중 하나이며, 이는 BMS에 의해 실현된다. BMS는 항상 작동되어 있으면서 교류 발전기가 작동하지 않을 때 납축전지로 전원을 공급하기 때문에, 일부 에너지 절약 기능을 관리하면서도 에너지를 효율적으로 사용해야 한다. 이 요건을 만족하려면 IBS의 소비전력을 가능하면 낮춰야 한다. 이 목표를 달성하기 위해, 프리스케일의 IBS는 CPU 및 하드웨어(HW)를 필요로 하지 않는 다른 블록이 꺼져 있는 두 가지 저전력 모드를 구현한다. 일반 모드에서 소비전력을 줄이고 고객의 소프트웨어(SW) 개발 수고를 덜어주기 위해, 하드웨어 블록을 더 추가하여 소프트웨어 복잡성을 감소시킨다. 이렇게 하면 더 작고 소비전력이 낮고 비용 효율이 더 높은 16비트 마이크로컨트롤러를 사용할 수 있다. 소프트웨어 복잡성을 낮추기 위해 구현한 또 다른 대책은 남은 수명 동안 제품 매개변수를 보장하고 공장에서 조정한 교정 값을 비휘발성 메모리에 저장하는 것이다. 최종 테스트의 일부로, 각 칩에 대해 개별적으로 이 교정치를 특성분석하고 적절히 저장한다. 따라서 소프트웨어에 복잡한 교정 알고리즘을 포함시킬 필요가 없다. 하드웨어로 구현한 이러한 세 가지 기법 외에, 이장에서는 배터리 감시 알고리즘의 효율적인 소프트웨어 구현에 관한 정보를 제공한다(3장 참조).
4.1) 저전력 모드 저전력 모드 구현은 소비전력을 줄이기 위해 아주 좋은 대책이다. 이 모드에서는 SoC의 부품(특히 CPU)을 필요하지 않을 때 끄고 필요할 때에만 일반 모드(즉, 모든 하드웨어 블록이 작동하는 상태)로 바꾸어 소비전력을 낮춘다. 앞에서 지적했듯이 두 가지 저전력 모드가 있으며, 두 모드는 CPU가 켜진 후 사용하는 프로그램 진입점만 서로 다르다.
그러나 저전력 모드, 즉 소프트웨어 상호작용이 없는 동안에도 배터리 상태를 감시해야 한다. 기본적으로 SoC 계산의 쿨롱 계산 방법을 위해 전류를 기억해야 한다. 따라서 저전력 모드에서의 전류 측정과 저전력 모드에서의 전류 샘플치 자동 합산(즉, 쿨롱 계산)이 지원된다. IBS는 배터리와 자동차의 상태 변화에 반응할 수 있어야 한다. 즉, 배터리 센서는 여러 이벤트에서 켜져야 한다. 따라서 저전력 모드에서 전류와 온도를 측정해야 한다. 전류 변화는 대개 자동차의 상태(전기 사용 부품이 켜지거나 꺼짐)에 변화가 있다는 것을 의미하지만, 온도가 변화하면 가끔 측정 채널 매개변수를 재교정해야 한다(4.3 참조). 전류와 온도 샘플치의 한계치를 구성할 수 있으며 이 한계치를 초과하면 켜기가 개시된다. 자동화된 쿨롱 카운터의 한계치에 대해서도 켜기를 사용할 수 있다. 측정대상 매개변수에 대한 이러한 켜기 이벤트 외에, BCM 또는 자동차의 다른 전자기기가 IBS를 켤(LIN 메시지 또는 직접 배선 연결을 통해) 수 있도록 구현된 켜기 기능이 있으며 시한성 켜기 기능도 있다. 위에 설명한 대로 저전력 모드와 켜기를 구현하면 IBS는 엔진이 가동 중일 때를 포함하여 대부분(대개 약 70%)의 시간에 저전력 모드로 실행할 수 있다. 정상 동작 중에는 SoC, SoH 및 SoF 매개변수가 재계산된다.
4.2) 소프트웨어 작업을 하드웨어 블록으로 이동 소프트웨어 작업을 없애기 위해 전용 하드웨어 블록을 구현하는 것은 소프트웨어 복잡성을 줄이고 전력을 절감하는 효율적인 방법이다. 그러한 하드웨어 블록은 전압, 전류 및 온도 측정 샘플을 배터리 감시 알고리즘에 사용하기 전에 사전 처리하는 데 매우 효율적이다. 이러한 사전 처리는 자동차의 파워 라인에 대개 잡음이 있고 IBS에 대한 샘플링 값의 측정 정확도 요건이 매우 엄격하기 때문에 필요하다.
고정밀 16비트 시그마-델타 ADC 다음에 데시메이션 필터와 잠음 제거 필터를 사용하는 방법은 다른 ADC 기술에 비해 측정 정확도가 높기 때문에 애플리케이션에 매우 적합하다. 이 방법은 오차 보정(4.3 참조)과 함께 이미 매우 우수한 정확도를 제공하고 있다. 그러나 신호 처리 체인 다음에 샘플을 다시 필터링하는 것이 바람직한 경우가 많다. 한 가지 이유는 자유롭게 교체 가능한 필터 주파수 특성이 필요한 자동차의 다른 전기 기기에서 잡음을 제거할 수 있기 때문이다. 또 다른 이유는 배터리 감시의 일환으로 감시하는 특정 배터리 매개변수가 배터리의 화학 특성에 따라 달라지는 여자 주파수와 밀접하게 결합되어 있기 때문이다. 예를 들어 Ri가 그러한 경우이다. 프로그래머블 선형 필터는 이 요건을 만족한다. 즉, 레지스터를 통해 필터 계수를 하드웨어 필터 블록에 전달할 수 있다. 이 레지스터는 한 번 프로그램하면 소프트웨어에서 더 이상 필터링을 수행할 필요가 없다.
전류 측정에서는 작은 전류에 대해 높은 측정 정확도가 필요하면서도 넓은 측정 범위를 지원해야 한다는 사실 때문에 한 가지 과제가 생긴다. 필요한 정확도는 10mA보다 더 좋아야 하며, 이는 100마이크로옴 분로 양단에 1㎶의 전압 강하에 해당하는데, 차량 크랭킹 중에는 1000A 이상의 전류가 관측된다. 소프트웨어에서 수동으로 측정을 재구성할 필요가 없으면서도 두 요건을 지원하려면 자동 게인 증폭기를 구현해야 한다.
선택 가능한 게인 계수는 입력 신호를 ADC의 참조 전압에 최적으로 맞게 조정한다. 이 게인 계수 조정은 실행 시에 소프트웨어를 재구성할 필요 없이 자동으로 수행되게 할 수 있다. 시험 목적상 또는 특별한 애플리케이션 요건이 있는 경우에도 고정 게인 계수를 선택할 수 있다.
4.3) 용이해진 교정 남은 수명 동안 기기의 정확도를 보장하기 위해 매우 중요한 작업이 트리밍과 교정이다. 이 목적을 위해 이전에 테스트한 보정 계수를 중요 기기 매개변수에 적용한다. 이러한 계수는 생산 라인의 기기 테스트 공정의 일부로 여러 온도에서 테스트되며 IBS의 NVM에 저장된다. 기기가 작동을 시작할 때 소프트웨어에 의해 해당 트리밍 매개변수를 기기 레지스터에 써넣어야 한다. 트리밍해야 하는 매개변수는 전류 및 전압 측정 체인에서 발견되며 발진기, 전압 참조 및 LIN 타이밍도 트리밍해야 한다. 실행 시에 예를 들어 주기적으로 또는 온도 변화가 심한 경우에 재교정을 수행해야 한다. 해당한다면 각 레지스터에 서로 다른 보정 계수를 다시 써넣어야 한다. 지금까지 설명한 교정 기능을 이용하면 고객이 최종 단계에서 많은 비용을 들여 이러한 매개변수를 테스트할 필요가 없다. 또한 간단한 매개변수를 적용하여 교정을 위한 소프트웨어의 복잡성을 낮출 수 있다.
4.4) 소프트웨어 구현 3)장에서 언급한 배터리 관리 알고리즘을 구현하려면 프로세서의 처리가 많이 필요한 계산과 제어 알고리즘이 필요하다. 일반적으로 이러한 알고리즘을 처음 구현할 때에는 PC에서 모델 기반 시뮬레이션 도구를 사용한다. 이러한 도구는 대개 부동 소수점 데이터 형식을 사용한다. 개발 과정의 후반부에서 이 알고리즘이 IBS에 이식되었다. 그러나 비용과 소비전력 문제 때문에 IBS에 사용되는 마이크로컨트롤러 급에 사용할 수 있는 부동 소수점 하드웨어는 없다. 따라서 실행 시에 적용 가능하게 만들려면 알고리즘에 사용되는 데이터 형식을 고정 소수점 정수 형식으로 매핑해야 한다. 사용할 수 있는 여러 데이터 형식과 고유한 값 범위가 있다. 예를 들어 프리스케일의 IBS에 사용할 수 있는 데이터 형식은 다음과 같다.
데이터 형식 범위(unsigned) 범위(signed) char(8비트) 0 – 255 -128 – 127 int(16비트) 0 – 65535 -32768 – 32767 Long int(32비트) 0 – 4294967295 -2147483648 – 2147483647
1보다 작은 값을 나타내기 위해 LSB를 특정 값에 매핑한다. 이 값은 필요한 분해능에 따라 결정된다. 사용할 수 있는 데이터 형식 중 하나를 선택하면 변수에 사용할 수 있는 값 범위와 가상 고정 소수점('고정 소수점 형식')이 결정된다. 예를 들어 분해능 1mV와 데이터 형식 unsigned integer를 선택하면 값의 범위는 0~65,535V이다. 프리스케일의 IBS에는 16비트 S12 CPU를 사용하기 때문에 정수 데이터 형식은 16비트 정밀도를 제공한다. 이 말은 8비트 변수와 16비트 변수가 32비트 값보다 더 높은 성능으로 처리된다는 것을 의미한다. 따라서 가능하면 8비트 변수와 16비트 변수를 자주 사용하는 것이 바람직하다. 전술한 SoC, SoH 및 SoF 계산 알고리즘의 구현 예를 보면 많은 경우 16비트 변수가 충분한 값 정밀도와 범위를 제공한다.
그 이유는 전압 및 온도 입력 값이 16비트 정밀도를 가지고 있기(16비트 ADC 사용을 통해) 때문이다. 16비트 폭으로 충분한 다른 값으로는 예를 들어 SoC, SoH, Ri 및 보정 계수 α(이에 대한 설명은 3장 참조)가 있다. 24비트인 전류 샘플 값도 대부분의 경우 16비트에 매핑할 수 있다. 예를 들어 3mA 정밀도에서 signed 16비트 정수 형식을 사용하면 숫자 형식을 더 수정하지 않아도 최대 98.3 A의 전류를 표현할 수 있다. 자동차 운전 및 주차 중에는 이 정도면 충분하다. 크랭킹 중에는 전류 샘플 값이 이 한계를 초과하기 때문에 32비트 데이터 형식을 사용해야 한다. 32비트 형식이 필요한 매개변수는 배터리 충전 관련 값(예: 쿨롱 카운터)이다.
5) 결론
이 논문에서는 프리스케일의 IBS를 사용하여 마이크로 하이브리드 자동차의 효율 실현을 보여 주기 위해, 배터리 상태 계산(SoC, SoH 및 SoF)을 위한 최신 알고리즘을 제시했다. 특수 하드웨어 기능을 사용하여 소비전력 면에서 IBS의 효율을 개선하는 방법을 보여 주었다. 자동화된(소프트웨어 상호작용이 필요하지 않은) 배터리 상태 감시와 및 정교한 켜기 메커니즘과 함께 저전력 모드를 사용하는 방법을 제시했다. 그 결과 IBS는 대부분의 경우 저전력 모드로 유지할 수 있다. 또한 적절한 하드웨어 신호 처리, 프로그래머블 필터링 및 용이한 보정을 통해 SW 복잡도가 감소한다는 것을 보여 주었다. 고정 소수점 수학의 원리를 제시하고 많은 경우 BMS 알고리즘의 변수에는 16비트 고정 소수점 데이터 형식이 충분하고 가끔씩만 32비트가 필요하다는 것을 보여 주었다. |