PID設(shè)計內(nèi)容地問題_第1頁
PID設(shè)計內(nèi)容地問題_第2頁
PID設(shè)計內(nèi)容地問題_第3頁
PID設(shè)計內(nèi)容地問題_第4頁
PID設(shè)計內(nèi)容地問題_第5頁
已閱讀5頁,還剩20頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

作者:控制器欄目:單片機 PID設(shè)計的問題1樓:

我要做的是一個溫度控制系統(tǒng),用調(diào)節(jié)加溫時間比例來調(diào)節(jié)溫度。

如果我目標溫度是22度,初始溫度是0度,采樣周期為3s,繼電器輸出周期等同采樣周期3S,假設(shè)把輸出周期平分為100份。

比例系數(shù)假設(shè)為Kp=0.5,Ki=0.025,Kd=5.5

那么開始計算,系統(tǒng)剛開始工作的時候偏差為22度,我根據(jù)增量公式:

kp*[e(k)-e(k-1)]+Ki*e(k)+Kd*[e(k)-2e(k-1)+e(k-2)]

=0.5*22+0.025*22+5.5*22

=132.55

算得的結(jié)果為132.55.我想不明白這個132.55究竟是代表什么?

直接說就是如何如何把PID計算結(jié)果變換為控制繼電器工作的輸出時間?

另外就是采樣周期和Kp、Ki、Kd有什么關(guān)系?? 2樓: 控制器于2006-5-615:52:00看不懂嘵奇老師的那個關(guān)系PID的文章

看不懂里面講PID計算和輸出量化的那部分是什么含義!3樓: 控制器于2006-5-617:12:00怎么沒人說點?

4樓:wenfengcom于2006-5-618:32:00哪位講講啊,我也沒搞清楚

5樓:控制器于2006-5-78:13:00怎么沒人講課呢??

6樓: 控制器于2006-5-810:30:00ding

這也不是很菜的問題把?

怎么沒人理會呢?7樓:lpark于2006-5-814:10:00唉,咱們的教材啊...

教材太學(xué)術(shù)化,用復(fù)雜的名詞說明簡單的道理。

先不說增量公式。

計算得到132.55,現(xiàn)在需要把它跟你的控制目標建立聯(lián)系(我想應(yīng)該是3s內(nèi)繼電器開啟多長時間),既然假設(shè)平分為100份,那么不妨132.55/2約為66份,即開啟3×66/100秒。這就構(gòu)成了反饋,偏差經(jīng)過計算變成了你的控制量。

明白這點之后還要知道,當(dāng)然,增量PID計算得到的量需要與前次相加才能與控制量建立聯(lián)系。8樓:控制器于2006-5-815:03:00謝謝謝謝謝謝樓上

終于有人回答一下了。

再問一些:

增量換算成位置量暫時不理,這個還是能理解的。

對這句還有點疑惑:“計算得到132.55,現(xiàn)在需要把它跟你的控制目標建立聯(lián)系(我想應(yīng)該是3s內(nèi)繼電器開啟多長時間),既然假設(shè)平分為100份,那么不妨132.55/2約為66份,即開啟3×66/100秒”

為什么要取132.55/2呢?這個除數(shù)應(yīng)該根據(jù)那些條件確定值?如果我計算出來的值不是132.55,而是300,那么除2就等于150了,超過100等份了,這個時候全速輸出控制嗎?

做的時候是不是要根據(jù)Kp、Ki、Kd估計出PID的計算的最大值,而后除以某個常數(shù),再做100等份的時間計算???但這個最大值好象不大好計算?。?/p>

我看曉奇老師的文章,這么理解可以嗎?

如果控制范圍為50度,時間平分200份的話,那么那個常數(shù)取4,也就是這個常數(shù)=輸出等份數(shù)/控制范圍,執(zhí)行PID計算出來得出的位置量數(shù)值除4后計算出真正意義上的輸出時間值,如果此時輸出的時間值超過200等份的時間值就按最大值計算。9樓:lpark于2006-5-816:58:00一些有關(guān)控制理論的基本概念不太清晰

我不是學(xué)自控的,摳太深我也不懂,但我建議你翻翻控制理論的書,只看前兩章,結(jié)合實際中的控制目標理解一下什么是閉環(huán)控制,什么是反饋,偏差又是怎樣跟控制量結(jié)合在一起的。

除2?除5?乘8?這些都是根據(jù)你控制量的需要來定,我只是隨意舉了個例子,合不合適得你自己去試。或者換一個角度看這個除數(shù),/2是不是相當(dāng)于把PID參數(shù)除2了,即調(diào)整了PID參數(shù)(個人體會,調(diào)整參數(shù)將占用大量的試驗時間)。實際應(yīng)用中還有可能需要132.55/2+20=86,理解我的意思了嗎,純粹看實際的需要,當(dāng)然,超過100(即超過你控制要求),就按最大輸出,低于某個值,就按最小輸出。

估算PID計算的最大最小值是一項對設(shè)定PID參數(shù)很有幫助的工作,是不好算,所以叫估算,估算完了就去試,再調(diào)整參數(shù),再試,再調(diào)整,再試...這叫經(jīng)驗調(diào)整法,呵呵,如果有精確數(shù)學(xué)模型的話,PID參數(shù)應(yīng)該是可以算的(根軌跡法?自控牛人不要見笑)。10樓:yking2008于2006-5-916:15:00說說我的看法

溫度控制一般屬于大慣性的控制系統(tǒng)。

我理解為加熱系統(tǒng)的工作是3S分成100份。所以這個控制量在0~100中間取值(PWM控制模式)就是你控制的執(zhí)行機構(gòu)來達到控制目的。

先說一下各個系數(shù)的含義

P:偏差。即根據(jù)反饋與控制目標的差值來調(diào)整加熱量;這個好理解,就是差的多就大火燒,差的小就小火燉。

I:積分。是根據(jù)溫度偏差積分來調(diào)節(jié)加熱量;可以在偏差大的時候?qū)崿F(xiàn)快速調(diào)節(jié),壞處是積分參數(shù)大系統(tǒng)要過沖的,小了嗎,響應(yīng)慢。

D:微分。用來抑制控制信號快速變化的。當(dāng)然參數(shù)太大也會引起振蕩的,太小了沒效果也就是不能抑制振蕩。

這幾個參數(shù)和控制量化的關(guān)系就是大概是這樣吧!11樓:IceAge于2006-5-921:01:00>100意味著著輸出飽和,如果輸出是PWM周期

做這種系統(tǒng),最好先學(xué)點基本的控制理論,然后能用matlab/simulink仿真就更好。PID參數(shù)的選擇,一般通過配置open-looptransferfunction的零極點得到。溫度系統(tǒng)一般有一個主要的極點,即f(s)=K/(s+T)+....--->f(t)=K*e^(-T*t))+.....

matlab/simulink里有強大的圖形設(shè)計工具,輕點鼠標就可以得到pid參數(shù)。12樓:控制器于2006-5-119:15:00不會matlab

我只是想弄明白如何把那個用溫度偏差算出來位置式或者增量式算出的數(shù)值變換為那個100等份去執(zhí)行??

還是迷糊,沒有明白。13樓:fushaobing于2006-5-1111:07:00樓主再接再厲!

14樓:控制器于2006-5-1117:47:00樓上讓我繼續(xù)問還是繼續(xù)看書?

看了很多理論書,看的越多越迷糊,有沒有通俗易懂的資料啊……15樓:IceAge于2006-5-1120:34:00通俗易懂?這可不是科普

這些東西,要給你講明白了,就是一本書了。技術(shù)問題容易解答,概念問題需要大量的學(xué)習(xí)和實踐,沒有什么捷徑。16樓:控制器于2006-5-128:21:00回樓上大蝦

