Member Login
member
passwd
remember me on this computer.

- join now -

Search

Neat Stuff

Visit our shop for nerds in control lifestyle products.

Cool stuff
Select a topic of interest:
...and press:
Fortune
There is no opinion so absurd that some philosopher will not express it.
-- Marcus Tullius Cicero, "Ad familiares"
RSS Feed
RSS feed Use this link to get an RSS feed of the Control.com article flow, for private, non-commercial use only:
www.control.com/rss
Select a Page Style
Select one of the following styles:
- BluFu
- Classic
(cookies required)
from the Slow data transfer rate department...
Modbus data transfer rate
Communications topic
advertisement
Posted by Basudev Nishad on 1 March, 2008 - 12:30 am
I am working on multidrop RS485 network with 50 modbus devices. I have connected these devices to an RTU with 4 ports. Devices are equally distributed to each port. I have set the baud rate to 9800 & mapped 25 parameters per device. I am getting data update on RTU every 60-70 sec, which is seems to be very high. Kindly suggest how speed can be improved.

basudev. klg @ gmail. com

Posted by Vipul Shah on 3 April, 2008 - 12:33 am
Please give the specification of the RTU. Is it a PC or something else? Please reply at vipul @ egenietech. com

Vipul Shah

Posted by Fred Loveless on 3 April, 2008 - 11:45 pm
You are talking to the device synchronously, so the thing to look at is how long does it really take to get the data from each device. At 9600 buad it takes approximately 1 msec to transfer 1 byte of data. The Modbus request is 7 bytes and the response is 5 bytes plus the data. There is also a device turn around time which is the time it takes the device to process the request. We will assume that it is 0. We will also assume that the requested data is al integers.

When you request the data, if you are lucky and the data is in contiguous addresses, then you will be able to send one data request. If the data is spread throughout he device or the device will only allow single register requests, then you will have to do several requests to get the data from one device.

So if the data was in contiguous registers and you only needed one request to get it total time would be 7 msec for the rquest plus 55 msec for the response (62 msec) times 50 is 3100 msec.

The worst case scenario is 1 registar at a time, 7 mse for the request plus 7 for the response is 14 msec times 25 is 350 msec times 50 is 17500 mec.

What you will want to look at is the turn around time per device. If there are request failures to the device that require retransmission of request. If there are pauses between requesting data for each device.

Fred Loveless
Kepware Technologies
http://www.kepware.com

Posted by Roy Matson on 5 April, 2008 - 1:42 am
To expand on Fred Loveless post, I think you will find it quicker to read 100 contiguous words and then discard what you don't need rather than reading several smaller bites. You might also try looking at the data stream, see my response to the "Modbus Master Comunication" post.

Regards,
Roy

From Control Engineering magazine...
Related articles from Control Engineering magazine
Above articles copyright 2008 Reed Business Information. Subject to its Terms of Use.

Your use of this site is subject to the terms and conditions set forth under Legal Notices and the Privacy Policy. Please read those terms and conditions carefully. Subject to the rights expressly reserved to others under Legal Notices, the content of this site and the compilation thereof is © 1999-2008 Control Technology Corporation. All rights reserved.

Users of this site are benefiting from open source technologies, including PHP, PostgreSQL and Apache. Be happy.

Advertisement
Our Advertisers
Help keep our servers running...
Patronize our advertisers!