講授嚴格的概念:使用LabVIEW和直流馬達的閉環控制

更新 May 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 Motor plug-in 板以及使用LabVIEW MathScript RT的LabVIEW控制設計和模擬,向學生教導這些概念。傳統上,調整控制器需要多次迭代以及反複試驗才能完美。但是,LabVIEW允許您實時調整控制器,然後通過與硬體的無縫集成直接進入驗證。

在本教程結束時,您將能夠:
  • 建模直流馬達
  • 設計閉環PI控制器
  • 在模擬中調整控制器
  • 用直流馬達實現您的控制器
下載範例程式,並按照下面的指南在LabVIEW中創建一個閉環控製程式。

第1步-建模

設計閉環控制器的第一步是識別工廠的數學表示或創建模型。可以對許多類型的系統進行建模,包括機械系統,電子電路,模擬和數字濾波器以及熱力和流體系統。對於此實驗,我們將為直流馬達創建一個模型。

直流馬達最好用傳遞函數表示。傳遞函數為系統的輸入和輸出如何連接提供了數學描述。在我們的情況下,輸入到該系統是電壓(V M)和來自系統的輸出角速度(ΩM)。我們可以使用以下方程式表示直流馬達的模型,其中:

km =馬達反電動勢常數(V /(rad / s))
Rm =馬達電樞電阻(歐姆)
Jeq =等效轉動慣量(kg * m2)(假設Jeq = Jm(馬達電樞轉動慣量))


圖1.直流馬達的數學模型或傳遞函數

該模型將用於設計閉環控制器,然後可以在實際馬達上對其進行測試。我們可以使用LabVIEW MathScript RT模組中的MathScript節點在LabVIEW中表示該傳遞函數。輸入參數值是從Quanser QNET直流馬達規格表獲得的。

圖2. LabVIEW MathScript節點中表示的直流馬達的模型

MathScript節點可在Programming >> Structures palette下找到。

步驟2-控制設計

下一步是選擇一種控制方法並設計一個控制器。在設計控制器時,最好全面了解工廠(在我們的情況下為直流馬達)。這種理解來自對專業圖的分析,例如Bode,root-locus和Nyquist圖,這些圖建立了植物行為方式的直覺。時域中的圖形(例如階躍響應)可立即提供有關系統理想行為的反饋,例如上升時間,overshoot,建立時間和穩態誤差。


圖3:閉環控制系統原理圖

在本實驗中,我們將使用LabVIEW控制設計和模擬模組為直流馬達設計PI控制器。的模擬迴圈,它包括一個內置的ODE求解用於處理積分和微分項,可以在 Simulation下的Control Design and Simulationpalette中找到。 “求和”,“增益”,“積分器”和“傳遞函數”塊也可以在Simulation >> Signal Arithmetic and Simulation >> Continuous Linear Systems的“ Control Design and Simulation”面板中找到。

圖4:LabVIEW控制設計和模擬中的閉環PI控制器

步驟3-模擬

下一步是在修改設定值或所需速度輸入時模擬直流馬達的響應。這將使我們能夠調整控制器參數或增益,以提高系統的robustness。我們需要將在步驟1中創建的直流馬達的傳遞函數或模型與閉環控制器相結合。


圖5:具有直流馬達傳遞功能的閉環PI控制器

第4步-調整和驗證

現在我們既可以模擬控制器也可以模擬直流馬達的響應,接下來可以按照迭代過程優化控制器。在驗證系統性能的同時,我們將從LabVIEW front panel 調整控制器參數。

圖6:優化控制器的迭代過程

我們可以使用以下步驟來調整控制器參數:

    • 從設置為Kp = 1和Ki = 0的增益開始
    • 增加比例增益(Kp)以獲得所需的上升時間
    • 如有必要,增加積分增益(Ki)以減少穩態誤差

運行程式後,我們可以在波形圖上看到所需的馬達速度和估計的馬達速度。當我們將比例增益kp設置為1時,上升時間看起來不錯,但該圖顯示了少量的穩態誤差,這由所需速度數據和估算速度數據之間的差距表示。我們可以通過增加積分增益ki來減少這種穩態誤差。


圖7:用比例(P)控制器模擬直流馬達的響應

如果將積分增益ki增加到10,則系統響應會更好。


圖8:使用比例積分(PI)控制器模擬直流馬達的響應

第5步-實施

現在,我們已經驗證了PI控制器可以與模擬的直流馬達響應一起工作,我們可以實施最終控制系統並控制NI ELVIS的Quanser直流馬達插件板的速度。 LabVIEW控制設計和模擬模組可用於控制現實生活中的系統以及模擬模型。為了從模擬控製過渡到實際控制,工廠模型可以用硬體輸入和輸出功能代替。在這種情況下,我們將用控制實際馬達的數據採集(DAQ)輸入和輸出VI代替代表直流馬達的傳遞函數。


圖9:通過將傳遞函數替換為硬體輸入/輸出塊,從模擬遷移到實體硬體

將LabVIEWControl Design and Simulation Loop與實體硬體一起使用時,時序是重要的考慮因素。由於“Control Design and Simulation Loop”使用帶有時間步長的內置ODE求解器,因此將迴圈的“Simulation Parameters”和“Timing Parameters”設置為具有相同的時間步長非常重要。數據採集任務通常使用時序參數,因此將模擬迴圈時序與數據採集時序等同起來也很重要。

現在,我們可以運行LabVIEW程式,並從LabVIEW front panel控制Quanser DC Motor的速度。


圖10:使用我們的PI閉環控制器的實際Quanser直流馬達的響應

1.解決方案Block Diagram VI片段

右鍵單擊上述VI片段,然後選擇“將圖像另存為... ”,在硬碟上找到該文件,然後將文件圖標單擊並拖動到LabVIEW Block Diagram上。 LabVIEW將從VI片段自動生成程式碼。 單擊此處以獲取有關VI Snippet的更多訊息。

下一步