모델 예측 제어를 통한 풍력 터빈 개선 - MATLAB & Simulink

기술 칼럼

머신러닝과 모델 예측 제어를 통한 풍력 터빈의 구조적 하중 감소

작성자: Andreas Klein, Thorben Wintermeyer-Kallen, Maximilian Basler, Institute of Automatic Control, RWTH Aachen 및 János Zierath, W2E Wind to Energy GmbH


모델 기반 설계는 우리 개발 공정에 필수적이었습니다.... 이 접근법을 통해 우리는 전체 3MW 풍력 터빈에서 제어기의 운영을 테스트할 수 있었습니다.

2050년까지 넷제로 배출을 달성하려면 풍력 에너지 생산량은 매년 17%의 성장률을 유지해야 합니다. 전 세계적으로 WT(풍력 터빈)의 총 설치 에너지 용량이 계속해서 증가함에 따라, 산업에서는 장기적인 운영 효율성을 최적화하는 데 더욱 주력하고 있습니다. 여기에는 전력 출력의 극대화 외에도 제조 및 유지관리 비용의 최소화를 수반하며, 이 모든 것이 안전과 전력망 규정 준수를 보장하는 동시에 이루어집니다. 이러한 모든 목표를 PI(비례-적분)이나 PID(비례-적분-미분) 알고리즘을 기반으로 하는 고전 제어 전략을 사용하여 달성하기란 어렵습니다. 그 결과 연구 그룹은 MPC(모델 예측 제어)를 비롯한 고급 제어 전략을 사용하는 방향을 모색해 왔습니다.

MPC는 때로는 상충하는 여러 제어 목적 및 제약 조건을 하나의 최적화 문제로 압축할 수 있기 때문에 WT 제어 응용 사례에 적합합니다. 사실, 우리의 이전 동료들은 이미 모델 기반 제어기 설계 및 신속 제어 프로토타이핑을 사용해 풍력 터빈 제어에 대한 MPC의 효율성을 입증한 바 있습니다.

최근 우리(RWTH Aachen의 Institute of Automatic Control 소속 연구원 팀 및 W2E Wind to Energy GmbH의 엔지니어)는 이러한 과거의 작업을 확장하여 머신러닝 회귀 모델을 MPC에 통합했습니다. 이러한 개선을 통해 제어기는 블레이드 피치 각도와 발전기 토크를 사전에 조정하여 WT의 하중 변화를 최소화하고 장기적인 마모 및 손상 위험을 줄이는 것을 목표로 합니다. 우리가 사용한 알고리즘은 IntelliWind의 연구 프로젝트(연구 과제 번호: 01IS22028A/B)에서 유래되었습니다. 모델 기반 설계는 우리 개발 공정에 필수적이었습니다. 우리는 MATLAB®을 사용해 MPC의 내부 예측 모델의 동적 상태를 로터의 추력 변화에 매핑하는 머신러닝 모델을 훈련시켰고, Simulink® 및 Model Predictive Control Toolbox™를 사용해 제어기를 모델링하고 광범위하게 시뮬레이션하였으며, Simulink Coder™를 사용해 Bachmann 산업 제어 시스템에 배포할 코드를 생성했습니다. 이 접근법을 통해 우리는 W2E Wind to Energy에서 운영하는 전체 3MW 풍력 터빈에서 제어기의 운영을 테스트할 수 있었습니다. (그림 1) 이는 이 새로운 제어기 설계의 생산 준비성을 검증하는 데 중요한 단계였습니다.

열린 들판에 있는 풍력 터빈을 땅에서 본 모습.

그림 1. 독일의 Rostock에 있는 W2E Wind to Energy GmbH가 설계하고 제작한 3MW 풍력 터빈.

머신러닝 모델의 훈련 및 MPC로의 통합

MPC의 성능과 안정성은 예측 모델의 정확도와 충실도에 크게 영향을 받습니다. 충실도가 높은 모델일수록 계산 집약도가 더 높은 경우가 많기 때문에 MPC 설계에는 상충 관계가 있습니다. 예를 들어 WT에 대한 전체 전산유체역학 모델을 MPC에 통합하는 것은 그러한 모델에서 예측을 생성하는 데 필요한 시간이 제어기의 샘플링 시간을 크게 초과할 가능성이 높기 때문에 실용적이지 않습니다.

