딥 네트워크 - 딥러닝 모델 분석/네트웍 통신/카메라 3A 튜닝 분야

안녕하세요, 저는 전기차 바테리 충전 제어 전문 일인기업 딥네트워크의 대표입니다. 본문

Kernel Porting/Linux

안녕하세요, 저는 전기차 바테리 충전 제어 전문 일인기업 딥네트워크의 대표입니다.

파란새 2024. 2. 26. 12:51

BLDC Motor 제어 전문 딥네트워크 사업화 내용 소개

딥네트워크는 브러시리스 DC 모터를 제어하는 획기적인 솔루션을 제공하는 일인기업입니다. 딥네트워크는 TI의 TIDA-010250 개발 보드를 사용하여 FOC 알고리즘과 TI의 InstaSPIN-FOC 소프트웨어 라이브러리를 기반으로 한 펌웨어 설계 세부 검토 분석을 수행하였습니다. 

딥네트워크의 모터제어 사업화 구조중 TI 사의 FOC 알고리즘과 TI의 InstaSPIN-FOC 소프트웨어 라이브러리란 ?

FOC 알고리즘은 Field Oriented Control의 약자로, 모터의 자기장의 크기와 방향을 정밀하게 제어하여 토크를 안정적이고 효율적으로 제어하는 기법입니다. FOC 알고리즘은 다음과 같은 세 가지 핵심 기능을 가집니다.

TI의 InstaSPIN-FOC 소프트웨어 라이브러리는 TI의 C2000 마이크로컨트롤러에 내장된 ROM에 저장된 FOC 알고리즘을 실행하는 소프트웨어 패키지입니다. InstaSPIN-FOC 소프트웨어 라이브러리는 다음과 같은 장점을 가집니다.

TIDA-010250 개발 보드의 펌웨어 설계 참조소스 의 구성 소개

TIDA-010250 개발 보드는 TI에서 제공하는 1kW 브러시리스 DC 모터 인버터 참조 설계입니다. 이 보드는 다음과 같은 구성 요소로 이루어져 있습니다.

TIDA-010250 개발 보드의 펌웨어 설계 참조소스는 TI의 웹사이트에서 다운로드할 수 있습니다. 이 소스는 FOC 알고리즘과 TI의 InstaSPIN-FOC 소프트웨어 라이브러리를 기반으로 합니다.

딥네트워크의 TIDA-010250 개발 보드의 펌웨어 설계 커스토마이징 방법

TIDA-010250 개발 보드의 펌웨어 설계 참조소스는 다양한 응용 분야에 맞게 모터제어 전문 딥네트워크는 커스토마이징할 수 있습니다. 

 

TI의 TIDA-010250 개발 보드는 1kW의 3상 BLDC 모터를 제어하기 위한 참조 설계입니다이 보드는 TI의 InstaSPIN-FOC 소프트웨어 라이브러리를 사용하여 모터의 플럭스, 각도, 속도, 토크를 추정하고 센서리스로 FOC 알고리즘을 수행할 수 있습니다InstaSPIN-FOC 소프트웨어 라이브러리는 TI의 MotorWare™ 소프트웨어 프레임워크에 포함되어 있으며, C 언어 기반의 객체 지향적이고 API 기반의 코딩 기법을 제공합니다.

딥네트워크의 TI 사와  InstaSPIN-FOC 소프트웨어 라이브러리  상용화 관련 기술지원 라이센싱 계약

TI 사와 기술지원 라이센싱 계약을 맺으려면 다음과 같은 절차를 따르면 됩니다.

  • TI의 웹사이트에서 라이센싱 프로그램에 대한 정보를 확인하고, 관심 있는 기술 또는 제품을 선택합니다.
  • TI의 라이센싱 담당자에게 연락하여 라이센싱 가능 여부, 조건, 비용 등을 상담합니다.
  • TI와 비밀유지계약 (NDA)을 체결하고, 기술 또는 제품에 대한 자세한 정보를 제공받습니다.

