까다로운 개념 교육: LabVIEW 및 DC 모터를 사용한 폐쇄 루프 제어

업데이트 됨 Apr 30, 2021

환경

하드웨어

  • NI ELVIS
  • Quanser QNET DC Motor Control for NI ELVIS

소프트웨어

  • LabVIEW
  • LabVIEW Control Design and Simulation Module
  • LabVIEW MathScript Module

제어 개념은 자연 및 인공 시스템을 이해하는 데 필수적입니다. 제어는 시스템 분야이기 때문에 제어에 대한 완전한 이해를 얻으려면 이론과 응용을 모두 다룰 필요가 있습니다. 제어에 필요한 기술 기반에는 제어 시스템의 모델링, 제어 설계, 시뮬레이션, 구현, 튜닝 및 운영이 포함됩니다. 이 튜토리얼은 NI ELVIS 용 Quanser DC 모터 플러그인 보드와 LabVIEW MathScript RT를 사용한 LabVIEW Control Design and Simulation을 사용하여 이러한 개념을 학생들에게 가르치는 방법을 보여줍니다. 전통적으로 컨트롤러를 튜닝하려면 여러 번의 반복과 시행 착오가 필요합니다. 그러나 LabVIEW를 사용하면 컨트롤러를 실시간으로 튜닝한 다음 하드웨어와의 완벽한 통합을 통해 직접 검증으로 이동할 수 있습니다.

이 자습서가 끝나면 다음을 수행할 수 있습니다.
  • DC 모터 모델링
  • 폐쇄 루프(Closed-Loop) PI 컨트롤러 설계
  • 시뮬레이션에서 컨트롤러 조정
  • DC 모터로 컨트롤러 구현
예제 프로그램을 다운로드하고 아래 튜토리얼을 따라 LabVIEW에서 폐쇄 루프 제어 프로그램을 생성하십시오.

1 단계-모델링

폐쇄 루프 컨트롤러를 설계하는 첫 번째 단계는 플랜트의 수학적 표현을 식별하거나 모델을 생성하는 것입니다. 기계 시스템, 전자 회로, 아날로그 및 디지털 필터, 열 및 유체 시스템을 포함하여 많은 유형의 시스템을 모델링할 수 있습니다. 이 실험을 위해 DC 모터용 모델을 만들 것입니다.

DC 모터는 전달 함수로 가장 잘 나타낼 수 있습니다. 전달 함수는 시스템의 입력과 출력이 어떻게 관련되는지에 대한 수학적 설명을 제공합니다. 우리의 경우 시스템에 대한 입력은 전압(Vm)이고 시스템의 출력은 각속도(Ωm)입니다. 아래 방정식을 사용하여 DC 모터의 모델을 나타낼 수 있습니다.

km = 모터 역기전력 상수 (V/(rad/s))
Rm = 모터 전기자 저항 (Ohms)
Jeq = 등가 관성 모멘트 (kg*m2)(Jeq=Jm(모터 전기자 관성 모멘트)로 가정)


그림 1. DC 모터의 수학적 모델 또는 전달 함수

이 모델은 폐쇄 루프 컨트롤러를 설계하는 데 사용되며 실제 모터로 테스트할 수 있습니다. LabVIEW MathScript RT Module의 일부인 MathScript 노드를 사용하여 LabVIEW에서 이 전달 함수를 나타낼 수 있습니다. 입력 매개 변수 값은 Quanser QNET DC 모터 사양 시트에서 가져왔습니다.

그림 2. LabVIEW MathScript 노드에 표시된 DC 모터의 모델

MathScript 노드는 Programming>>Structures 팔레트에서 찾을 수 있습니다.

2 단계-제어 설계

다음 단계는 제어 방법을 선택하고 컨트롤러를 설계하는 것입니다. 컨트롤러를 설계할 때 플랜트(이 경우 DC 모터)를 완전히 이해하는 것이 가장 좋습니다. 이러한 이해는 Bode, root-locus 및 Nyquist 플롯과 같은 특수 그래프 분석에서 비롯되며 식물의 작동 방식에 대한 직관을 구축합니다. 단계 응답과 같은 시간 영역의 그래프는 상승 시간, 오버 슈트, 안정화 시간 및 정상 상태 오류와 같은 시스템의 이상적인 동작에 대한 즉각적인 피드백을 제공합니다.


그림 3: 폐쇄 루프 제어 시스템의 개략도

이 실험을 위해 LabVIEW Control Design and Simulation 모듈을 사용하여 DC 모터 용 PI 컨트롤러를 설계합니다. 적분과 미분 조건을 처리하기 위한 ODE 내장된 솔버를 포함한 시뮬레이션 루프는, 시뮬레이션에서 컨트롤 디자인 및 시뮬레이션 팔레트에서 찾을 수 있습니다. Summation, Gain, Integrator 및 Transfer Function 블록은 시뮬레이션>>신호 산술시뮬레이션>>연속 선형 시스템 아래의 제어 설계 및 시뮬레이션 팔레트에서도 찾을 수 있습니다.

