몬슨 파워모니터 (Monsoon Power Monitor)를 이용한 일체형 배터리 타입의 스마트폰 전력 소모 측정


이전 포스트에서 Monsoon Power Monitor를 이용해서 전력 소모를 측정하는 법을 다뤘다.

요즘 Mobile Device는 대부분 non-removable 배터리를 채택 하고 있기 때문에 이러한 장치들에 대해서 어떻게 측정하는지를 이번 포스트에서 다룬다.

보통 논문을 보면 사진을 작게 집어 넣어서 사실 잘 안보인다.

그래서 직접 크게 사진을 찍어서 아래와 같이 첨부한다.

전극 기판 추출

일단 스마트폰을 teardown 해야 한다.
아래 사진은 nexus 5를 한것이다.
Google에 teardown 치면 왠만한 기기들은 다 있다. 보면서 공구 사서 따라하면 된다.

그 다음 battery를 추출한 다음 아래와 같이 기판을 분리한다.

다시 충전 하지 않으면 보통 배터리가 터지진 않으니 너무 겁먹지 말고 기판을 칼로 잘라내면 된다.

자르기 쉽게 고분자로 구성된 이음 부분이 있다. 그 부만 제거하면 쉽게 분리된다.

몬슨과 연결

이제 해당 기판을 다시 스마트폰에 연결하고
양극 음극에 맞춰서 몬슨 VCC Ground를 해준다.

그럼 정상적으로 스마트폰이 켜지고 전력 소모가 측정된다.

어떤 스마트폰이나 스마트시계와 같은 웨러블 장치는 기판에 보호 회로가 있어서 무한대 저항이 걸려서 cutoff 될 수도 있다. 그럴 때는 납땜을 해서 연결해야 한다.

사실 이러한 저전력 연구는 제조사에서 하면 별것도 아닌데 이런 off the shelf 제품을 가지고 직접 하려고하면 완제품이다보니 이래저래 잔손이 많이 간다.


몬슨(MONSOON) 파워모니터(Power Monitor)를 이용한 안드로이드 앱 전력 소모 측정 (스마트폰 전력 소모 분석)


본 포스트에서는 학위과정 동안 진행했던 스마트폰 전력 소모 측정을 하는 방법을 다룬다.
스마트폰 전력소모를 측정하는 방법은 여러가지다.
이번에는Monsoon Power Monitor 장비를 이용한 방법으로
가장 쉬운 형태인 분리형 배터리 (removable battery)에 대해서 측정 하는것을 다룬다.

Monsoon Power Monitor의 경우 미국에서 사면 800달러 미만이지만 한국으로 수입해오는 업체를 통해서 구입하면,
120~130만원 정도한다. 나름 개인이 구입하기에는 싼 가격은 아니다.
멀티미터기를 이용한 방법도 이어서 다루도록 하겠다.

준비물

사용된 스마트폰: Galaxy 3
측정 장비: Monsoon Power Monitor, FTA22D
 
테이프: 구리(Copper) tape, 캡톤(Kapton) Tape

측정 실험 환경

간단히 개념화하면 아래와 같은 그림으로 배터리와 폰은 직접적으로 연결 되지 않은 상태이다.
Ground만 연결한 상태에서 Vcc는 Monsoon을 통해서 공급하게 된다.

컴퓨터랑은 USB를 이용해서 연결하므로 그다지 특별한 것은 없다.

실행 화면

단순히 화면을킨 상태에서 외부로부터 카카오톡 메시지를 전송 받을 때의 전력 소모 그래프이다.

해당 그래프는 Galaxy 3는 아니고 Nexus 5로 실험한 것이다.
2011년에 Single core인 Nexus-one으로 연구 진행 했었을 때는 많이 써야 1000mW내외로 소모하던 전력이 Quard-cores로 개발된 Nexus 5의 경우 단순히 Processor와 Wi-Fi 그리고 Display 조금 썻다고 순간적으로 4000mW까지 치솟는걸 보면
현재 스마트폰이 얼마나 배터리를 소모하는 괴물인지 알 수 있다.

이에 맞추어서 Monsoon Power tool v5.0부터는 High Voltage를 허용한다.
원래 Monsoon은 허용 전압이 4.55v였다. 하지만 요즘은 동작 전압이 너무 높기 때문에 이러한 제한을 풀어주는 새로운 버전의Power Tool이 제조사로부터 공급된다.

