西門子PLC總報故障是怎么回事?懂自控的幫幫忙~~~~~~
I/O讀取錯誤,而且還不是一個地址,出的錯誤肯定都不一樣了,在你的程序中增加組織塊OB122,在OB122里可以編寫程序,當(dāng)然你也可以什么都不做,然后就不會有問題了
I/O訪問錯誤組織塊(OB122)
描述
只要在訪問模塊上的數(shù)據(jù)時出錯,CPU的操作系統(tǒng)即調(diào)用OB122。例如,如果在訪問I/O模塊上的數(shù)據(jù)時,CPU檢測到讀取錯誤,操作系統(tǒng)將調(diào)用OB122。
了解I/O訪問錯誤OB的操作
執(zhí)行OB122時所處優(yōu)先級與中斷OB的優(yōu)先級相同。如果OB122未編程,則CPU將由RUN模式改變?yōu)镾TOP模式。
S7提供了下列SFC,用于在執(zhí)行程序期間屏蔽和取消屏蔽OB122的啟動事件:
SFC36 (MSK_FLT):屏蔽特定的錯誤代碼
SFC37 (DMSK_FLT):取消屏蔽由SFC36屏蔽的錯誤代碼
SFC38 (READ_ERR):讀取錯誤寄存器
I/O訪問錯誤OB的本地數(shù)據(jù)
下表說明了I/O訪問錯誤OB的臨時(TEMP)變量。變量名為OB122的默認(rèn)名稱。
變量 類型 描述
OB122_EV_CLASS BYTE 事件等級和標(biāo)識符:B#16#29
OB122_SW_FLT BYTE 錯誤代碼:B#16#42:I/O訪問錯誤,讀取 B#16#43: I/O訪問錯誤,寫入
OB122_PRIORITY BYTE 優(yōu)先級: 出錯OB的優(yōu)先級
OB122_OB_NUMBR BYTE OB編號(122)
OB122_BLK_TYPE BYTE 出錯塊的類型(B#16#88:OB,B#16#8C:FC,B#16#8E:FB) (未在此處為S7-300輸入有效編號)
OB122_MEM_AREA BYTE 存儲器區(qū)域和訪問類型:位7至4:訪問類型- 0: 位訪問-
1: 字節(jié)訪問-
2: 字訪問-
3: 雙字訪問
位3至0:存儲器區(qū)-
0: I/O區(qū)域-
1: 輸入的過程映像
2: 輸出的過程映像
OB122_MEM_ADDR WORD 出錯的內(nèi)存地址
OB122_BLK_NUM WORD 具有導(dǎo)致錯誤的MC7命令的塊編號(未在此處 為 S7-300輸入有效的編號)
OB122_PRG_ADDR WORD 導(dǎo)致錯誤的MC7命令的相對地址(未在此處為S7-300輸入有效編號)
OB122_DATE_TIME DATE_AND_TIME 調(diào)用OB時的DATE_AND_TIME
本內(nèi)容由用戶 vateone 分享,版權(quán)歸屬原作者,如侵犯你的權(quán)利,請聯(lián)系我們(點這里聯(lián)系)刪除。如若轉(zhuǎn)載,請注明出處:http://baoxuegang.cn/a/58605.html