이러한 충실도와 계산 강도 간의 설계 상충 관계를 해결하기 위해 우리는 머신러닝 모델, 특히 LLNFM(국소 선형 신경 퍼지 모델)을 사용하여 터빈 로터의 추력 변화를 신속하게 예측했습니다. MPC에서 우리는 이 LLNFM을 WT의 비선형 차수 축소 모델과 결합했습니다. (그림 2) 하지만 이를 제어 설계에 통합하기 전에 먼저 머신러닝 모델을 훈련시켜야 했습니다.

차수 축소 모델의 개략도 및 국소 선형 신경 퍼지 모델의 개략도, 그리고 이러한 모델이 풍력 터빈의 회전자에 통합된 위치를 보여주는 다이어그램입니다.

그림 2. WT 드라이브트레인 역학을 위한 기계 서브모델, 로터 타워 및 블레이드 역학을 위한 기계 서브모델, 공기역학을 위한 세 번째 서브모델로 구성된 차수 축소 모델(왼쪽)에 국소 선형 신경 퍼지 모델(오른쪽) 통합.

LLNFM을 비롯한 머신러닝 모델을 훈련하려면 데이터가 필요합니다. 우리는 alaska/Wind 소프트웨어를 사용해 합성 훈련 데이터를 생성했으며, 동일 소프트웨어에서 외부 풍력에 기반한 로터의 내부 하중을 모델링하고 시뮬레이션했습니다. 특히 우리는 다양한 바람 조건, 다양한 속도 및 극한의 작동 돌풍 상황에서 로터의 추력을 측정하기 위한 시뮬레이션을 실행했습니다. 그런 다음 이 데이터를 MATLAB으로 가져와서 전처리했습니다. 전처리 단계에는 시간 경과에 따른 추력의 변화에 대해 모델을 훈련하기 위한 시간 도함수 계산 및 그리고 바람의 확률에 의해 도출된 고주파 성분의 제거를 위한 저역통과 필터의 적용과 같은 과정이 포함됩니다. (그림 3)

풍력 터빈의 시뮬레이션 모델과 수집된 원시 데이터를 나타낸 차트, 시간과 주파수에 따라 원시 데이터를 필터링하는 것을 보여 주는 두 개의 차트, 그리고 모델 훈련 결과를 보여 주는 차트.

그림 3. 워크플로 개요: 시뮬레이션 데이터 수집, 해당 데이터 전처리 및 이를 사용한 국소 선형 신경 퍼지 모델 훈련.

우리는 University of Siegen에서 개발한 MATLAB 툴박스인 LMN-Tool에서 제공되는 LOLIMOT(LOcal LInear MOdel Tree) 알고리즘을 사용하여 LLNFM을 구축하고 훈련했습니다. LLNFM은 비선형 관계를 나타내지만 다른 머신러닝 기술에 비해 감당할 만한 복잡성을 가지고 있기에 우리는 이를 사용합니다. 이를 통해 해석 가능성이 높아지며, 이는 설비의 잠재적 손상 위험을 최소화하는 것이 주요 관심사인 실제 제어 응용 사례에서 유리합니다.

LLNFM을 훈련하고 검증한 후 우리는 기호 프레임워크인 CasADi를 사용해 모델을 기반으로 한 기호 표현식을 생성하고 시스템 상태를 기준으로 모델의 야코비 행렬을 계산했습니다. 우리는 이 모델 및 관련 야코비 행렬의 기호 표현식에 기반한 S-Function을 만들었습니다. Simulink에서 이 S-Function은 제어기의 EKF(확장 칼만 필터)에서 선형화된 상태 공간 모델을 얻기 위해 호출되며 동작 조건이 변화함에 따라 예측 모델 상태를 추정하기 위해 Adaptive MPC Controller 블록에 의해 호출됩니다. (그림 3)

제어기 시뮬레이션 및 조정

MPC에 머신러닝 모델을 통합한 후, 다음 단계는 제어기를 조정하고 성능을 평가하기 위한 시뮬레이션을 실행하는 것이었습니다. 이 제어기는 구조적 하중을 최소화하면서 전력 출력을 극대화하도록 설계되었습니다.

