易 磊,張 蓉,鄧春花,尹 仕
(華中科技大學 電氣與電子工程學院,湖北 武漢 430074)
傳統自動控制原理實驗多采用實驗箱作為研究對象,系統相對封閉,缺少工程背景,開設的多是驗證性實驗,無法提高學生的設計和創新能力。針對以上問題,部分高校選用產品級的運動控制對象,如倒立擺、平衡車等進行實驗教學。倒立擺作為一個復雜、非線性、多變量、強耦合的系統,能有效反映自動控制系統中穩定性、快速性等指標,是開設綜合性試驗的良好實驗平臺[1-2]。
然而現有的倒立擺實驗平臺占地空間大、價格貴,控制器接口封閉[3]。為此本文設計出結構緊湊,硬件可視化、接口開放化、模塊化的倒立擺實驗平臺。通過開放接口可兼容不同微處理器,在實現層次性學習的同時,營造開放、多元的實驗環境,模塊化結構有利于提高學生設計、應用及創新的能力,培養學生解決實際工程問題的能力。
本文首先構建基于微處理器的直線倒立擺實驗平臺,建立了直線倒立擺數學模型,搭建了倒立擺控制系統,利用根軌跡法和 SISO工具相結合的方法完成位置環和角度環控制器設計與仿真,然后對控制系統進行仿真與波形分析,最后完成軟硬件實驗平臺測試與分析。
直線倒立擺實驗平臺如圖1所示,包括控制器和倒立擺。其中倒立擺由直流電機、編碼器、帶輪、同步帶、滑塊、角位移傳感器、勻質擺桿、限位開關及導軌等部件組成。控制器由微處理器 MCU核心板、采樣調理板、電機驅動板和OLED顯示屏等構成。

圖1 直線倒立擺實驗平臺實物圖
直線倒立擺控制系統由減速直流電機驅動帶輪旋轉,帶輪連接同步帶后帶動滑塊水平運動,通過控制滑塊的運動位置實現對擺桿的角度控制。控制器通過編碼器和角位移傳感器采集滑塊位置x和擺桿角度φ反饋信息,采用位置和角度閉環控制算法輸出控制信號,經驅動電路放大后驅動直流電機運動。控制系統結構如圖2所示。

圖2 直線倒立擺控制系統結構圖
圖2中,采用微處理器實現系統數字閉環控制,位置信號通過正交編碼器(QEP)計算得到,角度通過模擬數字轉換器(ADC)采樣,經過數字調節器閉環控制后由定時器發出脈寬調制(PWM)信號控制直流電機運動,輔助電源提供3.3、5、15 V電壓給相應芯片。
在分析和設計控制器時,首先要建立被控對象的數學模型。本文采用牛頓第二定律和剛體轉動定律進行直線倒立擺建模,在實際建模過程中進行如下假設:
(1)將系統抽象成滑塊和勻質擺桿組成,無形變;
(2)帶輪與同步帶無滑動摩檫,且同步帶無伸長;
(3)忽略擺桿和支點及各接觸環節的摩擦力。
簡化后的直線倒立擺物理模型如圖3所示[4-6]。

圖3 直線倒立擺物理模型
圖3中,F為滑塊受直流電機驅動力,x為位移,l為勻質擺桿質心與支點距離,φ為擺桿與垂直方向的夾角,m和M分別為勻質擺桿和滑塊的質量,N和P分別為滑塊與擺桿之間水平和垂直方向作用力大小。
現對滑塊進行水平受力分析:

擺桿水平受力分析:

擺桿垂直受力分析:

擺桿繞重心轉動方程:

式中J為擺桿轉動慣量。
考慮φ在(-10°, 10°)調節,近似有:

式(2)―(4)可簡化為:

將式(6)、(7)代入式(1)、(8)可得:

對式(9)經拉氏變換后整理得倒立擺傳遞函數:

從式(10)可知,F和x決定了φ,通過控制F和x可實現倒立擺直立控制。本直線倒立擺物理參數為M= 0.227 5 kg;m=0.092 3 kg;l=0.185 m;J=0.004 2 kg·m2;g=9.8 m/s2。將這些參數代入式(10)后得φ和F之間的傳遞函數為:

x和φ之間的傳遞函數為:

從式(11)可知,直線倒立擺是一個二階的系統,系統存在2個極點,分別位于原點兩側,因此系統是不穩定的。當系統受到外界干擾時將無法維持原有平衡狀態,因此為實現倒立擺直立控制,必須引入反饋以形成閉環控制,同時為改善系統性能指標,需要加入校正控制器。
根據控制對象和性能指標要求,控制器選用串聯校正的方式以改善系統性能,構建的直線倒立擺位置角度控制系統框圖如圖 4所示。控制器為Gc1(s)、Gc2(s)。