몬슨의 장점은 전력 소모 측정과 데이터 전송을 동시에 할 수 있다는 점이다.
아래와 같이 USB를 연결한 상태에서 Main channel로 전력을 공급 할 수도 있다.
데이터 전송을 위해서 USB를 활성화 시키면 자동으로 Main channel을 off된다. 
역전류 현상을 방지하기 위함이다.

보통 Multi-meter나 Power supply로 실험 환경을 구성할 경우 데이터 전송을 위해서 USB를 연결하기 어려운 단점이 존재한다.
USB 또한 전류를 공급하기 때문이다.
자동으로 이러한 ON OFF기능이 몬슨의 또하나의 장점이라 할 수 있다.


Battery Historian 2.0 사용 방법


Google I/O 2015에서 battery historian 2.0으로 개선된 것이 공개 되었다.

기존의 1.0은 python만 설치하면 동작 했었지만 2.0은 설치방법과 사용방법이 그것보다는 약간 더 복잡한 상황이다.

이것에 대해서 다루도록 한다.


GiHub 주소: Battery-Historian



Battery Historian 2.0에서의  사용방법



<요구사항>

android 5.0 이상

android API 21+

2.0에 오면서 go와 javascript를 이용해서 다시 작성 되었다.


<Go Download>

download (다른 운영체제)

Linux: go1.5.linux-amd64.tar.gz


tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz

export PATH=$PATH:/usr/local/go/bin

또는 profile에 추가.



<Workspace 생성> - 필수적으로 해야함 -

#디렉터리 생성

$HOME은 나의경우 /root 이다.

mkdir $HOME/go-worksapce/goCode

#GOPATH 설정

export GOPATH=$HOME/work

#GOBIN 설정

export GOBIN=$GOPATH/bin



< install Go support for Protocol Buffers by running go get>

# Grab the code from the repository and install the proto package.

$ go get -u github.com/golang/protobuf/proto

$ go get -u github.com/golang/protobuf/protoc-gen-go

#이것을 설치하면, $GOBIN으로 설정한 곳에 설치가 된다. 따라서 이것을 하기전에 $GOBIN의 PATH 설정을 필수 이다.



실행 결과로 bin과 pkg에 각각의 파일들이 생성 된다. 핵심은 해당 디렉터리는 $GOPATH로 설정한 곳이라는 것이다.




<download the battery historian 2.0 code>

$ go get -u github.com/google/battery-historian

$ cd $GOPATH/src/github.com/google/battery-historian




<Compile Javascript files using the Closure compiler>

$ bash setup.sh





<Run Historian on your machine (make sure PATH contains GOBIN)

$ go run cmd/battery-historian/battery-historian.go [--port <default:9999>]

주의: $GOPATH/src/github.com/google/battery-historian 항상 이곳에서 실행 해야 한다.

#그다음 웹브라우저로 실행 한다.

http://localhost:9999





<프로파일링 로그 생성>

# bugreport 파일은 dumpsys, dumpstate, locat 파일을 모두 포함 한다.

$ adb bugreport > bugreport.txt

# 로그를 초기화 한다.

$ adb shell dumpsys batterystats --reset


#full wake lock을 활성화 시키고 싶으면 아래의 옵션을 활성화 시킨다.

$ adb shell dumpsys batterystats --enable full-wake-history






이전 version에서의 사용 방법 (Summary)


> adb kill-server

> adb devices

> adb shell dumpsys batterystats --reset


<disconnect and play with app>...<reconnect> (연결 되면 배터리 충전 되므로 이러한 방법을 사용 함).


>adb devices

>adb shell dumpsys batterystats > batterystats.txt

> python historian.py batterystats.txt > batterystats.html




일체형 (embedded) vs 교체형 (removable) 배터리


요즘들어서 삼성도 일체형 배터리로 갤럭시 s6 출시하면서 일체형 배터리의 강세가 이어지고 있다.

딱 봐도 불편해 보이는 embedded battery (non-removable battery) 왜, 어째서 제조사들은 이것을 채택 하는 것일 까? 

그 장점에 대해서 알아보자.



