S7-200 modbus讀數(shù)據(jù)
劉玉蓉
發(fā)布于2014-11-25 17:49
141
0
標(biāo)簽:
用S7-200往變頻器的3000H寄存器里讀取數(shù)據(jù),正常來(lái)說(shuō)addr填412289是可以的,為什么我用狀態(tài)表查看&vb112里沒(méi)有數(shù)據(jù)呢,并且mbus-msg的error值為4.圖片是我的程序。
問(wèn)題補(bǔ)充:
我前面的幾個(gè)寫(xiě)數(shù)據(jù)都沒(méi)有問(wèn)題,就是讀數(shù)據(jù)的時(shí)候讀不出來(lái)。我又把a(bǔ)ddr的值從412289改為48193(即我寫(xiě)入數(shù)據(jù)的地址),狀態(tài)表顯示&vb112為0,但&vb110里有我寫(xiě)入的正確數(shù)據(jù),不知道這是為什么。
圖片說(shuō)明: 1,圖片
佳答案
1.你M2.5復(fù)位的同時(shí)置位M2.6 然后用M0.7這個(gè)完成位做你下一個(gè)輪訓(xùn)的開(kāi)始,ADDR這塊你再用412288這個(gè)地址看看。
2.你說(shuō)的錯(cuò)誤代碼是4,你看看這個(gè):
保持寄存器地址大于9999
Modbus保持地址通常在40001到49999的范圍內(nèi)。該范圍對(duì)大多數(shù)應(yīng)用程序來(lái)說(shuō)足夠了,但是某些數(shù)據(jù)映射到保持寄存器的Modbus從站所具有的地址超過(guò)9999。這些設(shè)備不適合常規(guī)的
Modbus尋址方案。
Modbus主設(shè)備指令支持通過(guò)可選的尋址方法對(duì)大于9999的保持寄存器進(jìn)行尋址。MBUS_MSG指令允許參數(shù)"地址"具有附加范圍以支持保持寄存器地址的擴(kuò)充范圍。
400001至465536用于保持寄存器
例如:要訪問(wèn)保持寄存器16768,MBUS_MSG的"地址"參數(shù)應(yīng)該設(shè)置為416768。
擴(kuò)充尋址允許訪問(wèn)Modbus協(xié)議支持的65536個(gè)可能地址的全部范圍。該擴(kuò)充尋址僅支持保持寄存器。