圖4 直線倒立擺位置角度控制系統框圖
位置給定信號xref與位置反饋信號x計算誤差運算,經控制器Gc2(s)輸出,角度給定信號φref與角度反饋信號φ作差后經控制器Gc1(s)輸出擾動量Δ,位置環輸出與擾動量Δ相減后作用到被控對象倒立擺,由此實現滑塊位置控制和擺桿的直立控制。
當φref=0時,圖4可簡化為圖5所示位置和角度雙閉環結構。
圖5中,控制器設計的好壞直接影響校正后倒立擺系統的性能指標,其中串聯校正控制器多采用PI、PD和 PID等控制方式,而控制參數的設計方法有解析法、根軌跡法、頻域分析法及狀態空間法等。本文根據被控對象和控制系統結構,決定采用 PD控制算法,利用根軌跡法設計比例和微分參數[7]。

圖5 直線倒立擺位置角度雙閉環控制系統
對于圖5中雙環控制系統,首先利用根軌跡法對角度環控制器Gc1(s)進行 PD參數設計。角度環被控對象傳遞函數G1(s)為:

對應雙實數極點+5.1、-5.1。
現對式(13)進行校正,角度環控制器Gc1(s)為:

其中,Kp1為角度環控制器比例參數,Kd1為角度環控制器微分參數。
為達到系統穩定性,即系統閉環極點位于S坐標系左半平面,在設計 PD控制器時,將控制器零點設計在左實數極點-5.1位置處,即
將式(15)代入式(14)得到校正后角度開環傳遞函數:

校正后系統閉環特征方程為:

系統閉環極點為-5.1和5.1-1.626 8Kp1,為滿足極點位于左半平面,要求:

對于 0型系統,單位階躍輸入下穩態輸出c(t),由式(15)可得:

按照校正后系統穩態誤差<5%的要求,計算得到Kp1< 4 .18。
選取Kp1=4.15
最終得到角度環控制器Gc1(s)為:

校正后角度環閉環傳遞函數Gb1(s)為:

在MATLAB命令窗口調用相應的指令函數[8],得到對應校正后角度環閉環極點根軌跡如圖6所示。

圖6 校正后角度環根軌跡
校正后角度的單位階躍響應曲線如圖7所示。

圖7 校正后角度環階躍響應曲線
從圖6、7可知,校正后角度環閉環極點滿足穩定性條件且階躍響應穩態誤差很小,說明角度環 PD控制器設計具有可行性,可以實現直立控制。
將角度環Gb1(s)等效為二階慣性環節,可以將圖5簡化為圖8。

圖8 簡化后直線倒立擺控制系統
圖8中校正前開環傳遞函數為:

從式(21)可知,位置環校正前存在4個開環極點和2個開環零點,極點為2個原點、-5.1和-1.626 5,零點為+4.77和-4.77。其中一條根軌跡起于原點,終于零點+4.77,可知在這條根軌跡上的閉環極點位于坐標系右半平面,因此系統是不穩定的。
現對式(21)進行校正,位置環控制器Gc2(s)為:

式中Kp2為位置環控制器比例參數,Kd2為位置環控制器微分參數。
考慮到控制對象的復雜性,引入 MATLAB圖形化單輸入單輸出設計工具 SISO進行控制器波特圖和根軌跡設計,SISO可手動設置控制器零點和極點位置,并實時顯示單位階躍響應曲線和根軌跡等。
在 MATLAB命令窗口輸入式(21)被控對象傳遞函數,然后啟動 SISO圖形化設計窗口,設置上升時間為2 s,調節時間為5 s,超調量為10%,在根軌跡圖形中選擇加入零點,并將零點位置放置在-0.05處,保證閉環極點處于左半平面。最后拖動波特圖中波形上下移動,調整增益以滿足參數要求。
設計完成后,位置環控制器Gc2(s)為:

位置環控制器設計完成后,對應校正后位置環閉環極點如圖9所示。

圖9 校正后位置環根軌跡
校正后位置階躍響應曲線如圖10所示。

圖10 校正后位置環階躍響應曲線
從圖9、10可知,校正后位置環閉環極點滿足穩定性條件且能快速穩定,說明位置環PD控制器設計具有可行性,可以實現位置控制。
基于以上根軌跡法和 SISO工具設計完成位置環和角度環PD控制器,在Simulink搭建系統閉環控制仿真模型如圖 11所示。圖 11中角度環 PD控制器Gc1(s)和位置環PD控制器Gc2(s)參數如前所述,控制對象傳遞函數如式(11)、(12)所示,位置給定為單位階躍信號,角度給定為0。

