ATS 48 Modbus Protocol
ATS 48 Modbus Protocol
RTU mode
The transmission mode used is RTU mode. The frame contains no message header byte, nor end of message
bytes. It is defined as follows:
69 1623736 10/2009
Modbus Protocol
Principle
Modbus protocol is a master-slave protocol.
Master Only one device can transmit on the line at any time.
The master manages the exchanges and only it can take the initiative.
It interrogates each of the slaves in succession.
No slave can send a message unless it is invited to do so.
The master repeats the question when there is an incorrect exchange, and
declares the interrogated slave missing if no response is received within a given
time period.
If a slave does not understand a message, it sends an exception response to
the master. The master may or may not repeat the request.
Slave j
Slave i Slave k
For slave-to-slave communication, the application software must have been purposely designed: to interrogate
one slave and send back data received to the other slave.
• the master sends a request to a slave and waits for its response
• the master sends a request to all slaves without waiting for a response (broadcasting principle).
ENGLISH
Addresses
The slave address can have a value between 0 and 31.
Address 0:
• Address 0 coded in a request sent by the master is reserved for broadcast communication. All slaves,
including the ATS48, take account of the request, but do not respond to it.
• When the ATS48 has been configured with address 0 (default value), it takes account of requests addressed
between 1 and 31 and responds to the same address as each of these requests. As a result, the starter
behaves as if it were configured on all the possible addresses (1 to 31).
This default configuration should only be retained if point-to-point connection is being used, ie. mainly with
connection to a PC. An address other than 0 should be configured on a Modbus network which includes
other slaves.
1623736 10/2009 70
Modbus Protocol
Modbus functions
The following table indicates which Modbus functions are managed by the Altistart 48, and specifies their limits.
The "read" and "write" functions are defined from the point of view of the master.
71 1623736 10/2009
Modbus Protocol
Request
Slave No. of 1st word Number of words CRC16
03 or 04
no. Hi Lo Hi Lo Lo Hi
1 byte 1 byte 2 bytes 2 bytes 2 bytes
Response
Slave Number of Value of 1st word Last word value CRC16
03 or 04 -------
no. bytes read Hi Lo Hi Lo Lo Hi
1 byte 1 byte 1 byte 2 bytes 2 bytes 2 bytes
Example: read 4 words W4023 to W4026 (16#0FB7 to 16#0FBA) in slave 2, using function 4, with:
• LO1 = Motor thermal alarm tAI (W4023 = 16#0001)
• AO = Motor current OCr (W4024 = 16#0001)
• ASC = 200% (W4025 = 16#00C8)
• In = 1.0 x starter rating ICL (W4026 = 16#000A)
ENGLISH
Write one output word: function 6
Request and response (the frame format is identical)
Slave Word number Value of word CRC16
06
no. Hi Lo Hi Lo Lo Hi
1 byte 1 byte 2 bytes 2 bytes 2 bytes
1623736 10/2009 72
Modbus Protocol
Request
Slave CRC16
41
no. Lo Hi
1 byte 1 byte 2 bytes
ENGLISH
Response
Slave Length of name Manufacturer name (in ASCII)
41 -------
no. of manufacturer (F) Byte 0 … Byte F–1
1 byte 1 byte 1 byte F bytes
Length of name Product name (in ASCII) Product reference name (ASCII)
------- -------
of product (P) Byte 0 … Byte M–1 Byte 0 … Byte 10
1 byte P bytes 11 bytes
Note: The response to function 6 is always positive, ie. the slave cannot send back an exception response.
Example: following the request from the Modbus master, slave 2 identifies itself as follows:
• Manufacturer name (F = 13 = 16#0D): “TELEMECANIQUE”
• Product name (P = 12 = 16#0C): “ALTISTART 48”
• Product reference name: “ATS48D17Q”
• Software version (version . subdeterminant number): 1.1
• Software upgrade index: 01
73 1623736 10/2009
Modbus Protocol
Request 02 41 C0E0
Response 02 41 0D 54 45 4C 45 4D 45 43 41 4E 49 51 55 45 -------
------- 0C 41 4C 54 49 53 54 41 52 54 20 34 38 41 54 53 2D 34 38 44 31 37 51 20 -------
------- 11 01 2C81
Exception responses
An exception response is returned by a slave when it is unable to perform the request which is addressed to it.
Error code:
1 = The function requested is not recognized by the slave.
2 = The bit or word addresses indicated in the request do not exist in the slave.
3 = The bit or word values indicated in the request are not permissible in the slave.
4 = The slave has started to execute the request but cannot continue to process it completely.
ENGLISH
CRC16 calculation
The CRC16 is calculated on all the message bytes by applying the following method:
The CRC obtained will be transmitted with the low bytes sent first, then the high bytes (unlike the other data
contained in Modbus frames).
1623736 10/2009 74