삼성테크윈 - 가스터빈엔진의 리얼타임 시뮬레이션 및 제어 시스템

채문석 선임연구원, 삼성테크윈 파워시스템연구소

"기존의 한계를 극복하고, 완전 새로운 개념의 Control 또는 모니터링 시스템을 구축하고자 했던 개발자들에게, 본 시스템에 채용된 CompactRIO 시스템은 큰 매력이 아닐 수 없다."

- 채문석 선임연구원, 삼성테크윈 파워시스템연구소

과제:

가스터빈 엔진은 다양한 전문 분야 기술들의 유기적인 조합에 의하여 만들어지는 복잡한 기관이다. 따라서, 가스터빈 엔진의 전체적인 성능 및 세부 요소들에 대한 평가는, 특정 한 분야의 전문 지식만으로는 많은 어려움을 수반하며, 때로는 측정의 문제로 인하여 실제 엔진 실험을 통해서도 정확한 분석이 이루어지지 않는 경우가 많다. 그 결과, 가스터빈 엔진용 제어기 하드웨어와 알고리즘의 설계/검증은 더욱더 많은 어려움을 겪게 된다. 이와 같은 상황에서, 안전하고 완성도 높은 엔진 제어기를 구현하기 위해서는, 실제 엔진 시험에 앞서 제어기 하드웨어와 알고리즘의 신뢰성을 검증할 수 있는 방법이 반드시 마련되어야 한다.

솔루션:

본 시뮬레이션 시스템은 엔진의 수학적 모델링을 통해, 실제 엔진과 동일한 물리적 신호를 입출력 하는 가상의 엔진 시스템을 제공하여, 개발된 제어 시스템의 하드웨어와 탑재된 어플리케이션 소프트웨어의 완전무결성(Integrity)을 검증할 수 있는 최적의 솔루션을 제공한다. ■ 알고리즘 개발 툴 : LabVIEW Simulation Interface Tool Kit 2.0 + LabVIEW 7.0, Matlab/Simulink, Visual C++ ■ 개발 기간 : Hardware 설계 및 구현 : 2.5개월 / 1명 ■ LabVIEW 프로그래밍 3종 : 3.2개월 / 1명 ■ 디버깅/검증 기간 : 3.5개월 / 1명 ■ 패키징(Packaging) : 1개월 / 0.3명 ■ 기여도 : 엔진 제어기 하드웨어 및 알고리즘 검증 항목 총 150여 항목中 약 45%를 본 시스템을 활용한 시뮬레이션 Report로 대체 가능 (통상 실제 엔진 시험만으로 검증 할 경우 1년 이상 소요됨.)

본론


1. 시스템 구성

Gas Turbine Engine Simulator의 시스템 구성은 다음의 그림 1.과 같다.



그림 1. 시스템 구성

① Virtual Engine Simulator - 엔진 동특성 계산에 필요한 수학적 모델을 탑재하고, 실시간 연산을 수행하여, 엔진 상태(State)를 계산하고, 출력 파라메터(Parameter)를 생성한다. 출력 파라메터들은 자체 설계/구현된 신호변환기(Signal Converter) 모듈을 거쳐 압력/온도/RPM등의 물리적 신호로 변환되어 최종 출력된다.
실시간 연산, I/O 입출력 및 Simulator Server와의 통신을 위하여 소형의 8 Slot CompactRIO 시스템과 FPGA 프로그래밍이 이용되었고, 특정 물리적 신호의 생성을 위하여 개발자의 노하우(Know-How)가 반영된 Signal Converter 가 제작되었다.
② Gas Turbine Engine Controller - 실제 가스터빈 엔진 제어를 수행하는 하드웨어이다. 고성능 CPU가 탑재되어 있으며, 실제 엔진 하네스/케이블로 Simulator 연결된다.
③ Control Algorithm - 가스터빈 엔진 운용 로직과 제어 보상기(Compensator)이다. 어플리케이션 요구 사양을 만족하도록 프로그램되어야 하는, 엔진 제어에 있어 가장 중요한 부분이다.
④ Simulator Server - Virtual Engine Simulator의 운용과 데이터 저장, 그리고 사용자 인터페이스를 담당하는 컴퓨터이다.

 

2. CompactRIO 프로그래밍

CompactRIO는 크게, FPGA 프로그램, Real-Time 프로그램, 그리고 Windows와 인터페이스 되는 Client 프로그램으로 구분되지만, 본 Engine Simulator에는 FPGA 프로그램과 Real-Time 프로그램이 적용되었다. FPGA는 고속 필터링과 I/O 입출력을 담당하는 코어 프로그램이 LabVIEW로 프로그램 되어 Burning 되었다. Real-Time 프로그램은 고속/Iteration이 필요한 상태 방정식 연산에 필요한 알고리즘이 탑재되어, 실시간으로 엔진 상태를 업데이트 하고, 출력 백터(Output Vector) Y를 생성하게 된다.
최초에, 8 Slot 1M Gate Chassis(cRIO-9102)를 사용하였으나, 통상 1M Gate로는 8 Slot I/O 모듈을 충분히 구동시킬 수 없음을 확인하고, 긴급히 3M Gate Chassis로 교체했던 경험이 있다. 또한, Analog Output Module인 cRIO-9263의 경우, 외부로 드라이브 할 수 있는 전류가 수 mA에 불과한 사실이 뒤늦게 확인되어, Signal Converter 모듈에 Analog Buffer를 긴급히 추가하는 사태가 발생하기도 했다. (본 시스템에 CompactRIO를 적용 할 때만 하더라도, 국내에 많은 유저가 존재치 않았던 관계로 충분한 정보를 제공받지 못했다.)

 