딥네트워크는 TI의 라이센싱 계약을 통해 다양한 분야의 기술과 제품을 제공하고 있습니다. 예를 들어, TI의 InstaSPIN-FOC 소프트웨어 라이브러리는 브러시리스 DC 모터를 제어하는 획기적인 솔루션을 제공하며, TIDA-010250 개발 보드와 함께 사용할 수 있습니다또한, TI의 MSP430 마이크로컨트롤러는 저전력, 고성능, 다양한 주변기기를 갖춘 16비트 MCU로, 센서, 계측기, 통신장비 등에 적용할 수 있습니다.

 

전향보상기 제어(Field Weakening Control)는 모터의 동작을 최적화하기 위해 특정 상황에서 적용되는 방식입니다. 이 제어 방식은 모터의 속도 범위를 확장하고, 더 높은 속도에서도 안정적으로 운전할 수 있도록 합니다.

전향보상기 제어의 원리와 동작 방식을 자세히 설명드리겠습니다:

  1. 목표 속도 초과 시 동작: 전향보상기 제어는 모터의 정격 속도를 초과하는 상황에서 적용됩니다. 이는 모터가 더 빠른 속도로 회전해야 할 때 발생합니다.
  2. 백-EMF 감소: 모터의 백-EMF(기전력)를 감소시켜 더 높은 속도에서도 안정적으로 운전할 수 있도록 합니다. 백-EMF는 모터의 속도가 증가함에 따라 증가하는 현상입니다.
  3. 전류 제어: 전류 제어기를 통해 모터의 전류를 조절하여 백-EMF를 보상합니다. 이를 통해 모터의 성능을 최적화하고 안정적인 운전을 가능하게 합니다.

전향보상기 제어의 구체적인 단계는 다음과 같습니다:

  • 속도 제어: 모터의 현재 속도가 정격 속도를 초과하는지 감지합니다.
  • 전류 제한:  d 축 전류를 조절하여 모터의 백-EMF를 감소시킵니다.
  • 전압 조절: 인버터의 출력 전압을 조절하여  q 축 전류를 유지합니다.
  • 속도-전류 매핑: 모터의 속도에 따라  d 축과  q 축 전류의 비율을 조절합니다.
  • 안전 모니터링: 모터의 온도와 전류를 지속적으로 모니터링하여 시스템이 안전한 운전 조건 내에서 작동하도록 합니다.

전향보상기 제어는 고속 운전에서 모터의 성능을 최적화하고, 효율적인 에너지 사용을 가능하게 합니다.

 

 

제가 제시한 수식은 Field-Oriented Control (FOC), 또는 전향보상기 제어와 관련이 있습니다. FOC는 BLDC 모터를 제어하는 가장 효율적인 방법 중 하나로, 모터의 회전자 위치에 따라 전류를 조절하여 최적의 토크를 생성하는 방식입니다.

FOC 제어 방식은 모터의 회전자 위치를 기반으로 d 축과  q 축 전류를 분리하여 제어합니다. 이는 모터의 효율을 극대화하고, 정밀한 속도 및 토크 제어를 가능하게 합니다. 제가 이전에 언급한 수식은 이러한 제어 방식의 원리를 나타내는 것으로, 실제로 모터 제어 알고리즘에 적용되어 모터의 성능을 최적화하는 데 사용됩니다.

FOC 제어는 다음과 같은 단계로 이루어집니다:

  1. 회전자 위치 감지: 모터의 정확한 회전자 위치를 파악하기 위해 센서를 사용합니다.
  2. 클라크 변환 (Clarke Transformation): 3상 전류를 2상 전류로 변환합니다.
  3. 파크 변환 (Park Transformation): 회전자 위치에 따라 변환된 2상 전류를 (d)-축과 (q)-축 전류로 분리합니다.
  4. PI 제어기:  d 축과  q 축 전류를 조절하여 원하는 토크와 속도를 얻습니다.
  5. 역 파크 변환 (Inverse Park Transformation):  d 축과  q 축 전류를 다시 3상 전류로 변환합니다.
  6. 역 클라크 변환 (Inverse Clarke Transformation): 2상 전류를 3상 전류로 변환하여 인버터를 통해 모터에 공급합니다.