書上講的PID的那幾個公式還是基本看懂一些的,對整定還不太了解,我估計這要結(jié)合實際產(chǎn)品做一下才會明白一些,所以就想做一個試試,結(jié)果就遇到那個計算出的值如何向輸出量轉(zhuǎn)換的問題卡殼了。

高深的東西我暫時不想去弄明白,就想把基本的東西搞明白再去學(xué)。17樓:fushaobing于2006-5-128:29:00找“實例”書看!

18樓:yewuyi于2006-5-128:32:00我在書店看過很多所謂的實例

但好象誰都不說具體的計算值向輸出值轉(zhuǎn)換的問題……

呵呵,是不是根本沒這個問題?

主要是這個轉(zhuǎn)換沒有“定法”,再加上寫書的確實很臭……

看過一本余永權(quán)的書,說到一些,建議LZ看看去*-本貼最后修改時間:2006-5-1211:31:09修改者:yewuyi19樓:控制器于2006-5-3117:45:00還是沒懂!

哪個高人再給我講講!20樓:martial于2006-5-3121:12:00正打算用PID,學(xué)習(xí)一下?。?/p>

21樓:控制器于2006-6-59:51:00看曉奇老師文章的總結(jié),不知道對不對!?

/mcu/PID.pdf

這是曉奇寫的文章,看了很多遍,做了一些總結(jié),不知道對不對?

總結(jié)如下:

1:一般情況下,PID真正關(guān)心的就三個參數(shù)(暫不考慮采樣周期參數(shù)):Kp(比例系數(shù))、Ti(積分時間)、Td(微分時間)。

2:增量公式中的Kp、Ki、Kd是根據(jù)上面的三個參數(shù)計算出來的,需要注意的是這兒的Kp不能等同與上面的比例系數(shù)Kp

3:比例系數(shù)是可以調(diào)整的,但隨著比例系數(shù)的改變,控制器的控制范圍也會相應(yīng)變化;對曉奇老師文章中的那個溫度控制的舉例來說,就是隨著比例系數(shù)的改變,起控點也會不斷變化,例如:當(dāng)比例系數(shù)=1時,控制范圍為200度,但當(dāng)比例系數(shù)=4時,控制范圍就為50度,以此類推控制范圍。

PS:關(guān)于這個有點小疑惑,就是比例系數(shù)好象不能小于1,如果小于1了,控制范圍怎么計算呢?

4:假如根據(jù)第二點確定了比例系數(shù),那么也就說我們已經(jīng)確定了控制范圍,假設(shè)這個時候比例系數(shù)=4,那么在例子中的控制范圍就是50度,設(shè)計程序的時候,如果{溫度差=(溫度設(shè)置的目標值-溫度測量值)}>50度,此時就以全功率輸出以促使溫度趕快升高。同時在曉奇老師文章中,他規(guī)定把輸出量分出200等份,當(dāng)溫度進入控制范圍時,且因為此時控制范圍為50度,針對每度的溫度上升,輸出量應(yīng)該按比例減小4個輸出等份數(shù);于是PID運算后的數(shù)值向輸出量轉(zhuǎn)化時,這個常數(shù)就是兩者轉(zhuǎn)換的“關(guān)聯(lián)方式”。

5:當(dāng)控制范圍為50度時,如果此時不加入微分和積分環(huán)節(jié)而只有簡單的比例環(huán)節(jié),那么肯定沒有超出全功率輸出的計算結(jié)果;所以當(dāng)只有比例控制的時候,并不需要做超限處理,但當(dāng)加入了微分和積分環(huán)節(jié)后,PID計算出的結(jié)果向輸出量轉(zhuǎn)化時,肯定會有可能超出輸出極限的結(jié)果,這個時候,只要把結(jié)果處理成兩個極限值即可。

不知道我上面的《讀書筆記》對不對,請看帖的行家里手多多批評指正。*-本貼最后修改時間:2006-6-817:31:19修改者:控制器22樓:控制器于2006-6-516:40:00難道大家一點說的也沒有嗎?

是我說的很正確所以不評論呢?

還是錯的一塌糊涂不值得評論?

還是大家太愛面子不敢說是對是錯,怕‘貽笑大方’??

XDJM,只是討論問題,說錯了也沒什么丟人的!23樓:hartcomm于2006-6-517:55:00我侃兩句

我是學(xué)自動化的,現(xiàn)在雖然不搞控制儀表只搞檢測儀表學(xué)校學(xué)的有些印象

首先132.55就是你要輸給執(zhí)行器(這里是繼電器等)的值(脈寬調(diào)制用),那么這個值和控制繼電器有什么關(guān)系?可以講隨便,隨便什么對應(yīng)關(guān)系可大可小這就奇怪了為什么沒有關(guān)系呢,因為是閉環(huán)控制!可以反饋的!

那么是不是真的沒有關(guān)系呢?不是,有可能你的系統(tǒng)達不到控制要求或振蕩或溫度無法控制

那問題在哪?在你的三個參數(shù)Kp,Ki,Kd上,請注意你不應(yīng)該假設(shè)Kp=0.5,Ki=0.025,Kd=5.5后算出132.55再問如何變換為控制繼電器工作的輸出時間,而是你應(yīng)該先得到繼電器工作的輸出時間T=f(u(k))的關(guān)系再確定三個參數(shù)Kp,Ki,Kd的值,而不是先設(shè)三個參數(shù)Kp,Ki,Kd的值再問...

T=f(u(k))實際上就是執(zhí)行器的特性。我們還需要控制對象的特性等才能等到三個參數(shù)Kp,Ki,Kd。也就是你的控制器并不能用在任意的設(shè)備上

但是pid控制器是一個不需要知道執(zhí)行器的特性也不需要控制對象的特性的控制器(不是絕對),pid控制器有一個特有的操作---整定。通過整定等到適合的三個參數(shù)Kp,Ki,Kd。

....不再廢話了,具體的可以參考一些書籍,我講的不對的也請指教

*-本貼最后修改時間:2006-6-518:00:46修改者:hartcomm24樓:hartcomm于2006-6-518:16:00在來兩句

上面lpark網(wǎng)友講得有道理

“調(diào)整參數(shù)將占用大量的試驗時間”就是整定

“估算,估算完了就去試,再調(diào)整參數(shù),再試,再調(diào)整”其實不要估算,直接架上去,整定解決問題。

“如果有精確數(shù)學(xué)模型的話,PID參數(shù)應(yīng)該是可以算的”pid控制如此重要

是20世紀最重要的控制技術(shù)之一

并得到廣泛應(yīng)用原因之一就是pid控制

不需要精確數(shù)學(xué)模型

請問各位哪位在工業(yè)中用到過現(xiàn)代控制理論?為什么?

現(xiàn)代控制理論需要精確的數(shù)學(xué)模型,而實際工業(yè)應(yīng)用中,大部分控制對象得不到精確的數(shù)學(xué)模型,建模太復(fù)雜了,pid只需整定就可以解決問答。

送一個整定的口訣:

參數(shù)整定找最佳,從小到大順序查

先是比例后積分,最后再把微分加

曲線振蕩很頻繁,比例度盤要放大

曲線漂浮繞大灣,比例度盤往小扳

曲線偏離回復(fù)慢,積分時間往下降

曲線波動周期長,積分時間再加長

曲線振蕩頻率快,先把微分降下來

動差大來波動慢。微分時間應(yīng)加長

理想曲線兩個波,前高后低4比1

一看二調(diào)多分析,調(diào)節(jié)質(zhì)量不會低25樓:何以解憂于2006-6-518:34:00學(xué)習(xí)了

26樓:maolei21ic于2006-6-519:04:00PID標記

兄弟.靠自己,不要靠別人27樓:控制器于2006-6-68:27:00hartcomm說的有理……

先規(guī)定三個參數(shù)的值再推DELAY的輸出量確實是犯了原則性錯誤。

