S7200CPU,MODBUS通訊
劉玉蓉
發(fā)布于2014-12-10 17:31
7
0
標(biāo)簽:
有一個(gè)S7200CPU,做MODBUS從站,要求主站讀取從站VD100、VD104、VD108....十個(gè)實(shí)數(shù)值,請(qǐng)問(wèn)在從站“INIT”指令中,MaxIQ=?,MaxAI=?,MaxHold=?,HoldStart=?應(yīng)該怎么設(shè)置。這十個(gè)值對(duì)應(yīng)的MODBUS地址又是什么例如:40xxx、40xxn?
次做MODBUS通訊,請(qǐng)說(shuō)詳細(xì)點(diǎn)!
佳答案
S7-200系統(tǒng)手冊(cè)里講的很清楚
MaxIQ設(shè)置可訪問(wèn)IO點(diǎn)數(shù),設(shè)為0禁止訪問(wèn)所有IO點(diǎn),設(shè)為128則可訪問(wèn)所有IO點(diǎn)
MaxAI設(shè)置可訪問(wèn)的模擬量輸入個(gè)數(shù),設(shè)為0禁止訪問(wèn)
MaxHold設(shè)置V區(qū)字保持寄存器的個(gè)數(shù),對(duì)應(yīng)Modbus的4XXXX
HoldStart設(shè)置V區(qū)字保持寄存器的開(kāi)始地址
這里你只需要讀V區(qū)10個(gè)實(shí)數(shù),只要設(shè)置V區(qū)保持寄存器,每個(gè)實(shí)數(shù)占4個(gè)字節(jié),所以總數(shù)為40字節(jié)=20字,MaxHold設(shè)置為20,開(kāi)始地址HoldStart設(shè)置為&VB100
對(duì)應(yīng)的Modbus地址就是40001~40020
MaxIQ和MaxAI不用可設(shè)置為0
如果主站讀取這20個(gè)字也放在VB100開(kāi)始的區(qū)域,那么這10實(shí)數(shù)對(duì)應(yīng)地址和從站一樣VD100、VD104、VD108......