MODBUS dialects.

JesperMP

Lifetime Supporting Member + Moderator
Join Date
Feb 2003
Location
ᚴᚬᛒᛅᚾᚼᚬᚠᚾ
Posts
16,239
Hi,

does someone have a brief explanation of the differences between the various Modbus dialects ?
I have heard of the following:
Modbus.
Modbus RTU.
Modbus ASCII.
Modbus Plus.
Modbus TCP. (I know that this one means "Modbus on Ethernet").

And, if (for example) a device is listed as supporting Modbus, is it then a simple matter - or very difficult - to connect it to another device that supports Modbus RTU ?

Thanks for any insight :)
 
Non detailed explanation.

Modbus is the base message protocol.
Modbus RTU is an 8 data bit format, no defined parity or baud.
Modbus ASCII is a 7 data bit format, no defined parity or baud.
Modbus Plus is Modbus messages encapsulated in a propriety protocol package.
Modbus TCP is Modbus messages in an open TCP/IP package.
 
Gee, thats a bit short.

Whats the difference between Modbus and Modbus RTU for example ?
Is the only difference between Modbus RTU and Modbus ASCII that one has 8 databits and the other 7 ?

Thanks anyway.
 
Just a little more info:

Modbus is a generic term, and in general refers to Modbus RTU.
Modbus RTU is a master/slave protocol and is kind of the grandaddy of PLC communications. It is published and public domain.

Modbus ASCII is similar to Modbus RTU, but I think (note think)it does not use hexadecimal in the transmission but only ASCII characters up to 128 decimal.

Modbus Plus is proprietary, is a peer to peer network, and I think it is CSMA/CD rather than token ring.

All were developed by Modicon, now part of Groupe Schnieder / Telemechanique.
 
Thanks Tom.

So if one device says it can speak "Modbus", and another speaks "Modbus RTU", then it is really the same thing. Or is it almost the same thing ? Can I connect the two with no further ado ?

I can see how Modbus ASCII can transmit values between 0-127. If one wants to transmit an "integer" (i.e. a 16-bit word), I guess that with Modbus RTU it will be just two 8-bit characters, but how can one do it with Modbus ASCII ? Maybe it only works with real ASCII characters (the name DOES imply that).
 
If someone just says "Modbus" without further modifiers, they are usually talking about Modbus RTU. In those cases, though, I always check and verify that that is the case.
 
Modbus is Modbus. It is a message structure and set of commands only and does not define the physical connection or transmission method.

Modbus RTU is an 8 bit format and Modbus ASCII is 7 bit, but neither has anything to do with how the Modbus message is created only how it is transmitted. For example I can program a PLC using Modbus ASCII as well as Modbus RTU. Typically Modbus ASCII runs slower and is more noise tolerant, but as Tom said Modbus RTU is more common.

Modbus Plus is a token ring system, it uses standard Modbus commands.
 
Hi Jesper

I am not sitting at my office, so I have to use my memory on this one. 4-5 years ago I did have a look into Modbus, since I had to write a modbus protocol for a PLC.

So, if my memory do me well, I think the differences in transmission methods, are:

Modbus RTU: Master-Slave protocol. 8 bit of data is sent as 8 bit of data. CRC-16 as checksum.

Modbus ASCII: Master-Slave protocol. 8 bit of data is sent as 2 ASCII-character's. E.g. 1F hex -> "1" "F". Different algoritm as checksum: LRC

Modbus+: High speed token passing network.
 
Thanks all :)

That Guide that Bernie linked to was very informative.

It appears that "All devices must implement the RTU Mode. The ASCII transmission mode is an option."

Also, with RTU a byte is transferred as 8 bits. With ASCII a byte is transferred as two 7-bit characters.
That explains why RTU is faster, whereas ASCII is slower but also more fault-tolerant.
 

Similar Topics

Hello, I need to access the bits from the fire system control panel through RS-485. So, I used Read Var block to read from the panel...
Replies
0
Views
52
I am having a problem communicating my PLC with Drive via Modbus connection. I start by opening the port and there is no problem, but then when I...
Replies
5
Views
75
Does anyone have an example project of the cm ptp ET200 SP HA with 410-5H DCS (PCs7 9.1 SP1) for MODBUS MASTER/SLAVE communication ?
Replies
2
Views
68
Hi, Do you have any trick to make a software working when the 30 days demo version is expired? I've tried to uninstall/clean the registers etc...
Replies
6
Views
244
Hello, I am new to Codesys, and am trying to learn about it for a project we're developing. I've got a couple questions, but first a little...
Replies
1
Views
73
Back
Top Bottom