ABB, 파워 일렉트로닉 컨트롤러용 애플리케이션 제어 소프트웨어 개발 가속화

“우리 회사 시스템 엔지니어는 MATLAB 및 Simulink 에서 아주 신속하게 AC 800PEC 컨트롤러의 제어 소프트웨어를 프로그래밍하고 시뮬레이션하며 검증할 수 있습니다. 이러한 접근법으로 개발 시간을 크게 단축하고 요구사항에 충실한 결과물을 얻을 수 있습니다.”

과제

전력 컨버터용 고출력 일렉트로닉 컨트롤러를 위한 새로운 애플리케이션 소프트웨어의 설계를 가속화하는 도구를 사용하여 보다 효율적인 개발 과정 채택

솔루션

MathWorks 툴을 사용하여 제어 알고리즘을 설계 및 검증하고 컨트롤러용 애플리케이션 소프트웨어 개발 과정 합리화

결과

  • 개발 시간이 단축되고 비용이 절감됩니다
  • 개발 과정이 개선됩니다
  • 생성 코드의 정확도가 극대화됩니다
AC 800PEC 컨트롤러

스위스에 본사를 둔 ABB는 환경 영향을 줄이는 동시에 성능을 향상할 수 있는 기술을 개발하고 있으며, 100개가 넘는 국가의 유틸리티 기업이 이 기술을 이용하고 있습니다. ABB의 파워 일렉트로닉스 그룹은 최근 파워 컨버터용 고급 파워 일렉트로닉 컨트롤러인 AC 800PEC를 선보였습니다. 강력한 CPU를 대형 FPGA와 결합한 AC 800PEC는 고출력 정류기, 마이크로터빈용 주파수 변환기, 풍력 발전용 터빈, 트랙션 드라이브, 배터리 에너지 저장 시스템 및 기타 파워 일렉트로닉스 애플리케이션을 제어합니다.

ABB는 MathWorks 툴을 통해 소프트웨어 개발 과정을 최적화하여 AC 800PEC 컨트롤러의 제어 소프트웨어를 설계하고 자동으로 코드를 생성함으로써 생산성을 향상했습니다.

ABB의 시스템 개발 및 R&D 파워 일렉트로닉스 책임자인 프리츠 위트버 씨는 “MathWorks 제품 덕분에 새로운 컨트롤러를 위한 애플리케이션 소프트웨어 개발 시간이 상당히 단축되었습니다. 이러한 시간 절약 덕분에 비용이 크게 줄고 시장 출시 기간도 단축되었습니다.”라고 말합니다.

과제

이전 프로젝트에서 ABB 팀은 시스템 엔지니어가 요구사항을 정의하고 이후 소프트웨어 엔지니어가 이 요구사항에 대한 해석을 기반으로 소프트웨어를 작성하는 전통적인 개발 과정을 따랐습니다. 이러한 과정은 시간 소모가 많고 오류가 발생하기 쉬울 뿐만 아니라 본래의 요구사항과 개념을 따르지 않은 소프트웨어가 나올 가능성도 있습니다.

ABB 개발 팀은 개발과정 중 야기될 수 있는 오류를 피하는 동시에 생산성을 높일 수 있는 개발 과정을 원했습니다.

솔루션

모델 기반 설계용 MathWorks 툴은 ABB의 전체 개발 과정(ABB에서는‘제어 개발 최적 과정’이라고 함)을 위한 단일 개발 플랫폼을 제공했습니다.

ABB는 이전에 다른 프로젝트에서 시스템 시뮬레이션 실행을 위해 Simulink®를 사용한 적이 있습니다. ABB는 SMS(Software Maintenance Service)에 가입되어 있으며 새로운 파워 일렉트로닉 컨트롤러를 위해 Simulink Coder™를 개발 환경에 추가했습니다. Simulink Coder를 사용하여 컨트롤러 코드를 자동 생성하며 Simulink 모델에서 AC 800PEC 컨트롤러로 다운로드하므로, C 코드를 수동으로 작성할 필요가 없습니다.

ABB는 MATLAB® 및 Simulink를 사용하여 필터링, 전류 제어, 그리드 동기화, 그리드 전력 모니터링을 위한 제어 알고리즘을 설계하고 전력, 대기 전력 및 기타 물리 변수를 계산했습니다.

엔지니어들은 Simscape Electrical™를 사용하여 시스템 시뮬레이션을 통해 알고리즘을 검증하며 Stateflow®를 통해 제어 순서를 모델링하고 신속하게 오류를 탐지할 수 있습니다.

또한 Simulink Coder를 사용하여 Simulink 모델에서 자동으로 ANSI C 코드를 생성합니다. Simulink Coder를 사용하여 Stateflow 차트에서 C 코드를 생성하므로 시간과 인력을 들여 제어 알고리즘을 소스 코드로 수동 변환할 필요가 없으며 생성된 코드를 직접 컨트롤러에서 사용할 수 있습니다.

ABB는 Simulink External Mode를 사용하여 컨트롤러에서 대화식으로 소프트웨어를 디버깅합니다.

ABB는 실행 가능한 요구사항으로 Simulink 모델을 사용함으로써 요구사항과 코드를 개발 과정 내내 동기화된 상태로 유지합니다. 매개변수는 PC에서 수정 및 최적화할 수 있고, 코드는 모델에서 자동으로 생성한 후 이더넷 연결을 통해 컨트롤러로 직접 전송할 수 있습니다.

AC 800PEC 컨트롤러는 하드웨어 요구 사항이 까다롭고 열 범위와 진동이 높은 트랙션 컨버터에 사용하도록 시장에 공급되었습니다.

결과

  • 개발 시간이 단축되고 비용이 절감됩니다. 위트버 씨는“MathWorks 제품 덕분에 새로운 AC 800PEC 컨트롤러용 애플리케이션 제어 소프트웨어를 개발하는 데 걸리는 시간이 이전 컨트롤러와 비교했을 때 크게 줄었습니다. Simulink 모델에서 생성한 코드는 컨트롤러에서 직접 사용할 수 있어서 비용이 많이 드는 별도의 구현 단계가 필요 없습니다.”라고 말합니다.

  • 개발 과정이 개선됩니다. ABB는 SMS에 가입해 있으므로 1년에 2회 실시되는 MathWorks 제품 업데이트를 이용하여 모델 기반 설계를 활용한 개발 과정을 더욱 개선할 수 있습니다. 위트버 씨는“우리 회사가 SMS 프로그램에서 얻은 가장 큰 혜택은 제품 업데이트에서 제공되는 새로운 기능입니다.”라고 말합니다.

  • 생성 코드의 정확도가 극대화됩니다. AC 800PEC 컨트롤러를 위한 C 코드의 거의 100%가 Simulink Coder를 통해 자동 생성됩니다. 위트버 씨는“이러한 접근법 덕분에 시뮬레이션용 결과물이 최종 결과물입니다. 생성된 코드는 오류가 없으며 Simulink로 정의한 제어 알고리즘을 정확하게 묘사합니다.”라고 설명합니다.