找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2531|回復(fù): 25
打印 上一主題 下一主題
收起左側(cè)

我在做基于增量式PID控制算法的恒溫控制系統(tǒng),請(qǐng)問PID算法的輸出值怎么用?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
我在做基于增量式PID控制算法的恒溫控制系統(tǒng),請(qǐng)問PID算法的輸出值怎么用?用在什么地方?維持溫度恒定的相關(guān)代碼怎么編寫?

YNYR6J5[0@`7MY@~[YQAIKL.png (87.83 KB, 下載次數(shù): 34)

YNYR6J5[0@`7MY@~[YQAIKL.png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:688211 發(fā)表于 2022-5-15 20:31 | 只看該作者
希望提供參考代碼
回復(fù)

使用道具 舉報(bào)

板凳
ID:123289 發(fā)表于 2022-5-16 11:17 | 只看該作者
開關(guān)量控制的加熱器,用PID控制不是太好的,建議改成可控硅之類的連續(xù)量控制電路。

你先不要考濾PID,就設(shè)計(jì)的這個(gè)加熱模式,如何給出控制信號(hào)。
0加熱,1 停止。
加多久?停止多久?就是你要得到的達(dá)案。
分得細(xì),繼電器不停也開、關(guān),時(shí)間不長(zhǎng),觸點(diǎn)就完完了。
分得粗,控制精度就差。
人所不及,寫個(gè)程序,美其名曰【PID】,又能何如。
回復(fù)

使用道具 舉報(bào)

地板
ID:879348 發(fā)表于 2022-5-16 11:41 | 只看該作者
繼電器沒必要PID,相反要設(shè)置一個(gè)區(qū)間,防止頻繁動(dòng)作
回復(fù)

使用道具 舉報(bào)

5#
ID:688211 發(fā)表于 2022-5-16 15:03 | 只看該作者
yzwzfyz 發(fā)表于 2022-5-16 11:17
開關(guān)量控制的加熱器,用PID控制不是太好的,建議改成可控硅之類的連續(xù)量控制電路。

你先不要考濾PID,就 ...

多謝前輩指點(diǎn)。
我明明是電子信息工程專業(yè)的,不學(xué)電力電子技術(shù)、繼電器等強(qiáng)電和自動(dòng)控制原理,那位指導(dǎo)非要定這個(gè)設(shè)計(jì)高低溫測(cè)試箱的課題,前幾天給他看了我寫的文檔他居然沒給我指出來,這學(xué)期一句指導(dǎo)都不給,問他也是回答的含含糊糊。
我在網(wǎng)上看到繼電器和可控硅兩種驅(qū)動(dòng)電路,覺得繼電器更好理解,就直接拿來用了,沒想到......。
我現(xiàn)在該怎么辦?
回復(fù)

使用道具 舉報(bào)

6#
ID:688211 發(fā)表于 2022-5-16 17:13 來自觸屏版 | 只看該作者
yzwzfyz 發(fā)表于 2022-5-16 11:17
開關(guān)量控制的加熱器,用PID控制不是太好的,建議改成可控硅之類的連續(xù)量控制電路。

你先不要考濾PID,就 ...

任務(wù)書上說要設(shè)計(jì)溫度控制算法,所以我必須得用到控制算法。我是參考人家的文檔(基于PID的恒溫控制系統(tǒng))做的,他是用的可控硅驅(qū)動(dòng)加熱器和制冷器的電路。我現(xiàn)在一定要改成他那樣的可控硅電路嗎?
回復(fù)

使用道具 舉報(bào)

7#
ID:123289 發(fā)表于 2022-5-17 09:57 | 只看該作者
可控硅電路有個(gè)好處就是導(dǎo)通角決定電壓,也即決定加熱的能量大小。
所以,控制導(dǎo)通角(時(shí)間)就控制了溫度。
控制思想:
給出一個(gè)控制角TR,采回溫度值,與目標(biāo)值進(jìn)行比較得到差值DT:
相同:保持TR。
小了:減小觸發(fā)角,即增大電壓。
大了:增小觸發(fā)角,即增大電壓。
你可以用PID,完成這個(gè)控制思想。
回復(fù)

使用道具 舉報(bào)

8#
ID:161164 發(fā)表于 2022-5-17 10:39 來自觸屏版 | 只看該作者
吳鉤霜雪 發(fā)表于 2022-5-16 17:13
任務(wù)書上說要設(shè)計(jì)溫度控制算法,所以我必須得用到控制算法。我是參考人家的文檔(基于PID的恒溫控制系統(tǒng)) ...

可以改用固態(tài)繼電器(帶過零),使用方法差不多,但可以高速通斷
PID的輸出可以當(dāng)作是一個(gè)通斷時(shí)間百分比,如在10ms的周期內(nèi)通電多久
回復(fù)

使用道具 舉報(bào)

9#
ID:688211 發(fā)表于 2022-5-17 14:15 來自觸屏版 | 只看該作者
lkc8210 發(fā)表于 2022-5-17 10:39
可以改用固態(tài)繼電器(帶過零),使用方法差不多,但可以高速通斷
PID的輸出可以當(dāng)作是一個(gè)通斷時(shí)間百分比 ...

我那個(gè)圖上是普通繼電器嗎?
回復(fù)

使用道具 舉報(bào)

10#
ID:883242 發(fā)表于 2022-5-17 15:00 | 只看該作者
Microcontroller Based Temperature Monitoring & Control, Elsevier (2002).pdf (7.42 MB, 下載次數(shù): 54)
看此書9.3~9.7章,9.6可以跳過不看。如果還有什么問題,到論壇上問我。

另外,鄙視下某些只會(huì)可控硅調(diào)角的小白,這種方式干擾很強(qiáng),能不用就要盡量避免使用。加熱系統(tǒng)熱慣性很大,如果要用可控硅,可以過零調(diào)功,避免電流突變產(chǎn)生的電磁干擾。
回復(fù)

使用道具 舉報(bào)

11#
ID:688211 發(fā)表于 2022-5-17 15:07 來自觸屏版 | 只看該作者
Hephaestus 發(fā)表于 2022-5-17 15:00
看此書9.3~9.7章,9.6可以跳過不看。如果還有什么問題,到論壇上問我。

另外,鄙視下某些只會(huì)可控硅調(diào) ...

對(duì)于我這次設(shè)計(jì),選繼電器好還是可控硅好?
回復(fù)

使用道具 舉報(bào)

12#
ID:161164 發(fā)表于 2022-5-17 15:23 來自觸屏版 | 只看該作者
吳鉤霜雪 發(fā)表于 2022-5-17 14:15
我那個(gè)圖上是普通繼電器嗎?

對(duì)~
普通繼電器有線圈
固態(tài)繼電器是內(nèi)部集成了可控硅
回復(fù)

使用道具 舉報(bào)

13#
ID:883242 發(fā)表于 2022-5-17 15:34 | 只看該作者

你又不是做產(chǎn)品,意思一下就行了,什么都好。
回復(fù)

使用道具 舉報(bào)

14#
ID:688211 發(fā)表于 2022-5-17 16:00 | 只看該作者
Hephaestus 發(fā)表于 2022-5-17 15:34
你又不是做產(chǎn)品,意思一下就行了,什么都好。

照您的意思是說,我就不選用可控硅電路了?
我現(xiàn)在還是用那個(gè)普通繼電器好,還是用固態(tài)繼電器好?如果用固態(tài)繼電器,在Proteus里如何找到它呢?
回復(fù)

使用道具 舉報(bào)

15#
ID:883242 發(fā)表于 2022-5-17 16:22 | 只看該作者
吳鉤霜雪 發(fā)表于 2022-5-17 16:00
照您的意思是說,我就不選用可控硅電路了?
我現(xiàn)在還是用那個(gè)普通繼電器好,還是用固態(tài)繼電器好?如果用 ...

你要做成實(shí)物,固態(tài)繼電器壽命長(zhǎng)的優(yōu)點(diǎn)才有意義。如果只是仿真,就用普通繼電器好了,跟固態(tài)的一模一樣完全沒有任何區(qū)別。
回復(fù)

使用道具 舉報(bào)

16#
ID:688211 發(fā)表于 2022-5-17 18:42 | 只看該作者
Hephaestus 發(fā)表于 2022-5-17 15:00
看此書9.3~9.7章,9.6可以跳過不看。如果還有什么問題,到論壇上問我。

另外,鄙視下某些只會(huì)可控硅調(diào) ...

我用增量式PID控制算法實(shí)現(xiàn)溫度控制,大概怎么編寫程序?算法的輸出值又該怎么用?它是一個(gè)時(shí)間值嗎?為什么?
回復(fù)

使用道具 舉報(bào)

17#
ID:883242 發(fā)表于 2022-5-17 19:03 | 只看該作者
吳鉤霜雪 發(fā)表于 2022-5-17 18:42
我用增量式PID控制算法實(shí)現(xiàn)溫度控制,大概怎么編寫程序?算法的輸出值又該怎么用?它是一個(gè)時(shí)間值嗎?為 ...

§9.7就是怎么編寫程序,你連書看都不看?
回復(fù)

使用道具 舉報(bào)

18#
ID:94031 發(fā)表于 2022-5-17 19:40 | 只看該作者
根據(jù)你畫的圖,用18b20測(cè)溫,溫度低于給定溫度用加熱器加熱,高于給定溫度用制冷片降溫,這個(gè)系統(tǒng)用脈寬調(diào)制(PWM)執(zhí)行比較好,增量式PID控制算法的輸出值應(yīng)該是在一個(gè)周期(比如1秒)中打開加熱器或制冷器時(shí)間的增量。
回復(fù)

使用道具 舉報(bào)

19#
ID:688211 發(fā)表于 2022-5-17 21:09 | 只看該作者
xuyaqi 發(fā)表于 2022-5-17 19:40
根據(jù)你畫的圖,用18b20測(cè)溫,溫度低于給定溫度用加熱器加熱,高于給定溫度用制冷片降溫,這個(gè)系統(tǒng)用脈寬調(diào) ...

增量式PID控制算公式里的偏差單位是攝氏度,各系數(shù)中包含時(shí)間單位,為什么算法公式最終計(jì)算出的值是跟時(shí)間或者周期有關(guān)?

51hei圖片20220517210434.png (3.26 KB, 下載次數(shù): 37)

增量式PID控制算法

增量式PID控制算法
回復(fù)

使用道具 舉報(bào)

20#
ID:1026496 發(fā)表于 2022-5-17 21:40 | 只看該作者
可以參考 論壇的 開源焊臺(tái)代碼
回復(fù)

使用道具 舉報(bào)

21#
ID:883242 發(fā)表于 2022-5-17 22:48 | 只看該作者
吳鉤霜雪 發(fā)表于 2022-5-17 21:09
增量式PID控制算公式里的偏差單位是攝氏度,各系數(shù)中包含時(shí)間單位,為什么算法公式最終計(jì)算出的值是跟時(shí) ...

既然你已經(jīng)知道Ki、Kd這兩個(gè)參數(shù)里面包含時(shí)間單位,那么為什么要問“為什么算法公式最終計(jì)算出的值是跟時(shí)間或者周期有關(guān)?”這個(gè)問題???
回復(fù)

使用道具 舉報(bào)

22#
ID:161164 發(fā)表于 2022-5-18 10:14 | 只看該作者
吳鉤霜雪 發(fā)表于 2022-5-17 21:09
增量式PID控制算公式里的偏差單位是攝氏度,各系數(shù)中包含時(shí)間單位,為什么算法公式最終計(jì)算出的值是跟時(shí) ...

因?yàn)橛?jì)算出來的值是與控制方式相關(guān)的
如果你控制的是電壓型器件,計(jì)算出來的值就是電壓(如0~10V)
如果你控制的是電流型器件,計(jì)算出來的值就是電流(如4~20mA)
如果你控制的是功率型器件,計(jì)算出來的值就是功率
你現(xiàn)在要控制的是繼電器,只有開和關(guān)
但PID輸出的是模擬量
想要把模擬量轉(zhuǎn)為開關(guān)量的簡(jiǎn)單方法就是PWM
所以你算出來的就是時(shí)間相關(guān)的
回復(fù)

