December 05.2023
![]() 在工業過程控制中,按被控對象的實時數據采集的信息與給定值比較產生的誤差的比例、積分和微分進行控制的控制系統,簡稱PID控制系統。PID控制具有原理簡單,魯棒性強和實用面廣等優點,是一種技術成熟、應用最為廣泛的控制系統。 |
系統組態及配置 |
![]() | ||
可在工具箱選擇需要添加的模塊“雙擊”或“拖拽至對應位置”的方式進行模塊的添加; |
如果上圖位置沒有看到工具箱窗口, 可至<顯示>菜單欄勾選工具箱選項, 如右圖 | ![]() |
勾選設備監視 即可再設備試圖內查看該模塊對應的狀態。如下圖,其中溫度讀值單位為0.1,下圖顯示424即表示42.4℃; | |
![]() | |
雙擊模塊可在彈出的設定窗體進行溫度模塊的功能配置,如下圖; | |
![]() |
配置參數說明 |
①TC通道啟用/關閉:用于開啟或關閉對應通道的AD轉換。無用通道建議關閉可增加AD轉換時間,例開啟3個通道這該模塊總的轉換時間為3*(單通道A/D轉換時間)。 ②TC轉換時間:標準 250mS/. ch;高速100mS/ch。 ③移動平均數:在有雜訊的場合下使用此功能可可以降低量測值收到的雜訊干擾。設定數值范圍 2~10(次數)。 ④感測器種類:可設定各種傳感器類型以應對多樣化應用需求。熱電偶支持K,J,T,E,R,B,N,S,mV等多種傳感器熱電阻支持JIS或DIN ⑤溫度單位:可設定℃與℉,精度均到小數點后一位。 ⑥控制方法:設定執行溫控指令后以何種方式進行控制。開關控制:跟設定值進行比較,將輸出控制在ON(最大輸出量)或OFF(最小輸出量)轉換。PID控制:利用比例項(P)、積分動作(I)以及微分動作(D)的組合控制,可以進行更好效果的溫度控制。 ⑦控制輸出:設定在M04TC模塊/CPU發生錯誤或CPU停機時控制各通道的輸出值為開(最大輸出量)、關(最小輸出量)或保持(維持輸出量)。 ⑧后處理設定:可開啟或關閉后處理,以及欲將傳感器量程值轉換為自定量程的最大標度值以及最小標度值。功能:借由將溫度的輸入范圍映射到使用者設定的新范圍中。可是量程放大或縮小,例如將-200℃~1350℃對應到新的范圍0~10000中。 ⑨數據緩存設定:可以依照采樣周期存儲溫度量測值,每個通道最大存儲筆數為600筆,通過“數據緩存請求繼電器”與“數據緩存觸發繼電器”控制數據緩存記錄。可記錄“數據緩存觸發繼電器”ON時前多少個數據點以及后多少個數據點??梢源钆渲付―BUF(FUN115)將溫度模塊中緩存的大量數據讀取到PLC。 ⑩警報設定警報待機設定:啟動后PLC執行RUN后第一次溫度控制開始到進入第一次警報OFF范圍內不會發生報警。以避免一開始溫度就低于下限偏差值所觸發的警報。 上限輸入值:當溫度超過上限設定值的時候警報,提醒用戶溫度過高。 下限輸入值:當溫度低于下限設定值的時候警報,提醒用戶溫度過低。 上限偏差值:當溫度超過設定值+上限偏差值時,觸發上限偏差報警,提醒用戶溫度偏高。只在執行溫度控制的時候生效。 下限偏差值:當溫度小于設定值+下限偏差值時,觸發下限偏差報警,提醒用戶溫度偏低。只在執行溫度控制的時候生效 上下限偏差值:當溫度超過上限偏差值或下限偏差時,觸發上下限偏差報警提醒用戶溫度異常。只在執行溫度控制的時候生效。 死區警報:在死區內維持原本的警報狀態。防止在限位值附近波動的時候反復頻繁報警。 警報延遲數:延遲設定次數才發出警報通知,每個A/D轉換周期會檢測一次。 回路斷線偵測:偵測時間內溫度值是否有變動,如果沒有就發出警報??梢杂脕韨蓽y加溫系統是否有異常導致溫度沒有變化。 | ||
數據緩存使用時序示意圖 | ||
![]() | ||
PID指令說明 |
溫度控制之分布式運算 | ||
溫度模塊的溫度控制采用分布式控 制方式,即控制運算(PID運算)在模 塊進行可減少溫度控制時的運算對 CPU資源的暫用提升CPU效能。 | ![]() | |
指令FUN99 TPCTL2 使用說明 | ||
PLC指令使用FUN 99指令,通過FUN99指令控制溫度模塊執行對應的溫度控制。 | ||
![]() | ||
EN : ON指令執行 OFF執行斷開 UPD: 參數更新 A/M :OFF自動 ON手動輸出(由MOYT控制輸出量) H/C :OFF控制制冷 ON控制加熱 ERR :溫控錯誤(指令或模塊設定錯誤) ALM:溫控警報(溫度超設定范圍報警) | ||
SR+0:PID運算周期(單位0.1s) SR+1:溫度設定值(32bit INT 單位0.1℃) SR+3:死區,設定值±(n*0.1)% 范圍內不動作 0~10% SR+4:溫控輸出點號碼(例Y0設0,Y15設15) SR+5:PWM輸出周期(單位1s) SR+6:輸出模式(0PWM;else模擬量輸出) | ||
PR+0:比例相Kp(?ost) 手動設定或自整定生成 PR+2:積分項Ki(單位1s) 手動設定或者自整定生成 PR+3:微分項Kd(單位1s) 手動設定或自整定生成 PR+4:偏差值(?ost) PR+6:輸出上限(?ost) PWM時最大1.00 PR+8:輸出下限(?ost) PWM時最小0.00 PR+10:PID模式(0標準PID;1最小超越法) PR+11:AUTO TUNING(自整定0不啟用;1啟用) PR+12:MAUTO(0不啟用;1MOUT隨MV改變) | ||
OR+0:MV輸出量(?ost) 自動時輸出量PWM時無需使用,模擬量 時用可用以控制模擬量輸出 OR+2:MOUT手動值(?ost) | ||
WR+0:PID狀態 0空閑; 1動作中; 2錯誤; 3AUTO TUNING中 WR+1:AUTO TUNING狀態 0空閑; 1動作中; 2錯誤; 3完成; 4超時 | ||
溫度控制模式 |
ON/OFF控制方式 | ||
反饋值超過設定目標值 OFF(最小輸出量)輸出 反饋值小于設定目標值ON(最大輸出量)輸出 ON/OFF控制方式需要將模塊設定里面的《控制方式》設定為“開/關控制”。 ON/OFF控制相對簡單,但由于直接與設定值比較控制開關,反饋 值會再設定值附近上下抖動??筛鶕嶋H情況選擇使用。 | ||
![]() | ||
開關模式時,需設定參數內容如下: SR+0:運算周期(單位0.1s) SR+1:溫度設定值(32bit INT 0.1℃) SR+3:死區,設定值±(n*0.1)% 范圍內不動作 0~10% SR+4:溫控輸出點號碼(例Y0設0,Y15設15) SR+5:PWM輸出周期(單位1s) SR+6:輸出模式(0 PWM;else模擬量輸出) PR+6:輸出上限(?ost) PR+8:輸出下限(?ost) 注:PWM模式時最大值1,最小值0。如上限設0.5,則ON時(最大輸出)以占空 比50%運行。如下限設0.1,則OFF時(最小輸出)則以占空比10%運行。 | ||
PID控制 | ||
利用比例項、積分動作、微分動作進行溫度控制 | ||
![]() | ||
PID模式下所需主要設定項如下: | ||
SR+0:運算周期(單位0.1s) SR+1:溫度設定值(32bit INT 0.1℃) SR+3:死區,設定值±(n*0.1)% 范圍內不動作 0~10% SR+4:溫控輸出點號碼(例Y0設0,Y15設15) SR+5:PWM輸出周期(單位1s) SR+6:輸出模式(0 PWM;else模擬量輸出) | ||
PR+0:比例相Kp(?ost) PR+2:積分項Ki(單位1s) PR+3:微分項Kd(單位1s) PR+4:偏差值(?ost) PR+6:輸出上限(?ost) PR+8:輸出下限(?ost) PR+10:PID模式(0標準PID;1最小超越法) PR+11:AUTO TUNING(0不啟用;1啟用) PR+12:MAUTO(0不啟用;1MOUT隨MV改變) |
關于AUTO TUNING(自整定) | ||
此功能可以依據控制系統環境自動計算出合適的比例項(P)、積分時間(I)微分時間(D)參數。開始會暫時透過ON/OFF方式控制得到控制數據并計算獲取追加的PID參數,結束后將參數自動寫入到PID各自的寄存器中,并轉為PID控制方式進行溫度控制。啟動方式,運行FUN99指令前將PR+11的寄存器設定為1(啟用AUTO TUNING),完成后根據WR地址反饋狀態確認自整定狀態。完成后建議清除改寄存器,避免下次啟動仍以AUTO TUNING方式啟動。 | ||
![]() |
范例說明 |
范例系統架構如下: | ||
![]() | ||
范例使用各軟件及硬件版本如下: | ||
![]() | ||
使用ST編寫上電執行參數設定: | ||
![]() | ||
![]() | ||
溫度模塊參數設定: | ||
![]() | ||
運行效果 | ||
自整定 | ||
![]() | ||
使用自整定完成的PID參數運行 | ||
![]() ![]() | ||
范例程序檔案可關注 FAEK永宏 微信官方賬號 并發送“M PLC功能案例”關鍵字獲取 | ||
![]() |