









摘" 要:直流電機系統在高速運行下容易對電子傳感器測量產生干擾,導致輸出穩定性不強。文章提出一種基于滑動濾波器算法結合模糊自適應PID控制算法的直流電機調速策略。首先利用模糊PID控制器提升非線性系統的控制精度和魯棒性;其次利用滑動濾波器的濾波功能,實現對測量過程中噪聲干擾進行濾除,從而提高電機輸出平穩度;最后在MATLAB中的Simulink模塊建立整個系統的控制模型,并驗證了這種改進控制策略的可行性以及優越性。
關鍵詞:直流電機;滑動濾波;模糊控制;Simulink
中圖分類號:TM33" " 文獻標識碼:A" 文章編號:2096-4706(2024)21-0025-04
Design of Speed Regulation Algorithm for DC Motor Based on Sliding Fuzzy PID Control
LIU Shuqi, DING Zhipeng, LIU Chenyi
(Jiangsu University of Technology, Changzhou" 213001, China)
Abstract: The DC motor system is easy to interfere with the measurement of electronic sensors under high-speed operation, resulting in poor output stability. This paper presents a speed regulation strategy of DC motor based on the sliding filter algorithm combined with the fuzzy adaptive PID control algorithm. Firstly, it uses the fuzzy PID controller to improve the control accuracy and robustness of the nonlinear system. Secondly, the filtering function of the sliding filter is used to filter noise interference in the measurement process, so as to improve the output stability of the motor. Finally, the control model of the whole system is established by the Simulink module of MATLAB, and the feasibility and superiority of the improved control strategy are verified.
Keywords: DC motor; sliding filter; fuzzy control; Simulink
0" 引" 言
直流電機是自動化系統中重要組成部分,可以在較寬的工作范圍內穩定運行,可提供較大的轉矩和過載能力,在自動化生產線中有廣泛的應用[1]。在實際應用過程中直流電機普遍的控制方法是傳統PID算法,它具有結構簡單、穩定性好、運行可靠、調節方便等優點。但是智能設備在應用過程中負載變化可能是非線性的,使得PID調節參數困難以及輸出響應速度較差的特點,為此許多學者提出模糊PID控制器[2],模糊PID控制器對參量進行自適應選定可以有效控制非線性負載同時提高響應速度,具有良好的魯棒性等優點[3]。但在傳感器測速中測量值帶有干擾,會導致輸出速度不夠穩定,故可以在反饋過程中引入濾波器來降低噪聲對控制器的干擾,滑動濾波器[4]是數字信號處理中常用的一種簡單有效的濾波器。它通過計算數據點的一組連續樣本的平均值來減少隨機噪聲。滑動濾波器廣泛應用于數據處理、控制系統等領域,特別是在需要抑制短期波動的場合。滑動濾波器自適應模糊PID控制系統兼顧響應速度與輸出平穩度的優點。
1" 模糊控制器設計
1.1" "PID控制器的設計
PID控制器框圖如圖1所示,由比例環節、積分環節和微分環節組成。可以通過調整這3個單元的增益系數Kp、Ki和Kd來調定其輸出特性。連續域中偏差計算和輸出特性分別為式(1)和(2):
(1)
(2)
圖1中y(t)為PID的最終輸出,yd(t)為輸入數值,e(t)為誤差值,可調整控制系統中,Kp為比例系數,用于調整輸出與誤差的線性關系;Ki為積分系數,用于解決系統的靜態誤差問題,確保系統最終達到期望值;Kd為微分系數,通過引入誤差變化率,抑制系統響應的振蕩。
對于PID控制器,其實際參數是在特定環境下經過優化后得到的,這些參數在很多線性、時不變系統中表現出色,但當面對非線性或時變系統時候,特別是一些受到不確定干擾的系統,固定參數的PID控制器可能就不再適用,這種情況下可以采取自適應模糊PID控制器,在一定程度上減小干擾對輸出造成的影響。
1.2" "模糊PID控制器的設計
模糊PID控制器利用模糊邏輯進行控制決策,而不是依賴于精確的數學模型,這意味著它能夠處理那些具有非線性、時變或不確定特性的系統[5],同時又能提高響應速度,模糊控制器利用模糊邏輯并根據一定的模糊規則對PID的參數進行實時的優化,以克服傳統PID參數無法實時調整PID參數的缺點這種方法解決了普通PID自適應差的問題[6],其實現框圖如圖2所示。
模糊控制器的實現步驟主要有:誤差量化、誤差模糊化、參數模糊推理、獲取參數值、輸出控制一共5個步驟組成:
1)誤差量化。輸入速度和輸出測量速度相減得到e作為控制器輸入,在模糊化前需要現對e(偏差)以及ec(偏差變化率)進行量化處理。所謂量化就是通過量化函數將輸入量映射到一定的數字級別,小車在運動時,會不斷更新當前車速偏差與偏差變化率,其E和EC分為e、ec映射量化后結果。
2)誤差模糊化。E與EC映射后,確定模糊子集[7]:負大[NB]、負中[NM]、負小[NS]、零[ZO]、正小[PS]、正中[PM]、正大[PB]這7個語言變量就能夠有足夠精度表達其模糊子集。定義E和EC的模糊子集均為{NB,NM,NS,ZO,PS,PM,PB}。
3)參數模糊推理。根據E和EC的隸屬度進行查表得到輸出的大小程度[8],即NB、NS等,模糊推理的核心工作是建立推理表,表格若對應Kp的表格,通過查表格就可以得到Kp的隸屬度,同理得到Ki、Kd的隸屬度。
4)獲取參數值。根據模糊推理得到的各參數輸出的隸屬度然后乘以對應隸屬值算出輸出值,然后根據自己設定每個參量的增益相乘得到KP實際數值,同理得到Ki、Kd的參數值。
5)輸出控制。將得到參量值輸入給PID控制器控制直流電機轉速,模糊PID控制器實現了在線檢測、響應速度快的優點,但是模糊控制器在實際使用過程中因為有其他噪聲干擾影響,使得測量速度值有波動,導致最終輸出速度不夠平滑穩定。
1.3" "滑動濾波模糊PID控制器的設計
直流電機運動速度控制原理如圖3所示,采用閉環的方式控制直流電機轉速,前向控制部分采用模糊PID控制器,在后向反饋過程中對于傳感器測量速度值進行滑動濾波處理。
在直流電機運行中,通過不斷計算E和EC值來查看模糊規則表中的參數,自動選擇最優的Kp、Ki、Kd數值,利用模糊控制器可以使得響應速度結果實現最佳結果,但是直流電機在實際使用過程中帶有噪聲干擾導致輸出速度不夠平滑穩定,因此設計出在反饋過程中引入滑動濾波器來平滑速度輸出結果,這滑動種濾波器特別適用于處理隨機噪聲,因為它能夠減少信號的隨機波動,同時保留信號的基本趨勢,這種改進措施可以提高精度又兼顧響應速度。
2" 系統建模與仿真分析
2.1" 滑動濾波器
滑動濾波器是在一定數量的樣本窗口內計算平均值[9],并將此平均值作為當前點的輸出之后窗口沿著采集數值移動時,重新計算窗口中數據的新平均值,從而得到平滑后的信號。滑動濾波器的計算式為:
其中,x[n]為輸入信號,(N)為滑動窗口的大小,則滑動平均濾波器的輸為y[n]。在Simulink仿真中滑動濾波器模塊實現方法是取7個連續采樣值進行算術平均,每次新數據進入隊列時,舊的數據會被舍棄,之后重新計算隊列中所有數據的平均值[10],具體模型圖如圖4所示。
為了驗證滑動濾波器使用的可行性,Simulink模型中的輸入信號分別對應70ε(t)、80ε(t-140)的階躍信號以及上下幅度在[-6,6]的隨機噪聲,之后把這3個信合疊加合成輸出,用示波器1觀察未加濾波器輸出波形和用示波器2觀察加入濾波器輸出波形,仿真觀察得到結果如圖5所示。由圖5可以明顯看到加入濾波器后的輸出結果更加平滑,噪聲干擾影響明顯減弱。表1為加入濾波器和未加濾波器輸出電機速度對比圖,可以看出未加濾波器時速度波動幅度在設定速度的9%左右,加入濾波器后僅僅3%,計算式為:
y = (max-min)/raw
其中,y為波動幅度,max與min為輸出速度最大與最小值,raw為速度輸入原始值,通過仿真波形圖可以看出滑動濾波器對濾除干擾有很好的效果。
2.2" 滑動濾波模糊控制器
仿真中的模糊控制器是將速度偏差e輸入模糊PID控制器中,對偏差e與偏差變化量ec進行量化處理后得到對應量化區間[-3,3],對每一個端點劃分-3(NB)、-2(NM)、-1(NS)、0(ZO)、1(PS)、2(PM)、3(PB)。之后進行模糊化,通過三角隸屬度公式得到對應當前e與ec的隸屬度,若輸入e經過量化后的值為E = 2.4,那么對應綠線與紅線的值分別為0.4、0.6,這兩個就是隸屬度,隸屬度也為概率,表示該輸入屬于PB 概率為0.6,而屬于PM的概率為0.4,EC隸屬度確定同理。之后進行模糊推理,通過E與EC組合分別查詢Kp、Ki、Kd分別對應的模糊規則表,確定當前Kp的隸屬度,若輸入E為2.4,EC為0.6,則E的隸屬度為0.6(PM)與0.4(PB),EC的隸屬度為0.6(PS)與0.4(ZO)然后對E與EC的隸屬度進行兩兩組合,并進行查表,得到下列結果:
0.24(NM) = 0.4(ZO)·0.6(PM)
0.76(NB) = 0.4(ZO)·0.4(PB)+0.6(PS)·0.6(PM)+0.6(PS)·0.4(PB)
同理得到Ki、Kd的隸屬度,之后進行清晰化,通過Kp、Ki、Kd隸屬度和隸屬值相乘得到量化后分別對應的Kp、Ki、Kd參量。
最后為了驗證滑動濾波模糊PID控制器的可行性,使用Simulink構建滑動濾波模糊PID控制器模型如圖6所示,設定輸入期望速度為100 r/s的階躍信號,系統每一輪控制更新時間為0.1 s,在電機輸出時使用編碼傳感器測量得到輸出速度大小,之后人為的引入10 MHz隨機噪聲來模擬電機運動時帶來干擾,幅度變化范圍為[-6,6],采樣時間為0.1 s。把隨機噪聲與測量速度數值相加輸入滑動濾波器內,得到的速度數值輸出反饋到控制器上,從而進行下一輪控制量的更新,實驗模型仿真中的直流伺候電機通過將基爾霍夫定律以及電流電壓與轉矩關系使用拉普拉斯變換得到仿真模型。將模糊控制器、PID控制器、輸入參量、滑動濾波器、直流電機模型搭建成為一個系統,最終得到模型,圖7所示為三種控制器輸出的相應波形圖,分析得到一個調試結論:在電機控制調節過程中,PID控制法所選用的各個環節的參數比較容易調得,波形相對穩定,超調量較大,調節時間稍長。模糊PID控制法所選用的各個環節的參數比較難以調得,不容易達到預計值。但是模糊控制法易去掉超調,調節時間較短,經過反復調試出現比較穩定、波動比PID控制法要小、無超調、調節時間較為短的輸出波形,存在問題是在引入噪聲干擾后,輸出速度有一定波動。滑動濾波模糊PID控制器輸出速度的穩定性和控制精度方面優于模糊PID控制器和傳統PID控制器,特別是在存在噪聲干擾的情況下,滑動濾波器的平滑作用將幫助模糊PID控制器更好地跟蹤期望速度,減少超調和振蕩,提高系統的整體性能。
3" 結" 論
基于直流電機系統具有時變性和耦合性強的特征,本文提出將模糊PID控制算法與滑動濾波器相融合,基于模糊規則進行PID算法的控制,提高閉環控制的魯棒性,增強電機控制系統的響應速度,降低誤閉環;滑動平均濾波算法對于偶然出現的脈沖性干擾,可消除由于脈沖干擾所引起的采樣值偏差,促使系統穩定度提高,實驗仿真使用MATLAB中的Simulink模塊對三種控制方式進行仿真實驗,驗證了滑動濾波模糊控制器的優點與設計算法的可行性。
參考文獻:
[1] 趙開理.基于單片機設計直流電機控制系統 [D].南京:南京郵電大學,2017.
[2] 趙政宏,喬棟,董志民,等.基于模糊PID的直流電機控制系統設計與仿真 [J].無線互聯科技,2023,20(16):37-42.
[3] 周銳霖,雷成健,劉澤,等.基于模糊自適應PID算法的列車自動駕駛系統研究 [J].控制與信息技術,2023(3):34-38.
[4] 楊璇,李勝,鄧君麗,等.滑動平均濾波器在數字控制中的改進 [J].電力電子技術,2014,48(9):68-70.
[5] 李慶春.新型PID模糊控制器的結構分析及應用研究 [D].長沙:中南大學,2010.
[6] 夏長亮,方紅偉.永磁無刷直流電機及其控制 [J].電工技術學報,2012,27(3):25-34.
[7] 劉曉艷,宋浪,汪恂,等.基于粒子群優化模糊PID控制的水廠加氯系統 [J].市政技術,2024,42(3):198-205.
[8] 李晶.基于模糊PID的變幅液壓缸伺服位置自適應同步控制技術 [J].液壓氣動與密封,2024,44(3):73-78.
[9] 宋佳儒,胡士強,楊永勝.基于滑動窗口濾波器的無誤差累積位姿估計 [J].計算機仿真,2019,36(4):209-213+228.
[10] 潘志鋒,王孝洪,吳春臺,等.基于分數階PID控制器和滑動平均濾波器的三相鎖相環設計 [J].高電壓技術,2022,48(11):4393-4402.
作者簡介:劉舒祺(1979—),女,漢族,河南周口人,副教授,博士,研究方向:信號處理;丁志鵬(2001—),男,漢族,江蘇徐州人:本科在讀,研究方向:嵌入式單片機;劉晨藝(2002—),男,漢族,浙江溫州人,本科在讀,研究方向:嵌入式單片機。
基金項目:大學生創新創業訓練計劃項目(2023114630072)