基于s7-200的pid算法的輸出如何控制繼電器的通斷
112.95.251.214
發(fā)布于2014-04-22 16:15
5
0
標(biāo)簽:
做的是恒溫控制,使用pid算法,經(jīng)過(guò)pid運(yùn)算后回路表的輸出mn怎么來(lái)控制繼電器的通斷?或者怎么確定占空比?
問(wèn)題補(bǔ)充:
還有其他方法嗎?能不能把pid輸出量轉(zhuǎn)化為繼電器通斷占空比的方法說(shuō)的更詳細(xì)點(diǎn)嗎?
佳答案
pid的運(yùn)算結(jié)果是0.0-1.0之間的小數(shù),
可以設(shè)定ssr以2秒鐘為1個(gè)周期,這個(gè)周期的占空比由pid運(yùn)算的結(jié)果來(lái)決定
啟動(dòng)一個(gè)1ms時(shí)基的定時(shí)器t32定時(shí)時(shí)間為2秒,程序如下
ldnt32
tont32,2000
將pid的運(yùn)算結(jié)果乘以2000.0將結(jié)果轉(zhuǎn)換為16位的整型數(shù)據(jù)后,(如存儲(chǔ)于vw0中)
和t32的當(dāng)前值進(jìn)行比較,如果t32的當(dāng)前值小于vw0時(shí),接通一個(gè)繼電器輸出,程序如下
ld系統(tǒng)運(yùn)行:i0.0
aw<=t32,vw0
=q0.0