999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Matlab模糊控制器HDL代碼的自動(dòng)生成

2012-06-01 02:54:44諸葛俊貴
電子科技 2012年1期
關(guān)鍵詞:液位設(shè)計(jì)

諸葛俊貴

(上海師范大學(xué)精密機(jī)電系統(tǒng)與控制工程研究室,上海 201418)

經(jīng)典和現(xiàn)代控制理論都是建立在被控對(duì)象具有精確數(shù)學(xué)模型的基礎(chǔ)上,而實(shí)際應(yīng)用中的許多系統(tǒng)很難用精確的數(shù)學(xué)模型來(lái)描述,難以建模,無(wú)法確定控制過(guò)程的傳遞函數(shù)和狀態(tài)方程[1]。而模糊控制在處理這類(lèi)問(wèn)題上具有明顯優(yōu)勢(shì),尤其對(duì)那些控制精度要求不高和需要緊跟環(huán)境變化的系統(tǒng)。

隨著FPGA技術(shù)的快速發(fā)展,F(xiàn)PGA在智能電子產(chǎn)品、智能家居、智能交通等領(lǐng)域得到了廣泛應(yīng)用。但在FPGA上直接實(shí)現(xiàn)模糊控制算法比較困難,由于Matlab的強(qiáng)大功能,可以借助Matlab的Simulink、Fuzzy Logic和HDL Coder等工具間接快速地自動(dòng)生成模糊控制器的HDL代碼。

1 Fuzzy Logic工具箱設(shè)計(jì)模糊控制器

實(shí)驗(yàn)?zāi)康氖且獙⒃O(shè)計(jì)的模糊控制器用Matlab自動(dòng)生成 HDL代碼,以用于 FPGA中。由于用 Fuzzy Logic設(shè)計(jì)的模糊控制器tank.fis嵌入到Simulink中的Fuzzy Controller元件中不能自動(dòng)生成HDL代碼,故采用Lookup Table來(lái)設(shè)計(jì)模糊控制器以便用Matlab內(nèi)嵌的HDL Coder自動(dòng)生成HDL代碼。

實(shí)驗(yàn)按照Demos中的舉例Water Level Control in a Tank來(lái)設(shè)計(jì)模糊控制器的,這是一個(gè)標(biāo)準(zhǔn)二維mamdani模糊控制器。其輸入變量有兩個(gè)分量,偏差e和偏差變化率rate=de/dt,一個(gè)輸出量u。偏差e為給定液位與實(shí)際輸出液位的偏差,命名為level,偏差變化率就是偏差隨時(shí)間的變化率,輸出量為閥門(mén)的開(kāi)度,這里為valve,該模糊控制器有5條控制規(guī)則。

對(duì)于輸入變量level有3個(gè)模糊子集high、okay和low覆蓋在模糊論域[-1,1]上,輸入變量rate同樣有3個(gè)模糊子集negative、none和positive覆蓋在模糊論域[-0.1,0.1]上,輸出變量valve則有5個(gè)模糊子集close_fast、close_slow、no_change、open_slow 和 open_fast覆蓋在模糊論域[-1,1]上。

2 用查找表設(shè)計(jì)模糊控制器的步驟

2.1 制作輸入輸出變量的隸屬度矢量表

首先,從圖2看出兩輸入變量level和rate的隸屬函數(shù)都是高斯函數(shù)且high、okay和low參數(shù)分別為[0.3 -1]、[0.3 0]和[0.3 1],而 negative、none和positive的參數(shù)分別為[0.03 -0.1]、[0.03 0]和[0.03 0.1],輸出變量valve為三角形函數(shù),它們的參

表5 水箱液位模糊控制器查找表

下面用一組數(shù)據(jù)的計(jì)算說(shuō)明表5的制定[2]。設(shè)偏差level=-1,變化率rate=-0.1,由表1和表2可以查出:

式(1)表示level=-1時(shí),其模糊語(yǔ)言值為high(1),括號(hào)中的值為其隸屬度。同理,可以查出:

由以上兩式語(yǔ)言值按表4可得出規(guī)則:if level is high(1)and rate is negative(1)then valve is close-fast(1)。規(guī)則中valve的語(yǔ)言值隸屬度是根據(jù)規(guī)則前件及規(guī)則蘊(yùn)涵均采用“取小”操作運(yùn)算得到的。即規(guī)則中high和negative的隸屬度均為1,兩者取小,所以后件valve隸屬度也為1。

然后反模糊化,從圖1可以看出輸出隸屬度函數(shù)為對(duì)稱(chēng)三角形,故采用中心值平均法進(jìn)行反模糊化運(yùn)算較簡(jiǎn)單。模糊控制器輸出的精確值為

圖1 輸出隸屬函數(shù)曲線

將valve=-0.9的值填寫(xiě)到控制查找表中l(wèi)evel=-1與rate=-0.1的交叉點(diǎn),依次類(lèi)推,共需計(jì)算出11×11=121個(gè)數(shù)據(jù),完成水箱液位模糊控制器查找表的制定。

3 控制器查找表的狀態(tài)機(jī)實(shí)現(xiàn)

在Matlab主界面左下角單擊Start按鈕,依次選擇Simulink-Stateflow-New Chart,在彈出的模型文件編輯窗中雙擊Chart。對(duì)輸入的數(shù)據(jù)先判斷對(duì)應(yīng)列的值,再查找對(duì)應(yīng)行,輸出查找結(jié)果,其中嵌入了一個(gè)eM函數(shù)odata=df(idata),在狀態(tài)流程圖的每一步都調(diào)用了該函數(shù),該函數(shù)的功能是將輸入數(shù)據(jù)轉(zhuǎn)換為有符號(hào)、16位字長(zhǎng)、小數(shù)部分長(zhǎng)為8位的定點(diǎn)數(shù)輸出。

給Chart模塊添加兩個(gè)數(shù)據(jù)輸入一個(gè)數(shù)據(jù)輸出,分別命名為col、row和tab_out,再?gòu)膸?kù)中找到in和out模塊,拖入到模型文件編輯器,其中有兩個(gè)in,一個(gè)out,將兩個(gè)in和一個(gè)out與Chart模塊的兩個(gè)輸入端和一個(gè)輸出端連接,然后選中所有模塊,右鍵Creat Subsystem,生成子系統(tǒng)。

最后將生成的子系統(tǒng)替換掉原來(lái)sltank.mdl文件中的Fuzzy Controller模塊,連好線后注意在子系統(tǒng)的兩個(gè)輸入和輸出端都要添加covert數(shù)據(jù)類(lèi)型轉(zhuǎn)換模塊,輸入端轉(zhuǎn)換器將double轉(zhuǎn)換為sfix16_En8,輸出轉(zhuǎn)換器則相反,否則數(shù)據(jù)類(lèi)型不匹配運(yùn)行出錯(cuò)。

將修改后的模型另存為mysltank.mdl并運(yùn)行,結(jié)果表明與原舉例中效果一樣,而且穩(wěn)定。

4 在Matlab中自動(dòng)生成HDL代碼

在 Matlab 命令窗口中輸入 hdlsetup('mysltank'),打開(kāi)模型文件mysltank.mdl在窗口菜單Simulation中選中Configuration Parameters,在彈出的窗口中左下角點(diǎn)擊HDL Coder,在右邊generate HDL for下拉菜單選擇Mysltank/Subsystem1,在右下角點(diǎn)擊Apply,再單擊Run Compatibility Checker,檢測(cè)兼容性通過(guò),最后單擊Generate自動(dòng)生成HDL代碼,在Matlab命令窗口中點(diǎn)擊運(yùn)行生成的鏈接就可打開(kāi)生成的HDL代碼。

5 結(jié)束語(yǔ)

以水箱液位模糊控制為例,詳細(xì)討論了利用Matlab進(jìn)行模糊控制器的設(shè)計(jì)和模糊控制器算法HDL代碼的自動(dòng)生成技術(shù)。該技術(shù)可以用于快速生成模糊控制器算法的 HDL代碼,生成的代碼可以移植到FPGA控制系統(tǒng)。