우리는 시동 풍속부터 종단 풍속까지 다양한 풍속에서 수많은 시뮬레이션을 실행했습니다. 그런 다음 MATLAB에서 결과를 분석하고 머신러닝으로 강화된 새로운 MPC의 성능을 기존 MPC 및 기본 고전 제어 시스템과 비교했습니다. 머신러닝으로 강화된 MPC는 부분 하중 영역(낮은 풍속)에서 추력 역학에 미치는 영향이 미미한 반면, 전체 하중 영역(높은 풍속)에서는 지배적인 1번째 타워 고유모드 주변의 주파수 범위에서 추력 역학을 감소시켰습니다. (그림 4) 시뮬레이션 결과에 따르면 머신러닝으로 강화된 MPC는 기존 MPC와 유사한 전력을 생산할 수 있는 것으로 나타났습니다. (그림 5)

전체 하중과 부분 하중 조건에서 추력을 표시하는 두 개의 그래프로, 각각 기준선, 머신러닝이 없는 MPC, 머신러닝 제어기가 있는 MPC에 대한 결과를 보여줍니다.

그림 4. 부분 하중 조건(왼쪽)과 전체 하중 조건(오른쪽)에서 추력의 파워 스펙트럼 밀도를 세 가지 유형의 제어기에 대해 플롯한 것입니다. 기준선(검정색), 머신러닝이 없는 MPC(파란색), 머신러닝이 있는 MPC(빨간색).

머신러닝으로 강화된 MPC, 머신러닝이 없는 MPC, 기준 제어 대안에 대한 다양한 풍속에 대한 시뮬레이션 전력 출력을 보여주는 그래프입니다.

그림 5. 다양한 풍속에 대한 시뮬레이션된 전력 출력 플롯. 머신러닝으로 강화된 MPC(빨간색), 머신러닝이 없는 MPC(파란색), 기준 제어(검은색) 대안에 대한 유사한 출력을 보여줍니다.

실제 풍력 터빈으로 배치 및 테스트

시뮬레이션을 통해 제어 설계에 대한 확신을 얻었을 뿐만 아니라 실제 WT에서 어떻게 수행되는지 보고 실제 동작 조건에서의 견고성을 평가하는 것도 우리 연구 프로젝트에 중요했습니다. 이 목표를 달성하기 위해 우리는 Simulink Coder와 함께 M-Target for Simulink를 사용하여 W2E Wind to Energy WT에 설치된 Bachmann Electronic GmbH의 MH230 PLC용 제어기에서 코드를 생성했습니다. 현장 테스트는 잘 진행되었으며, 부분 하중 및 전체 하중 모드에서 전체 WT에서 안정적인 운영이 확인되었습니다. (그림 6)

Rostock의 3MW 터빈을 제어하는 머신러닝으로 강화된 새로운 MPC의 결과를 보여주는 일련의 그래프입니다. 그래프는 시간에 따른 풍속, 발전기 속도, 전력, 피치 각도, 발전기 토크에 대한 변수를 나타냅니다.

그림 6. Rostock의 3MW 풍력 터빈을 제어하는 머신러닝으로 강화된 새로운 MPC의 실험 현장 테스트 결과.

따라서 이 첫 번째 개념 증명에서 우리는 본격적인 WT에서 고급 MPC 알고리즘에 머신러닝 확장을 사용할 수 있는 일반적인 가능성을 보여주었습니다. 이를 통해 향후 더욱 복잡한 머신러닝 알고리즘을 실험적으로 테스트하고 풍력 터빈의 운영을 더욱 개선할 수 있을 것입니다.

단기적으로, 우리는 WT에 대한 보다 광범위한 현장 테스트를 기대하고 있으며, 이를 통해 제어기를 더욱 최적화하고 조정할 수 있는 기회를 얻을 수 있기를 기대하고 있습니다. 또한, 라이다 센서를 사용하여 제어기에 더 정확한 풍속 전파 추정치를 제공하고, 집합적 블레이드 피치 제어 대신 개별 블레이드 피치 제어를 사용하여 제어 정밀도와 성능을 더욱 높이는 등 몇 가지 다른 잠재적인 개선 방안도 모색하고 있습니다.

감사의 글

그림 2와 그림 3은 Journal of Physics에 게재된 논문인 Control-Oriented Wind Turbine Load Estimation Based on Local Linear Neuro-Fuzzy Models (2024) Conference Series에서 Creative Commons Attribution 4.0 License에 따라 발췌한 것입니다. 수치는 원본에서 수정되었습니다.

2024년 기고

관련 기능에 대한 칼럼 보기

관련 산업에 대한 칼럼 보기