使用道具 舉報(bào)

23#
ID:161164 發(fā)表于 2022-5-18 10:26 | 只看該作者
而且想要系統(tǒng)穩(wěn)定,這開關(guān)時(shí)間一定要短
所以在實(shí)操中會(huì)選固態(tài)繼電器(普通繼電器在高頻開關(guān)時(shí)觸點(diǎn)會(huì)很快損壞)
但你現(xiàn)在是仿真,繼電器不存在損耗,而且proteus也沒有固態(tài)繼電器模型
如果你是交仿真作業(yè)的話,建議在繼電器上示意這是固態(tài)繼電器
如果你是交實(shí)物作業(yè)的話,一定要固態(tài)繼電器,否則很大機(jī)會(huì)不及格
回復(fù)

使用道具 舉報(bào)

24#
ID:688211 發(fā)表于 2022-5-18 18:56 來自觸屏版 | 只看該作者
lkc8210 發(fā)表于 2022-5-18 10:26
而且想要系統(tǒng)穩(wěn)定,這開關(guān)時(shí)間一定要短
所以在實(shí)操中會(huì)選固態(tài)繼電器(普通繼電器在高頻開關(guān)時(shí)觸點(diǎn)會(huì)很快損 ...

多謝前輩指點(diǎn)。我只做仿真。
回復(fù)

使用道具 舉報(bào)

25#
ID:883242 發(fā)表于 2022-5-18 21:07 | 只看該作者
lkc8210 發(fā)表于 2022-5-17 10:39
可以改用固態(tài)繼電器(帶過零),使用方法差不多,但可以高速通斷
PID的輸出可以當(dāng)作是一個(gè)通斷時(shí)間百分比 ...

你的回答都自相矛盾,帶過零的固態(tài)繼電器根本控制不了10ms的周期內(nèi)通電多久,只能控制有多少個(gè)10ms導(dǎo)通,有多少個(gè)10ms關(guān)斷。
回復(fù)

使用道具 舉報(bào)

26#
ID:161164 發(fā)表于 2022-5-19 00:07 | 只看該作者
Hephaestus 發(fā)表于 2022-5-18 21:07
你的回答都自相矛盾,帶過零的固態(tài)繼電器根本控制不了10ms的周期內(nèi)通電多久,只能控制有多少個(gè)10ms導(dǎo)通, ...

你說的得對(duì),大意了,上班摸沒想清楚就回了
因?yàn)槭羌訜崂鋮s系統(tǒng),慣性很大
帶過零的固態(tài)繼電器可以控制1秒內(nèi)通過多少個(gè)半波(0~100)來達(dá)到PID控制
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表