기본 콘텐츠로 건너뛰기

전기차 고를 때 벤더는 알려주지 않는 주의점. 배터리(리튬이온) 에 대한 깊이 있는 고찰

이번에 배터리 제조 클라우드 펀딩을 하면서 많은 것을 배웠다. 

개발자 아니냐구요?
전 제어계측을 전공했구요, 전기전자도 전공 필수 입니다. 대학가면 다들 술마시고 공부 안하잖아요.. 안그렇다구요? 그렇죠.. 할 사람은 다 합니다. 
저의 학과에서는 이 비싼 실험장치들을 아무도 안쓰고 시험만을 위한 공부를 하고 있어서, 
언제나 제 차지였지요.. 19200V에서 삼상 38400V 지하철 전력 변환장치로 실험을 하고, 
공장용 로봇팔 제어 프로그램도 혼자서 장난치면서 팔만 춤추게 만들고,
캐패시터를 폭주시켜 폭발도 시키는 등의 재미난(응?)
실험도 많이 해서 특히나 전기쪽은 자신이 있는 편입니다.

게다가 미래에는 배터리가 모든 디바이스에 필수로 들어갈 테고, 전자를 저장하는 기술은 익혀두면 손해가 없기 때문에 심심풀이로 전기 자전거를 사서 개조도 하고 태양광 패널과 대용량 배터리를 병렬로 연결시키다 보니 장사도 되겠다 싶어서 이딴 짓도 하는 거지요..

크라우드 펀딩을 시작하자 한국에서 시작했다면 물어보지 않았을 많은 질문들이 쏟아졌고, 이로 인해 많은 공부가 되어서 정리를 해 봅니다.

리튬이온 배터리는 모양을 기준으로 18650이나 21700… 등등의 원통형이 모델별로 다른 사이즈가 있고,
 형태가 유연하여 휴대폰 배터리 등으로 사용 되는 리튬 폴리머 배터리 형태로 나뉜다. 

여기 까지는 아는 사람들이 많을 것이다. 

하지만 리튬이온 배터리 내용물이 한 종류가 아니라는 사실은 아는 사람이 생각보다 적은 거 같습니다. (물론 관심도에 따라 아시는 분들도 많을겁니다)
나 역시 주변 한국 친구들에게 물어봤을 때는 다 같은거 아냐? 
라던가 요즘 캠핑용 대용량 배터리로는 인산철이 좋다던데? 라는 정도였다. 

때문에 앞으로 제조/판매 뿐만 아니라 소비자로서 구입할 때도 참고가 되었으면 한다. 

리튬이온 배터리는 종류가

리튬코발트(LiCoO2), 
리튬망간(LiMn2O2), 
인산철(LiFePO4), 
NMC계열(LiNiMnCoO2, 니켈/망간/코발트를 적절하게 섞음), 
NCA계열(LiNiCoAlO2, 니켈/코발트/알류미늄을 적절하게 섞음), 
리튬티탄(LiTi5O12)


등등 많은 조합이 있고,
물론 이것 뿐만이 아니고 아직도 많은 곳에서 불순물 첨가로 인한 내구도 개선 또는 충전 횟수 개선등에 연구를 더하고 있다. 

근데 한국에서 알려진건 리튬이온이랑 인산철 두 종류에 .. 리튬이온은 하나의 카테고리인데 인산철과 다르다고 생각하시는 분들이 계시더라구요…
얼마 전까지만 해도 인산철이 좋은걸로만 생각하고 있는 경우가 많은데, 요즘은 자동차용 배터리가 주목을 받아 삼원계가 최고라는 듯이 이야기 하는 사름들이 늘고 있는데… 세상엔 삼원계가 한종류만 있는게 아닌데 왜 하나만 최고이고 다른건 배척하는지 이해가 안가네요..

여기서 조금 더 자세히 다뤄보겠습니다.

엘지랑 삼성이 많이 제조 하는건 제일 내성이 좋고 제조 원가가 저렴한 리튬망간(150Wh/kg, 700회 충전, 283도 내성)이었는데 
최근
가성비가 제일 좋은건 리튬 코발트(240Wh/kg, 1000회 충전, 188도 내성) 배터리나 적절한 배합으로 삼원계쪽이 차량용으로 나오고 있구요, 
중국에서 인산철(120Wh/kg, 2000회 충전, 186도 내성)이 양산되어 전기차에 공격적으로 넣고 있지만 인산철은 제조 단가가 비싼 단점이 있죠. 물론 인건비가 저렴한 중국에서는 이게 훨씬 경쟁력이 있겠지만요..

삼원계라 불리는 NMC(니켈 + 망간 + 코발트), NCA(니켈 + 코발트 + 알루미늄)계열 같은 혼합 물질은 독일이나 일본에서 연구중인 원료로 원가도 저렴하고 무게당 저장용량은 인산철의 약 2배, 수명은 15000회 이상 충전 가능한 배터리가 나오는가 하면 리튬 티탄같은 7000회 충전 가능한 것들이 속속들이 나오고 있다. 하지만 인산철을 강조하는 사람들은 인산철의 우수함을 알리기 위해 가장 열악한 NMC만 비교하는 얘기를 할 것이다. 이게 저렴한 망간을 넣어서 가장 효율이 떨어지기 때문이다.

