余云飛,李中望,鄧旭輝,段爭(zhēng)光,沈 璐
(蕪湖職業(yè)技術(shù)學(xué)院 電氣與自動(dòng)化學(xué)院,安徽 蕪湖 241006)
風(fēng)洞是通過(guò)人工產(chǎn)生氣流的方法,觀測(cè)氣流或氣流與物體之間相互作用的管道形實(shí)驗(yàn)裝置,常用在交通運(yùn)輸、航天工程、船舶技術(shù)等各個(gè)領(lǐng)域。文獻(xiàn)[1]中所用的風(fēng)洞主要用于模擬高超聲速下飛行器的來(lái)流狀況。由于進(jìn)行實(shí)際的吹風(fēng)實(shí)驗(yàn)比較困難,加熱系統(tǒng)中的電磁閥控制難以實(shí)現(xiàn)精準(zhǔn)的閉環(huán)控制。文獻(xiàn)[2]采用基于現(xiàn)場(chǎng)總線的控制系統(tǒng)來(lái)開(kāi)展CTS實(shí)驗(yàn),當(dāng)加載較大轉(zhuǎn)矩時(shí),受傳動(dòng)部件精度等因素制約,前饋控制算法不能完全滿足機(jī)構(gòu)精度及系統(tǒng)響應(yīng)速度要求。文獻(xiàn)[3]中的風(fēng)洞采用落差法測(cè)量風(fēng)速,通過(guò)PSD神經(jīng)網(wǎng)絡(luò)算法來(lái)提高風(fēng)速控制的精度。這些風(fēng)洞設(shè)備成本高,尺寸龐大,操控復(fù)雜。為此,設(shè)計(jì)了常規(guī)風(fēng)洞的簡(jiǎn)化模型,主體系統(tǒng)能用于模擬真實(shí)的氣流環(huán)境。
從如何精確控制小球在風(fēng)洞中所處的位置關(guān)鍵點(diǎn)著手,先用SolidWorks仿真進(jìn)行風(fēng)罩的選型,搭建風(fēng)洞控制模型。提出基于STM32單片機(jī)和模糊PID控制方案,進(jìn)行測(cè)試,同時(shí)在Simulink中建立模糊控制系統(tǒng)模型,并進(jìn)行仿真。
本設(shè)計(jì)中的風(fēng)洞控制系統(tǒng)主要由豎直有機(jī)玻璃圓管、風(fēng)罩連接部、系統(tǒng)電路等構(gòu)成,風(fēng)洞示意圖如圖1所示。系統(tǒng)電路主要由STM32開(kāi)發(fā)板、紅外測(cè)距模塊、TFT-LCD顯示模塊、BTN7971電機(jī)驅(qū)動(dòng)模塊、雙路直流穩(wěn)壓電源組成,如圖2所示。單片機(jī)產(chǎn)生PWM信號(hào)控制直流風(fēng)機(jī)的轉(zhuǎn)速,紅外測(cè)距傳感器實(shí)時(shí)檢測(cè)小球在豎直圓管中所處的位置,通過(guò)模糊PID來(lái)實(shí)現(xiàn)小球在簡(jiǎn)易風(fēng)洞中的精確位置控制,由TFT液晶屏顯示相應(yīng)的參數(shù)。
圖1 風(fēng)洞示意圖
圖2系統(tǒng)電路結(jié)構(gòu)
文獻(xiàn)[4]采用超聲波進(jìn)行測(cè)距,由于被測(cè)物小球表面是球面,測(cè)量時(shí)小球在圓管內(nèi)上下翻滾,測(cè)量數(shù)據(jù)易產(chǎn)生錯(cuò)誤。文獻(xiàn)[5]采用在風(fēng)洞管壁上安裝多個(gè)紅外對(duì)管的方法,對(duì)紅外對(duì)管陣列的輸出電平值進(jìn)行編碼,測(cè)試出小球停留的位置。這種方式測(cè)距范圍受限,而且占用單片機(jī)多個(gè)I/O口。本系統(tǒng)設(shè)計(jì)采用夏普紅外測(cè)距傳感器GP2Y0A02YK0F[6]來(lái)檢測(cè)小球在圓管中所處的位置。紅外測(cè)距傳感器根據(jù)光學(xué)三角法測(cè)距的原理來(lái)確定被測(cè)物體的位移大小,具有較高分辨率。
紅外測(cè)距傳感器的工作電壓為5V,其數(shù)據(jù)線V0接STM32開(kāi)發(fā)板的PA1口。測(cè)量中以紅外傳感器離工作臺(tái)面的距離減去紅外傳感器與圓管中小球的距離為運(yùn)動(dòng)過(guò)程中小球的實(shí)時(shí)高度。
采用L298N模塊作為電機(jī)驅(qū)動(dòng)模塊,能有效預(yù)防電機(jī)運(yùn)行時(shí)產(chǎn)生的大電流波動(dòng)造成燒毀電路主板的情況[7-8]。
電機(jī)驅(qū)動(dòng)模塊采用兩片半橋驅(qū)動(dòng)芯片BTN7971B組成H橋驅(qū)動(dòng)電路,電路圖如圖3所示。引腳2(IN1)接STM32開(kāi)發(fā)板的PB5引腳,接線端子P2與直流電機(jī)的兩端相連。BTN7971B采用封裝為T0-263,輸出端的大面積表面貼裝可減輕芯片的散熱壓力;BTN7971B具有較高的開(kāi)關(guān)頻率,調(diào)速范圍寬,可以滿足本系統(tǒng)的電機(jī)快速響應(yīng)。模塊中還采用HCPL-263型高速光耦,對(duì)輸入輸出的電信號(hào)起到與開(kāi)發(fā)板相隔離的作用。
系統(tǒng)中電機(jī)的轉(zhuǎn)速由PWM控制,通過(guò)調(diào)節(jié)STM32芯片輸出到IN1的PWM的占空比,來(lái)實(shí)現(xiàn)直流電機(jī)的轉(zhuǎn)速控制。
圖3BTN7971B的H橋直流電機(jī)驅(qū)動(dòng)電路圖
系統(tǒng)設(shè)計(jì)采用2.8寸34引腳的TFT液晶屏作為顯示模塊。液晶屏采用自帶圖像寄存器的NT35510作為L(zhǎng)CD驅(qū)動(dòng)器,它以16位8080并口與STM32F的FSMC總線連接。16位數(shù)據(jù)中,數(shù)據(jù)線高5位負(fù)責(zé)驅(qū)動(dòng)紅色像素,數(shù)據(jù)線低5位負(fù)責(zé)驅(qū)動(dòng)藍(lán)色像素,中間的6位數(shù)據(jù)線負(fù)責(zé)驅(qū)動(dòng)綠色像素[9]。23引腳的BL_CTR與STM32F的PB0連接,用于控制液晶屏的背光的亮度。
經(jīng)過(guò)多次反復(fù)實(shí)驗(yàn),最終以兩個(gè)直流電機(jī)相互作用來(lái)產(chǎn)生風(fēng)洞所需的氣流。直徑12cm的臺(tái)達(dá)FFC1212DE風(fēng)扇水平置于風(fēng)罩的正下方,設(shè)定風(fēng)扇兩端的電壓,它所產(chǎn)生的氣流剛好能使小球穩(wěn)定懸浮于圓管最底部。風(fēng)罩下方的系統(tǒng)底座上固定有線性度較好的N60微型直流電機(jī),通過(guò)PID算法綜合控制扇葉產(chǎn)生的氣流,以實(shí)現(xiàn)小球在圓管中精確位置的變動(dòng)。
實(shí)驗(yàn)初始階段風(fēng)罩采用圓錐臺(tái)連接細(xì)軟管設(shè)計(jì)方案。在電機(jī)額定功率下,電機(jī)產(chǎn)生的風(fēng)力衰減嚴(yán)重,遠(yuǎn)遠(yuǎn)達(dá)不到設(shè)計(jì)要求。經(jīng)多次實(shí)驗(yàn)結(jié)果比較,先用SolidWorks繪圖軟件仿真出風(fēng)罩的3D模型,再用3D打印機(jī)做出風(fēng)罩實(shí)物,如圖4所示。風(fēng)罩前端的出風(fēng)口與圓管底部旋緊接上,風(fēng)罩的底座與臺(tái)達(dá)FFC1212DE風(fēng)扇的固定框相連接。風(fēng)罩中圓柱高度為8cm,圓柱上部特地添加了圓臺(tái)部分,這樣設(shè)計(jì)的組合體結(jié)構(gòu)可大大延緩風(fēng)力的衰減。兩個(gè)電機(jī)共同產(chǎn)生的風(fēng)力能最大限度的送達(dá)上部的豎直圓管中。
圖4風(fēng)罩3D模型
風(fēng)洞及控制系統(tǒng)具有非線性、時(shí)變性、耦合性等特點(diǎn),用傳統(tǒng)的基于對(duì)象模型的控制方法難以進(jìn)行有效的控制[10]。故采用模糊PID控制方式實(shí)現(xiàn)小球在風(fēng)洞中的位置控制。
直流電機(jī)的速率公式為:n=(U-IaRa)/CEФ。因此通過(guò)改變電機(jī)端電壓可以改變電機(jī)的速率[11]。在線性端區(qū)域,電機(jī)端電壓增高,風(fēng)扇的轉(zhuǎn)速越快,風(fēng)力越大。
本系統(tǒng)通過(guò)設(shè)置STM32定時(shí)器3的通道2來(lái)輸出PWM。為防止調(diào)速過(guò)程中產(chǎn)生振蕩,采用PWM技術(shù)中的定頻調(diào)寬法來(lái)調(diào)節(jié)直流風(fēng)機(jī)的速度[12]。當(dāng)直流電機(jī)兩端的電樞電壓受“占空比”的變化而導(dǎo)致平均電壓的均值發(fā)生變化時(shí),就實(shí)現(xiàn)了控制電機(jī)轉(zhuǎn)速的目的。
3.2.1 模糊PID控制的結(jié)構(gòu)
PID中要調(diào)整的參數(shù)量很少,PID控制器設(shè)計(jì)的關(guān)鍵在于Kp、Ki、Kd三個(gè)參數(shù)的調(diào)試。
與常規(guī)PID控制器相比,模糊PID控制器,具有良好的性能。模糊PID控制原理如圖5所示。
圖5 模糊PID控制器結(jié)構(gòu)圖
PID控制的過(guò)程參數(shù)整定表達(dá)式如下:
式中,Kp、Ki、Kd為PID控制的過(guò)程參數(shù);Kp1、Ki1、Kd1為PID控制的初始整定值[13]。
本文將誤差e和誤差變化率ec輸入到模糊控制器中,對(duì)其模糊化、推理、清晰化處理后,以PID的三個(gè)參數(shù)增量ΔKp、ΔKi、ΔKd為模糊控制輸出量[14]。最后,將常規(guī)PID調(diào)節(jié)器與模糊控制相結(jié)合作用于被控對(duì)象以提高系統(tǒng)性能。
3.2.2 輸入輸出語(yǔ)言變量的確定
模糊控制器作為整個(gè)系統(tǒng)的核心,將設(shè)定的小球位置與紅外傳感器采集到的小球高度進(jìn)行比較,計(jì)算誤差和誤差變化率。輸入語(yǔ)言變量選擇設(shè)定高度與紅外傳感器實(shí)時(shí)檢測(cè)高度之間誤差e和誤差變化率ec,輸出語(yǔ)言變量選擇控制電機(jī)轉(zhuǎn)速的PWM占空比u。
3.2.3 模糊控制規(guī)則的建立
圖6輸入輸出的隸屬度函數(shù)
誤差e和誤差變化率ec兩個(gè)輸入數(shù)據(jù)需轉(zhuǎn)換為合適的語(yǔ)言值。用語(yǔ)言變量論域定義為有限整數(shù)的離散論域[15]。設(shè)計(jì)的系統(tǒng)中,誤差e的基本論域?yàn)閇-6,6],誤差變化率ec的基本論域?yàn)閇-1,1],對(duì)應(yīng)的模糊論域范圍為 [-3,3]。e和ec語(yǔ)言標(biāo)簽為{負(fù)大,負(fù)中,負(fù)小,零,正小,正中,正大},即{NB,NM,NS,ZO,PS,PM,PB}。隸屬度函數(shù)選用形狀較尖的適用于單片機(jī)系統(tǒng)的三角形函數(shù),如圖6所示。
建立模糊控制規(guī)則是模糊控制系統(tǒng)的重要設(shè)計(jì)內(nèi)容,每一條控制規(guī)則都是建立在實(shí)際操作經(jīng)驗(yàn)上的。比如模糊條件語(yǔ)句可通過(guò)“ifeandecthenΔKp”來(lái)描述。表1、表2、表3分別為ΔKp、ΔKi、ΔKd的模糊控制(推理)規(guī)則表。隸屬度函數(shù)需要經(jīng)清晰化處理,映射到有代表性的數(shù)值上。
表1 ΔKp模糊控制(推理)規(guī)則表
續(xù)表1
e c(t)ΔKPeNBNMNSZOPSPMPBPSPSPSPSNSNSNMNMPMPSPSZONMNMNMNBPBZOZOZONMNMNBNB
表2 ΔKi模糊控制(推理)規(guī)則表
表3ΔKd模糊控制(推理)規(guī)則表
e c(t)ΔKdeNBNMNSZOPSPMPBNBPSNSNBNBNBNMPSNMPSNSNBNMNMNSZONSZONSNMNMNSNSZOZOZONSNSNSNSNSZOPSZOZOZOZOZOZOZOPMPBNSPSPSPSPSPBPBPBPMPMPMPSPSPB
從上面三個(gè)表可以構(gòu)建出49條模糊控制規(guī)則。
圖7系統(tǒng)模糊PID控制流程圖
風(fēng)洞控制系統(tǒng)上電后,系統(tǒng)各個(gè)模塊完成初始化。通過(guò)按鍵進(jìn)行模式選擇。紅外測(cè)距模塊實(shí)時(shí)檢測(cè)風(fēng)洞中小球所處的位置。當(dāng)小球高度與預(yù)設(shè)高度有偏差時(shí),通過(guò)模糊控制模塊對(duì)PID參數(shù)進(jìn)行優(yōu)化,控制電機(jī)轉(zhuǎn)速,改善風(fēng)力大小,使系統(tǒng)快速達(dá)到預(yù)設(shè)值。TFT顯示屏上顯示當(dāng)前的工作模式、小球高度、占空比大小等參數(shù)。系統(tǒng)模糊PID控制流程圖如圖7所示。
在Simulink設(shè)計(jì)環(huán)境中,運(yùn)用各種模塊搭建風(fēng)洞系統(tǒng)仿真模型圖,如圖8所示。圖8中雙擊Fuzzy Controller模塊,彈出“Parameters”對(duì)話框,其中的“FIS name”需添加模糊控制規(guī)則生成的fis文件。
Simulink運(yùn)行后,響應(yīng)曲線結(jié)果如圖9所示。與常規(guī)PID控制進(jìn)行對(duì)比,得到兩種PID響應(yīng)對(duì)比圖。模糊PID控制達(dá)到穩(wěn)定時(shí)所需的時(shí)間為2.34s,而傳統(tǒng)的PID控制達(dá)到穩(wěn)定時(shí)所需的時(shí)間為4.02s。實(shí)驗(yàn)的部分關(guān)鍵數(shù)據(jù)如表4所示。由數(shù)據(jù)分析可知,模糊PID的風(fēng)洞控制系統(tǒng)相比較于常規(guī)PID,響應(yīng)速度較快,能較快達(dá)到穩(wěn)定狀態(tài),超調(diào)量小,控制效果平穩(wěn)。
圖8風(fēng)洞控制系統(tǒng)仿真模型
圖9PID和模糊PID控制器的響應(yīng)比較
表4 部分實(shí)驗(yàn)數(shù)據(jù)
本文設(shè)計(jì)了一種能通過(guò)模糊PID算法實(shí)現(xiàn)自動(dòng)控制的風(fēng)洞系統(tǒng)。系統(tǒng)選用低功耗的STM32F103ZET6芯片作為系統(tǒng)的核心控制,根據(jù)小球高度與預(yù)設(shè)高度的偏差,通過(guò)模糊PID算法進(jìn)行參數(shù)的優(yōu)化,調(diào)節(jié)PWM控制電機(jī)轉(zhuǎn)速大小,改變風(fēng)罩出風(fēng)口的風(fēng)力,實(shí)現(xiàn)小球位置的精確控制。實(shí)驗(yàn)結(jié)果表明,該風(fēng)洞系統(tǒng)達(dá)到了設(shè)計(jì)要求,同時(shí)實(shí)現(xiàn)了低功耗的自動(dòng)、精準(zhǔn)控制的目標(biāo),具有較大的實(shí)用意義。