所以才重新寫了一個《讀書筆記》拿上來讓大家挑錯誤。

大家看看我的那個筆記評論一下如何!28樓:IceAge于2006-6-620:23:00To:hartcomm,高,實在是高。

幾句口訣把pid的特性說的明明白白。

話又說回來,掌握一定的理論知識是很有必要的,特別是要掌握matlab/simulink。溫度系統(tǒng)并不需要精確的系統(tǒng)模型,可以通過輸入輸出的數(shù)據(jù)通過比如最小二乘法來獲得系統(tǒng)模型,pid在matlab/simulink仿真下比實際整定快捷很多。我在一個非線性系統(tǒng)里使用了4個pid,參數(shù)是在matlab/simulink計算整定得到,直接應(yīng)用到實際系統(tǒng)中,結(jié)果與仿真輸出幾乎一模一樣。

當(dāng)然了,如果不會matlab/simulink,沒有深厚的理論功底,也只能慢慢整定了。29樓:控制器于2006-6-78:34:00哎呀,怎么就沒人告訴我總結(jié)的到底是對還是錯呢?

TO

IceAge&hartcomm:

我不會matlab/simulink,從來沒學(xué)過,只聽說過這個名字。

你們兩位幫我看看我的《讀書總結(jié)》如何?

現(xiàn)在不能談?wù)ǎㄒ脖仨毥⒃赑ID控制的程序上把?我現(xiàn)在只是想把這個程序搞出來,至于對這個溫度系統(tǒng),具體是多少Kp、Ti、Td才能讓系統(tǒng)響應(yīng)快、超調(diào)小的工作還暫時不考慮的,那也應(yīng)該是在做好的PID控制器上慢慢調(diào)把?

偶現(xiàn)在只是想做出這個PID控制器……

(偶個人認為沒有高深的理論指導(dǎo)也能做一個簡單的PID控制器?。?/p>

30樓:niaofencha于2006-6-716:53:00我也在這卡住了,控制器兄弟理解透了的話聯(lián)系一下

我也在做PID,增量的,也是建立不了聯(lián)系(理解不好,不敢建立,也不知道如何建立,書上僅僅說了“建立”。)。我看了很多這方面的書都沒有一句真格的,相反我看到好幾本說的都一個字不差!?。憰膶W(xué)術(shù)教員都被誰領(lǐng)導(dǎo)成啥樣了我們不想多說,關(guān)鍵是想寫書為什么不寫到位呢,寫書之前難道教授們做工程時果真沒碰到類似的事?難道這是不值得談的問題嗎???寫書也是為后學(xué)造福嗎,買書是免費的嗎???以后誰再出書不為后學(xué)負責(zé)就純粹是找抽?。?!31樓:hartcomm于2006-6-717:57:00to:IceAge&控制器

to:IceAge

口訣不是我寫的。

另外在工業(yè)上一般并不研究控制對象的模型,不然怎么生產(chǎn)通用控制器?對每個控制對象研發(fā)生產(chǎn)專用控制器?一般都是靠整定

to:IceAge&控制器

我沒有實際設(shè)計過數(shù)字控制器。只是對基本概念有些了解。

我覺得曉奇寫的文章講的是個加溫儀。我覺得你應(yīng)該弄清楚一些基本問題。

控制器都是一樣,用在溫度上的同樣可以用在任何地方。只是叫控制器。

它的輸入信號和輸出信號一般應(yīng)該是標準的信號(4-20MA或1-5v),然后

由輸送給執(zhí)行器。比如用在溫度控制時?,F(xiàn)把溫度信號通過溫度變送器轉(zhuǎn)換為

標準信號,在輸給控制器。也有控制器可以接受熱電偶。熱電阻等信號,輸出

是繼電器等形式,但在工業(yè)上并不很普遍。

工業(yè)上的控制器的一般是保持工業(yè)參數(shù)的穩(wěn)定,而不是從0-200度這樣的調(diào)節(jié)。

你可能不是設(shè)計一個通用的控制器,而是一個專用的控制器。

至于你講“至于對這個溫度系統(tǒng),具體是多少Kp、Ti、Td才能讓系統(tǒng)響應(yīng)快、超調(diào)小的工作還暫時不考慮的,那也應(yīng)該是在做好的PID控制器”我覺得你

如果做通用控制器的話就理解不對了。控制器主要是在pid程序的設(shè)計,就是那個公式的程序化(如要切除小變化量,防溢出,抗飽和等等),并不涉及Kp、Ti、Td。Kp、Ti、Td在整定時定“先是比例后積分,最后再把微分加”也就是先把積分,微分關(guān)閉,調(diào)比例,在逐漸加上積分,微分,作用。

你可以看看自動控制原理計算機控制等書。計算機控制中有控制系統(tǒng)(注意是控制系統(tǒng))的設(shè)計,那跟一般的設(shè)計通用的pid控制器不是一回事。那里需要研究控制對象的特性,執(zhí)行器的特性。

我還是以前學(xué)習(xí)的時候?qū)W的,現(xiàn)在并不做控制器,控制系統(tǒng)。

但我覺得我對自動化還是有一些基本的認識的。上學(xué)時,許多人并不知道

其所以然,只是套套公式,考試也能拿高分,一些高分者,問他為什么用

pid,都搞不清。

呵呵,羅羅嗦嗦一大堆,希望在討論中,我自己能溫故而知新32樓:控制器于2006-6-88:31:00我只需要哪位XD能告訴我下面三句總結(jié)的對不對就可以了

3:比例系數(shù)是可以調(diào)整的,但隨著比例系數(shù)的改變,控制器的控制范圍也會相應(yīng)變化;對曉奇老師文章中的那個溫度控制的舉例來說,就是隨著比例系數(shù)的改變,起控點也會不斷變化,例如:當(dāng)比例系數(shù)=1時,控制范圍為200度,但當(dāng)比例系數(shù)=4時,控制范圍就為50度,以此類推控制范圍。

4:假如根據(jù)第二點確定了比例系數(shù),那么也就說我們已經(jīng)確定了控制范圍,假設(shè)這個時候比例系數(shù)=4,那么在例子中的控制范圍就是50度,設(shè)計程序的時候,如果{溫度差=(溫度設(shè)置的目標值-溫度測量值)}>50度,此時就以全功率輸出以促使溫度趕快升高。同時在曉奇老師文章中,他規(guī)定把輸出量分出200等份,當(dāng)溫度進入控制范圍時,且因為此時控制范圍為50度,針對每度的溫度上升,輸出量應(yīng)該按比例減小4個輸出等份數(shù);于是PID運算后的數(shù)值向輸出量轉(zhuǎn)化時,這個常數(shù)就是兩者轉(zhuǎn)換的“關(guān)聯(lián)方式”。

5:當(dāng)控制范圍為50度時,如果此時不加入微分和積分環(huán)節(jié)而只有簡單的比例環(huán)節(jié),那么肯定沒有超出全功率輸出的計算結(jié)果;所以當(dāng)只有比例控制的時候,并不需要做超限處理,但當(dāng)加入了微分和積分環(huán)節(jié)后,PID計算出的結(jié)果向輸出量轉(zhuǎn)化時,肯定會有可能超出輸出極限的結(jié)果,這個時候,只要把結(jié)果處理成兩個極限值即可。33樓:niaofencha于2006-6-810:40:00控制器兄弟,我的理解是這樣

我在寫外圍程序,還沒有上機調(diào)試,我的理解是這樣,不知道對不對:

首先建立反饋,然后根據(jù)反饋的駁接方式通過實際實驗決定三個參數(shù)。

具體理解如下:

你先直接把計算的輸出當(dāng)作實際三秒內(nèi)應(yīng)該通電的時間。這樣反饋就建立了。