한국에서는 인산철이 좋은 것 처럼 소개가 되어 있지만 kg당 전력 보유량이 적다. 즉, 대용량 배터리로는 무게가 너무 나가게 된다. 열폭주가 없고 무게를 신경 안써도 되는 경전기차 또는 바이크용 배터리로 쓰기는 좋다.
 가격만으로 본다면 초기 모델인 리튬코발트는 저렴하면서도 가볍게 제조할 수가 있다. 때문에 초기모델인 리튬 코발트가 나쁘다는 인상을 가지고 있다면 다시 생각해야 할 것이다. 발화점만 봐도 인산철과 차이가 없다. 충전 회수는 반 이지만 가격도 반이고 무게가 반밖에 안되니 같은 무게에 2배 용량의 배터리를 만들거나 반 정도 무게로 두 개를 가지고 다닐 수가 있다는 계산이 된다. 

그냥 모 누군가 잘난척 인산철이 대세 라던가 근거없이 인산철이 좋아요 라는 내용 보다는 객관적으로 비교할 수 있는 수치 아닌가? 이번에 해외 크라우드 펀딩의 고객은 이 정도의 데이터시트를 요구하는 정도의 레벨을 보여 줬다. 


최근 일본에서 삼원계의 혼합률을 잘 조정해서 1만회 이상 충전 가능한 배터리가 현재 일본 전기차 배터리에 메인으로 들어가고 있다. 
충전 가능의 의미 차이도 있긴 한데 간단하게 예를 들어 봅니다.
한국은 배터리 보증은 10년 20만km 65%SOH 를 보증 합니다.
일본은 10년 20만km 70%SOH(모델마다 차이는 있으나 70SOH는 일관) 을 보증합니다.



SOH는 얼마나 자주 충전하느냐애 따라 동일 거리를 가도 수명이 오래 갑니다. 그건 그렇다 치고 SOH 1%는 어느정도 달리면 줄어들까요?

보통 100-25 충전의 가장 혹독한 상황에 300km를 달렸다 칩시다. 20만 보증까지 667회 충전이면 위의 그래프만 봐도 90%여야 한다는 거죠.. 그런데 한국에선 65% SOH 보증이라고 합니다.
일본의 70%에 비해서 5%나 낮습니다.

5%정도로 뭘그러냐 라고 하겠지요?
위의 그래프에서도 보면 아시겠지만 갈수록 완만한 곡선을 그립니다.
아무리 험하게 써도 65%까지 떨구려면 1만회 이상 충전을 해야 한다는 이야기이지요.. 
그만큼 수명이 생각보다 길지 않았기 때문에 토요타의 70%까지 보증했다간 배터리 무상교체로 파산할 수 있어서 65% 낮추지 않았을까요?

토요타 뿐만 아니라 일본의 차량은 모두 70%SOH로 고정 입니다.

뭐든 테슬러와 비교하면서 보증 거리나 기간은 늘려잡고 SOH만큼은 늘릴 수가 없었던 이유가 있습니다.
아마도 저렴하게 고c-rate를 얻기 위해 노화속도는 포기한 거겠지요..
다들 20만km만 넘기면 교체를 유도해서 돈을 더 벌려는 건지는 모르겠어요..

여기서 배터리 기술때문에 가격도 비싼 한국 전기차가 일본 전기차 보다 수명이 많이 떨어 지고 있다는게 현실인 것이다. 5년 후 배터리 잔존량 때문에 처분시 중고차 가격이 엄청나게 차이날 부분도 바로 이 부분일 것이다.

그리고 성분 함량 때문에 순간 고출력을 요할 때의 힘이 달라진다. C-rate라고 불리는 셀당 순간 출력량을 얘기하는데, c-rate는 요즘 테슬러 때문에 이슈인 인산철의 경우 온도에따라 너무 차이가 많이나는데다가 기본 c-rate가 낮기 때문에 고출력 차량에 싣기에는 리스크를 많이 안고 실어야 한다. 배터리는 안전한데 고출력을 위한 수퍼 캐패시터를 넣는다면 폭탄을 안고 타는 것과 같을 것이고, 차라리 병렬로 대량 연결을 한다면 화학반응이 심하게 일어나 수명 단축을 유발할 테니 말이다.

괜히 이래저래 비교를 했지만, 
어떠한 배터리든 각자 적절한 사용처가 있을 것이기 때문이 하나만 대세로 몰아가지 않았으면 한다.

한국차 못사게 하는 매국노가 아니라 객관적인 눈으로 제품을 구입할 때 참고가 되었으면 하는 생각에 적은 것이니, 근거없는 태클은 사양합니다.
기술적인 태클은 언제나 환영합니다.


giip :: Free mixed RPA orchestration tool! https://giipasp.azurewebsites.net/

댓글

이 블로그의 인기 게시물

Alter table 에서 modify 와 change 의 차이 :: SQL Server