3. PC 프로그래밍

PC 프로그램은 크게 Simulator Server용과 엔진 제어 상태 모니터링용으로 구분된다.

■ Simulator Server용 프로그램
먼저 Simulator Server용 프로그램은, 사용자로 하여금 엔진 상태의 임의 변경, 시뮬레이션 세팅(Setting) 변경, 시뮬레이션 시작/일시정지/종료 등의 유저 인터페이스, 엔진의 극한 상태 설정 등을 할 수 있도록 구현되었다.

 


그림 2. Simulator Server 제어용 프로그램

Simulator Server의 기능별 블록다이어그램은 그림 3.에 나타내었고, 기능별 LabVIEW 다이어그램은 그림 4.에 나타나 있다.



그림 3. Simulator Server 제어용 프로그램의 블록다이어그램



그림 4. Simulator Server 제어용 프로그램의 LabVIEW 블록다이어그램

■ 엔진 상태 모니터링 프로그램
엔진 상태 모니터링 프로그램 그림 5.는, 엔진 변화의 디스플레이 및 데이터 저장을 포함하여, 탑재된 어플리케이션 소프트웨어의 완전 무결성을 일목요연하게 사용자에게 전달하게 된다. 그런 의미에서, 전체 시스템 개발 기간 중, 가장 오랜 시간과 많은 디버깅 항목을 필요로 했던 부분이다.
상태 모니터링은 RS422 Port를 장착한 PC라면, 어떤 PC에서든 동작 가능하도록 구현되었으며, Remote Control 기능이 탑재되어, 실제 엔진 시험에서도 100% 활용이 가능하다. 엔진 제어기와의 통신 및 상태 모니터링 프로그램의 코어 블록다이어그램은 그림 6, 그림 7과 같다.



그림 5. 엔진 상태 모니터링 프로그램

 

그림 6. 모니터링 프로그램 블록다이어그램

그림 6.의 각 블록에 해당하는 LabVIEW 다이어그램은 그림 7.에 나타내었다. 향후 유지 보수의 문제점을 고려하여, 해석이 필요한 부분은 쉽게 이해할 수 있도록 Sequence 구문을 활용하였고, 통신 수행 부분은 별도의 Timed Loop를 할애하였다.



그림 7. 모니터링 프로그램 LabVIEW 다이어그램

 

4. 개발 시스템

■ 시스템 구성



그림 8. 제어기 시뮬레이션


그림 9. Virtual Engine Simulator


그림 10. Virtual Engine Simulator Design Layout

① : Virtual Engine Simulator
② + ③ : 실제 Gas Turbine Engine Controller + Control Algorithm
④ : Simulator Server
⑤ : Virtual Engine Simulator Design Concept

 

결론 및 솔루션 개발 후 얻게 된 이점

기존의 PXI 시스템이나 타사 Data Acquisition 시스템들을 사용하는 어플리케이션의 경우, 그 부피와 무게의 제한 때문에 고정된 곳에서 사용하거나 이동에 어려움을 겪었다. 또한, 항상 OS가 Windows 기반이라는 한계 때문에 Deterministic 연산을 요구하는 어플리케이션의 개발이 불가한 경우가 많았다.

 

이런 한계를 극복하고, 완전 새로운 개념의 Control 또는 모니터링 시스템을 구축하고자 했던 개발자들에게, 본 시스템에 채용된 CompactRIO 시스템은 큰 매력이 아닐 수 없다. RT OS를 탑재하고, 사용자 정의의 FPGA 프로그래밍을 지원하기에 Deterministic 연산이 가능해졌고, 연산과 모니터링을 분리할 수 있기에 개발자의 부담을 크게 덜어 주었다. 또한, 크기 면에서 소형 Packaging이 가능하므로, 필드(Field) 작업이 많은 제어 엔지니어들로 하여금, 휴대용 기기의 장점을 극대화 하여 시뮬레이션을 통한 “선(先)검증/후(後)실험”을 가능하게 하였다. 특히, 가스터빈 엔진이라는 일반인들이 접하기 어렵고, 제어 엔지니어들에게 조차도 고도의 완전무결성을 요구하는 항공우주 추진체를 개발함에 있어, 언제 어디서든 손쉽게 “선검증/후실험”의 문화를 정착할 수 있는 발판이 마련되었다고 할 수 있다.

 

필자 정보:

채문석 선임연구원
삼성테크윈 파워시스템연구소