確定好采樣周期,然后你把積分項和微分項的系數(shù)都弄成零。只流一個比例系數(shù)。從小到大調(diào),調(diào)到有震蕩出現(xiàn),停,確定此時的T。(臨界比例度法,你可以具體搜一下)。這樣3個參數(shù)才是針對你這樣的反饋形式的實際可行的參數(shù)。

當(dāng)然如果你把輸出乘以一個系數(shù)(隨便什么數(shù),0.3假如),那么你的反饋條件變了,再重新找一組適合這種反饋條件的參數(shù)。

這是我的理解,可能一點也不對,我現(xiàn)在這樣搞的,但控制硬件還沒做完呢,所以也沒試,我在搞參數(shù)輸入的調(diào)整程序。你看我理解的是不是有問題。對你有沒有啟發(fā)。權(quán)作參考。34樓:控制器于2006-6-813:24:00致niaofencha

根據(jù)你的做法,那么不管如何調(diào)整比例項,溫度控制的范圍一直都是固定不變的??

這和我讀書總結(jié)中第3條正好相反,我的想法是隨著比致例系數(shù)的調(diào)整,控制范圍是會變化的才對。

根據(jù)曉奇文章中說法:Kp=基本時間總周期/控制范圍

我的理解是:這的‘基本時間總周期’指的就是200等份,從上面的式子看,比例系數(shù)與控制范圍明顯是有關(guān)聯(lián)的啊???

chunyang老先生要是光顧這個帖子就好了,他一向很熱心幫助我們這些菜鳥的。35樓:hartcomm于2006-6-817:16:00..

"微分和積分環(huán)節(jié)而只有簡單的比例環(huán)節(jié),那么肯定沒有超出全功率輸出的計算結(jié)果;所以當(dāng)只有比例控制的時候,并不需要做超限處理,但當(dāng)加入了微分和積分環(huán)節(jié)后,PID計算出的結(jié)果向輸出量轉(zhuǎn)化時,肯定會有可能超出輸出極限的結(jié)果"

我只同意這一句。其他的都不是一般的通用的方法,只是專用的方法,除非有人設(shè)計過跟你一樣的東西,才會對一些特有的細節(jié)那么清楚。既然是特有的不妨邊試驗邊設(shè)計36樓:控制器于2006-6-817:35:00這一句對通用PID控制也不對嗎?

3:比例系數(shù)是可以調(diào)整的,但隨著比例系數(shù)的改變,控制器的控制范圍也會相應(yīng)變化……

hartcomm再幫忙多講一點??!

各位作過PID的老大都‘冒頂’講幾句把……37樓:hartcomm于2006-6-818:34:00.

"3:比例系數(shù)是可以調(diào)整的,但隨著比例系數(shù)的改變,控制器的控制范圍也會相應(yīng)變化……"

不通用,通用控制器的參數(shù)只在整定時調(diào)整,整定后時不變的

另外控制器好像沒有“控制范圍”一說

我覺得你的設(shè)計有些“先進”,支持動態(tài)調(diào)整參數(shù)。

既然是有些特殊的控制器,就不必拘泥于通用方法,能達到控制要求就行

呵呵,說到arm等什么的一大堆人唧唧歪歪,到了這種問題,沒幾個人上來唧歪了。

我沒做過控制器,所以不能講得很具體。38樓:chunyang于2006-6-819:00:00一般來說,參數(shù)都是用湊的辦法試出來的

根據(jù)公式計算雖好,但問題是你很難得到控制對象及環(huán)境的數(shù)學(xué)模型,沒有正確的數(shù)學(xué)模型算也白搭。工程上一般都是用湊的辦法,溫度控制一般都是大滯后特性的,所以比例控制多數(shù)情況下即可工作得很好,微分環(huán)節(jié)的引入可以提高快速性,但容易造成過調(diào),而很多溫控系統(tǒng)是升溫容易降溫難,所以微分環(huán)節(jié)不宜加得過大。積分環(huán)節(jié)則有助于系統(tǒng)的穩(wěn)定性并抑制過調(diào),但P、I、D三個參數(shù)會彼此影響,牽一發(fā)而動全局,搞不好系統(tǒng)還會發(fā)散。所以,實際整定參數(shù)時,先不用微分和積分環(huán)節(jié),先加比例環(huán)節(jié),能用則用,品質(zhì)達不到要求時再引入微分、積分環(huán)節(jié),同樣,引入ID環(huán)節(jié)后,應(yīng)逐量加入并保持定值,再通過調(diào)節(jié)P環(huán)節(jié)來看效果,直至滿意。這是普遍的工作方法,經(jīng)驗是這個過程中很重要的,只能靠多試、多總結(jié)來提高。39樓:chunyang于2006-6-819:06:00剛才看了一下各個跟帖

hartcomm的口訣可謂是很好的經(jīng)驗總結(jié),這方面沒有什么一招制敵的絕招,只能試,反復(fù)試,有了口訣更有指導(dǎo)意義。40樓:IceAge于2006-6-820:51:00回到那個溫控系統(tǒng)

即便沒有系統(tǒng)模型,也必須知道系統(tǒng)特性。溫控系統(tǒng)(確切地說,應(yīng)該是一個加熱系統(tǒng))中的被控對象一般是穩(wěn)定的。

首先,通過測量穩(wěn)態(tài)可以確定Kp:比如:

controller=0%:pwm占空比0%,穩(wěn)態(tài)相對溫度(相對環(huán)境)為0,

controller=10%:pwm占空比10%,穩(wěn)態(tài)相對溫度為10degree

...

controller=50%:pwm占空比50%,穩(wěn)態(tài)相對溫度為40degree

...

controller=100%:pwm占空比100%,穩(wěn)態(tài)相對溫度為70degree

這樣,實際上已經(jīng)得到了加熱時的Kp(如果你知道控制理論,可以用這些數(shù)據(jù)擬合系統(tǒng)模型,以便計算及仿真),下一步則是整定Ki來調(diào)節(jié)瞬態(tài)特性,Kd容易引入噪聲,這種系統(tǒng)不用Kd也罷。

41樓:控制器于2006-6-98:29:00TO

hartcomm

我沒有動態(tài)調(diào)整參數(shù)啊?

我說的意思就是參數(shù)整定的時候,假如比例系數(shù)整定為不同的值,那么這個控制器的控制范圍就做相應(yīng)的調(diào)整。42樓:niaofencha于2006-6-910:51:00關(guān)鍵是怎樣把PID調(diào)節(jié)的輸出變作控制的輸入

通過計算會得到PID調(diào)節(jié)的輸出,我們是直接當(dāng)成3秒內(nèi)的加熱時間(或時間比例)還是說經(jīng)過標度變換折算成加熱時間(或時間比例),哪位老師直接講一下。43樓:控制器于2006-6-914:54:00我個人認為比例系數(shù)就已經(jīng)決定了如何變換為輸出量

從曉奇老師比例系數(shù)的定義也能看的出來,

比例系數(shù)=基本時間總周期/控制范圍

我個人理解這個‘基本時間總周期’就是你把這個3S到底分成多少控制等份!

在他的例子中,他是把2分鐘平均分為200等份,

所以也就是:比例系數(shù)=200等份/控制范圍

以上只是我的個人理解,沒有得到眾多‘大蝦’的認可,也不知道是對是錯,問了半天也沒人告訴我到底是對是錯,文章是曉奇老師寫的,可惜曉奇老師不來這兒,如果能向原作者請教一下就好了。

PS:這就是一個簡單的設(shè)計,大家都喜歡套出一大堆概念,俺比較愚笨……

