LiPo 배터리에 아직 얼마나 많은 주스가 있는지 어떻게 알 수 있습니까?


17

LiPo 배터리에서 전원을 공급받는 회로가 있다고 가정합니다. 배터리가 얼마나 많은 전력을 사용하고 있는지 알고 싶습니다. 이상적으로는 전원 수준의 전압 회로가 가장 좋습니다.이 방법으로 회로의 출력을 Arduino의 ADC 입력에 연결할 수 있습니다.

답변:


17

솔직히 말해서, 전압을 측정하고 특허를 받으면이를 안정적으로 수행 할 수있는 방법을 찾으면 다시 일할 필요가 없습니다. 배터리에 남은 가용 에너지는 단자 전압과 느슨하게 관련되어 있지만 배터리 온도에 따라 다릅니다.

배터리 충전 상태를 결정하는 일반적인 방법은 쿨롱 카운터를 사용하여 셀로 들어오고 나가는 충전을 계산하는 것입니다. 사용 가능한 실제 에너지는 여전히 온도에 따라 다르지만 배터리의 충전 상태를 더 잘 추정 할 수 있습니다. 저온에서 배터리 용량은 공칭 용량의 50 % 미만일 수 있습니다. 예시적인 장치는 ST STC3100 입니다. 이것은 I2C 인터페이스를 사용하여 프로세서와 통신합니다. 쿨롱 카운팅은 충전 / 방전 사이클에 걸쳐 셀 내외부로 전류를 적분함으로써 수행된다. 배터리가 가득 찬시기를 알면 사용한 충전량을 추정 할 수 있습니다.


3
이안이 이걸 못 박았 어 더 쉽고 정확하지 않은 해킹을 찾고 있다면 현재 션트를 사용할 수 있습니다. 이것은 배터리와 직렬로 연결하는 매우 낮고 매우 정밀한 저항기 (예 : 0.1 옴)입니다. 그런 다음 Arduino를 사용하여 션트 전체의 배터리 전압 및 전압 차이를 측정 할 수 있습니다. 10Hz로 샘플링하면 순간 전력을 계산할 수 있습니다. 시간이 지남에 따라 추적하면 부하와 온도가 꽤 일정하면 실제 값의 10 % 이내에 도달 할 수 있습니다.
pingswept

2
이 제안은 자신의 쿨롱 카운터 버전을 효과적으로 롤링하는 것입니다. 문제는 아날로그 신호가 ADC 입력 전압 범위 내에 있고 해당 범위의 적절한 범위를 포괄하도록 션트 저항 전압에 아날로그 신호 레벨 시프 팅 및 증폭을 추가해야한다는 것입니다.
uɐɪ

@Ian : 사실. 노이즈 필터링도 필요할 것입니다.
pingswept

@pingswept 칼만 필터는 큰있을 것입니다
NickHalden

@JGord, 가능한 많은 견적이 있습니다 (Kalman Filter, Extend Kalman Filter, 예후 기술, 슬라이딩 모드 관찰기 및 켜기 및 켜기). 배터리 전압 동작을 추정하고 회로 매개 변수 값을 찾고 시간이 지남에 따라 추적하는 데 사용하는 회로 모델에 따라 다릅니다. 문제는 모델이 정확할수록 노이즈에 대한 저항성이 높고 모델링되지 않은 특성이 많을수록 더 많은 CPU 성능과 데이터가 필요하다는 것입니다.
Joshua

2

큰 문제는 출력 전압이 대부분의 시간 동안 상당히 평평하게 유지된다는 것입니다. 따라서 A / D가 매우 좋은 경우가 아니면 직접 모니터링 할 수 없습니다. 그렇기 때문에 랩탑과 같은 사람들은 남은 전력을 측정하기 위해 시계를 사용하는 경향이 있습니다.

"배터리 방전 곡선"을 검색하면 그래프를 쉽게 찾을 수 있습니다.

http://shdesigns.org/batts/battcyc.html


1

많은 Lipo 셀로 구성된 큰 배터리에서 지금하고있는 일은 다음과 같습니다. 먼저 충전합니다 (최대 전압은 셀의 데이터 시트 참조). 다음으로 스코프에 연결된 전류 클램프를 사용하고 배터리 전압을 측정하는 동안 큰 저항으로 배터리를 방전시킵니다. 배터리의 차단 전압에서 정격 배터리와 병렬로 전원 공급 장치가 있으므로 더 이상 권장하지 않는 지점까지 배터리를 바로 방전시킬 수 있습니다. 범위 (일부 Fluke, 모델을 모름)를 사용하면 시간이 지남에 따라 전류를 기록하여 용량을 결정할 수 있습니다. 용량이 결정되면 전류와 전압을 사용 중일 때 지속적으로 기록하므로 충전량을 더 정확하게 찾을 수 있습니다.


0

이 답변은 너무 좋습니다 .

상용 솔루션이 더 저렴하다는 것을 알게되었습니다.

실험실에서 장치의 부하를 측정 할 수 있으면 충전 미터를 넣을 필요가 없습니다.

예를 들어 : 간단한 전력 부하 스키마

state       load
--------------------
standy      0.1 A
full on     1 A

Arduino가 두 가지 상태를 명령하거나 읽을 수있는 경우 디지털 데이터 빙고입니다.

Arduino는 시간을 정하고이 두 카운터에 추가합니다. 대기 시간, 전체 시간.

배터리에서 주스가 얼마나 많은 주스를 빨아들 였는지 계산하는 쉬운 수학.


이것은 장치의 부하가 고정되고 예측 가능한 것으로 가정합니다.
코너 울프

평균 부하가 거의 고정되어 있다고 가정합니다 (예 : + -5 %). 전체 ADC 충전 측정보다 간단하고 저렴하기 때문에 일반적으로 허용됩니다. 정확한 측정이 필요한 경우 더 많은 시간과 비용을 투입하십시오.
Massimo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.