이러한 과정을 통해 모터는 정밀하게 제어되며, 사용자가 원하는 동작을 수행할 수 있습니다. FOC 제어 방식은 복잡한 수학적 계산과 알고리즘을 필요로 하지만, 그 결과로 얻어지는 모터의 성능은 매우 우수합니다.

 

전향보상기 제어의 동작 원리를 실제 모터 제어에 어떻게 적용하는지 설명드리겠습니다.

  1. 회전자 위치 검출 (Position Sensing):
    • 전향보상기 제어는 모터의 회전자 위치를 정확하게 파악해야 합니다. 이를 위해 홀 센서(Hall sensor)나 엔코더(Encoder)와 같은 위치 센서를 사용합니다.
    • 홀 센서는 회전자의 자기장 변화를 감지하여 회전자의 위치를 알려줍니다. 엔코더는 회전자의 각도를 디지털 신호로 변환하여 제어 시스템에 전달합니다.
  2. 전류 제어 (Current Control):
    • 모터의 상류에는 고정자 코일이 있습니다. 이 코일에 전류를 공급하여 회전자를 움직입니다.
    • PWM(Pulse Width Modulation) 제어를 사용하여 고정자 코일에 가변 전압을 적용합니다. PWM 듀티 사이클을 조절하여 평균 전압을 제어합니다.
    • 전류 제어는 모터의 토크와 속도를 조절하는 핵심 요소입니다.
  3. 전향보상기 제어 (Field-Oriented Control, FOC):
    • FOC는 모터의 회전자 위치를 기반으로 고정자 코일에 전류를 공급하는 방식입니다.
    • 회전자 위치를 감지한 후, (d)-축과 (q)-축으로 전류를 변환합니다. (d)-축은 회전자 자기장 방향, (q)-축은 회전자 자기장과 수직 방향입니다.
    • (d)-축 전류는 회전자 자기장을 따라 토크를 생성하고, (q)-축 전류는 회전자 자기장을 균형시킵니다.
    • 이렇게 변환된 전류를 고정자 코일에 적용하여 최적의 토크를 생성합니다.
  4. PI 제어기 (Proportional-Integral Controller):
    • FOC에서는 PI 제어기를 사용하여 (d)-축과 (q)-축 전류를 조절합니다.
    • PI 제어기는 토크 오차를 측정하고, 이를 통해 (d)-축과 (q)-축 전류를 조절합니다.
    • PI 제어기는 토크와 속도를 안정적으로 유지하며, 최적의 토크를 생성합니다.

이렇게 회전자 위치 검출, 전류 제어, FOC, PI 제어기를 조합하여 전향보상기 제어를 구현합니다. 이는 모터의 최적 토크를 생성하고 효율적으로 운전할 수 있도록 합니다.

 