這個產(chǎn)品的要求可做如下描述:設(shè)計一個PID溫度控制器,只有加熱沒有制冷,溫度控制的最大范圍200度,也就是如果溫度目標值為240度,那么控制范圍為40~240度,如果控制范圍為500度,那么控制范圍為300度~500度(當(dāng)然,溫度測量范圍不會做那么寬,只是為了說明控制的范圍而做的假設(shè)),控制采用繼電器每2分鐘內(nèi)通、斷時間比例來輸出,要求把2分鐘分為200等份,控制繼電器的通、斷時間比例也就是控制通、斷的時間等份數(shù)。44樓:seuqly于2006-6-922:49:00

這玩藝不是看過幾本書就能搞出來的,樓主不要浪費時間了45樓:控制器于2006-6-108:14:00做也需要知道做的方法?。?/p>

46樓:chunyang于2006-6-1011:57:00你陷入了歧途

脫離控制對象的數(shù)學(xué)模型來談什么“比例系數(shù)”根本沒有任何意義,不同對象、不同環(huán)境,PID參數(shù)根本就不同,沒有什么普遍有效的簡單方法,你企圖找的簡單方法,已將你引入歧途,看來你確實應(yīng)看看控制論方面的書籍,看書要解決的不是具體方法問題,而是可以先解決認識問題,這是根本,沒有相關(guān)知識,你以后做這一行能達到的高度會很有限。47樓:xuyaqi于2006-6-1014:12:00我來說說看

1算出來的132.55就是你在原來的輸出基礎(chǔ)上再增加的值,比如原來是開1.5秒關(guān)1.5秒(輸出50%)。那么你就應(yīng)該在原來開1.5秒的基礎(chǔ)上再加132.55,單位是什么,既可是秒也可是毫秒,這全仗你采用的kp,ki,kd值了,本身這些就是一些系數(shù)嘛,用不同的系數(shù)就可算出不同的輸出增量。

2比例系數(shù)Kp和采樣周期T沒關(guān)系

積分系數(shù)Ki=kp*T/Ti

微分系數(shù)Kd=Kp*Td/T

不知我是否講明白了?48樓:控制器于2006-6-229:26:00最近又認真看了一遍書

并仔細看了一下各位的回帖,重新總結(jié)了一下,請各位老大看看。

如下:

用增量公式算出的值和輸出有必然聯(lián)系,對于我所舉的那個溫度控制的例子來講,假如溫度控制的范圍為200度,那么不管如何調(diào)整Kp、Ki、Kd參數(shù),這個控制范圍都是不會變的,只是隨著Kp、Ki、Kd的調(diào)整,其計算輸出量會超出最大可輸出量,例如在溫度偏差在150度的時候,就已經(jīng)達到最大輸出量而無法再增加了,那么在偏差超出150度后輸出肯定都是最大輸出量值,至于計算值和輸出量值間的換算關(guān)系,可隨意先假設(shè)一個值,然后根據(jù)實際系統(tǒng)調(diào)試確定(但這個值先假設(shè)為多少比較合適呢?這還有點糊涂。)

我以前理解為假如系統(tǒng)的控制范圍為0~200度,目標值在0~200度內(nèi)任意設(shè)定時,Kp、Ki、Kd這三個參數(shù)一直都是不變化的,但這好象錯的比較徹底,似乎應(yīng)該是只要目標值改變了,Kp、Ki、Kd三個參數(shù)就要做相應(yīng)的調(diào)整才對,不知道這樣理解是否正確?

但這又給我?guī)硪粋€新的疑惑,我看到的恒溫槽,溫度都是可以調(diào)整的,難道每調(diào)整一次目標溫度,恒溫槽都自己自整定一下參數(shù)嗎?

各位老大們幫忙看看……49樓:控制器于2006-6-2216:45:00更新的看不見了

頂了……50樓:ft2006095于2006-6-2310:21:00我來說兩句

對樓主所說的:

“我以前理解為假如系統(tǒng)的控制范圍為0~200度,目標值在0~200度內(nèi)任意設(shè)定時,Kp、Ki、Kd這三個參數(shù)一直都是不變化的,但這好象錯的比較徹底,似乎應(yīng)該是只要目標值改變了,Kp、Ki、Kd三個參數(shù)就要做相應(yīng)的調(diào)整才對,不知道這樣理解是否正確?

但這又給我?guī)硪粋€新的疑惑,我看到的恒溫槽,溫度都是可以調(diào)整的,難道每調(diào)整一次目標溫度,恒溫槽都自己自整定一下參數(shù)嗎?”。

我認為:

一般的控制器出廠時是設(shè)定好PID參數(shù)的,或者在現(xiàn)場整定過。

改變目標值(給定量)后,PID參數(shù)一般不需要修改,因為只是改變給定值,并沒有改變控制對象,函數(shù)關(guān)系沒有改變。51樓:xuyaqi于2006-6-2311:19:00ft2006095說的不對,一般的控制器PID參數(shù)

要自己設(shè)定,除非是專用的控制器。PID參數(shù)是隨著控制對象的不同而需要改變的,但如恒溫槽你只改變給定值,因?qū)ο筇匦愿淖儾淮?,原來的PID參數(shù)也是可以用的。52樓:yinrichun于2006-6-2312:27:00學(xué)習(xí)一下

53樓:ft2006095于2006-6-2312:40:00To:xuyaqi

可能是我沒有表達清楚,我是說改變給定值后不要調(diào)整PID參數(shù),改變控制對象后傳遞函數(shù)變了,PID參數(shù)當(dāng)然要變化。54樓:控制器于2006-6-248:34:00ft2006095&xuyaqi說的都有道理

我重新想了一下,恒溫槽確實不必要改變這三個參數(shù)。

下面的總結(jié)是對是錯呢?請各位老大看看……

用增量公式算出的值和輸出有必然聯(lián)系,對于我所舉的那個溫度控制的例子來講,假如溫度控制的范圍為200度,那么不管如何調(diào)整Kp、Ki、Kd參數(shù),這個控制范圍都是不會變的,只是隨著Kp、Ki、Kd的調(diào)整,其計算輸出量會超出最大可輸出量,例如在溫度偏差在150度的時候,就已經(jīng)達到最大輸出量而無法再增加了,那么在偏差超出150度后輸出肯定都是最大輸出量值,至于計算值和輸出量值間的換算關(guān)系,可隨意先假設(shè)一個值,然后根據(jù)實際系統(tǒng)調(diào)試確定(但這個值先假設(shè)為多少比較合適呢?這還有點糊涂。)55樓:stycx于2006-6-2410:11:00今天看了上面的帖子,說幾句自己的理解,歡迎拍磚

我覺得

1、增量加原來的量如果大于100,就當(dāng)100處理;小于0,當(dāng)0處理。

2、Kp、Ki、Kd是需要根據(jù)實際系統(tǒng)來確定的,理論上無論怎么設(shè)定都會達到你所需要的控制目標值,但波動度、速度就難說。

3、如果你是設(shè)計pid控制器的話,用直接計算的公式不是更簡單嗎

很早就對pid感興趣,但沒系統(tǒng)看過書,今天看了曉奇老師的關(guān)于pid,收獲不少。56樓:chuandaoxy于2006-6-2410:19:00matlabzuihaodexuanze

57樓:控制器于2006-6-2417:34:00TO

stycx

2、Kp、Ki、Kd是需要根據(jù)實際系統(tǒng)來確定的,理論上無論怎么設(shè)定都會達到你所需要的控制目標值,但波動度、速度就難說。

那怎么可能,如果我這三個值都是0呢?58樓:stycx于2006-6-257:39:00哈哈,三個值都是0還真不行。

59樓:xuyaqi于2006-6-257:56:00我說的“ft2006095說的不對”指的是

“一般的控制器出廠時是設(shè)定好PID參數(shù)的”不是指的其他。

另外stycx說的第二條“理論上無論怎么設(shè)定都會達到你所需要的控制目標值”是錯誤的!如參數(shù)設(shè)置不合適,控制結(jié)果可能變成發(fā)散振蕩,在工程實際中有可能造成災(zāi)難性后果。60樓:stycx于2006-6-2517:51:00我都聲明了“但波動度、速度就難說?!?/p>

