어플리케이션 노트

Moku:Go의 PID 컨트롤러를 사용한 개방형 루프 튜닝 연구실

실험실 실험, Ziegler-Nichols 방법을 이용한 PID 튜닝

Moku:Go는 14개 이상의 실험실 장비를 하나의 고성능 장치에 결합합니다. 이 애플리케이션 노트는 Moku:Go의 PID 컨트롤러, 오실로스코프 및 프로그래밍 가능 전원 공급 장치를 사용하여 PID 컨트롤러에 대한 다양한 튜닝 방법을 시각적으로 학습하는 방법을 제공합니다.

 


Moku:Go

Moku:Go

Moku:Go는 14개 이상의 실험실 기기를 하나의 고성능 장치에 결합하고 아날로그 입력 2개, 아날로그 출력 2개, 디지털 I/O 핀 16개 및 통합 전원 공급 장치 옵션을 제공합니다.

 

 

PID 컨트롤러

PID(비례-적분-미분) 컨트롤러는 자동차의 크루즈 컨트롤이나 비행 드론의 모터 제어와 같은 다양한 애플리케이션에 사용되는 피드백 제어의 가장 일반적인 형태 중 하나입니다. PID 컨트롤러의 목적은 일반적으로 설정점이라고 하는 지정된 출력에 도달하도록 프로세스를 구동하는 것입니다. 컨트롤러의 피드백은 이 프로세스의 제어를 조절하고 최적화하는 데 사용됩니다.

이 애플리케이션의 목적은 Moku:Go의 PID 컨트롤러를 소개하고 이를 실험실 환경에 쉽게 통합하여 제어 이론을 가르치는 방법을 소개하는 것입니다. 일반적으로 제어 이론은 주로 엄격한 수학적 모델링 및 계산을 통해 가르치며, 소수의 실습실에서는 물체의 온도 또는 DC 모터의 속도 제어를 중심으로 진행됩니다. 이 노트에서는 학생들이 교실에서 배운 이론을 물리적 제어 시스템에 보다 쉽게 ​​연결할 수 있도록 보다 시각적인 구성 요소를 적용하여 제어 이론 교육에 대한 현대적인 접근 방식을 소개합니다. 이는 DC 모터 팬, IR 거리 센서 및 Moku:Go를 사용하여 탁구공의 높이를 제어함으로써 구현됩니다. Moku:Go에는 통합 오실로스코프, PID 컨트롤러, 파형 발생기 및 프로그래밍 가능 전원 공급 장치가 포함되어 있어 모터 제어 회로를 구동하고 센서 데이터를 수신하며 지정된 신호를 출력하여 DC 모터 속도를 제어할 수 있습니다. 이렇게 하면 구현 간 탁구공의 상승 시간, 오버슈트, 정상 상태 높이 등의 특성을 비교하여 PID 컨트롤러를 구현한 경우와 구현하지 않은 경우의 차이점을 쉽게 찾아낼 수 있습니다. 또한 Moku: 앱을 통해 실시간 조정이 가능하므로 학생들은 다양한 PID 게인이 수학적으로나 물리적으로 시스템에 어떻게 영향을 미치는지 확인할 수 있습니다. 이 실습의 전체 구성 요소 목록은 아래 실험 설정 섹션에서 확인할 수 있습니다.

 

실험 설정

구성 요소들

  • 모쿠:고 [x1]
  • 5V 팬 [x1]
  • 폴리카보네이트 튜빙 [~100cm]
  • IC3 GP2Y0A21YK IR 거리 센서 [x1]
  • IC1 NE555(타이머), IC2 LM358(연산 증폭기) [x1]
  • Q1 IRFZ44N(MOSFET), Q2 C1815(트랜지스터) [x1]
  • D1 1N4004(다이오드) [x1]
  • C1 200nF [x1], C2 47nF [x1], C3 330μF [x1]
  • R1 27kΩ [x1], R2 39kΩ [x1], R3 120kΩ [x1], R4 / R5 / R6 10kΩ [x3] 저항기
  • 50kΩ 전위차계
  • 브레드보드 [x1]

그림 1: PWM 기반 DC 모터 속도 제어 회로도