보스톤 다이나믹스 MIT 출신들이 모여 만든 로봇 회사 같은 로봇은 로봇 관절이 자기가 어느위치에 어떻게 있는지를 알야야 정확한 제어가 가능할겁니다 .... 이것의 구현을 위해서는  Invensense ICM20948 칩셋 같은 9 축센서 칩셋으로  IMU (관성 측정 장치)로 각속도계, 가속도계, 지자기계를 포함합니다. 이 센서들의 데이터를 이용하여 yaw, pitch, roll 각을 측정해서 로봇 관절이 자기가 어느위치에 어떻게 있는지를 알야야 정확한 자세 측정이 가능 합니다 ...    로봇 축 모터 정밀제어 관련해서 어떻게 부하가 걸린 상태로 모터를 구동해서 정확한 위치가 되면 부하가 걸린 모터 축을 어떻게 제어해야 정지상태를 유지하면서 모터 축이 모터 부하를 견딜수 있는지 이런것들의 펌웨어는 어떤 설계 원리로 구현 가능한지 그 세부 동작원리를 파낙하는데 성공했구요 ....  로봇 관절제어를 위해서는 제어 모터에 감속기 등등의  부가장치를 장착해서 어떤 설계 구조로 모터가 정밀제어가 가능한지  모터의 부가장치의 선택 방법과 그 세부 설계 동작원리 등등을 파악했읍니다 ...   로봇 관절제어를 위해서는 제어 모터에 감속기 등등을 설계 제조하는 일본기업을 알아봐서 로봇 관절제어에 적합하게  제어 모터에 감속기 등등의  부가장치를 장착한것들은 어느 정도 가격대인가도 알아봤읍니다 ...    저의 경우 로봇 축 관절제어를 위한 BLDC Motor 의 토크/위치/속도 제어를 위한 모터 제어 펌웨어가 어떤 설계 구조로 구현하는지를 파악하는데 성공했읍니다 ...   로봇 축 관절제어를 위한 모터제어 프로토타입 펌웨어 구현 정도의 노하우를 확보했구요 ...    저도 구글링 2000 번 넘는 시행착오(국내외 논문분석)를 거쳐 3 년여만에 제가 원하는 돈이 되는 세부 정보를 얻는데 성공했읍니다 ....      제가 확보한  BLDC 모터 정밀제어 노하우는  위치제어 / 속도제어 / 토크제어를 Closed Loop  PI  제어를 하는데 필요한 제어 알고리즘 수식을 확보해서 이해하는데 성공했읍니다 ...     BLDC Motor 로 위치제어 / 속도제어 / 토크제어를 Closed Loop  PI  제어를 하려면 BLDC Motor 는 어떤 규격의 것을 선택해야 하는지와 이는 또 어느 업체에서 이를 취급하는지 등등도 파악하고 있읍니다 ...   4 Pole - BLDC Motor 제어를 PWM 구동 방식으로  6 - STEP Sequence 로 제어하려면 세부적으로 어떻게 제어해야 하는지 등등도 파악에 성공했읍니다 ...    모터제어도 정밀제어가 가능한 사람이 드문데 제가 한 3 년 국내외 사이트의 기술자료 분석을 통해 모터 정밀제어 기술력을 확보하는데 성공했읍니다  문제는 제 기술력을 다른 관련 기업에 마땅히 홍보할 방법이 없어서 제 기술력을 저만 알고 있다는게 문제 입니다  저는  로봇 축 관절제어 설계 기술을 확보하고 있구요  보스톤 다이나믹스를 현대차가 10억불에 인수한 기술의 기본이 로봇 축 관절제어 기술이거든요  4족 보행로봇 상용설계 기술은 많이 부족하지만 로봇 축 관절제어 설계 노하우는 그래도 부끄럽지 않게 확보했으니 저도   이것으로 기회가 오면 큰 건을 잡으리라 판단하거든요

 

 

 

ISL94202는 배터리 팩의 상태를 모니터링하고, 경계 조건이 감지되면 자동으로 시스템을 종료하고 복구하는 기능을 가지고 있습니다.

이러한 기능은 배터리 팩을 보호하고, 안전하게 유지하기 위한 중요한 역할을 합니다.

경계 조건에서의 자동 종료 및 복구:

팩 셀 밸런싱의 자동 제어:

이러한 동작 알고리즘은 ISL94202의 내부 로직에 의해 구현되며, 사용자는 ISL94202의 EEPROM을 프로그래밍하여

이러한 기능들을 설정하고 조정할 수 있습니다

 

 

ISL94202와 Active Balance MP264X는 배터리 셀 밸런싱 제어 시 다음과 같은 역할을 수행합니다:

ISL94202:

Active Balance MP264X:

배터리 셀 밸런싱 제어 시, ISL94202는 배터리 팩의 상태를 모니터링하고 기본적인 셀 밸런싱 기능을 수행하는 반면,

MP264X는 더 고급 밸런싱 기능을 제공하여 셀 간의 에너지를 더 효율적으로 재분배합니다. 이 두 칩셋은 함께 사용될 때,