其實我說那句話的目的是想說:

不同的Kp、Ki、Kd,雖然都可達到控制目標值,但控制效果是不同的。61樓:xuyaqi于2006-6-267:00:00stycx的理解還是有問題,

比如控制一個恒溫槽“達到控制目標值”的意思應(yīng)該是,系統(tǒng)穩(wěn)定在一個確定的的溫度值(給定值)。但如果實際結(jié)果是溫度永遠在波動,而且波動越來越大(發(fā)散振蕩),這能是“理論上無論怎么設(shè)定都會達到你所需要的控制目標值”,事實上不合適的整定參數(shù)確實會使系統(tǒng)處于不穩(wěn)定狀態(tài),甚至發(fā)散振蕩。62樓:控制器于2006-6-268:16:00還是幫我看看我的疑問把

……至于計算值和輸出量值間的換算關(guān)系,可隨意先假設(shè)一個值,然后根據(jù)實際系統(tǒng)調(diào)試確定(但這個值先假設(shè)為多少比較合適呢?這還有點糊涂。)……

這怎么解決。63樓:控制器于2006-6-268:20:00從增量公式看三個參數(shù)

增量值=kp*[e(k)-e(k-1)]+Ki*e(k)+Kd*[e(k)-2e(k-1)+e(k-2)]

只要Kp、Ki、Kd滿足一定條件,就有可能隨著偏差變化到一定程度后,增量值=0,這個時候,還存在著偏差,沒有達到目標值,控制器就沒有輸出了。64樓:ft2006095于2006-6-269:08:00to"xuyaqi"

我那句:“一般的控制器出廠時是設(shè)定好PID參數(shù)的”是說錯了,當(dāng)時沒有注意。65樓:ft2006095于2006-6-2611:30:00tolz

當(dāng)增量值=0時,前一時刻的控制量應(yīng)該不是0,相加后的當(dāng)前時刻控制量就不是0,仍然可以控制目標。

當(dāng)輸出的控制量為0時,說明目標量與給定量相等,也就不用控制了,但是動態(tài)平衡改變時就又有偏差了,控制器就又有事情可以干了。66樓:stycx于2006-6-2620:43:00你就隨便給個值好了

》……至于計算值和輸出量值間的換算關(guān)系,可隨意先假設(shè)一個值,然后根據(jù)實際系統(tǒng)調(diào)試確定(但這個值先假設(shè)為多少比較合適呢?這還有點糊涂。)……

》這怎么解決。

你就隨便給個值好了,就當(dāng)Kp、Ki、Kd再乘多個系數(shù)而已67樓:liht1634于2006-6-2810:27:00作個記號

68樓:控制器于2006-6-2817:46:00謝謝stycx

我也是如此想的,隨便給一個值,也就當(dāng)作三個參數(shù)同比例改變了。

ft2006095這段分析的有理。

ft2006095發(fā)表于2006-6-2611:30侃單片機←返回版面

tolz

當(dāng)增量值=0時,前一時刻的控制量應(yīng)該不是0,相加后的當(dāng)前時刻控制量就不是0,仍然可以控制目標。

當(dāng)輸出的控制量為0時,說明目標量與給定量相等,也就不用控制了,但是動態(tài)平衡改變時就又有偏差了,控制器就又有事情可以干了

呵呵,轉(zhuǎn)悠了半天才發(fā)現(xiàn),好象根本沒有轉(zhuǎn)化的問題。

整理一下想法:

設(shè)定好三個參數(shù)后,采用增量法計算出輸出值,就把系數(shù)假設(shè)為1好了,什么都不變,把這個值+上一次輸出值輸出就可以了,如果超出最大值,按照最大值輸出,如果小于0,就關(guān)閉輸出;如果這樣發(fā)生PID控制不對,說明三個參數(shù)設(shè)置不合理,重新整定參數(shù)就可以了,整定后也可以再細調(diào)參數(shù)得到更好的控制效果。

對了嗎?69樓:控制器于2006-6-298:42:00對了嗎?

70樓:xuyaqi于2006-6-2916:05:00原理確實是如此簡單,

原理確實是如此簡單,但在實際控制中就不簡單了,如滯后,熱容都會使控

制非常困難。你實際參與了才知道其中的難度。自動控制是一門非常復(fù)雜的學(xué)問,人類已經(jīng)研究了幾百年。

但就參數(shù)整定也不是你想的那么簡單,得弄清每個參數(shù)的物理含義。71樓:stycx于2006-6-2921:00:00樓主的理解對呀,樓主開始試驗了嗎

把參數(shù)設(shè)計成可調(diào)的就可以開始試驗了

不一定要等理論計算出所有參數(shù)才開始試驗呀72樓:mikezhong于2006-6-2923:39:00PID不難.

承接專業(yè)PID控制器設(shè)計,自適用,自整定功能,

郵箱:mike.zhong@126.com73樓:高勇于2006-6-3011:12:00樓主:我認為你一開始就搞錯了

我對PID算法的理解。

針對樓主你的第一個貼子

“我要做的是一個溫度控制系統(tǒng),用調(diào)節(jié)加溫時間比例來調(diào)節(jié)溫度。

如果我目標溫度是22度,初始溫度是0度,采樣周期為3s,繼電器輸出周期等同采樣周期3S,假設(shè)把輸出周期平分為100份。

比例系數(shù)假設(shè)為Kp=0.5,Ki=0.025,Kd=5.5

那么開始計算,系統(tǒng)剛開始工作的時候偏差為22度,我根據(jù)增量公式:

kp*[e(k)-e(k-1)]+Ki*e(k)+Kd*[e(k)-2e(k-1)+e(k-2)]

=0.5*22+0.025*22+5.5*22

=132.55

算得的結(jié)果為132.55.我想不明白這個132.55究竟是代表什么?

直接說就是如何如何把PID計算結(jié)果變換為控制繼電器工作的輸出時間?

另外就是采樣周期和Kp、Ki、Kd有什么關(guān)系??”

我認為:

1、K只能是自然數(shù),因為PID算法中K是指采樣的次數(shù)。即第幾次采用。所以你的試中e(K)-e(k-1)表示的是這要當(dāng)前這一次采樣的值與設(shè)定值的偏差和上一次采用值與設(shè)定值的偏差的差。在你的系統(tǒng)中采用周期是3秒,也就是現(xiàn)在這次采用的溫度與3秒鐘前的溫度差(此值表示了目前的溫度變化的快慢,即PID算法中的“dy/dt~)。所以你的的Ki就是指采用的次數(shù)。

2、式中“Ki*e(K)”是計算PID算法的積分項。

3、式中“Kd*[e(k)-2e(k-1)+e(k-2)”計算出PID算法的微分項。

4、你式中的Kp即是一個比例系數(shù),即K值越大,則調(diào)整溫度的速度越快,但過不宜過大,但必須大于等于1。

5、式中的Kd我認為應(yīng)該是你的微分時間除以你的采用周期。在你的系統(tǒng)中你采用周期3S。如果你的微分時間取9S則你的Kd應(yīng)該是3。

6、因為你的式中少了一個項,少了一個系統(tǒng)基準控制量。如果加上該量則你的式子應(yīng)該為:

kp*][e(k)-e(k-1)]+Ki*e(k)+Kd*[e(k)-2e(k-1)+e(k-2)]+Uo

7、上式中Uo就是你的系統(tǒng)損失溫度應(yīng)該補償?shù)牧?。如果該量則大于你的系統(tǒng)損失溫度的補償量過半,則你的溫度系統(tǒng)的溫度會在你設(shè)定值的上邊波動。如果取值小的話,則會在你設(shè)定的溫度的下邊波動。

