mrmainwoods Posted March 3, 2009 Share Posted March 3, 2009 So, Im trying to talk to a subnet solutions Substation server running Modbus. I am looking to query located at data addresses 40001, and above. I have put 1 in the chn#, and read holding S16(3) in the IO type. I have looked at the server, and it is seeing the requests, but is sending back an illegal data address error 0002. I know that the server is working, as it was tested during commissioning. Any thoughts? GP Link to comment Share on other sites More sharing options...
AzeoTech Posted March 4, 2009 Share Posted March 4, 2009 If your device is using 40001 style notation, you should just put 40001 in for the channel number. As it happens, a channel # of "1" is actually 40,002, not 40,001. Its very confusing really and I don't really know why they ever bothered using 40,001 notation since in the actual modbus frame, the channel numbers start at 0 (which corresponds to 40,001). The "4" tells you what type of data point it is, but the weird part is that it doesn't correspond to the modbus command. 40,001 is for holding registers, which is modbus command 3, while 30,001 is input registers, which is modbus command 4. Go figure Anyhow, as long as you stick with one notation style, DAQFactory will support both, so just use 40,001 and whatever other numbers your documentation specifies. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.