교체형 배터리의 장점 (Advantage of removable battery)


1) 배터리 교체가능

2) wear-out (마모) 즉, degradation 됬을때 쉽게 교체 가능

3) freezing 되었을 때 배터리 제거를 통해 쉽게 reset 가능.



일체형 배터리의 장점 (Advantage of embedded battery)



1) 디자인과 공간의 절약

배터리에 분리막과 커버를 제거할 수 있다. 또한 connector도 필요 없다. 

이러한 부가적인 요소들의 제거는 제품의 디자인 향상에 매우 큰 도음을 준다.


아래의 그림은 직접 Nexus 5를 Teardwon 해서 배터리 커버를 확인한 결과이다.

아래와같이 Kapton Film으로 제작된 커넥터로 스마트폰 기판과 직접 연결된다. 

그리고 보호 compartment도 없다


추가로 배터리 교체가 없기 때문에 스마트폰의 소재를 다양하게 가져갈 수 있다.

즉 플라스틱과 같이 탄성이 좋지 않으면 교체형 배터리의경우 사용할 수 없다. 왜냐하면 커버를 자주 열면 금속 소재는 금방 휘기 때문이다. 디자인과 공간 절약 면에서 일체형 배터리를 많이 선호하게 된다.




2) 환경보호

배터리는 서비스센터에서 대부분 교체되므로 적절히 분리수거 된다.

또한 무분별한 배터리 교체를 억제함으로써 적은수의 배터리 사용을 유도한다.



3) 배터리 용량 추정의 정확도 향상 (배터리 용량 지시자의 성능향상)

배터리를 하나만 쓰기 때문에 embedded fuel gauge의 성능이 좋다. 

항상 하나의 배터리와 동기화 되기 때문이다.

배터리를 교체 했을때, 노화를 고려해서 게이지를 설정하는것은 Challenge이다. 

매번 Calibration을 새로 해줄 필요가 없다.



4) 안전성이 높은 배터리의 사용 

중국발 저가 배터리 사용을 어느정도 소비자가 하기 어렵기 때문에 저품질 배터리가 사용될 가능성이 적다. 

따라서 안전성이 올라간다고 한다.





참고사이트: http://shadowgadgetreview.blogspot.kr/2012/10/sentiments-about-trending-embedded.html



리튬이온 배터리 특성 및 오래쓰는 방법 정리 

(Lithium-ion battery characteristic)



기본 특성


 

우선 Lithium-ion battery의 특성에 대해서 간단히 알아보자.

Nickel-cadmiu과 다르게 memory effect가 없다.

언제든지 충전해도 상관 없다. 정말 그런것일까? 논문과 책을 통해서 검증 해보자.

리튬이온 배터리의 수명은 300~500회 충방전 사이클이라고 한다.

그 이상이되면 기존 용량대비 40% 정도를 잃어버리고 업계에서는 그 지점을 폐기해야할 배터리 시점으로 본다.

하지만 이 충방전 사이클이라는 것을 정확히 정의하기란 쉽지 않다. 왜냐면 일상생활에서의 충방전의 깊이는 모두 다르기 때문이다.

즉, 10%쓰고 충전한 것을 1사이클로 볼 것인가? 아니면 100%까지 다 쓰고 충전한 것을 1 사이클로 볼 것인가?

대부분 100%까지 다쓰고 충전한것을 충방전 사이클로 본다. 정확하지 않겠지만 10%씩 10번 충방전하면 1번의 충방전 사이클로 다룬다.

 

그렇다면, 어느 정도 까지 쓰고 충전해야 좋은 것일까? 그 부분에 대해서도 데이터를 가지고 확실히 다루겠다.


Lithum-ion의 분명한 단점은 아래와 같다.

폭발 위험이 크다. 그나마 요즘은 구멍이 좀 생겨도 터지지는 않는다. 하지만 구멍난 상태에서 전원을 인가하면 화제가 발생한다.

사용하지 않아도 노화가 발생한다[1]. 따라서 배터리 구입할 때 제조년과 월을 꼭 확인하자. 새제품이라고 하여도 오래된것은 노화된 것이다.

출력이 방전 패턴과 온도와 같은 물리적 요소에 많이 의존적이다[1].



노화를 발생시키는 요소는 크게 4가지이다.


