This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RS485 to send a clock signal

Other Parts Discussed in Thread: ISO3086, ISO1176, ISO3086T, ISO1176T

Hello!

I have to synchronize the data acquisition of multiple devices, and, in order to obtain this, I have to send a clock signal to various devices.

Requirements:

- one master clock device, a maximum of 25 slave clock devices

- the master clock device can be any of the installed device

- maximum distance unknown, but I think worst case will be 15-20 meters 

- clock frequency 2.048 MHz

- a Sync (start) signal to be transmitted parallel to the clock signal

- the system should be as "low power" as can be obtained without giving up performance.

I think to use RS485 as the physcal layer, as my signal frequency is quite low, and isolators in order to protect from ground loops, because some application environments could be noisy.

In order to send the clock signal to the slave devices, I was thinking about using ISO1176T or ISO3086T, which can also drive a transformer to isolate the power supply, and ISO1176 or ISO3086 in order to send the Sync signal (or should it be vice versa...?).

Can you give some advice about how to terminate and how to connect all devices in the network? The "classic" two 120 ohm resistors at both ends of the RS485 "bus" should possibly be avoided, as it would mean putting analog switches or jumpers on the boards in order to enable or disable termination - not a real issue, but I would prefer a "static" configuration, as it would be safer (no risk of somebody enabling termination resistors on 4 or 5 boards, for example...).

How could I do?

Thanks in advance,

Stefano

  • Stefano,

    The cable termination doesn't have to be on the system boards. A leaded 120 resistor simply goes on each end of cable network. All the non-end connections will have two cables attached.

    Will the RS485 propagation delays or time delay in the cables cause timing errors?
  • Hi Ron,

    I don't know whether I can put leaded resistors on the net, but I'll give this solution a try. Isn't there any alternative solution, besides the one I spoke of in my first post?

    As for propagation delays, they surely will have some effect, so I will put a programmable delay in order to compensate. This means, of course, that the RS485 network will be installed in a star topology, with equal cable (stub) lengths. As an alternative, I could use a "chain" topology, but I would have to take into account all the accumulated delays.

    That said, the sensors' data rates will be 4 kS/s at worst, so I don't expect the network delays to have a significant role, but I first have to assure that :)

    By the way, can you suggest a programmable delay IC, preferably with serial interface (I2C or SPI or UART)?

    Thanks,

    Stefano

  • RS485 uses chain connection cabling. It won't work in a star setup.
    Do you plan to send clock and sync on the same data line?

    I don't have prog delay suggestion. Open a new post in the correct forum for this.
  • Ok, then I have two possible ways out: either I am able to arrange a chain connection, or I have to change the physical protocol.
    If I have to change it, what could I use? Is there any part you can suggest? Something similar to ISO3086T, but with a different protocol...

    Looking back at the programmable delay issue, I will take a little more time in order to understand if I can avoid it at all.

    Regards,
    Stefano