以上僅為本人的理解。74樓:控制器于2006-6-3013:48:00TO

高勇

你所說的內(nèi)容,我有幾點不太明白。

1:K只能是自然數(shù),因為PID算法中K是指采樣的次數(shù)……所以你的的Ki就是指采用的次數(shù)。

Ki怎么也成了采樣的次數(shù)了?

4:你式中的Kp即是一個比例系數(shù),即K值越大,則調(diào)整溫度的速度越快,但過不宜過大,但必須大于等于1。

我也是這么想的,Kp即應(yīng)該大于等于1,但沒有找到任何理論依據(jù)!?

5:微分時間根據(jù)什么確定?

6、7:U0指什么啊?指上一次的輸出量還是系統(tǒng)損失能量而應(yīng)該加入的輸出補償嗎?這個輸出補償根據(jù)什么確定?。亢孟笙到y(tǒng)處于不同的溫度,需要補償?shù)哪芰渴遣灰粯拥陌。?/p>

謝謝大家的回復(fù)……75樓:高勇于2006-6-3015:40:00回復(fù)樓主

為本人的理解:

1、你的式中的K應(yīng)該指的是當(dāng)前采用值。所以式中的函數(shù)e(K)指的就是當(dāng)前采用指與給定值的偏差。那么K-1指的是上一次采用值,同樣函數(shù)e(K-1)指的是上一次采樣與給定值的偏差。式中e(K)-e(k-1)表示的是這要當(dāng)前這一次采樣的值與設(shè)定值的偏差和上一次采用值與設(shè)定值的偏差的差。

所以:

kp*[e(k)-e(k-1)]+Ki*e(k)+Kd*[e(k)-2e(k-1)+e(k-2)]

=0.5*22+0.025*22+5.5*22

的錯誤就是把函數(shù)當(dāng)作四則運算來計算。

2、Ki指的的的積分時間中的積分時間項,同樣Ki*e(K)也是函數(shù),它表示的是在你的規(guī)定的積分時間中的采用的次數(shù)的每次偏差的總和。

3、上一次的Kd我打錯了不是微分時間,Kd是微分時間除以采用周期的值:一般微分時間取采用周期的整倍數(shù)。這樣Kd就是一個正整數(shù)。76樓:高勇于2006-6-3016:00:00至樓主

象樓上的mikezhong所講的,PID的算法不難,因為PID發(fā)展到現(xiàn)在已經(jīng)有好幾代了。其公式的表示也有好多種。

圖中的這個公式就是溫度控制中的PID公式。77樓:高勇于2006-6-3016:02:00公式

78樓:tc9148于2006-6-3017:40:00!

我們老師指講了《自控》的不到二分之一。本來我對自控非常感興趣,但是被他整的郁悶了。完全的脫離實際。79樓:xuyaqi于2006-7-111:10:00高勇講的“Ki就是指采用的次數(shù)”不對,

Ki是積分系數(shù)?!癒p必須大于等于1”不對,Kp可以小于1。

“Uo”應(yīng)該是目前的輸出值即歷史輸出值的積分。

高勇講“kp*[e(k)-e(k-1)]+Ki*e(k)+Kd*[e(k)-2e(k-1)+e(k-2)]

=0.5*22+0.025*22+5.5*22的錯誤就是把函數(shù)當(dāng)作四則運算來計算”這句話不對,這個增量式PID控制算法是將連續(xù)PID算法微分方程進行離散化處理的結(jié)果,確實只需要“四則運算”來計算。80樓:高勇于2006-7-114:09:00謝謝

謝謝樓上的朋友,給我?guī)韺ID算法的進一步了解。81樓:解牛于2006-7-117:41:00偏差?

你們說的偏差是不是就是穩(wěn)態(tài)誤差呢?82樓:hartcomm于2006-7-213:56:00關(guān)于U0

上面那個公式是位置型算式,U0應(yīng)該是調(diào)節(jié)器輸入偏差為零時的輸出初值。

或許理解為““Uo”應(yīng)該是目前的輸出值即歷史輸出值的積分?!庇行┟銖姟?/p>

控制器整定前有個手操,實際上可能是設(shè)定U0。

關(guān)于手操現(xiàn)在沒什么印象,模模糊糊的印象。83樓:xuyaqi于2006-7-218:21:00關(guān)于U0

U0應(yīng)該是控制開始時輸出初值。

我的那句““Uo”應(yīng)該是目前的輸出值即歷史輸出值的積分?!笔轻槍υ隽渴剿惴ǘf的,公式是Uk=Uk-1+增量Uk,嚴格地說“U0”應(yīng)該是“Uk-1”這句話才正確。

增量Uk=Kp[ek-ek-1+(T/Ti)*ek+(Td/T)*(ek-2*ek-1+ek-2)]

Uk=Kp[ek-ek-1+(T/Ti)*ek+(Td/T)*(ek-2*ek-1+ek-2)]+Uk-1

對“hartcomm”的提醒表示感謝。84樓:高勇于2006-7-38:23:00至xuyaqi

照你這么說我對U0理解為:Uo就是你的系統(tǒng)損失溫度應(yīng)該補償?shù)牧?。如果該量則大于你的系統(tǒng)損失溫度的補償量過半,則你的溫度系統(tǒng)的溫度會在你設(shè)定值的上邊波動。如果取值小的話,則會在你設(shè)定的溫度的下邊波動。還是有道理的嗎?85樓:控制器于2006-7-39:15:00hartcomm和xuyaqi理解的U0好象不是一個參數(shù)!

hartcomm理解成了一個公式計算后需要補償?shù)臄?shù)值。

xuyaqi理解的是增量式計算中的上一次位置輸出值。

至于hartcomm說的什么手操,俺沒有聽說,不知道是什么?!86樓:控制器于2006-7-39:20:00高勇理解的U0好象也是一個需要補償?shù)臄?shù)值

高勇發(fā)表于2006-7-308:23侃單片機←返回版面

至xuyaqi

照你這么說我對U0理解為:Uo就是你的系統(tǒng)損失溫度應(yīng)該補償?shù)牧?。如果該量則大于你的系統(tǒng)損失溫度的補償量過半,則你的溫度系統(tǒng)的溫度會在你設(shè)定值的上邊波動。如果取值小的話,則會在你設(shè)定的溫度的下邊波動。還是有道理的嗎?

我個人認為是錯誤的,因為這不符合PID控制的規(guī)律:減少偏差。

用溫度控制舉例就是:當(dāng)有上偏差后,肯定要輸出控制減少上偏差,因為溫度的滯后性,肯定要有一點過沖,從而出現(xiàn)下偏差,控制器繼續(xù)輸出控制減少下偏差,當(dāng)偏差小于控制精度時,控制器就無法分辨偏差了,此時認為無偏差維持穩(wěn)態(tài),如此循環(huán)。87樓:hartcomm于2006-7-317:22:00u0的理解

對于調(diào)節(jié)起始時間的不同,那么對u0的理解就不同。

一般認為在pid調(diào)節(jié)開始時的時刻為t=0。當(dāng)然也可以以pid調(diào)節(jié)后的某一時間認為開始時間,那么此時的值就為u0。

另外這兒討論的控制器其實不是一正規(guī)的控制器,是一種特殊化的調(diào)節(jié)器。控制系統(tǒng)在自動控制前有個手動控制,手動控制使系統(tǒng)的偏差很小時,在切換至自動控制,進行pid參數(shù)整定,整定完畢設(shè)置完三個參數(shù)后,完全自動運行。如果在一個溫控系統(tǒng)中,先手動操作使溫度至設(shè)定值,在切換至自動控制。

“Uo就是你的系統(tǒng)損失溫度應(yīng)該補償?shù)牧俊币彩且环N特殊化的認識,不很正規(guī)。

