본문 바로가기
STMicro STM32

LTC2943 - Multicell Battery Gas Gauge

by 소나무기운 2021. 12. 12.
반응형

[2021/12/12] 처음시작

소나무 기운 ,  전자제품 개발/생산

LTC2943 - Multicell Battery Gas Gauge

배터리를 사용하는 제품들이 늘고 있습니다.

이때 배터리 잔량 표시는 필수 항목이지요.

정확한 배터리 잔량 표시를 위한 전용IC입니다.

 

 

특성

전압, 전류, 온도 센서를 가지고 있다.

이를 이용해 충전과 방전되는 전하량을 계산하여 정확한 배터리 잔량을 측정한다.

 

- 배터리의 충전과 방전을 측정한다.

- 3.6V ~ 20V 동작전압과 multiple cells를 지원한다.

- 14bit deltasigma ADC가 있으며, 온도, 전압, 전류를 측정한다.

- 1% Accuracy

- High side sense

- I2C / SMBus Interface

- 알람 출력

 

 

기본 회로

기본 회로

멀티 셀을 적용 가능하며, Rsense의 전압 범위는 50mV이다 이 범위에 맞도록 션트저항을 선정한다.

 

 

 

레지스터 설명

레지스터 테이블
Status Register

 

Gas gauge이므로 가장 중요한 레지스터는  

Accumulated Charge MSB,LSB레지스터겠지요. 

 

 

LTC2943은 배터리의 전체 전하량이 얼마인지 알지 못합니다.

그러므로 전하량 레지스터인 Accumulated Charge MSB,LSB는 IC전원이 인가되면 중간 값인 0x7FFF로 설정된다.

 

 

 

 

전하량 읽는 방법

처음 전원이 투입되면 IC의 Accumulated Charge MSB,LSB는 0x7FFF로 초기화 된다.

 

초기화 하는 방법은 

충전을 시작하여 완충이 되었을때 Accumulated Charge MSB,LSB를 0xFFFF로 값을 설정한다.

이 기능은 ALCC Configure 레지스터 비트를 이용하여 자동으로 설정할 수도 있다.

 

이후 방전이 진행되면 Accumulated Charge MSB, LSB는 0xFFFE, 0xFFFD등으로 줄어들면서 동작한다.

 

그러므로 0xFFFF - Accumulated Charge MSB, LSB 값은 배터리에서 소모된 저하량이다.

배터리 용량에서 사용한 전하량을 제외하면 남아있는 전하량이 된다.

 

* Accumulated Charge MSB, LSB를 읽을 때

  1) Control Register의 Shutdown = 1;

  2) Read Accumulated Charge MSB, LSB 읽기

  3) Control Register의 Shutdown = 0;

이렇게 읽을 것을 권장하고 있다.

 

 

 

 

마무리

아래 깃허브의 소스코드를 보시면 도움이 됩니다.

 

설명드린 사용법과는 조금 다르게 소스가 되어 있습니다.

전체 알고리즘을 이해하시고 사용하시면 되겠습니다.

 

 

참고문헌

 

 

 

 

틀린 부분이나 질문은 댓글 달아주세요.

즐거운 하루 보내세요. 감사합니다.

 

 

반응형

댓글