MODBUS ASCII Communication Protocol Explained

In this post, we will study the concept of the Modbus ASCII protocol.

Modbus is a communication protocol that is widely used in PLCs. It is a type of serial communication.

Nowadays, apart from PLC’s, it is widely used in various ranges of instruments like PID controllers, sensors, various types of electronic instruments, VFD’s, etc.

Modbus works in master-slave mode. That means, suppose there is a PLC that acts as a master and three VFD’s which act as slaves.

If you understand it in simpler terms, it is a turn-by-turn protocol. The PLC requests information from the first slave; then the second slave and at last, the third slave.

It requests for data in a set period of time; and if the response is not received (timeout time), then it proceeds for the next slave and so on.

After the last slave, it goes back again to the first slave. Also, apart from reading, it also writes data to slaves one by one.

MODBUS ASCII Communication Protocol

Modbus works on three hardware layers for serial communication –

  • RS-232
  • RS-422
  • RS-485

In Modbus serial protocol, there are two types of transmission –

  • RTU
  • ASCII

In this post, we will have a look at the Modbus ASCII protocol.

MODBUS ASCII Communication Protocol Explained

Before proceeding ahead with the data structure in Modbus ASCII protocol, let us have a look at the basic data frame structure of Modbus protocol.

The frame starts with the address field, followed by the function code field, then the data field, and at last, CRC (Cyclic Redundancy Check) field.

Address field determines the slave address; function code determines what type of action to perform on data; data field is the data to be sent or received, and CRC or error checking field is the result of redundancy checking calculation to check if the frame being communicated has any error or not.

ASCII

ASCII stands for American Standard Code for Information Exchange. It uses ASCII characters to begin and end messages. ASCII characters are hexadecimal characters.

The format of the message starts with a colon ‘:’ and ends with a carriage return and line feed. Due to this, the space between the messages becomes variable.

As compared to Modbus RTU, ASCII uses the less effective LRC (longitudinal redundancy check) error checking method. If we look at its frame format, the first byte consists of start bit; then 2 bytes for station address; then 2 bytes for function code; then ‘n’ bytes for data; then 2 bytes for LRC and at last, 2 bytes for stop bit (carriage return and line feed).

Disadvantages of Modbus ASCII Communication

Modbus ASCII is used very rarely and is less efficient as compared to Modbus RTU. The main reason for this is the error checking method, which is much stronger in RTU.

So it is used in very less devices. It is a depleting type of protocol that is available in Modbus serial communication. But, some of the major applications where it is used are in serial modems and weight balance check machines.  

In this way, we had a basic overview of the Modbus ASCII protocol.

If you liked this article, then please subscribe to our YouTube Channel for Electrical, Electronics, Instrumentation, PLC, and SCADA video tutorials.

You can also follow us on Facebook and Twitter to receive daily updates.

Next Quiz:

Don't Miss Our Updates
Be the first to get exclusive content straight to your email.
We promise not to spam you. You can unsubscribe at any time.
Invalid email address

Leave a Comment

Share via
Follow us and never miss an update!