Maker Pro
Maker Pro

rs485 communication

Amar Dhore

Dec 2, 2015
129
Joined
Dec 2, 2015
Messages
129
Hello Everyone,

Does anyone know an easy way to automatically detect the improper termination on the rs485 communication line?
Automatically means without any human intervention. If the termination is not right, then the module can let user know about it.

The typical communication speed is19200 and the max units/modules on the communication lines are about 16.
I used 3 wires for communication and the distance between 2 modules approximately 6 feet.
I am not sure if there is an easy way to automate this but you never know. Just curious..

Thanks
--Amar
 

kellys_eye

Jun 25, 2010
6,514
Joined
Jun 25, 2010
Messages
6,514
Add code to poll the expected sources outwith the expected data stream. Unlikely the bus would be 'full' and the polling is only a minimal 'request' to expect a response.

Could be done with dedicated device if you can't access an existing device to add code.
 

Minder

Apr 24, 2015
3,478
Joined
Apr 24, 2015
Messages
3,478
What is the form of communication, If say Modbus for e.g. , then each station will confirm (or not) any immediate communication if does not occur.
Max.
 

Amar Dhore

Dec 2, 2015
129
Joined
Dec 2, 2015
Messages
129
Thank you for your responses.

What is the form of communication, If say Modbus for e.g. , then each station will confirm (or not) any immediate communication if does not occur.
it is a Modbus..

Add code to poll the expected sources outwith the expected data stream. Unlikely the bus would be 'full' and the polling is only a minimal 'request' to expect a response.
I already do it. I use interrupt routine. You are right with extra hardware, it might be possible but I don't have that option.

This is how it goes.
1. Master send data every 400mSec.
2. Slave starts up. Wait for a command from the master. Wait for 30 second before it times out and slave gives a COM fault error.
3. If there is COM fault, check if the wiring is properly done on all units.
4. Check other setting inside the module etc etc..
5. Check the termination register. Here, it would be easy if somehow I can reduce few above by letting user know that it is an improper termination.
 
Top