This
document may help you to solve problem you may encounter when using the Modbus
Serial (RTU or ASCII) protocol with the Engiby driver on PCD system. Note that
a good knowledge of the partner device is necessary to correctly configure the
driver on the PCD.
For
trouble shouting on Modbus TCP, please read this document: www.engiby.ch/modbus/tcptrb.htm
Note also
that a lot of information is also given in the Modbus FAQ document
For Modbus 1 : www.engiby.ch/modbus/modfaq.htm.
For Modbus 2 : www.engiby.ch/modbus/tcpfaq.htm.
You may also
encounter known and fixed problem of the driver itself.
Here
you can fined the list of the last modifications of the Modbus 1 driver.
Typical troubles with the Slave
Driver
No
communication
In the Slave driver this is indicated by the error ‘Synchro’. It means
that the Slave driver does not receive any requests from the Master.
First check the cabling (90% or the errors). In RS 232 Tx and Rx must be
crossed.
In RS 485 don’t cross the wires. The indication Td+ and Td- is not always
identical on different devices.
Possible labeling for Td+ or D
or Tx/Rx+ or
Tx/Rx-P or A
Possible labeling for Td- or /D
or Tx/Rx- or
Tx/Rx-N or B
With a long bus cable, check the end-resistors.
The SAIA recommendation for S-Bus network are also valid for Modbus. Refer to
the S-Bus manual.
Diagnostics
errors
Typically reasons are:
- the baudrate or the bit settings are
not the same on Master and on the Slaves
- wrong cabling (crossed or missing
wires)
- bad ground connection between Master
and Slaves
- with RS485, bad or missing termination
(pul-up, pul-down, resistors inc. supply; termination resistors)
Synchro
error
As explained above this code is displayed if no request is received from
the Slave.
This code is also displayed if the interval of the requests from the master is
lower than the adjusted timeout in Modbus Slave Fbox.
If necessary increase this timeout.
SASI error
This error indicate that the driver could not take control of the serial
line.
A typical error is when the same port is already declared in the Hardware
settings as S-Bus PGU port, Modem or Gateway port. Remove any configuration on
the port used by the Modbus Driver. Ensure also that no other part of your
program uses the same port. Else the corresponding module may be missing, wrong
equipped or defective.
Furthermore, the PGU port (COM 0 on most systems) is forced in PGU mode when a
PGU cable is used. On PCD3 systems check the option Full RS232 hadshaking on pot
Typical troubles with the Master
Driver
No
communication
In the Master driver, missing communication is indicated with timeout
errors.
First check the cabling (90% or the errors). In RS 232 Tx and Rx must be
crossed.
In RS 485 don’t cross the wires. The indication Td+ and Td- is not always
identical on different devices. Tray to exchange Td+ with Td-
With a long bus cable, check the end-resistors.
The SAIA recommendation for S-Bus network are also valid for Modbus. Refer to
the S-Bus manual.
Some
slave device needs an activation or a configuration of the Modbus port before
you can use it. Check this point with the manufacturer of the slave device.
Some
slaves may have a high sensitivity on inter-character delay in RTU mode. The
PCD firmware doesn't warrantee that this delay is always respected as specified
for Modbus. This problem is increased with the use of the Web-server in the
PCD. A special feature (called the 'freeze bit') has been added in the PCD
firmware and the Modbus driver. It gives positive results in all cases till
now. You need at least Modbus library version 2.5.027 and FW 1.08.xx on PCD3
(other systems not yet known).
Diagnostics
errors
Typical reasons are:
- the baudrate or the bit settings are
not the same on Master and on the Slaves
- wrong cabling (crossed or missing wires)
- bad ground connection between Master
and Slaves
- with RS485, bad or missing termination (pul-up, pul-down, resistors inc.
supply; termination resistors)
SASI error
Same comments as for the Slave Driver. See comments above.
Some
requests remains without response
Some slaves do not supports all Modbus functions or have restriction on
the number of requested values.
Check the following:
- You use the correct Modbus function
- The address where you request values is valid for the slave
- The number of requested values is supported by the slave
All these data should be given in the manual of the slave device, else ask the
manufacturer.
Error
‘Slave message’ in the Master Fbox
This error means that the slave refused the request and sent an error
message back (also called 'exception response').
Typical causes are:
- The requested address is not valid for the slave.
- The range overpasses the valid address range in the slave.
- A value sent is not accepted by the slave.
Take care at the address offset option (0 or 1). If this option is not
correctly set the address maybe shifted by one and be invalid for the slave.
E.g. address
|
Back to Engiby main page Engiby / 08.06.2010 |