advertisement
from the Automation List department...
Modbus RTU and Modbus ASCII
Communications systems and equipment. topic
Posted by Farooq Mohd Ali on 14 May, 2007 - 11:35 pm
What is the difference between Modbus RTU and Modbus ASCII protocol?

If I am using serial cable for connecting my system and PLC, which protocol (RTU or ASCII) should I select while developing SCADA?

Hope somone could explain this.

Thanks,

farooq


Posted by Fred Loveless on 16 May, 2007 - 11:54 pm
The primary difference is that Modbus RTU uses Hex where as Modbus ASCII uses Hex ASCII. In RTU function code for a holder register is set as one byte 0x03 in ASCII it is sent as 0x30 0x33, 2 bytes. Additionally a Modubs ASCII packet starts with a colon (:).

Usually the devices that I see now that use Modbus ASCII are legacy devices typically pumps and flow meters still used in the Petroleum Industry.


Posted by KirkC on 18 May, 2007 - 9:58 pm
Mr. Loveless:

Modbus RTU messages have unformatted 8, 16, and 32 bit data. There nothing "hex" about it.


Posted by Andrzej on 17 May, 2007 - 12:30 am
Hi,

ASCII Mode:

When controllers are setup to communicate on a Modbus network using ASCII (American Standard Code for Information Interchange) mode, each 8bit byte in a message is sent as two ASCII characters.

The main advantage of this mode is that it allows time intervals of up to one second to occur between characters without causing an error.

The format for each byte in ASCII mode is:
Coding System: Hexadecimal, ASCII characters 09, AF
One hexadecimal character contained in eachASCII character of the message
Bits per Byte: 1 start bit 7 data bits, least significant bit sent first1 bit for even/odd parity; no bit for no parity1 stop bit if parity is used, 2 bits if no parity.
Error Check Field: Longitudinal Redundancy Check (LRC)

RTU Mode:
When controllers are setup to communicate on a Modbus network using RTU (Remote Terminal Unit) mode, each 8bit byte in a message contains two 4bit hexadecimal characters. The main advantage of this mode is that its greater character density allows better data throughput than ASCII for the same baud rate.

Each message must be transmitted in a continuous stream.

The format for each byte in RTU mode is:
Coding System: 8bit binary, hexadecimal 09, AF
Two hexadecimal characters contained in each 8bit field of the message
Bits per Byte: 1 start bit 8 data bits, least significant bit sent first 1 bit for even/odd parity;no bit for no parity 1 stop bit if parity is used; 2 bits if no parity.
Error Check Field: Cyclical Redundancy Check (CRC).

Regards
Andrzej
www.modbus.pl


Posted by Anonymous on 17 May, 2007 - 10:15 pm
See http://www.simplymodbus.ca/ASCII.htm

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-2014 Nerds in Control, LLC. All rights reserved.

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


Fortune
'I believe in getting into hot water; it keeps you clean."
-- G. K. Chesterton
Advertise here
advertisements
Servo, steppers, analog, digital & web HMI - Fully Integrated!
164-page eBook free download - EtherCAT Applications Guide
View free setup and multi-vendor EtherCAT demo videos online
Servo, stepping motor control, analog & web HMI in one system!
Time to incorporate data handling, web HMI and motion in one system!
our advertisers
Help keep our servers running...
Patronize our advertisers!
Visit our Post Archive