:1800弄(電子商務(wù)園)5005.
公司主營:西門子數(shù)控系統(tǒng),V20變頻器S7-200CN.S7-200smart.S7-300.S7-400.S7-1200.6ES5 ET200 人機界面,變頻器,DP總線,MM420 變頻器MM430 變頻器MM
![]() |
參考價 | ¥670 |
訂貨量 | 1 |
更新時間:2018-11-24 13:39:05瀏覽次數(shù):398
聯(lián)系我們時請說明是化工儀器網(wǎng)上看到的信息,謝謝!
西門子變頻器6SL3210-1KE32-4UB1定制
本公司主營西門子工業(yè)自動化產(chǎn)品,原裝,*、設(shè)定值和變量都可能是現(xiàn)實的值,它們的大小、范圍和工程單位都可能不一樣。在PID指令 對這些現(xiàn)實的值進行運算之前,必須把它們轉(zhuǎn)換成的浮點型表達形式。
轉(zhuǎn)換的步是把16位整數(shù)值轉(zhuǎn)成浮點型實數(shù)值。下面的指令序列提供了實現(xiàn)這種轉(zhuǎn)換的:
ITD AIW0,AC0 //將輸入值轉(zhuǎn)換為雙整數(shù)。DTR AC0, AC0 //將32位雙整數(shù)轉(zhuǎn)換為實數(shù)。 |
下一步是將現(xiàn)實的值的實數(shù)值表達形式轉(zhuǎn)換成0.0~1.0之間的化值。下面的算式可以用于標 準化設(shè)定值或變量值:
RNorm = ((RRaw / 跨度) + 偏移量) 其中: RNorm 是現(xiàn)實數(shù)值的化的實數(shù)值表達式 RRaw 是現(xiàn)實數(shù)值的未化的或原始的實數(shù)值表達式 偏移量 對于單極性為0.0 對于雙極性為0.5 跨度是可能值減去可能值: 對于單極性數(shù)值(典型值)為32,000 對于雙極性數(shù)值(典型值)為64,000 |
下面的指令序列顯示如何在AC0中將作為以前指令序列延續(xù)的雙極性值(其跨度為64,000)進行 化:
/R 64000.0, AC0 //累加器中的化值 +R 0.5, AC0 //加上偏置,使其在0.0~1.0之間 MOVR AC0, VD100 //化的值存入回路表 |
回路輸出值一般是控制變量,比如,在汽車速度控制中,可以是油閥開度的設(shè)置?;芈份敵鍪?/span>0.0和
1.0之間的一個化了的實數(shù)值。在回路輸出可以用于驅(qū)動模擬輸出之前,回路輸出必須轉(zhuǎn)換成一個16位的標定整數(shù)值。這一,是將PV和SP轉(zhuǎn)換為值的逆。步是使用下面給出的公 式,將回路輸出轉(zhuǎn)換成一個標定的實數(shù)值:
RScal = (Mn -- 偏移量) * 跨度 其中: RScal 是回路輸出經(jīng)過標定的實數(shù)值 Mn 是回路輸出化的實數(shù)值 偏移量 對于單極性值為0.0,對于雙極性值為0.5 跨度 值域大小,可能的值減去可能的值對于單極性為32,000 (典型值) 對于雙極性為64,000 (典型值) |
這一可以用下面的指令序列完成:
MOVR VD108, AC0 //把回路輸出值移入累加器 - R 0.5, AC0 //僅雙極性有此句 *R 64000.0, AC0 //在累加器中刻度值 |
下一步是把表示回路輸出的實數(shù)刻度值轉(zhuǎn)換成16位整數(shù)??赏ㄟ^下面的指令序列來完成:
ROUND AC0,AC0 //把實數(shù)轉(zhuǎn)換為32位整數(shù) DTI AC0, LW0 //把32位整數(shù)轉(zhuǎn)換為16位整數(shù)MOVW LW0,AQW0 //把16位整數(shù)寫入模擬輸出寄存器 |
如果增益為正,那么該回路為正作用回路。如果增益為負,那么是反作用回路。(對于增益值為0.0的
I或ID控制,如果積分時間、微分時間為正,就是正作用回路;如果為負值,就是反作用回
路。)
變量和設(shè)定值是PID運算的輸入值。因此回路表中的這些變量只能被PID指令讀而不能被改寫。
輸出變量是由PID運算產(chǎn)生的,所以在每一次PID運算完成之后,需更新回路表中的輸出值, 輸出值被限定在0.0~1.0之間。當輸出由手動轉(zhuǎn)變?yōu)?/span>PID(自動)控制時,回路表中的輸出值可以用來初始化輸 出值。(有關(guān)PID指令的詳見下面的“控制"一節(jié))。
如果使用積分控制,積分項前值要根據(jù)PID運算結(jié)果更新。這個更新了的值用作下一次PID運算的輸 入,當計算輸出值超過范圍(大于1.0或小于0.0),那么積分項前值必須根據(jù)下列公式進行:
MX = 1.0 -- (MPn + MDn) 當計算輸出Mn > 1.0 或 MX = -- (MPn + MDn) 當計算輸出Mn < 0.0 其中: MX 是過的偏差的數(shù)值 MPn 是在采樣時間n時回路輸出的比例項的數(shù)值 MDn 是在采樣時間n時回路輸出的微分項的數(shù)值 Mn 是在采樣時間n時回路輸出的數(shù)值 |
這樣積分前值,一旦輸出回到范圍后,可以的響應(yīng)性能。而且積分項前值也要在
0.0~0.1之間,然后在每次PID運算結(jié)束之后。把積分項前值寫入回路表,以備在下次PID運算中 使用。
用戶可以在執(zhí)行PID指令以前修改回路表中積分項前值。在實際運用中,這樣做的目的是找到由于積 分項前值引起的問題。手工積分項前值時,必須小心謹慎,還應(yīng)保證寫入的值在0.0~1.0之間。
回路表中的給定值與變量的差值(e)是用于PID運算中的差分運算, 用戶不要去修改此值。
S7- 200的PID回路沒有內(nèi)置控制。只有當PID盒接通時,才執(zhí)行PID運算。在這種意義上說,
PID運算存在一種“自動“運行。當PID運算不被執(zhí)行時,我們稱之為“手動"。
同計數(shù)器指令相似,PID指令有一個使能位。當該使能位檢測到一個的正跳變(從0到1)。PID指令 執(zhí)行一系列的,使PID指令從手動無擾動地切換到自動。為了達到無擾動切換,在轉(zhuǎn)變 到自動控制前,必須把手動下的輸出值填入回路表中的Mn欄。PID指令對回路表中的值進行下列 ,以保證當使能位正跳變出現(xiàn)時,從手動無擾動切換到自動:
q 置設(shè)定值(SPn)=變量(PVn)
q 置變量前值(PVn--1)=變量現(xiàn)值(PVn)
q 置積分項前值(MX)=輸出值(Mn)
PID使能位的默認值是1,在CPU啟動或從STOP轉(zhuǎn)到RUN時建立。CPURUN后首
次使PID塊有效,沒有檢測到使能位的正跳變,那么就沒有無擾動切換的。
PID指令是執(zhí)行PID運算的簡單而功能強大的指令。如果需要其他處理,如檢查或回路變量的特 殊計算等,則這些處理必須使用S7-200支持的基本指令來實現(xiàn)。
如果指令的回路表起始地址或PID回路號操作數(shù)超出范圍,那么在編譯期間,CPU將產(chǎn)生編譯錯 誤(范圍錯誤),從而編譯失敗。
PID指令不檢查回路表中的一些輸入值 是否超界,您必須保證變量和設(shè)定值(以及作為輸入的和
前一次變量)必須在0.0到1.0之間。
如果PID計算的算術(shù)運算發(fā)生錯誤,那么特殊存儲器標志位SM1.1 (溢出或值)會被置1,并且中止PID指令的執(zhí)行。(要想這種錯誤,單靠改變回路表中的輸出值是不夠的,正確的是在下一 次執(zhí)行PID運算之前,改變引起算術(shù)運算錯誤的輸入值,而不是更新輸出值)。
回路表有80字節(jié)長,它的格式如表6--44所示。
表6--44 回路表
偏移量 | 域 | 格式 | 類型 | 描述 |
0 | 變量 (PVn) | 實型 | 輸入 | 變量,必須在0.0~1.0之間 |
4 | 設(shè)定值 (SPn) | 實型 | 輸入 | 包含的設(shè)定值必須標定在0.0和1.0之間。 |
8 | 輸出 (Mn) | 實型 | 輸入/ 輸出 | 輸出值,必須在0.0~1.0之間 |
12 | 增益 (KC) | 實型 | 輸入 | 增益是比例常數(shù)。 可正可負 |
16 | 采樣時間 (TS) | 實型 | 輸入 | 包含采樣時間,單位為秒。必須是正數(shù) |
20 | 積分時間或復(fù)位 (TI) | 實型 | 輸入 | 包含積分時間或復(fù)位,單位為分鐘。必須是 正數(shù) |
24 | 微分時間或速率 (TD) | 實型 | 輸入 | 包含微分時間或速率,單位為分鐘。必須是 正數(shù) |
28 | 偏差 (MX) | 實型 | 輸入/ 輸出 | 積分項前項,必須在0.0~1.0之間 |
32 | 以前的變量(PVn--1) | 實型 | 輸入/ 輸出 | 包含后一次執(zhí)行PID指令時所存儲的變量的值。 |
36 - 79 | 保留給自整定變量。對于詳細信息,參考表15- 1。 |
中斷允許指令(ENI)全局地允許所有被連接的中斷事件。中斷禁
止指令(DISI)全局地禁止處理所有中斷事件。
當RUN時,初始狀態(tài)為禁止中斷。在RUN,您可 以執(zhí)行全局中斷允許指令(ENI)允許所有中斷。執(zhí)行“禁用中斷"指令可禁止中斷;然而,的中斷事件仍繼續(xù)
排隊。
使ENO=0的錯誤條件:
■ 0004 (試圖在中斷程序中執(zhí)行ENI、DISI或者HDEF指令。)
中斷條件返回指令(CRETI)用于根據(jù)前面的邏輯操作的條件,
從中斷程序中返回。
中斷連接指令(ATCH)將中斷事件EVNT與中斷程序號INT相關(guān)
聯(lián),并使能該中斷事件。
使ENO=0的錯誤條件:
■ 0002 (與HSC的輸入分配相沖突)
中斷分離指令(DTCH)將中斷事件EVNT與中斷程序之間的關(guān)聯(lián)
切斷,并禁止該中斷事件。
中斷事指令從中斷隊列中所有EVNT類型的中斷事 件。使用此指令從中斷隊列中不需要的中斷事件。如果此 指令用于假的中斷事件,在從隊列中事件之前要首先 分離事件。否則,在執(zhí)件指令之后,新的事件將被增 加到隊列中。
實例說明了處于正交的高速計數(shù)器如何使用CLR_EVNT指 令中斷事件。如果光電傳感器正好處在從明亮過渡到黑暗 的邊界位置,那么在新的PV值裝載之前,小的機械振動將生成 實際并不需要的中斷。
表6--45 中斷指令的有效操作數(shù)
輸入/輸出 | 數(shù)據(jù)類型 | 操作數(shù) |
INT | BYTE | 常數(shù)(0到127) |
EVNT | BYTE | 常數(shù) CPU 221和 CPU 222: 0到12,19到23和27到33 CPU 224: 0到23和27到33 CPU 224XP和 CPU 226: 0到33 |