[1]石磊,陳亞娜.模糊控制器的設(shè)計(jì)研究[J].機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新,2007(6):108-110.

[2]席愛(ài)民.模糊控制技術(shù)[M].西安:西安電子科技大學(xué)出版社,2008.

[3]陳靜,周志鋒.基于Nios處理的模糊控制器設(shè)計(jì)[J].電子科技,2006,19(6):8 -10.

[4]王史春.基于模糊控制算法實(shí)現(xiàn)信號(hào)燈智能研究[J].電子科技,2009,22(11):32 -35,56.

[5]黃明慧,王海娟.數(shù)字下變頻的一種新型設(shè)計(jì)方法[J].電子科技,2010,23(11):55 -58.

猜你喜歡
液位設(shè)計(jì)
何為設(shè)計(jì)的守護(hù)之道?
《豐收的喜悅展示設(shè)計(jì)》
流行色(2020年1期)2020-04-28 11:16:38
基于STM32燃?xì)鉄崴仩t液位控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
石油儲(chǔ)罐液位開(kāi)關(guān)的應(yīng)用分析
瞞天過(guò)海——仿生設(shè)計(jì)萌到家
雙電容測(cè)量液位方法
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專(zhuān)
Coco薇(2017年5期)2017-06-05 08:53:16
寶馬530車(chē)?yán)鋮s液液位過(guò)低報(bào)警
霍尼韋爾 導(dǎo)波雷達(dá)液位變送器Smart Line^ 系列
主站蜘蛛池模板: 99人妻碰碰碰久久久久禁片| 久久综合婷婷| 福利视频一区| a毛片在线| 欧美午夜一区| 亚洲最新在线| 成人夜夜嗨| 日韩黄色在线| 国产色图在线观看| 欧美亚洲欧美| 欧美精品亚洲精品日韩专区| 99久视频| 国产区精品高清在线观看| 国产va在线观看免费| 无码中字出轨中文人妻中文中| 国产精品自拍合集| 亚洲无码37.| 91 九色视频丝袜| 久久综合久久鬼| 无码人妻热线精品视频| 一级黄色网站在线免费看| 国产欧美日韩18| 国产91全国探花系列在线播放| 国产精品无码久久久久AV| 国产大片喷水在线在线视频| 99精品影院| 丁香婷婷激情网| 成人一区专区在线观看| 99国产在线视频| 国产9191精品免费观看| 欧美激情二区三区| 一本大道香蕉久中文在线播放| 成人亚洲国产| 91原创视频在线| 免费一看一级毛片| 国产毛片不卡| 四虎国产精品永久在线网址| 中国精品久久| 91精品国产麻豆国产自产在线| 全免费a级毛片免费看不卡| 国产一区二区免费播放| 狠狠色婷婷丁香综合久久韩国| 麻豆精品国产自产在线| 97在线免费| a天堂视频| 欧美一级大片在线观看| 女人爽到高潮免费视频大全| 欧美人人干| 日韩不卡免费视频| 91久久偷偷做嫩草影院免费看| 久久精品国产免费观看频道| 欧美日韩亚洲综合在线观看| 久久窝窝国产精品午夜看片| 免费av一区二区三区在线| 久久综合色播五月男人的天堂| 久久久91人妻无码精品蜜桃HD| 婷婷亚洲天堂| 国产精品va| 免费A级毛片无码免费视频| 无码粉嫩虎白一线天在线观看| 91欧美亚洲国产五月天| 亚洲国产av无码综合原创国产| 丰满人妻被猛烈进入无码| 午夜国产不卡在线观看视频| 亚洲成AV人手机在线观看网站| 精品一區二區久久久久久久網站| 日韩精品久久无码中文字幕色欲| 欧美激情成人网| 国产高清在线观看| 国产91高清视频| 免费看的一级毛片| 日韩天堂网| 日韩成人在线网站| 日本免费一级视频| 不卡视频国产| 亚洲人成网站观看在线观看| 视频国产精品丝袜第一页| 91成人试看福利体验区| 亚洲嫩模喷白浆| 2020国产在线视精品在| 国产精品丝袜在线| 欧洲一区二区三区无码|