
우리가 사용해온 배터리팩은 SOC 를 알려주는 포트를 제공한다.
그러나 현실 세계에서 SOC를 센싱하는 건 불가능하다.
SOC(State Of Charge, 충전 상태)는 배터리 셀 내부의 값으로 외부에서 측정이 불가하다.
그러나 측정을 불가하지만, 추정은 가능하다.
우리는 배터리 팩 양단의 전압, 그리고 배터리팩에서 나오는 전류를 측정할 수 있다.
SOC Estimator (Coulomb Counting) Block을 가져오자.

SOC Estimator (Coulomb Counting) Block 은 블럭의 이름대로 Columb Counting 방식의 SOC 추정을 구현한 블럭이다

블럭의 설명을 자세히 보면, 전류를 적분하여 배터리팩에서 빠져나온 전하를 구하고, 이를 통해 SOC를 추정한다는 것을 알 수 있다.

현재 배터리팩 1개는 2개의 Module Assembly로 이루어져있고,

1개의 Module Assembly는 1개의 Module로 이루어져있다.
또한, 이전에 Module의 Resolution을 Lumped로 설정했으므로 사실상 배터리팩 1개는 2개의 Battery Cell 로 이루어져있다.

따라서 위와 같이 Output Signal이 2개씩 multiplexed된 것을 확인할 수 있다.

mux block은 여러개의 입력을 1개의 벡터로 만들어서 출력한다.

따라서 위의 iCell은 배터리 셀 2개의 전류를 벡터 형태로 출력함을 알 수 있다.

위와같이 SOC Estimator (Coulomb Counting) Block 에 배터리 셀 2개의 전류값, 초기 SOC값을 연결하고 출력을 Scope에 연결해주자.

이때, 배터리팩 1개 = 2개의 배터리셀 이므로 전류처럼 initialSOC (SOC의 초기값) 을 1 X 2 사이즈의 벡터로 입력해줘야한다.

실행을 시켜보면, 위와 같이 시간에따라 SOC가 증가하는 것을 확인할 수 있다.
(회로를보라, 수동 부호 규약에의해 전력의 부호를 구해보면 전류원이 배터리팩을 충전하는 회로임을 알 수 있다)
지금까지는 배터리를 일정한 전류로 충전시켜보았다.
그러나 높은 전류로 배터리를 계속 충전하면 -> 과충전으로 인해 배터리가 폭발할 수 있다.
다음시간에 배터리 팩을 위한 CC-CV 충전 로직을 배워볼 것이다.