18luck网站

18luck网站電子設計 | 18luck网站Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 18luck网站 >> 18luck平台 >> PLC基礎及應用 >> 正文

PLC的PID指令

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2018-08-07
 PLC的PID指令
1. PID算法
在工業生產過程控製中,模擬信號PID(由比例、積分、微分構成的閉合回路)調節是常見的一種控製方法。運行PID控製指令,S7-200西門子plc將根據參數表中的輸入測量值、控製設定值及PID參數,進行PID運算,求得輸出控製值。參數表中有9個參數,全部為32位的實數,共占用36個字節。PID控製回路的參數表如表6-15所示。
 
表6-15  PID控製回路的參數表
地址偏移量 參數 數據格式 參數類型 說明
0 過程變量當前值PVn 雙字 nbsp;,實數 輸入 必須在0.0至1.0範圍內。
4 給定值SPn 雙字 ,實數 輸入 必須在0.0至1.0範圍內
8 輸出值Mn 雙字 ,實數 輸入/輸出 在0.0至1.0範圍內
12 增益Kc 雙字 ,實數 輸入 比例常量,可為正數或負數
16 采樣時間Ts 雙字 ,實數 輸入 以秒為單位,必須為正數
20 積分時間Ti 雙字 ,實數 輸入 以分鍾為單位,必須為正數。
24 微分時間Td 雙字 ,實數 輸入 以分鍾為單位,必須為正數。
28 上一次的積分值Mx 雙字 ,實數 輸入/輸出 0.0和1.0之間(根據PID運算結果更新)
32 上一次過程變量PVn-1 雙字 ,實數 輸入/輸出 最近一次PID運算值
典型的PID算法包括三項:比例項、積分項和微分項。即:輸出=比例項+積分項+微分項。計算機在周期性地采樣並離散化後進行PID運算,算法如下:
Mn=Kc*(SPn-PVn)+Kc*(Ts/Ti)*(SPn-PVn)+Mx+Kc*(Td/Ts)*(PVn-1-PVn)
其中各參數的含義已在表6-15中描述。
比例項Kc*(SPn-PVn):能及時地產生與偏差(SPn-PVn)成正比的調節作用,比例係數Kc越大,比例調節作用越強,係統的穩態精度越高,但Kc過大會使係統的輸出量振蕩加劇,穩定性降低。
積分項Kc*(Ts/Ti)*(SPn-PVn)+Mx:與偏差有關,隻要偏差不為0,PID控製的輸出就會因積分作用而不斷變化,直到偏差消失,係統處於穩定狀態,所以積分的作用是消除穩態誤差,提高控製精度,但積分的動作緩慢,給係統的動態穩定帶來不良影響,很少單獨使用。從式中可以看出:積分時間常數增大,積分作用減弱,消除穩態誤差的速度減慢。
微分項Kc*(Td/Ts)*(PVn-1-PVn):根據誤差變化的速度(既誤差的微分)進行調節具有超前和預測的特點。微分時間常數Td增大時,超調量減少,動態性能得到改善,如Td過大,係統輸出量在接近穩態時可能上升緩慢。
2. PID控製回路選項
在很多控製係統中,有時隻采用一種或兩種控製回路。例如,可能隻要求比例控製回路或比例和積分控製回路。通過設置常量參數值選擇所需的控製回路。
(1)如果不需要積分回路(即在PID計算中無“I”),則應將積分時間Ti設為無限大。由於積分項Mx的初始值,雖然沒有積分運算,積分項的數值也可能不為零。
(2)如果不需要微分運算(即在PID計算中無“D”),則應將微分時間Td設定為0.0。
(3)如果不需要比例運算(即在PID計算中無“P”),但需要I或ID控製,則應將增益值Kc指定為0.0。因為Kc是計算積分和微分項公式中的係數,將循環增益設為0.0會導致在積分和微分項計算中使用的循環增益值為1.0。
3. 回路輸入量的轉換和標準化
每個回路的給定值和過程變量都是實際數值,其大小、範圍和工程單位可能不同。在PLC進行PID控製之前,必須將其轉換成標準化浮點表示法。步驟如下:
(1)將實際從16位整數轉換成32位浮點數或實數。下列指令說明如何將整數數值轉換成實數。
XORD AC0,AC0  //將AC0清0 www.fpxing.com
ITD AIW0, AC0 //將輸入數值轉換成雙字
DTR AC0, AC0 //將32位整數轉換成實數
(2)將實數轉換成0.0至1.0之間的標準化數值。用下式:
實際數值的標準化數值=實際數值的非標準化數值或原始實數/取值範圍 +偏移量
其中:取值範圍=最大可能數值-最小可能數值=32 000(單極數值)或64 000(雙極數值)
偏移量:對單極數值取0.0,對雙極數值取0.5
單極(0~32000),雙極(-32000~32000)
如將上述AC0中的雙極數值(間距為64,000)標準化:
/R 64000.0, AC0  //使累加器中的數值標準化
+R 0.5, AC0     //加偏移量0.5
MOVR AC0, VD100 //將標準化數值寫入PID回路參數表中。
4. PID回路輸出轉換為成比例的整數
程序執行後,PID回路輸出0.0和1.0之間的標準化實數數值,必須被轉換成16位成比例整數數值,才能驅動模擬輸出。
PID回路輸出成比例實數數值=(PID回路輸出標準化實數值-偏移量)*取值範圍
程序如下:
MOVR VD108, AC0 //將PID回路輸出送入AC0。
-R 0.5, AC0         //雙極數值減偏移量0.5
*R 64000.0, AC0  //AC0的值*取值範圍,變為成比例實數數值
ROUND AC0,AC0  //將實數四舍五入取整,變為32位整數
DTI    AC0, AC0    //32位整數轉換成16位整數
MOVW AC0, AQW0 //16位整數寫入AQW0
5. PID指令
PID指令:使能有效時,根據回路參數表(TBL)中的輸入測量值、控製設定值及PID參數進行PID計算。格式如表6-16所示。
說明:
(1)程序中可使用八條PID指令,分別編號0-7,不能重複使用。
(2)使ENO = 0的錯誤條件:0006(間接地址),SM1.1(溢出,參數表起始地址或指令中指定的PID回路指令號碼操作數超出範圍)。
(3)PID指令不對參數表輸入值進行範圍檢查。必須保證過程變量和給定值積分項前值和過程變量前值在0.0和1.0之間。
表6-16  PID指令格式
LAD STL 說明
PID指令 PID TBL,LOOP TBL:參數表起始地址VB,
數據類型:字節
LOOP:回路號,常量(0-7),
數據類型:字節
Tags:PID指令,指令,plc指令  
責任編輯:admin
相關文章列表
西門子PLC置位、複位指令
西門子S7-200係列PLC的MODBUS通信功能 指令MBUS_CTRL
西門子PLC地址下降沿檢測指令功能說明及應用實例   NEG指令應用舉
西門子PLC的bcd_di指令
西門子PLC  S7 PLC移位寄存器指令(SHRB)
西門子PLC整數乘法指令(MUL_I)和整數除法指令(DIV_I)
西門子PLC整型數比較指令,CMP指令
西門子plc中R複位線圈指令符號與狀態字
西門子plc數據塊傳送指令的用法舉例
西門子plc有記憶接通延時定時器指令的用法舉例 梯形圖實例
西門子plc堆棧指令的用法梯形圖實例
西門子plc指令英文全稱及含義中文說明
西門子plc S7-200PLC中斷指令介紹 開關中斷、連接分離中斷
西門子PLC字整數與雙字整數之間的轉換、雙整數與實數之間的轉換
西門子PLC整數與雙整數加減法指令簡介 西門子plc指令
西門子plc編程軟件中MOV_W、MOV_B、SHR_B的含義
S7-200係列PLC其它常用指令
PLC常開觸頭與常閉觸頭和異或指令
三菱plc條件跳轉控製指令使用方法
西門子S7-200型PLC的暫停指令
西門子S7-200型PLC的看門狗指令WDR
西門子PLC S7-200係列PLC的自然對數和指數指令
西門子PLC S7-200係列PLC的三角函數運算指令
三菱PLC 三菱FX係列PLC的條件跳轉指令[CJ(FNC00)]
三菱PLC 三菱FX係列PLC的二進製浮點數的開平方指令與三角函數運算
三菱FX係列PLC的二進製浮點數的四則運算指令
三菱PLC 三菱FX係列PLC的外部設備( SER)指令
三菱FX係列PLC的時鍾運算指令
三菱FX係列PLC的浮點數運算指令
西門子plc s7-200浮點數計算 浮點數運算
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
推薦文章
最新推薦
關於我們 - 聯係我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁麵
下到頁底
晶體管查詢