배터리 팩의 전체 수명과 성능을 최적화하기 위해 서로 보완적인 역할을 수행합니다.

 

 

Active Balance MP264X는 리튬 이온, 리튬 폴리머, 또는 리튬 철 인산염 배터리들 사이에서 고전류 충전 재분배를

가능하게 하는 고도로 통합된 양방향 액티브 밸런서입니다. 이 장치는 두 가지 작동 모드를 가지고 있습니다: 

버크 밸런스 모드와 부스트 밸런스 모드.

  • 버크 밸런스 모드: MODE 핀이 낮은 상태일 때, MP264X는 전진 버크 밸런스 모드에서 작동하여
  • 상위 셀(CU)에서 하위 셀(CL)로 불일치 에너지를 전송합니다.
  • 부스트 밸런스 모드: MODE 핀이 높은 상태일 때, MP264X는 역 부스트 밸런스 모드에서 작동하여
  • CL에서 CU로 불일치 에너지를 전송합니다.

안전한 작동을 보장하기 위해, MP264X는 CL과 CU의 과전압 보호(OVP), 저전압 보호(UVP), 열 차단,

그리고 배터리 온도 모니터링을 제공합니다. 이 장치는 QFN-26 (4mmx4mm) 패키지로 제공됩니다.

MP264X는 큰 배터리 시스템에서 활성 밸런싱을 통해 효율적으로 빠르게 밸런싱 과정을 가속화하고,

불일치하는 배터리 스택에서 용량 회복을 가능하게 합니다. 이는 에너지 손실과 발열을 최소화하는 데에도 도움이 됩니다.

 

ISL94202 배터리 셀 충전 컨트롤러는 리튬 이온 배터리 모니터 IC로, 3개에서 8개의 시리즈로 연결된 셀을 지원합니다.

이 IC는 배터리 모니터링과 팩 제어를 완벽하게 제공하며, 자동으로 셀 밸런싱을 제어합니다.

Active Balance MP264X는 고도로 통합된 양방향 액티브 밸런서로, 리튬 이온, 리튬 폴리머 또는

리튬 철 인산염 배터리들 사이에서 고전류 충전 재분배를 가능하게 합니다. 이 장치는 두 가지 작동 모드를 가지고 있습니다:

버크 밸런스 모드와 부스트 밸런스 모드. MODE가 낮으면 MP264X는 전진 버크 밸런스 모드에서 작동하여

상위 셀(CU)에서 하위 셀(CL)로 불일치 에너지를 전송합니다. MODE가 높으면 MP264X는

역 부스트 밸런스 모드에서 작동하여 CL에서 CU로 불일치 에너지를 전송합니다.

 

ISL94202과 MP264X를 사용한 펌웨어 설계 구조는 다음과 같은 단계를 포함할 수 있습니다:

  1. 셀 전압, 전류 및 온도 모니터링: ISL94202은 셀 전압, 팩 전류 및 온도를 12비트 디지털 값으로 변환합니다.
  2. 셀 밸런스 제어: ISL94202은 셀 밸런스 제어를 제공하며, 완전한 독립형 배터리 팩 작동을 제공합니다.
  3. 외부 마이크로컨트롤러와의 인터페이스: 기본 독립형 작동은 외부 마이크로컨트롤러에 의해 재정의될 수 있으며,
  4. PC 기반 그래픽 사용자 인터페이스(GUI)는 독립형 작동을 모니터링하고 외부 마이크로컨트롤러와 함께 작동을
  5. 시연하는 기능을 포함합니다.
  6. MP264X와의 통합: MP264X는 ISL94202과 함께 사용되어 셀 간의 에너지 재분배를 관리합니다.
  7. 이는 펌웨어를 통해 제어되며, 셀의 전압 불일치를 감지하고 적절한 밸런스 모드를 선택하여 에너지를 전송합니다.

 