圖11 校正后系統閉環控制仿真模型
對圖11閉環控制系統進行仿真,得到對應角度和位置仿真結果如圖12所示。可以看到,位置和角度均能快速穩定,并且位置穩態誤差滿足指標要求,角度跟蹤效果較好。說明位置環和角度環控制器設計具有可行性,控制系統能實現位置和角度控制。

圖12 校正后位置和角度仿真波形
主控芯片采用意法半導體公司生產的 32位微處理器STM32F103,工作頻率為72 MHz,工作電壓為3.3 V,自帶兩路12位的ADC轉換器,支持SPI、I2C、CAN,具有多達7個定時器模塊,每個定時器模塊都可產生PWM控制信號。
擺桿位置通過阻值為5 kΩ(誤差±15%)、獨立線性度為0.1%的可調電位器檢測,由主控板ADC接口采樣分壓電阻電壓,從而獲得擺桿位置。
電機位置由帶A、B相的光電編碼器檢測,線數為 500。主控板正交編碼器接口通過邊沿計數的方式對A、B兩路脈沖進行計數,通過程序讀取計數器的數值獲得電機位置[9-10]。
電機驅動電路采用英飛凌生產的BTN7960芯片,單個芯片內部包含一個P溝道高端MOS管和一個N溝道低端 MOS管組成的半橋結構,此外還集成有驅動電路,可直接通過主控板輸出PWM信號控制開關管的通斷。采用兩片BTN7960組成一個全橋結構,外接負載為直流電機,通過控制PWM占空比和電平實現電機正反轉運行,進而控制滑塊位置。
采用keil5進行STM32程序開發,主要使用的外設包括:ADC、高級定時器TIM1、通用定時器TIM2正交編碼器接口、TIM3定時中斷、SPI、USART等。主程序主要完成外設初始化和工作模式設定,之后進入死循環,其中TIM3設定為每5 ms產生一次中斷并執行中斷服務程序,TIM2設置為邊沿計數讀取編碼器信號,TIM1計數器設置為增計數,PWM開關頻率為 10 kHz。
TIM3中斷服務程序如圖13所示。

圖13 倒立擺中斷服務程序
中斷服務程序每5 ms執行一次,角度環執行周期為5 ms,位置環執行周期為25 ms,角度和位置環輸出相減后賦值給定時器的比較器,從而控制PWM占空比輸出。
在倒立擺實驗平臺上,對擺桿進行直立控制實驗,先保持擺桿處于垂直向下的狀態,開機后通過手動起擺的方式將擺桿拉至向上直立的狀態,松開手后控制器通過位置環和角度環控制電機旋轉,進而控制擺桿處于直立狀態。
實驗過程中通過上位機每50 ms采集一次擺桿角度和滑塊的位置信號,并對數據處理后繪制成相應波形,最終得到滑塊位置和擺桿角度波形分別如圖 14和15所示。

圖14 穩態時滑塊位置波形

圖15 穩態時擺桿角度波形
當滑塊處于中心位置,脈沖為 0。滑塊其他位置的脈沖數通過編碼器獲取,然后拖動系統進行確定。可以看到,系統能快速到達給定位置和角度,并且滑塊和擺桿均能穩定在系統期望值附近,且穩態誤差較小。以上實驗說明所采用的控制系統能保證控制對象穩定運行,且滿足設計要求。
在實驗平臺上進行抗擾動實驗,在系統處于穩定狀態后,通過手動撥動擺桿的方式加入2次較小的擾動,上位機每50 ms采集一次信號并對數據處理后繪制成相應波形,最終得到擾動過程下的滑塊位置和擺桿角度波形分別如圖16和17所示。

圖16 擾動過程下滑塊位置波形
通過圖16和17可知,擺桿和滑塊初始處于穩定狀態,在1.5和7.5 s突加擾動后擺桿和滑塊在控制器作用下進行調整,經過2 s后又能恢復到初始狀態,并最終穩定在期望值。說明控制系統具有一定的抗干擾能力,所設計的控制器滿足實驗要求。

圖17 擾動過程下擺桿角度波形
本文設計了一種基于微處理器的直線倒立擺控制系統,可實現擺桿直立控制和滑塊的位置控制,能滿足綜合性實驗教學要求,有助于提高學生設計與工程應用能力。