MODBUS-RTU通訊問(wèn)題
劉玉蓉
發(fā)布于2014-09-28 17:19
19
0
標(biāo)簽:
MB_MASTER中DATA_PTR之DB如何定義,為何出現(xiàn)16#818C錯(cuò)誤;如改為MW200則出現(xiàn)16#818B錯(cuò)誤;請(qǐng)問(wèn)錯(cuò)誤在那里?
問(wèn)題補(bǔ)充:
1.首先感謝左傳及l(fā)ee nd2009之協(xié)助,原16#818C或16#818B錯(cuò)誤已解決;但新問(wèn)題如下:連接外設(shè)儀表是一個(gè)PID溫控器,F(xiàn)C03范圍為0~138,用RS485直接電腦測(cè)試顯示都沒(méi)問(wèn)題;經(jīng)由S7-1200讀不到資料,圖片如附加3張,煩請(qǐng)?jiān)僦刚?,謝謝!
圖片說(shuō)明: 1,MB_Master ONLINE 2,MB_master 3,MB_MASTER_DB 4,MB_DB
佳答案
1、錯(cuò)誤信息:818B 指向本地?cái)?shù)據(jù)源/目標(biāo)的指針無(wú)效: 大小不正確
818C DATA_PTR 的指針無(wú)效或 Blocked_Proc_Timeout 無(wú)效。必須是 DB(允許符號(hào)訪問(wèn)和直接訪問(wèn))或 M 存儲(chǔ)器。
2、 MB_MASTER中DATA_PTR之DB如何定義?
DATA_PTR 參數(shù)指向要寫(xiě)入或讀取的 DB 或 M 地址。 如果使用數(shù)據(jù)塊,則必須創(chuàng)建一個(gè)全局?jǐn)?shù)據(jù)塊為讀寫(xiě) Modbus 從站提供數(shù)據(jù)存儲(chǔ)位置。
說(shuō)明
DATA_PTR 數(shù)據(jù)塊類(lèi)型必須允許直接尋址
該數(shù)據(jù)塊必須允許直接(絕對(duì))尋址和符號(hào)尋址。 創(chuàng)建該數(shù)據(jù)塊時(shí),必須選擇“標(biāo)
準(zhǔn)”(Standard) 訪問(wèn)屬性。
DATA_PTR 參數(shù)的數(shù)據(jù)塊結(jié)構(gòu)
● 這些數(shù)據(jù)類(lèi)型對(duì) Modbus 地址 30001 到 39999、40001 到 49999 和 400001 到
465536 的字讀取有效,對(duì) Modbus 地址 40001 到 49999 和 400001 到 465536 的字
寫(xiě)入也有效。
– WORD、UINT 或 INT 數(shù)據(jù)類(lèi)型的標(biāo)準(zhǔn)數(shù)組
– 指定的 WORD、UINT 或 INT 結(jié)構(gòu),其中每個(gè)元素都具有唯一的名稱和 16 位數(shù)據(jù)
類(lèi)型。
– 指定的復(fù)雜結(jié)構(gòu),其中每個(gè)元素都具有唯一的名稱以及 16 或 32 位數(shù)據(jù)類(lèi)型。
● 用于 Modbus 地址 00001 到 09999 的位讀取和寫(xiě)入和 10001 到 19999 的位讀取。
– 布爾數(shù)據(jù)類(lèi)型的標(biāo)準(zhǔn)數(shù)組。
– 具有唯一名稱的布爾變量的指定布爾結(jié)構(gòu)。
3、你的錯(cuò)誤之處在于:(1)MODE 和 Modbus 地址一起確定實(shí)際 Modbus 消息中使用的功能代碼。根據(jù)你的程序選擇的MODE 為0,Modbus地址是:1,兩者確定的功能是:每個(gè)請(qǐng)求 ,讀取輸出位:1 到 1992 或 2000 個(gè)位
(2)你在DATA_PTR程序輸入MW200 ,顯然數(shù)據(jù)的長(zhǎng)度不能滿足,它只有16位,而你讀1-2000個(gè)位,所以出現(xiàn)16#818B錯(cuò)誤。
(3)你在DATA_PTR程序輸入“MB_DB"塊指針無(wú)效,可能的原因:A、數(shù)據(jù)長(zhǎng)度不夠,B、你引用的數(shù)據(jù)塊沒(méi)有選擇必須選擇“標(biāo)準(zhǔn)”(Standard) 訪問(wèn)屬性。
導(dǎo)致你程序出現(xiàn)的錯(cuò)誤16#818C錯(cuò)誤。
可以參考:《S71200的說(shuō)明書(shū)》
https://www2.ad.siemens.com.cn/download/Upload/AS/manual/39710145[1].pdf
例子可以參考:《如何通過(guò)Modbus RTU協(xié)議實(shí)現(xiàn)S7-1200 與PAC3200的通信》
https://www2.ad.siemens.com.cn/download/Upload/AS/application/A0403.pdf