【步驟詳解】西門子 PLC PID組態(tài)設(shè)置及PID常見問題解答
1
PID控制知識講解
S7-200 SMART能夠進(jìn)行PID控制。S7-200 SMART CPU最多可以支持8個(gè)PID控制回路(8個(gè)PID指令功能塊) PID是閉環(huán)控制系統(tǒng)的(比例-積分-微分) PID控制器根據(jù)設(shè)定值(給定)與被控對象的實(shí)際值(反饋)的差值,按照PID算法計(jì)算出控制器的輸出量,控制執(zhí)行機(jī)構(gòu)去影響被控對象的變化。 PID控制是負(fù)反饋閉環(huán)控制,能夠抑制系統(tǒng)閉環(huán)內(nèi)的各種因素所引起的擾動(dòng),使反饋跟隨給定變化。 根據(jù)具體項(xiàng)目的控制要求,在實(shí)際應(yīng)用中有可能用到其中的一部分,比如常用的是PI(比例-積分)控制,這時(shí)沒有微分控制部分。 PID算法在S7-200 SMART中的實(shí)現(xiàn) PID控制最初在模擬量控制系統(tǒng)中實(shí)現(xiàn),隨著離散控制理論的發(fā)展,PID也在計(jì)算機(jī)化控制系統(tǒng)中實(shí)現(xiàn)。 2 PID向?qū)ЫM態(tài)設(shè)置 Micro/WIN SMART提供了PID Wizard(PID指令向?qū)В?,可以幫助用戶方便地生成一個(gè)閉環(huán)控制過程的PID算法。此向?qū)Э梢酝瓿山^大多數(shù)PID運(yùn)算的自動(dòng)編程,用戶只需在主程序中調(diào)用PID向?qū)傻淖映绦?,就可以完成PID控制任務(wù)。 PID向?qū)Ъ瓤梢陨赡M量輸出PID控制算法,也支持開關(guān)量輸出;既支持連續(xù)自動(dòng)調(diào)節(jié),也支持手動(dòng)參與控制。建議用戶使用此向?qū)ID編程,以避免不必要的錯(cuò)誤。 PID向?qū)Ь幊探M態(tài)步驟: 1.在Micro/WIN SMART中的工具菜單中選擇PID向?qū)В?/span>
調(diào)用PID子程序
在用戶程序中調(diào)用PID子程序時(shí),可在指令樹的程序塊中用鼠標(biāo)雙擊由向?qū)傻腜ID子程序,在局部變量表中,可以看到有關(guān)形式參數(shù)的解釋和取值范圍。
1. 必須用SM0.0來使能 PIDx_CTRL 子程序,SM0.0 后不能串聯(lián)任何其他條件,而且也不能有越過它的跳轉(zhuǎn);如果在子程序中調(diào)用 PIDx_CTRL 子程序,則調(diào)用它的子程序也必須僅使用 SM0.0 調(diào)用,以保證它的正常運(yùn)行
2. 此處輸入過程值(反饋)的模擬量輸入地址
3. 此處輸入設(shè)定值變量地址(VDxx),或者直接輸入設(shè)定值常數(shù),根據(jù)向?qū)е械脑O(shè)定0.0-100.0,此處應(yīng)輸入一個(gè)0.0-100.0的實(shí)數(shù),例:若輸入20,即為過程值的20%,假設(shè)過程值A(chǔ)IW0是量程為0-200度的溫度值,則此處的設(shè)定值20代表40度(即200度的20%);如果在向?qū)е性O(shè)定給定范圍為0.0 - 200.0,則此處的20相當(dāng)于20度
4. 此處用I0.0控制PID的手/自動(dòng)方式,當(dāng)I0.0為1時(shí),為自動(dòng),經(jīng)過PID運(yùn)算從AQW0輸出;當(dāng)I0.0為0時(shí),PID將停止計(jì)算,AQW0輸出為ManualOutput(VD4)中的設(shè)定值,此時(shí)不要另外編程或直接給AQW0賦值。若在向?qū)е袥]有選擇PID手動(dòng)功能,則此項(xiàng)不會(huì)出現(xiàn)
5. 定義PID手動(dòng)狀態(tài)下的輸出,從AQW0輸出一個(gè)滿值范圍內(nèi)對應(yīng)此值的輸出量。此處可輸入手動(dòng)設(shè)定值的變量地址(VDxx),或直接輸入數(shù)。數(shù)值范圍為0.0-1.0之間的一個(gè)實(shí)數(shù),代表輸出范圍的百分比。例:如輸入0.5,則設(shè)定為輸出的50%。若在向?qū)е袥]有選擇PID手動(dòng)功能,則此項(xiàng)不會(huì)出現(xiàn)
6. 此處鍵入控制量的輸出地址
7. 當(dāng)高報(bào)警條件滿足時(shí),相應(yīng)的輸出置位為1,若在向?qū)е袥]有使能高報(bào)警功能,則此項(xiàng)將不會(huì)出現(xiàn)
8. 當(dāng)?shù)蛨?bào)警條件滿足時(shí),相應(yīng)的輸出置位為1,若在向?qū)е袥]有使能低報(bào)警功能,則此項(xiàng)將不會(huì)出現(xiàn)
9. 當(dāng)模塊出錯(cuò)時(shí),相應(yīng)的輸出置位為1,若在向?qū)е袥]有使能模塊錯(cuò)誤報(bào)警功能,則此項(xiàng)將不會(huì)出現(xiàn)
調(diào)用PID子程序時(shí),不用考慮中斷程序。子程序會(huì)自動(dòng)初始化相關(guān)的定時(shí)中斷處理事項(xiàng),然后中斷程序會(huì)自動(dòng)執(zhí)行。
11.實(shí)際運(yùn)行并調(diào)試PID參數(shù) 沒有一個(gè)PID項(xiàng)目的參數(shù)不需要修改而能直接運(yùn)行,因此需要在實(shí)際運(yùn)行時(shí)調(diào)試PID參數(shù)。 查看數(shù)據(jù)塊以及符號表相應(yīng)的PID符號標(biāo)簽的內(nèi)容,可以找到包括PID核心指令所用的控制回路表,包括比例系數(shù)、積分時(shí)間等等。將此表的地址復(fù)制到狀態(tài)表中,可以在監(jiān)控模式下在線修改PID參數(shù),而不必停機(jī)再次做配置。 參數(shù)調(diào)試合適后,用戶可以在數(shù)據(jù)塊中寫入,也可以再做一次向?qū)?,或者編程向相?yīng)的數(shù)據(jù)區(qū)傳送參數(shù)。 3 PID組態(tài)設(shè)置中常問問題 做完P(guān)ID向?qū)Ш?,如何知道向?qū)е性O(shè)定值,過程值及PID等參數(shù)所用的地址? 做完P(guān)ID向?qū)Ш罂稍诜柋碇?,查看PID向?qū)傻姆柋?上例中為PID0_SYM),可看到各參數(shù)所用的詳細(xì)地址,及數(shù)值范圍。 在數(shù)據(jù)塊中,查看PID指令回路表的相關(guān)參數(shù)。如圖所示: 1. 做完P(guān)ID向?qū)Ш?,如何在調(diào)試中修改PID參數(shù)? 答:可以在狀態(tài)表中,輸入相應(yīng)的參數(shù)地址,然后在線寫入用戶需要的PID參數(shù)數(shù)值,這樣用戶就可根據(jù)工藝需要隨時(shí)對PID參數(shù)、設(shè)定值等進(jìn)行調(diào)整。 2.PID已經(jīng)調(diào)整合適,如何正式確定參數(shù)? 答:可以在數(shù)據(jù)塊中直接寫入?yún)?shù)。 3.做完P(guān)ID向?qū)Ш?,能否查看PID生成的子程序,中斷程序? 答:PID向?qū)傻淖映绦颍袛喑绦蛴脩羰菬o法看到的,也不能對其進(jìn)行修改。沒有密碼能夠打開這些子程序,一般的應(yīng)用也沒有必要打開查看。 4.PID參數(shù)有經(jīng)驗(yàn)值嗎? 答:每一個(gè)項(xiàng)目的PID 參數(shù)都不一樣,沒有經(jīng)驗(yàn)參數(shù),只能現(xiàn)場調(diào)試獲得。 5.我的PID向?qū)傻某绦驗(yàn)楹尾粓?zhí)行? 答:必須保證用SM0.0無條件調(diào)用PID0_CTRL程序 在程序的其它部分不要再使用SMB34定時(shí)中斷,也不要對SMB34賦值 6.如何實(shí)現(xiàn)PID反作用調(diào)節(jié)? 答:在有些控制中需要PID反作用調(diào)節(jié)。例如:在夏天控制空調(diào)制冷時(shí),若反饋溫度(過程值)低于設(shè)定溫度,需要關(guān)閥,減小輸出控制(減少冷水流量等),這就是PID反作用調(diào)節(jié)(在PID正作用中若過程值小于設(shè)定值,則需要增大輸出控制)。若想實(shí)現(xiàn)PID反作用調(diào)節(jié),需要把PID回路的增益設(shè)為負(fù)數(shù)。對于增益為0的積分或微分控制來說,如果指定積分時(shí)間、微分時(shí)間為負(fù)值,則是反作用回路。 7.如何根據(jù)工藝要求有選擇地投入PID功能? 答:可使用'手動(dòng)/自動(dòng)'切換的功能。PID向?qū)傻腜ID功能塊只能使用SM0.0的條件調(diào)用。