<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁(yè) > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的溫度模糊自適應(yīng)PID控制器的設(shè)計(jì)

          基于FPGA的溫度模糊自適應(yīng)PID控制器的設(shè)計(jì)

          作者: 時(shí)間:2009-12-21 來(lái)源:網(wǎng)絡(luò) 收藏
          1 引言
          是工業(yè)生產(chǎn)過(guò)程中一個(gè)主要的被控參數(shù)。目前,大多采用常規(guī)實(shí)現(xiàn)對(duì)的控制。具有結(jié)構(gòu)簡(jiǎn)單、易于實(shí)現(xiàn)且魯棒性好、可靠性高等優(yōu)點(diǎn),對(duì)可建立精確數(shù)學(xué)模型的定常系統(tǒng)具有很好的控制效果,但由于實(shí)際控制系統(tǒng)工況復(fù)雜、參數(shù)多變、大慣性、大滯后,常規(guī)難以對(duì)其高精度進(jìn)行控制。控制魯棒性強(qiáng),無(wú)需被控對(duì)象的精確數(shù)學(xué)模型,只依賴于操作人員的經(jīng)驗(yàn)知識(shí)及操作數(shù)據(jù),非常適用于控制非線性、時(shí)變和滯后系統(tǒng),但其靜態(tài)性能較差,因此應(yīng)用范圍受很大限制。針對(duì)這些問(wèn)題,這里提出一種的溫度PID控制器方案,該方案將傳統(tǒng)PID控制與現(xiàn)代控制相結(jié)合,應(yīng)用模糊推理方法實(shí)現(xiàn)對(duì)PID參數(shù)的自動(dòng)整定。由此,經(jīng)MATLAB仿真驗(yàn)證該控制算法的可行性,將其應(yīng)用于恒溫箱的溫度控制。該控制器對(duì)恒溫箱控制系統(tǒng)的控制效果明顯優(yōu)于常規(guī)PID控制器。

          2 模糊自PID控制原理及結(jié)構(gòu)
          模糊自PID控制基本原理:以誤差e和誤差變化ec作為輸入,運(yùn)行中不斷檢測(cè)e和ec,并利用模糊規(guī)則進(jìn)行模糊推理,查詢模糊矩陣表調(diào)整參數(shù),滿足不同時(shí)刻的e和ec對(duì)PID參數(shù)自整定的要求,利用模糊規(guī)則在線修改PID參數(shù),以使被控對(duì)象具有良好的靜態(tài)、動(dòng)態(tài)性能。模糊自適應(yīng)PID控制系統(tǒng)結(jié)構(gòu)如圖1所示。

          本文引用地址:http://www.ex-cimer.com/article/163398.htm

          常規(guī)PID控制器作為一種線性控制器,其離散的控制規(guī)律為:

          對(duì)于系統(tǒng)被控過(guò)程中不同的|e|和|ec|,PID參數(shù)Kp、KI、KD的自整定原則如下:
          (1)誤差|e|較大時(shí),為加快系統(tǒng)的響應(yīng)速度,使系統(tǒng)具有快速跟蹤性能,應(yīng)取較大Kp和較小KD。同時(shí),為了防止積分飽和。避免系統(tǒng)超調(diào)過(guò)大,應(yīng)限制KI或使其為零。
          (2)誤差|e|和|ec|中等時(shí),為使系統(tǒng)超調(diào)較小,應(yīng)取較小KP,適當(dāng)KI和KD,特別是KD的取值對(duì)系統(tǒng)響應(yīng)影響較大(一般取值較小)。
          (3)誤差|e|較小時(shí),為使系統(tǒng)具有較好穩(wěn)態(tài)性能,應(yīng)取較大KP和KI。同時(shí),為避免系統(tǒng)在平衡點(diǎn)附近出現(xiàn)振蕩,應(yīng)取合適的KD值。|ec|較大時(shí),取較小KD;|ec|較小時(shí),取較大KD。
          考慮到上述原則,在該中,模糊控制器采用2輸入,3輸出的結(jié)構(gòu)。以誤差e和誤差變化ec作為輸入,經(jīng)量化和模糊化處理后,查詢模糊控制規(guī)則表,得到模糊輸出量KP、KI、KD,再經(jīng)解模糊和量化因子輸出精確量,并將該輸出量與傳統(tǒng)PID相結(jié)合輸出系統(tǒng)的控制量。輸人語(yǔ)言變量e和ec以及輸出語(yǔ)言變量KP、KI、KD的模糊集論域均設(shè)為{-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},取相應(yīng)論域上的語(yǔ)言值為{NB,NM,NS,ZO,PS,PM,PB}??紤]到對(duì)論域的覆蓋程度及靈敏度,魯棒性和穩(wěn)定性等原則,各模糊子集隸屬度函數(shù)均采用三角形隸屬函數(shù)。
          模糊規(guī)則采用“if e is A and ec is B then KP is C and KI isD and KD is E”的方式,控制器參數(shù)模糊推理過(guò)程采取Mam-dani直接推理法,“與”運(yùn)算采用極小運(yùn)算,“或”運(yùn)算采用極大運(yùn)算,模糊蘊(yùn)含運(yùn)算采用極小運(yùn)算,模糊規(guī)則綜合采用極大運(yùn)算,去模糊化采用重心法且其計(jì)算公式為:

          根據(jù)PID參數(shù)調(diào)整原則,輸出量KP、KI、KD一輪決策將最多涉及147條推理規(guī)則。

          3 恒溫箱溫度控制系統(tǒng)硬件電路
          溫度控制目前大多采用以單片機(jī)或CPU為核心的控制系統(tǒng),這些以軟件控制和運(yùn)算的系統(tǒng)相比于硬件系統(tǒng)速度要慢、實(shí)時(shí)性差且可靠性低。
          作為一種新型的數(shù)字邏輯器件,具有集成度高、可重復(fù)編程、邏輯實(shí)現(xiàn)能力強(qiáng)、設(shè)計(jì)靈活等特點(diǎn),使用其內(nèi)部邏輯模塊單元實(shí)現(xiàn)所需功能,各個(gè)模塊并行運(yùn)行,這使得系統(tǒng)運(yùn)算速度快、實(shí)時(shí)性強(qiáng)。與傳統(tǒng)的CPU并行計(jì)算不同,內(nèi)部結(jié)構(gòu)真正實(shí)現(xiàn)并行計(jì)算,不是宏觀上并行而是微觀上分時(shí)運(yùn)算。
          該設(shè)計(jì)采用Ahera公司的Cyclone系列FPGA器件EP1C12為核心控制器來(lái)測(cè)量與控制恒溫箱內(nèi)溫度。通過(guò)鍵盤向FPGA輸入設(shè)定溫度,現(xiàn)場(chǎng)溫度參數(shù)由熱電偶傳感器轉(zhuǎn)換成電動(dòng)勢(shì)信號(hào),經(jīng)A/D轉(zhuǎn)換和濾波后,將實(shí)時(shí)的數(shù)字測(cè)量值送入FPGA。FPGA將比較溫度的設(shè)定值與測(cè)量值,經(jīng)模糊自適應(yīng)PID控制算法運(yùn)算處理后,輸出相應(yīng)控制信號(hào),確保恒溫箱內(nèi)溫度變化范圍始終保持在設(shè)定值的誤差范圍內(nèi)。系統(tǒng)的液晶顯示用于實(shí)時(shí)顯示控制系統(tǒng)的當(dāng)前溫度值、溫度變化曲線、參數(shù)配制等信息;鍵盤用于設(shè)定控制系統(tǒng)的初始定值及初始參數(shù)信息;Flash,SDRAM,I2C等用于實(shí)現(xiàn)存儲(chǔ)空間的擴(kuò)展。圖2為系統(tǒng)整體硬件結(jié)構(gòu)框圖。

          此外,在FPGA中還集成有Altera公司提供的NIOS II軟核處理器,F(xiàn)PGA一方面通過(guò)內(nèi)部的雙口RAM與其內(nèi)部的硬件邏輯控制模塊進(jìn)行通訊,獲取控制模塊的狀態(tài)信息并配置其參數(shù);另一方面監(jiān)控顯示模塊和鍵盤模塊。FPGA內(nèi)部邏輯示意圖如圖3所示。

          pid控制器相關(guān)文章:pid控制器原理



          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();