위의 회로는 NE555 타이머(IC1)를 사용하여 비교기(IC2)의 반전 입력에 공급되는 톱니파형을 생성합니다. Moku:Go(출력 1)의 PID 컨트롤러 출력은 비교기의 비반전 입력으로 공급되어 PWM 신호를 생성합니다. 이 신호는 1V 팬이 소비하는 전력을 제어하는 ​​MOSFET(Q5)으로 전송됩니다. 팬이 직접 보는 힘의 양은 탁구공이 공중에 떠오르는 높이로 해석됩니다. 높이를 제어하는 ​​방법은 입력 1을 통해 Moku:Go에 연결된 설정점 전위차계를 사용하는 것입니다. 이 설정점은 PID 컨트롤러가 원하는 높이를 얻기 위해 출력 1의 DC 전압을 결정하는 데 사용하는 것입니다. 탁구공. 공 높이의 폐쇄 루프 제어를 위해 IR 센서(IC3)의 출력을 Moku:Go의 입력 2에 연결하고 PID의 제어 매트릭스를 재구성하면 전위차계의 설정점 변경에 대한 응답 시간이 향상됩니다. Moku:Go의 연결을 보여주는 회로도는 아래 그림 2에서 볼 수 있습니다.

그림 2 : Moku:Go 연결을 사용한 도식

그림 3 : 폴리카보네이트 튜브, IR 센서 및 탁구공이 포함된 팬

이 실험실 설정의 다른 부분은 탁구공을 공중에 띄우는 데 사용되는 기계 시스템입니다. 5V 팬, 폴리카보네이트 튜브, IR 센서, 탁구공으로 구성됩니다. 튜브는 일부 고무 스트립을 사용하여 팬 출력에 장착되며 표시는 쉽게 측정할 수 있도록 5cm마다 배치됩니다. 시스템에 "저항"을 제공하기 위해 튜브에는 각 5cm 높이에 XNUMX개의 ¼인치 구멍이 있다는 점에 유의하는 것이 중요합니다. 이는 설정에 중요합니다. 그렇지 않으면 팬에 전달되는 전력량에 관계없이 팬을 켤 때마다 공이 맨 위로 떠오릅니다. IR 센서는 튜브 상단에 배치되어 볼이 상승하면 센서에서 출력되는 전압도 상승합니다.

PID 컨트롤러 모델

우리는 탁구공의 높이를 제어하고 이를 위해 PID 컨트롤러를 사용하려고 합니다. 즉, 달성하려는 프로세스에 대해 시스템을 최적화하는 P, I 및 D 게인을 찾아야 합니다. . 그러나 PID 게인 값을 연결하기 전에 먼저 시스템을 수학적으로 이해하고 PID 컨트롤러가 시스템에 어떤 영향을 미치는지 확인해야 합니다. 제어 이론을 통해 우리는 PID 컨트롤러가 아래 표시된 전달 함수로 모델링될 수 있다는 것을 알고 있습니다. 여기서 C(s)는 컨트롤러 전달 함수, G(s)는 플랜트 전달 함수, R은 기준, e는 오류( e = R – Y), Y는 시스템의 출력입니다.

그림 4 : PID 컨트롤러가 포함된 블록 다이어그램

제어 이론에 대한 지식을 사용하여 우리는 다음을 알고 있습니다.

… K가 있는 곳P 비례 이득, KI 적분 이득이고 KD 미분 이득이다. 이러한 이득은 시스템의 상승 시간, 정착 시간, 오버슈트 및 정상 상태 오류를 최적화하기 위해 찾아야 하는 것입니다. 아래 표는 각 PID 게인을 늘리면 이러한 각 시스템 특성이 어떻게 변경되는지 보여줍니다. 이득을 줄이면 표에 표시된 것과 반대되는 효과가 나타납니다.

표 1 : PID 조정 매개변수

이 표는 이득을 찾은 후 PID 컨트롤러를 미세 조정할 때 또는 컨트롤러를 설계하기 위해 "시행 착오" 방법을 사용할 때 유용합니다. 그러나 시스템의 개방 루프 계단 응답을 분석함으로써 상당히 좋은 PID 게인 값을 제공하는 또 다른 방법이 있습니다. 이것은 제어 시스템 과정에서 일반적으로 가르치는 Ziegler-Nichols 방법으로 알려져 있으며 시작 PID 게인 값을 빠르게 찾은 다음 나중에 표 1을 사용하여 컨트롤러를 미세 조정하는 데 사용할 수 있습니다. 다음은 Moku를 사용하는 빠르고 원활한 방법을 보여줍니다. :Go의 PID 컨트롤러와 오실로스코프는 Ziegler-Nichols 방법을 구현한 다음 Moku:Go 데스크톱 앱을 사용하여 실시간으로 컨트롤러를 미세 조정합니다.