T: Temperature

DCR: Discharge Current Rate

CV: Charge Voltage

DOD: Depth of Discharge

 

결국.

$$CycleLife (ShelfLife) = F(T, DCR, CV, DOD)$$

라는 공식이 나오게 된다.



아래글을 간단히 요약해서 리튬이온 배터리 특성에 맞춘 적절한 사용 방법은 아래와 같다.

1) 조금만 쓰고 바로바로 충전해라. 깊게 쓰고 충전하는것은 안좋다.

2) 온도에 매우 민감하니 20~30도 사이에서 쓰는것이 적당하다.

3) 방전률이 높으면 안좋으니, 갑자기 스마트폰을 full 가동 시키는것은 좋지않다. 

4) 방전을 요동치며 하면 좋지 않으니, 가급적 일정하게 사용해라.

5) 100% 충전된 상태에서 스마트폰을 충전기에 꽂고 있어도 대기전력 낭비 이외에는 큰 문제는 없다.

6) 스마트폰을 충전기에 꽂고 쓰는 상태가 배터리 노화 예방에 더 좋다.

7) 리튬이온 배터리는 쓰지 않아도 노화가 발생하니, 아끼지말고 쓰자.



방전 사이클당 리튬이온 배터리의 노화정도[2]



11개의 Li-polymer 배터리 1500mAh의 배터리에 대해서 실험했다.


실험과정

1) 1C/4.2v로 풀충전

2) 0.05C로 포화 충전

3) 1C/3.0V로 방전하며, Depth of Discharge(DoD)는 100% 이다.

4) 위 과정을 반복 했다.


관찰점

방전 사이클이 0인 지점에도 Cadex C7400 배터리 분석기로 분석한 결과 초기 Capacity는 88~94%를 가지는 것을 알 수 있다. 100%가 아니다.

그리고 이것이 250번 사이클 반복할 경우 73~84%까지 용량이 줄어듬을 알 수 있다.

DOD 100%가 아닌, 좀더 낮은 DoD를 수행할 경우 배터리 수명(shelf life)는 늘어 난다.

DOD의 영향은 아래에서 더 자세히 다루겠다.







온도와 방전 전압에 따른 노화 정도 분석[1,2]



아래 그림과 같이 온도가 20도이고 방전 전압이 4.1v 일때가 기간에 따른 노화정도가 가장 적었다.

즉, Li-ion은 좀 더 낮은 전압과 온도에서 사용성이 좋은것을 알 수 있다.





각각의 온도에서 방치했을 경우, capacity loss가 아래와 같이 발생 한다.

즉 배터리가 높은 온도에 있는 상태에서 충방전을 장시간 반복할경우 기본적인 충방전일때 보다 스트레스를 더 많이 받아서 노화가 심하게 잃어 나게 된다.







방전 전류량(C-rate) 및 패턴에 따른 노화 (Discharge Current Rate)[3,4]



xOver-discharge를 허용하지 않는다.

모두 충전했다가 방전하는 것을 Discharge/Charge cycle이라 한다.

제조사는 80%만 방전하고 20%는 남겨 놓는 것을 선호 하나.

There are no standard definitions to define what constitutes a discharge cycle. 

Smart battery에서는 70% 이상의 DOD 만을 cycle count로 고려한다.


아래의 그래프와 같이, 2C로 땡기면 3.2Ah 중에서 2.3Ah만 사용이 가능하게 된다.




아래의 그래프는 journal of power source[4]에서 인용한 것이다.



다음 실험은 일정한 방전과 pulsed 방전과의 관계를 따져본 실험이다.








충전 전압과 노화와의 관계 (charge voltage)[1,4]




아래 그래프는 방전 cycle에 따른 노화정도를 나타낸것이다.

같은 전압과 전류로 같은 횟수 만큼 방전을 수행해도 

더 높은 전압으로 충전할경우 노화가 빨리 진행 되는 것을 알 수 있다.





아래와 같이 충전 전압을 서로 다르게 했을 때의 충방전 사이클의 감소를 볼 수 있다.

충전 전압이 높을 경우 더 적은 수의 충방전 사이클로도 노화의 기준인 70% 용량에 도달하는 것을 알 수 있다.