두 개의 차이를 모르는 경우가 많아서 정리합니다.  modify는 필드의 속성값을 바꿀때 사용하구요.. change는 필드명을 바꿀떄 사용합니다.  alter table tbbs modify bNote varchar(2000) NULL; alter table tbbs change bNoteOrg bNoteNew varchar(2000) NULL; change에는 원래 필드와 바꾸고 싶은 필드명을 넣어서 필드명을 바꾸는 것이죠~ 더 많은 SQL Server 팁을 보려면  https://github.com/LowyShin/KnowledgeBase/tree/master/wiki/SQL-Server giip :: Control all Robots and Devices! Free inter-RPA orchestration tool! https://giipasp.azurewebsites.net/

책에서는 안 알려주는 대규모 트래픽을 위한 설계

음성 버전 :  https://www.youtube.com/watch?v=ZZlW6diG_XM 대규모 트래픽을 커버하는 첫 페이지 만드는 법..  보통 DB를 연결할 때 대규모 설계는 어떻게 하시나요?  잘 만들었다는 전제 하에 동접 3000명 이하는  어떤 DBMS를 사용해도 문제 없이 돌아갑니다.  여기서 이미 터졌다면 이 콘텐츠를 보기 전에 DB의 기초부터 보셔야 합니다.  아.. 개발 코드가 터졌다구요? 그럼 개발자를 때리셔야지요..  만약 3000명을 넘겼다면? 이제 Write/Read를 분리해서  1 CRUD + n개의 READ Replica를 만들겠죠?  보통 Read Replica는 5개가 최대라고 보시면 됩니다.  누가 연구한 자료가 있었는데...  6번째 레플리카를 만든느 순간 마스터가 되는 서버의 효율 저하 때문에  5번째에서 6번쨰로 올릴때의 성능이 급격히 줄어든다는 연구 결과가 있습니다.  때문에 Azure에서도 replica설정할 때 5대까지 밖에 설정 못하게 되어 있지요.  유저의 행동 패턴에 따라 다르긴 하지만,  1 CRUD + 5 Read Replica의 경우 동접 15000명 정도는 커버 합니다.  즉, 동접 15000명 에서 다시 터져서 저를 부르는 경우가 많지요..  이 때부터는  회원 DB, 게시판DB, 서비스DB, 과금 DB 등등 으로 성격, 서로의 연관도에 따라 나누기 시작합니다.  물리적으로 DB가 나눠지면 Join을 못하거나 Linked Table또는 LinkDB등의 연결자를 이용해서 JOIN이 되기도 합니다.  그에 따라 성능 차이가 생기지만 가장 중요한 포인트는  서로 다른 물리적 테이블의 JOIN은 인덱스를 타지 않는다!  라는 것입니다. 즉, JOIN할 테이블들을 최소한으로 만든 뒤에 JOIN을 걸지 않으면 NoSQ...

BI의 궁극판! Apache Drill을 써보자!

사실 Apache Drill 은 BI(Business Intelligence)라고 부르는 것 보다는 단순 데이터 연결 엔진이다. https://drill.apache.org/ 하지만 내가 왜 극찬을 하느냐면.. DBA로서 항상 문제가 되어왔던게, 이기종 데이터의 변환이나 처리였다. 포맷을 맞추는데 엄청난 시간이 걸리고, 데이터 임포트 실패가 무수하게 나고.. 한 번 잘못 데이터를 추출하면 다시 조정, 변환, 추출하는데 시간이 많이 걸린다. 그런데! Apache Drill은 그냥 RDB를 CSV랑 연결해서 조인해서 통계를 낼 수 있다. 그것도 표준 SQL을 사용하여! 예를 들어, CSV의 세 번째 컬럼이 price 이고, 물건의 판매이력을 PG사에서 CSV로 출력 받았다. 우리 DB와의 검증을 위해서는 수동으로 Import를 한 뒤에 포맷이 안맞아 잘리는 데이터가 있다면 다시 맞춰주고, 재 임포트를 수십 번, 그리고 나서 겨우 들어간 데이터를 조인하여 빠진 데이터를 분간한다. 숫자가 적다면 개발자가 개발로 처리할 수도 있지만, 건수가 하루에 300만건 짜리라면.. 한 달 온 파일은 9천만 건이다. 프로그램으로 고작 처리하는 것이 초당 500건. 거의 20만초, 에러 없이 약 56시간.. 에러가 생기면 다시 56시간.. ㅠㅡㅠ 이런게 현실이기 때문에 쿼리 말고는 방법이 없다. apache drill 의 진면목을 보자! 이번에는 좀 범용 적인 MySQL DB와 붙여 보자. . 난 이번에는 Mac에서 작업을 했기 때문에 그냥 다운 받아서 풀었음.. https://drill.apache.org/download/ 여기서 자기 OS에 맞는 버전을 받아서 설치하시길.. 압축을 풀고 나면 MySQL 커넥터를 붙여야 한다. https://dev.mysql.com/downloads/connector/j/5.1.html 여기서 다운로드 이런 커넥터 들을 붙일 때마다 콘피그를 수정해 줘야 하지만, 몇 번만...