지글러-니콜스 방법

Ziegler-Nichols 튜닝 방법은 개방형 루프 시스템의 과도 계단 응답을 사용하여 PID 컨트롤러의 초기 PID 매개변수를 결정합니다. 이러한 값은 모든 시스템에 완벽하지는 않으며 이후에도 컨트롤러를 검증하고 조정해야 하지만 이는 대부분의 제어 시스템에 확실한 시작점을 제공합니다. 이 방법은 아래 그림 5에 표시된 것과 같이 개방 루프 계단 응답이 S자형 곡선과 유사한 시스템에서만 작동합니다. 즉, 복소 공액 극이 없음을 의미합니다.

그림 5 : 지글러-니콜스 반응 곡선

탁구공 시스템은 1차 변환 질량 유형 시스템과 유사하며 일반적으로 다음과 같은 전달 함수를 갖습니다.

...어디에 m 는 공의 질량이고 b 는 탁구공을 담는 튜브의 구멍으로 모델링되는 마찰계수입니다. 튜브에 구멍이 없으면 반대되는 힘이 없으며 팬이 회전할 때마다 공이 위쪽으로 똑바로 날아갑니다. 전원이 공급되더라도 켜져 있습니다.

Moku: 앱(Windows/MacOS)에서 오실로스코프 장비를 사용하면 계단 입력으로 인해 탁구공이 올라갈 때 IR 센서의 출력을 캡처할 수 있습니다. 단계 입력은 Moku:Go의 출력 1에 연결된 연산 증폭기의 비반전 입력에 적용됩니다. 이 스텝 입력은 팬 모터를 구동하는 PWM 신호로 변환되므로 볼이 조정될 원하는 높이에 적합한 스텝 입력 전압을 찾아야 합니다. 이 경우 스텝 입력을 1.950V로 설정합니다. 이는 듀티 사이클이 50%이고 볼 높이가 40cm임을 의미합니다. 이는 선택한 구성 요소와 탁구공의 무게 변화에 따라 시스템마다 다를 수 있습니다.

그림 6 : 개방 루프 단계 입력 응답

그림 6에 대해 참고할 몇 가지 사항 – IR 센서에서 960.7mV 오프셋이 예상되며 튜브 길이에 따라 달라집니다. 이 애플리케이션의 경우 튜브 길이는 60cm이므로 오프셋은 물체가 60cm 떨어져 있을 때 출력이 될 것이라고 IR 센서 데이터시트에 명시된 전압이 됩니다(IR 센서가 튜브 상단에 있다고 가정). 화면 하단에 있는 팝업은 오실로스코프에 내장된 파형 발생기이며, 이를 통해 오실로스코프와 파형 발생기 장비를 동시에 사용할 수 있습니다. 이를 통해 단계 입력(1.950V DC 신호)을 빠르게 변경하고 동일한 화면에서 단계 입력을 모두 측정할 수 있으므로 단계 입력 응답을 쉽게 특성화할 수 있습니다. 마지막으로 화면 오른쪽에 있는 팝업에는 상승 시간, 오버슈트, 언더슈트 등을 포함한 24가지 고유한 측정값이 포함된 측정 탭이 있습니다.

내장된 측정 탭을 사용하고 Ziegler-Nichols 튜닝 방법을 적용하여 단계 입력 응답을 신속하게 특성화할 수 있습니다. 앱에 있는 동안 그래프의 변곡점에 접선을 추가할 수 있는 방법은 없습니다. 그러나 몇 가지 전압 및 시간 커서와 함께 높은 수준 및 낮은 수준 측정을 사용하면 시간 지연을 대략적으로 계산할 수 있습니다. L 그리고 시간 상수 T. 시간 지연 L 는 스텝 입력이 적용된 시점부터 시스템이 스텝 입력에 반응하는 시점까지의 시간으로, 이 경우 2.645초입니다. 시간 상수 T 는 응답이 발생하는 데 걸리는 시간이며 이 경우 0.58초입니다. 시간 상수는 오른쪽 측정 탭에 표시된 상승 시간과 매우 유사해야 합니다.