재미있는 사실은 고전압일 수록 용량 충전률이 높은것을 알 수 있다.

저전압이면 수명은 늘어나지만, 완전 충전이 안되는 것을 알 수 있다.




충방전 사이클에 따른 용량 감소를 그래프로 표기한 것이다. 해당 그래프는 journal of Power Source 논문에서 인용된 것이다[4].




결국 충전 전압은 노화에 매우 중요한 요소이며, 안전성에도 매우 중요한 요인이다.

따라서 배터리 팩에는 반드시 관전압 방지 MOSFET이 들어 있다.

스마트폰 같은경우 TI나 Qualcomm사에서 PMIC 칩을 만들어서 스마트폰에서 과전압을 방지한다. 거의 나노레벨에서 차단이 된다고 하니 걱정은 없다.



스마트폰과 같이 배터리가 상대적으로 저렴하고 교체가 용이한 장치는 고전압으로 충전해서 용량을 100%까지 맞춘다.

하지만, Satellite(인공위성) 그리고 전기 자동차의 경우 longevity가 훨씬 더 중요하다. 따라서 완전 충전은 못하더라도 수명을 늘릴수 있는 저전압으로 충전을 수행하게 된다.




충전 전류와 노화외의 관계 [4]



충전 전류를 서로 다르게 했을 때의 노화 정도를 나타낸 것이다.

1C의 의미는 1시간동안 100% 방전 했다는 의미 이다.






방전 깊이와 노화와의 관계 (Depth of Discharge)[1]



최대한 깊이 방전하는 것을 피하는것이 절대적으로 배터리 노화를 막는다.


아래 실험은 서로 다른 DoD 레벨로 수행한 실험이다.

서로 다른 DoD 레벨로 방전을 시키고 

어느 정도 충방전 사이클을 반복해야 용량이 70%에 도달하는지를 조사 했다. 

충전 전압, 온도, 방전 전류의 양은 모두 평균적으로 같게 만들었다.



실험 결과대로 DoD가 낮으면 낮을 수록 새배터리 용량 대비 70%까지의 Capacity에 도달하게 하는

충방전 사이클이 커지는것을 알 수 있다.


따라서,100%DoD는 오로지 소프트웨어적인 배터리 잔존 용량 예측 향상을 위한 Calibration을 위해서만 수행한다.

즉, 더 정확한 배터리 눈끔을 보장하기 위함이다. 한달에 1번 정도면 충분하다.

그외에는 Partial discharge가 배터리 수명 연장을 위해서 절대적으로 좋다.



충전 깊이와 노화와의 관계 (Shallow Charge)[5]


결론 부터 말하면, 살짝 살짝 충전한다고해서 급격하게 Capacity Degradation이 발생하지 않는다.

약간의 구조상의 전기적 변화가 있겠지만, 이러한 문제는 거의 미미 하다고 할 수 있다.

찔금 찔금 충전해도 상관 없다는 말이 되겠다.

구지 매번 풀 차징을 하지 않아도 된다.










기타



과충전의 위험

일단 거의 없다.

TI 사의 PMIC 칩 Datasheet 설명에 따르면 75nA로 차단된다고 한다.

보호회로가 이중으로 되어있는 스마트폰의 경우 완충되도 충전기를 꽂는 다고해서 문제될것은 없다.


대기전력 문제

이부분은 확실히 있다.

스마트 플러그와같이 완전 대기전력 차단 플러그를 사용하지 않는 이상 대기전력을 발생한다.

로렌스 버클리 랩에 의하면 대기전력을 충전중 전력 소모의 60%를 차지 한다고 한다. 무시못할 양이다.

하지만 이쪽도 연구가 오래 진행 되었으니 조사하면 답은 분명히 엄청 많을 것이다.



 




참고 문헌


[1] Battery Power Management for Portable Devices, Yevgen Barsukov, Jinrong Qian, BOOK.

[2] Battery University: How to Prolong Lithium-based Batteries

[3] Battery University Basics About Discharging

[4] [J. of Power Source, IF:5.2, 8/83] Factors that affect cycle-life and possible degradation mechanisms of a Li-ion cell based on LiCoO2, Samsung SDI

[5] [Master Thesis in University of Maryland] Degradation Analysis and Health Monitering of Lithum-Ion






+ Recent posts