안녕하세요, 저는 전기차 바테리 충전 제어 전문 일인기업 딥네트워크의 대표입니다. 저희 회사는  TI  사  EMB1428Q 칩셋을  활용하여  삼성 21700 50E / 7S 20P 바테리 셀 충전 제어 펌웨어와 기법을 분석하였습니다. 저희 회사의 핵심 노하우와 기술적 장점은 다음과 같습니다.

EMB1428Q는 SPI 버스 인터페이스를 통해 충전/방전 명령을 수신하는 동작 구조와 에너지 이동을 위한 12개의 플로팅 MOSFET 게이트 드라이버를 제어하는 설계 원리에 대해 다음과 같이 설명할 수 있습니다:

  1. SPI 버스 인터페이스를 통한 명령 수신:
  2. 에너지 이동을 위한 플로팅 MOSFET 게이트 드라이버 제어:

EMB1428Q 칩셋은 배터리 셀 간의 전압을 균등하게 유지하기 위해 액티브 셀 밸런싱을 수행하는 스위치 매트릭스 게이트 드라이버입니다. 이 칩셋의 주요 작동 원리는 다음과 같습니다:

  1. 전압 모니터링: EMB1428Q는 연결된 배터리 셀들의 전압을 지속적으로 모니터링합니다. 이 데이터는 셀 간의 전압 차이를 파악하는 데 사용됩니다.
  2. 에너지 전송 제어: 전압 차이가 감지되면, EMB1428Q는 스위치 매트릭스를 통해 높은 전압의 셀에서 낮은 전압의 셀로 에너지를 전송하도록 MOSFET 게이트를 제어합니다.
  3. 스위치 매트릭스: 칩셋은 12개의 부유 MOSFET 게이트 드라이버를 제공하여 최대 7개의 직렬로 연결된 배터리 셀을 밸런싱할 수 있습니다. 이 드라이버들은 각 셀에 연결된 MOSFET을 제어하여 에너지 이동 경로를 설정합니다1.
  4. 밸런싱 실행: EMB1428Q는 EMB1499 DC/DC 컨트롤러 IC와 함께 작동하여, 필요한 시점에 적절한 셀 간 연결을 활성화시키고 에너지를 효율적으로 전송합니다.

이러한 과정을 통해 EMB1428Q는 배터리 팩의 전체 성능을 최적화하고, 각 셀의 수명을 균일하게 유지하며, 전체 시스템의 안정성과 효율성을 높이는 데 기여합니다.

저희 딥네트워크가 바테리 BMS 설계도 깊이있게 검토 분석을 하다 보니 깨닭은게 BMS 설계에 최적화된 바테리 HW 스택을 설계하는것을 빈틈없이 HW 설계를 하면 아무래도 BMS 펌웨어의 성능은  BMS HW 설계 범주내에서 펌웨어 성능이 나올수 있는것 같읍니다 ...  액티브 밸런싱 설계를 위해 적용되는 스위치드 캐패시터 네트워크 BMS HW 설계 부분의 회로 설계 방안이 몇가지가 있는것 같구요 ...  저는 이를 위해 MOSFET 스위칭 제어를 위한  설계 방법 파악을 우선적으로 해보려 합니다 ...    제가 파악한바로는 BMS HW 설계의 핵심은  셀 충방전 회로 설계시 스위치 캐패시티드 네트워크로 설게하는데 이때  MOSFET 스위칭 소자의 게이트 구동회로 설계시 MOSFET 회로가 플로팅됬을때  게이트 구동회로에 인가전압을 어떻게 인가하도록 설계하는냐가 핵심 이라고 판단합니다 ...

저희 회사는 전기차 바테리 충전 제어 전문 일인기업으로서,  TI  사  EMB1428Q 칩셋을  활용하여 삼성 21700 50E / 7S 20P 바테리 셀의 충전 성능을 극대화할 수 있는 펌웨어와 기법을 분석하였습니다. 저희 회사의 제품과 서비스에 관심이 있으시다면, 저희 기업 블로그 사이트를 방문하시거나 연락주시기 바랍니다. 감사합니다.

딥네트워크      장석원      010 3350 6509     sayhi7@daum.net