이러한 상수를 찾는 방법은 눈금자와 같은 긴 직선 개체를 사용하여 화면의 변곡점까지 잡고 눈금자가 높은 레벨 및 낮은 레벨 전압 커서와 교차하는 위치로 두 개의 시간 커서를 드래그하는 것입니다. 커서를 적용하는 가장 쉬운 방법은 왼쪽 하단 커서 아이콘에서 커서를 드래그하는 것입니다. 시간 커서의 경우 클릭하여 위로 드래그하고, 전압 커서의 경우 오른쪽으로 드래그합니다. 마지막 단계는 단계 입력이 적용된 시점에 참조 시간 커서를 적용하는 것입니다. 여기서는 -2.831초였습니다. 기준 커서가 음수인 이유는 IR 센서의 출력 전압이 트리거 임계값을 넘을 때 신호가 오실로스코프 화면의 중심에 0이 되도록 트리거가 단일 획득 모드로 설정되어 있기 때문입니다.

커서를 사용하여 시간 지연을 계산한 후 L 그리고 시간 상수 T, 이제 아래 표 2를 사용하여 PID 컨트롤러 이득을 계산할 수 있습니다.

표 2 : Ziegler-Nichols 튜닝 매개변수

이러한 값을 PID 컨트롤러에 입력하기 전 마지막 단계는 이를 데시벨로 변환하는 것입니다. 이는 다음 방정식을 사용하여 수행할 수 있습니다.

... K가 있는 곳db 데시벨과 K 단위의 이득입니다.n 는 위의 표 2에서 계산된 이득입니다.

이 시점에서 아래 그림 7에 표시된 두 개의 신호 체인 중 하나에 있는 컨트롤러 상자를 클릭하여 Moku:Go의 PID 컨트롤러 장비에 PID 게인을 입력할 수 있습니다.

그림 7 : Moku:Go PID 컨트롤러

그러면 방금 계산된 게인을 입력할 수 있는 컨트롤러의 매개변수 설정이 열립니다. 주파수 영역 또는 시간 영역에 게인을 입력하는 옵션이 있습니다. 기본값은 주파수 영역이지만 컨트롤러 팝업 창 오른쪽 하단에 있는 "고급 모드" 상자를 선택하여 시간 영역 구현으로 쉽게 전환할 수 있습니다. 이 모드에서는 섹션 A와 섹션 B로 표시된 컨트롤러를 부분적으로 구현할 수도 있습니다. 섹션 A만 사용하지만 여전히 섹션 B를 활성화하고 G(전체 게인)를 제외한 모든 매개변수를 비활성화해야 합니다. 0dB로 설정할 수 있습니다. 오른쪽의 P, I, D 기호를 클릭하여 섹션 A에서 올바른 매개변수를 활성화해야 합니다.

그림 8 : PID 제어기 매개변수 설정

Moku:Go의 PID 컨트롤러는 실시간으로 사용되어 컨트롤러 이득을 추가로 조정하고 시스템 응답을 최적화할 수도 있습니다. PID 컨트롤러에는 컨트롤러의 보드 플롯과 함께 신호를 볼 수 있는 오실로스코프가 내장되어 있습니다. 보드 플롯에서 끌어서 놓기 방법을 사용하여 이득을 수동으로 변경함으로써 학생들은 특정 이득 매개변수 변경이 시스템에 물리적으로 어떤 영향을 미치는지 더 쉽게 연결할 수 있습니다. 드래그 앤 드롭 방식은 주파수 영역 구현에서만 사용할 수 있으므로 시간 영역과 주파수 영역 간에 PID 게인을 변환할 수 있는 기능이 필요합니다.

내장된 오실로스코프에서 이러한 신호를 보는 쉬운 방법은 더 큰 검은색 원 안에 작은 파란색 원으로 표시된 "프로브 포인트" 중 하나를 클릭하는 것입니다. 입력 1 바로 뒤, PID 컨트롤러 출력 바로 앞 및 기타 몇 가지 유용한 장소와 같은 관심 지점에 편리하게 배치됩니다. IR 센서의 출력을 보려면 그림 2와 같이 굵은 A와 빨간색으로 표시된 입력 9 뒤에 프로브 지점을 배치합니다.

그림 9 : PID 컨트롤러 프로브 포인트