그림 4: LabVIEW 컨트롤 디자인 및 시뮬레이션의 폐쇄 루프 PI 컨트롤러

3 단계-시뮬레이션

다음 단계는 설정 값 또는 원하는 속도 입력을 수정할 때 DC 모터의 응답을 시뮬레이션 하는 것입니다. 이를 통해 컨트롤러 매개 변수 또는 이득을 조정하여 시스템의 견고성을 높일 수 있습니다. 1단계에서 생성한 DC 모터의 전달 함수 또는 모델을 폐 루프 컨트롤러와 결합해야 합니다.


그림 5: DC 모터 전달 기능이 있는 폐쇄 루프 PI 컨트롤러

4 단계-조정 및 확인

이제 컨트롤러와 DC 모터의 응답을 모두 시뮬레이션 할 수 있으므로 반복 프로세스를 따라 컨트롤러를 최적화할 수 있습니다. 시스템 성능을 확인하면서 LabVIEW 프런트 패널에서 컨트롤러 매개 변수를 조정합니다.

그림 6: 컨트롤러 최적화를 위한 반복 프로세스

다음 단계를 사용하여 컨트롤러 매개 변수를 조정할 수 있습니다.

  • 다음에서 설정된 이득으로 시작합니다: Kp = 1 및 Ki = 0
  • 원하는 상승 시간을 얻기 위해 비례 이득 (Kp)을 증가시킵니다.
  • 필요한 경우 정상 상태 오류를 줄이기 위해 적분 이득 (Ki)을 증가시킵니다.

프로그램을 실행하면 원하는 모터 속도와 예상 모터 속도를 파형 차트에 표시할 수 있습니다. 비례 게인 kp가 1로 설정된 경우 상승 시간이 좋아 보이지만 플롯은 원하는 속도 데이터와 예상 속도 데이터 사이의 간격으로 표현되는 소량의 정상 상태 오류를 보여줍니다. 적분 게인 ki를 늘림으로써 이 정상 상태 오류를 줄일 수 있습니다.


그림 7: 비례 (P) 컨트롤러로 DC 모터 응답 시뮬레이션

적분 게인 ki를 10으로 늘리면 시스템 응답이 훨씬 더 좋아집니다.


그림 8: PI (Proportional-Integral) 컨트롤러로 DC 모터 응답 시뮬레이션

5 단계-구현

PI 컨트롤러가 시뮬레이션된 DC 모터 응답과 함께 작동하는지 확인했으므로 이제 최종 제어 시스템을 구현하고 NI ELVIS 용 Quanser DC 모터 플러그인 보드의 속도를 제어할 수 있습니다. LabVIEW Control Design and Simulation Module은 시뮬레이션 모델뿐만 아니라 실제 시스템을 제어하는 데 사용할 수 있습니다. 시뮬레이션 된 제어에서 실제 제어로 마이그레이션하기 위해 플랜트 모델을 하드웨어 입력 및 출력 기능으로 대체할 수 있습니다. 이 경우 DC 모터를 나타내는 전달 함수를 실제 모터를 제어하는 데이터 수집 (DAQ) 입력 및 출력 VI로 대체합니다.


그림 9: 전달 함수를 하드웨어 입력/출력 블록으로 대체하여 시뮬레이션에서 실제 하드웨어로 마이그레이션

타이밍은 실제 하드웨어에서 LabVIEW 컨트롤 디자인 및 시뮬레이션 루프를 사용할 때 중요한 고려 사항입니다. 제어 설계 및 시뮬레이션 루프는 시간 단계가 있는 내장된 ODE 솔버를 사용하기 때문에 루프의 시뮬레이션 매개 변수와 타이밍 매개 변수를 동일한 시간 단계를 갖도록 설정하는 것이 중요합니다. 데이터 수집 작업은 일반적으로 타이밍 매개 변수를 사용하므로 시뮬레이션 루프 타이밍을 데이터 수집 타이밍과 동일시하는 것도 중요합니다.

이제 LabVIEW 프로그램을 실행하고 LabVIEW 프런트 패널에서 Quanser DC 모터의 속도를 제어할 수 있습니다.


그림 10. PI 폐쇄 루프 컨트롤러를 사용한 실제 Quanser DC 모터의 응답

1. 솔루션 블록 다이어그램 VI 스니펫

위의 VI 스니펫을 마우스 오른쪽 버튼으로 클릭하고 다른 이름으로 이미지 저장...을 선택합니다. 하드 디스크에서 파일을 찾은 다음 파일 아이콘을 클릭하고 LabVIEW 블록 다이어그램으로 드래그합니다. LabVIEW는 VI 스니펫에서 코드를 자동으로 생성합니다. VI 스니펫에 대한 자세한 정보는 여기를 클릭하십시오.

다음 단계