模糊控制在基于CAN總線的數(shù)據(jù)采集與控制系統(tǒng)中的應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1 CAN總線的特點(diǎn)
CAN總線最早由德國的BOSCH公司提出,它具有以下性能:
(1) 多主方式工作,非破壞性的基于優(yōu)先權(quán)的總線仲裁技術(shù);
(2) 采用短幀結(jié)構(gòu),受干擾概率低,每幀信息都有CRC校驗(yàn)及其它檢錯(cuò)措施;
(3) 對(duì)嚴(yán)重錯(cuò)誤具有自動(dòng)關(guān)閉總線功能,使總線其它操作不受影響;
(4) 靈活的傳輸介質(zhì),多樣、快速和遠(yuǎn)距離的信息傳送方式。
基于CAN總線的以上特點(diǎn),我們?cè)O(shè)計(jì)了一種采用CAN總線技術(shù)和模糊控制技術(shù)的控制系統(tǒng),其結(jié)構(gòu)框圖如圖1所示。
2 模糊控制器的設(shè)計(jì)
模糊控制器的設(shè)計(jì)主要是設(shè)定各輸入與輸出變量模糊子集的隸屬函數(shù)?模糊變量的量化論域、模糊控制規(guī)則、輸入輸出變量的比例變換因子等參數(shù)。常規(guī)模糊控制器的輸入是將連續(xù)信息經(jīng)量化因子量化成幾個(gè)等級(jí)后的數(shù)據(jù),但因不能把輸入論域無限細(xì)分,只能劃分為有限的幾個(gè)等級(jí),且由于系統(tǒng)沒有積分環(huán)節(jié),所以在系統(tǒng)的平衡點(diǎn)附近容易產(chǎn)生振蕩或出現(xiàn)極限環(huán)。針對(duì)常規(guī)模糊控制器不能消除穩(wěn)態(tài)誤差的情況,我們?cè)O(shè)計(jì)了一種智能型模糊控制器,其結(jié)構(gòu)圖如圖2所示。
該模糊控制器與常規(guī)模糊控制器的不同之處就是在控制規(guī)則庫上并聯(lián)了一積分環(huán)節(jié)以減少或消除系統(tǒng)的穩(wěn)態(tài)誤差。其控制規(guī)則可根據(jù)系統(tǒng)的控制響應(yīng)曲線來獲得,為了使系統(tǒng)輸出盡快跟蹤輸入且使系統(tǒng)誤差在允許的精度范圍內(nèi),采用了分段引入積分環(huán)節(jié)。在系統(tǒng)響應(yīng)曲線偏離平衡點(diǎn)即系統(tǒng)誤差趨勢(shì)增大時(shí),引入積分作用;而在系統(tǒng)響應(yīng)曲線從偏離點(diǎn)趨向平衡點(diǎn)即系統(tǒng)誤差趨勢(shì)變小時(shí),取消積分作用。并且K值的大小要適中,過大會(huì)使系統(tǒng)振蕩,過小體現(xiàn)不了積分作用。此設(shè)計(jì)思想可寫成如下表達(dá)式形式:
其中,f(e,ec)為模糊控制規(guī)則部分的輸出,K∫Edt為積分環(huán)節(jié)的輸出。
由圖2可知,該模糊控制器的輸入為系統(tǒng)的偏差e和偏差變化率ec,輸出為控制量的增量Δu;ke、kc為量化因子,ku為比例因子;E、EC、ΔU分別為e、ec和Δu的模糊語言變量。輸入、輸出變量被劃分為正大(PL)、正中(PM)、正小(PS)、零(ZO)、負(fù)小(NS)、負(fù)中(NM)、負(fù)大(NL)7個(gè)模糊狀態(tài),其相應(yīng)論域?yàn)閧-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6}13個(gè)等級(jí)。在充分考慮到控制系統(tǒng)的非線性?大時(shí)滯等情況下,根據(jù)專家先驗(yàn)知識(shí)和現(xiàn)場(chǎng)熟練操作者總結(jié)出來的操作經(jīng)驗(yàn),我們得出如下的控制規(guī)則,如表1所示。
表1的模糊控制規(guī)則可用if—then語句形式表示為:if Ei and ECj then Uij,根據(jù)Mamdani推理法則,此控制規(guī)則可用模糊關(guān)系表達(dá)式表示為:
若某時(shí)刻的偏差為,偏差變化率為,則得到相應(yīng)的控制量為:
當(dāng)式(2)遍歷所有的控制規(guī)則后可得到總的模糊控制規(guī)則表,如表2所示。
系統(tǒng)輸入變量的隸屬函數(shù)采用三角形隸屬度函數(shù),模糊判決采用最大隸屬度原則,積分環(huán)節(jié)的加入與否由式(1)決定,若加入積分環(huán)節(jié)則合并該分量得到相應(yīng)的控制增量Δu。
3 模糊控制算法實(shí)現(xiàn)
3.1 硬件實(shí)現(xiàn)
考慮到大規(guī)模過程控制系統(tǒng)的分散性和信息的多樣性,采用了現(xiàn)場(chǎng)總線中的CAN總線把各個(gè)子系統(tǒng)有機(jī)地聯(lián)系起來,實(shí)現(xiàn)了集中管理和對(duì)各現(xiàn)場(chǎng)設(shè)備實(shí)時(shí)?有效的控制。其硬件電路圖如圖3所示。
現(xiàn)場(chǎng)控制單元以AT89C51芯片為核心,主要負(fù)責(zé)對(duì)現(xiàn)場(chǎng)設(shè)備狀態(tài)的顯示與報(bào)警、對(duì)采集來的數(shù)據(jù)進(jìn)行處理和對(duì)SJA1000進(jìn)行操作、控制。其中SJA1000為CAN總線微控制器,主要把從AT89C51來的信息以CAN總線協(xié)議的格式發(fā)送到CAN總線上以供其它部分使用,并從CAN總線上接收有用信息提供給AT89C51作進(jìn)一步的處理。本系統(tǒng)的A/D和D/A轉(zhuǎn)換電路分開設(shè)計(jì)主要是因?yàn)橐粋€(gè)大系統(tǒng)下的各個(gè)子系統(tǒng)之間是有聯(lián)系的,某一子系統(tǒng)采集到的數(shù)據(jù)可能正是另一子系統(tǒng)作進(jìn)一步處理的依據(jù),而不是自身的需要。這樣,就使各智能單元之間數(shù)據(jù)通信更為方便、快速,也便于上位機(jī)管理。該硬件電路中采用了DC-DC轉(zhuǎn)換電路和多種光電隔離器件,采用了看門狗(Watchdog)復(fù)位技術(shù),其目的主要是為了防止現(xiàn)場(chǎng)干擾信號(hào)過大而破壞核心電路以及保證系統(tǒng)在環(huán)境比較惡劣的情況下也能正常運(yùn)行。
3.2 軟件實(shí)現(xiàn)
系統(tǒng)軟件所實(shí)現(xiàn)的功能為:采樣n時(shí)刻A/D轉(zhuǎn)換輸出值,與系統(tǒng)設(shè)定值和上次采樣值e(n-1)比較得n時(shí)刻偏差e(n)和偏差變化率ec(n);選擇合適的量化因子ke和kc,由相應(yīng)的模糊化規(guī)則得到模糊值E(n)和EC(n);分析E(n)和EC(n)的變化趨勢(shì)以確定是否加入積分環(huán)節(jié)。然后,根據(jù)E(n)和EC(n)的值直接查程序存儲(chǔ)器內(nèi)的模糊控制總表或進(jìn)行積分運(yùn)算得到模糊控制增量。最后,對(duì)加入或不加入的模糊控制增量采用最大隸屬度原則進(jìn)行模糊判決,選擇適當(dāng)?shù)谋壤蜃觡u得到控制增量Δu,計(jì)算Δu+u(n-1)的值,即可得n時(shí)刻的控制量。該值可通過CAN總線傳送給其它智能單元,進(jìn)行D/A轉(zhuǎn)換后即可控制現(xiàn)場(chǎng)設(shè)備或上位機(jī)做進(jìn)一步的處理以協(xié)調(diào)整個(gè)系統(tǒng)各控制單元的正常、有效的運(yùn)行。智能控制單元在處理以上任務(wù)的同時(shí)還要完成與CAN總線數(shù)據(jù)通信和對(duì)現(xiàn)場(chǎng)設(shè)備的狀態(tài)顯示與報(bào)警。由離線方式計(jì)算出的模糊控制總表可以直接以矩陣的形式寫入芯片內(nèi)部程序存儲(chǔ)器,其軟件設(shè)計(jì)流程如圖4所示。
4 仿真實(shí)驗(yàn)
針對(duì)以上描述的模糊控制算法和控制系統(tǒng)設(shè)計(jì)思想,我們選擇某一被控系統(tǒng)做了仿真實(shí)驗(yàn)。該被控系統(tǒng)的傳遞函數(shù)為:。從系統(tǒng)的傳遞函數(shù)可以看出,該系統(tǒng)非線性較強(qiáng)、純滯后大(T=1s);對(duì)純PID控制算法和本論文討論的模糊控制算法的階躍響應(yīng)曲線如圖5所示。
其中,曲線1是在kp=1、kc=0.2和kd=1.25參數(shù)下純PID控制的系統(tǒng)響應(yīng)曲線,曲線2是在ke=48、kc=80和ku=7情況下采用模糊控制算法的系統(tǒng)響應(yīng)曲線。從系統(tǒng)控制響應(yīng)曲線2來看,由于該模糊控制器采用了純模糊控制算法和加入積分環(huán)節(jié)相結(jié)合的方案,在系統(tǒng)響應(yīng)偏離平衡點(diǎn)較遠(yuǎn)時(shí),只有模糊控制的作用,響應(yīng)速度很快,曲線斜率大;而當(dāng)響應(yīng)接近平衡點(diǎn)且有偏離趨勢(shì)時(shí),由于加入積分環(huán)節(jié),曲線變化速率變慢,幾次作用后,系統(tǒng)響應(yīng)最后在平衡點(diǎn)附近穩(wěn)定或到達(dá)平衡點(diǎn)。與純PID控制器算法相比,它具有算法簡潔、響應(yīng)速度快等特點(diǎn)。同時(shí)要使系統(tǒng)達(dá)到快速響應(yīng)且無超調(diào),在參數(shù)選擇上是矛盾的,只憑固定的參數(shù)ke、kc和ku很難達(dá)到要求。因此,ke、kc和ku參數(shù)的選擇可以根據(jù)E和EC的變化而調(diào)整以達(dá)到提高系統(tǒng)的穩(wěn)態(tài)精度的目的,這樣整個(gè)控制系統(tǒng)既能達(dá)到控制的快速性,同時(shí)還能實(shí)現(xiàn)減少或消除系統(tǒng)穩(wěn)態(tài)誤差的效果。
模糊控制和現(xiàn)場(chǎng)總線是近些年控制領(lǐng)域向智能化、全面化、快速化方向發(fā)展而建立起來的兩門新技術(shù);把智能控制與現(xiàn)場(chǎng)總線結(jié)合起來是以后工程控制中的主要應(yīng)用方向。從整個(gè)控制系統(tǒng)的設(shè)計(jì)過程和仿真結(jié)果來看,系統(tǒng)的硬件結(jié)構(gòu)相對(duì)比較簡單,軟件實(shí)現(xiàn)方便,系統(tǒng)控制效果理想,實(shí)時(shí)性好。