PID 컨트롤러가 실제로 시스템 응답을 향상시키는지 확인하기 위해 이제 시스템의 루프를 닫고 먼저 입력 1을 설정점 전위차계의 출력 노드에 연결한 다음 IR 센서의 출력을 입력 2에 공급하고 이를 입력에서 뺍니다. 제어 매트릭스에서 1입니다. 이는 그림 4의 블록 다이어그램에 표시된 합산 블록을 시뮬레이션합니다. 이 실습에서 폐쇄 루프 피드백을 설정하는 중요한 단계는 볼 거리로 인한 IR 센서의 출력 오프셋을 제거하는 것입니다. 이는 PID 컨트롤러 응답을 향상시키며 공이 정지해 있을 때 IR 센서의 오프셋을 PID 신호 경로의 입력 오프셋(이 경우 961.4mV)에 추가하여 수행할 수 있습니다. 그런 다음 설정점 전위차계를 사용하여 이 실험의 개방 루프 부분에 사용된 동일한 단계 입력을 적용함으로써 내장 오실로스코프에서 시스템의 폐쇄 루프 단계 입력 응답을 캡처하고 자동 측정을 사용하여 응답을 특성화할 수 있습니다. 이 시스템의 폐쇄 루프 단계 응답은 PID 컨트롤러 장비의 내장 오실로스코프에서 캡처한 아래 그림 10에서 볼 수 있습니다. 이를 통해 PID 컨트롤러를 계속 실행하고 단계 응답이 표시되는 프레임을 캡처할 수 있습니다. 쉬운 측정을 위해 신호가 올바르게 캡처되고 표시되도록 "일반" 트리거 모드를 사용하는 것이 중요합니다.

그림 10 : 폐쇄 루프 단계 응답

이러한 매개변수를 원래의 개방 루프 단계 입력 응답과 비교하면 PID 컨트롤러가 시스템 성능을 향상시켰는지 확인할 수 있습니다. 내장된 오실로스코프의 자동 측정을 살펴보면 PID 컨트롤러를 구현하여 시간 지연, 상승 시간 및 언더슈트가 개선되었음을 확인할 수 있습니다. 그러나 이러한 초기 이득으로 인해 오버슈트 오류도 크게 증가했습니다. 이는 우리가 사용하는 Ziegler-Nichols 방법에서 예상되며 표 1의 휴리스틱을 사용하여 단계 응답을 미세 조정하면 쉽게 제거할 수 있습니다.

표 1을 사용하여 튜닝된 시스템의 폐루프 단계 응답은 아래 그림 11에 나와 있습니다.

그림 11 : 조정된 폐쇄 루프 단계 응답

상승 시간, 정착 시간, 오버슈트, 언더슈트가 모두 개방 루프 응답(그림 6)에서 폐쇄 루프 응답(그림 10)으로 대폭 향상되는 것을 확인할 수 있습니다. 따라서 PID 컨트롤러 랩을 시각적으로 구현하는 방법을 보여주었습니다. 공통 구성 요소와 Moku:Go를 사용합니다. 이 실습을 위해 Moku:Go에는 오실로스코프, 파형 발생기, PID 컨트롤러, 프로그래밍 가능 전원 공급 장치 4개(16V 및 5V XNUMX개)를 포함하여 XNUMX가지 계측기가 사용되었습니다.

그림 12 : PID 컨트롤러 실험실 설정


Moku:Go의 장점

교육자 및 실험실 조교용

  • 연구실 공간과 시간의 효율적인 활용
  • 일관된 장비 구성의 용이성
  • 기기 설정이 아닌 전자 장치에 중점을 둡니다.
  • 연구실 조교 시간 극대화
  • 개별 연구실, 개별 학습
  • 스크린샷을 통한 단순화된 평가 및 등급 지정

학생을 위한

  • 각자의 속도에 맞춰 진행되는 개별 실험실을 통해 이해도와 기억력이 향상됩니다.
  • 휴대 가능하며 집, 캠퍼스 연구실 또는 원격 공동 작업 등 연구실 작업을 위한 속도, 장소 및 시간 선택 가능
  • 친숙한 Windows 또는 macOS 노트북 환경이면서도 전문가급 장비를 갖추고 있습니다.

Moku:Go 데모 모드

Liquid Instruments 웹사이트에서 macOS 및 Windows용 Moku:go 앱을 다운로드할 수 있습니다. 데모 모드는 하드웨어 없이도 작동하며 Moku:Go 사용에 대한 훌륭한 개요를 제공합니다.


질문이 있으시거나 인쇄가능 버전을 필요로 하십니까?

support@liquidinstruments.com로 문의 부탁드립니다.