如果要系統(tǒng)了解,可以看看控制儀表

過程控制等書88樓:hartcomm于2006-7-317:33:00還有一點大家注意了沒有

并不是沒有偏差就沒有輸出。

如果偏差為零,照樣有輸出。只是輸出值沒有增大或減小。

就像沒有加速度一樣,照樣有速度,加速度為正則速度增大,加速度為負則速度減小。89樓:IceAge于2006-7-322:01:00建議先掌握些基本的控制理論

PID的laplace基本公式是:

f(s)=Kp+Ki/s+Kd*s

轉(zhuǎn)到離散域不同的轉(zhuǎn)換形式(時域,zdomain方法)可以得出不同的離散公式,精髓不是在于某一公式的寫法,而是理解基本公式運作的本質(zhì)。

增量公式Uk=Kp[ek-ek-1+(T/Ti)*ek+(Td/T)*(ek-2*ek-1+ek-2)]顯然是從time/zdomain直接轉(zhuǎn)換得來(我以前在dsp貼過sdomain-->zdomain-->differentialequation).

Uk里的Kp不再是純粹Kp,而是包含了原來的kd,ki,看看推導(dǎo)過程就明白了。

kp*[e(k)-e(k-1)]----e是誤差,e(k)-e(k-1)會很小,從而失去原本的kp的意義。

一個pid公式;

U(k)=Kp*e(k)+I(k)+D(k)

I(k)=I(k-1)+Ki*Ts*e(k)

D(k)=Ki*(e(k)-e(k-1))/Ts

----實際應(yīng)用中,可忽略此項。

90樓:xuyaqi于2006-7-322:07:00“手操”即“手操器”,手動直接操縱“輸出”的設(shè)備,

一般重要的控制系統(tǒng)設(shè)有“手操器”由“自動,手動”轉(zhuǎn)換開關(guān)來選擇自動,還是手動。手動一般用于事故處理,系統(tǒng)不正常等異常情況。

“U0”是數(shù)字PID位置算法中才有的,它是由不定積分轉(zhuǎn)為定積分所具有的積分常數(shù),既然是積分常數(shù)可以為任何值,可以是“0”也可以是穩(wěn)態(tài)后的“輸出值”。增量算法中是沒有“U0”的。而工程實踐中常用的是“增量算法”。91樓:IceAge于2006-7-322:09:00增量公式是對整個pid的迭代

U(k)=U(k-1)+.....

將pid復(fù)雜化了,其實只要對其中的積分迭代,kp不必參與迭代。即

I(k)=I(k-1)+...

U(k)=Kp*e(k)+I(k)+D(k)92樓:hartcomm于2006-7-417:14:00RE

pid的算式可以直接從時域(微分方程)轉(zhuǎn)換過來,積分等于求和,微分等于求斜率。

關(guān)于手操,確實在系統(tǒng)超限報警,異常等情況下人工操作。另外,在系統(tǒng)整定自動控制之前,為防止偏差過大,采用人工操作,減小偏差,再投入運行。93樓:gao8051于2006-7-421:30:00用繼電器根本不能用PID

PID本身就是為了提高控制溫度精度,你用繼電器根本無法達到目的,因為機電器控制的速度太慢了,可以用一個上下限的方法來控制就可以了94樓:IceAge于2006-7-423:01:00我算是服了你們。

“還有一點大家注意了沒有并不是沒有偏差就沒有輸出“---還是先多學(xué)些理論知識,或是仔細捉摸前面的整定口訣

討論了這么長時間的所謂增量式算法,根本沒有抓住要領(lǐng)。首先這種增量式算法本身就是機械公式(用uk-u(k-1)得出的迭代公式),再者pid輸出也不應(yīng)該建立在delta-e之上。pid的離散公式非常簡單:

U(k)=Kp*e(k)+I(k)+D(k)

I(k)=I(k-1)+Ki*Ts*e(k)

D(k)=Ki*(e(k)-e(k-1))/Ts

----實際應(yīng)用中,可忽略此項

95樓:xuyaqi于2006-7-423:56:00希望IceAge將你的增量式算法講清楚點,

比如e(k),Ts的定義計算式,否則工程中無法使用。96樓:hartcomm于2006-7-58:58:00to:IceAge

"“還有一點大家注意了沒有并不是沒有偏差就沒有輸出“---還是先多學(xué)些理論知識,或是仔細捉摸前面的整定口訣"

不知道你有沒有投運整定過控制系統(tǒng)。如果你對這句話懷疑的話,建議你自己看看控制儀表和過程控制系統(tǒng)。

不想在討論了,簡單的問題搞得這么復(fù)雜。97樓:IceAge于2006-7-520:36:00并不是沒有偏差就沒有輸出

我是說這樣的問題如果要被“注意了沒有“,只能說明最基本的數(shù)學(xué)或是控制理論都沒學(xué)好。

閉環(huán)系統(tǒng)的比例控制,一般會產(chǎn)生靜差,積分可以消除此靜差---這不應(yīng)該是個“新發(fā)現(xiàn)“。

這個pid問題討論“增量公式“,“增量公式“數(shù)學(xué)上沒有問題,實際應(yīng)用中會有問題。因為增量公式是對連續(xù)域U(t)=Kp*e(t)+Ki*Integral(e(t))+Kd*de(t)求導(dǎo):dU(t)=Kp*de(t)+Ki*e(t)+Kd*dde(t)離散后得到(也可以直接用U(k)-U(k-1)得到),這就是說,u(k)是增量deltae(k)即e(k)-e(k-1)的函數(shù)。溫度系統(tǒng),增量可能很小,導(dǎo)致截斷誤差影響很大.求導(dǎo)得出迭代公式很常見(更常見的方法是s->z->differential),但不適用

此種應(yīng)用。

pid對溫控系統(tǒng)中的應(yīng)用:

1)測量開環(huán)系統(tǒng),得到系統(tǒng)和控制器的基本特性,基本可以確定kp取值范圍

2)閉環(huán)比利控制,系統(tǒng)肯定是穩(wěn)定的,有靜差,例如目標100度,穩(wěn)態(tài)98度。

3)加入積分器,消除靜差。微分在這種大慣量系統(tǒng)可以不用。

再次重申:pid迭代公式只須對積分迭代

U(k)=Kp*e(k)+I(k)+D(k)

----e(k)是誤差,千萬別問不知道

I(k)=I(k-1)+Ki*Ts*e(k)

----Ts采樣時間,Ki*Ts可合為一

D(k)=Ki*(e(k)-e(k-1))/Ts

----實際應(yīng)用中,可忽略此項98樓:xuyaqi于2006-7-522:41:00IceAge提出的增量PID算法覺得有問題,

我覺得正確的應(yīng)該是:

增量Uk=Kp*(ek-ek-1)+Kp*(T/Ti)*ek+Kp*(Td/T)*(ek-2*ek-1+ek-2)]

注意區(qū)別

P(k)=Kp*(ek-ek-1)我的

=Kp*

ek

你的

(ek-ek-1)和ek不是一個概念

I(k)=Kp*(T/Ti)*ek

我的

=Ki*Ts*

ek+I(k-1)你的多了+I(k-1)

D(k)=Kp*(Td/T)*(ek-2*ek-1+ek-2)我的

=Ki/Ts*

(e(k)-e(k-1))

你的

(ek-2*ek-1+ek-2)和(e(k)-e(k-1))不是一個概念

希望繼續(xù)討論。99樓:IceAge于2006-7-61:18:00deltaUk=增量Uk=U(k)-U(k-1)

因為增量公式是對連續(xù)域U(t)=Kp*e(t)+Ki*Integral(e(t))+Kd*de(t)求導(dǎo):dU(t)=Kp*de(t)+Ki*e(t)+Kd*dde(t)離散后得到(也可以直接用U(k)-U(k-1)得到):

(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論