Go Down

Topic: Power and Data Communications over a single twisted pair (Read 3431 times) previous topic - next topic


Hi All.

We started discussing about that on this thread http://arduino.cc/forum/index.php/topic,97347.msg917036.html#new but we went OT. So I decided to move it here.

This is the target and assumptions:
- A set of boards, Atmel 328 based, targeted to domotics
- All boards connected through a single twisted pair where either communication data, either DC is conveyed
- Bus topology: star or multi-star
- Bus sharing: multi-master with collision avoidance
- Data transfer: enough to provide command and parameters transfer for remote actuations (i.e. no realtime audio and/or video). A simple 9600bps should be enough for the most actuations
- Cheap and with a small PCB footprint

Discussions on this forum revealed that the bus should supply between 24V to 30V at, more or less, 1A. This is enough for a medium/small installation with up to 50 nodes on a single bus.

These are some already evaluated (and already discarded) solutions. More details on the mentioned thread.
- RS485 transceivers de-coupled with capacitors
- Tx based on open collector and/or open drain decoupled with capacitors
- Tx push-pull based decoupled with capacitors
- Each power supply on each board decoupled by mean of inductors
- Main power supply decoupled by inductors

We already discussed about the modulation that could be used to transmit data over the DC. An FSK solution was proposed because seems something doable taking advantage of some hardware peripheral present in the Atmel. The proposed two symbols where located at, more or less, 4KHz and 7KHz.
The solution to use inductors and capacitors, after simulations, ended up with the idea that it's not a reasonably cheap solution when running at that frequencies. So we need to think to a different hardware and, probably, a different modulation.

The main problem we faced are:

The proposed Tx behave like a pulsed generator. Either if implemented by a driver, either if implemented through an open collector or open drain, it was always powered by an onboard 5V regulated. It was always decoupled to the DC bus through a capacitor thus producing a no more than a maximum of 5V injected signal (when no load at the bus!). The internal resistance of the stage was not able to properly drive the bus when more than two or three units were connected to it.
Idea: what if replacing the proposed Tx stadium with something working directly with the DC bus? That means no decoupling capacitors and (theoretically) infinite current...

The proposed onboard power supply was connected to the bus through an inductor. This prevents the FSK signal to be shorted by the big capacitor in front of the voltage regulator. Without the inductor the capacitor is like a few ohms resistor for the FSK signal. This provides a "short way" for the ground... In order to provide a high impedance for the FSK signal, a too large inductor should be used. The best would be to have NOT a capacitor... but this is not possible for the voltage regulator (right?).
Idea: is there something we can use to replace the inductor? At school I remember I studied that an emitter follower presents an input equivalent impedance that was related to the beta of the transistor used.... Is that something valid even in this situation?

But I think we can start focusing on the Tx part than move to the other problems...

Who is interested on that!? This could poses the basis for a new set of open based protocol, shields and products.



Souliss - Open-source Distributed Home Automation with Arduino and Android

Follow at @soulissteam



Hi Marco,

if we move to a TX driver that is not coupled in AC on the bus, the only way that we can follow is drive some current to the ground while transmitting. Because we can no longer impress a small voltage signal (5V) over a bigger (24V) bus voltage.

I agree that can be a solution to our problems, because impressing a voltage require a frequency in the MHz range, and this may lead to problems if the circuit is build over discrete components and not ICs.

There is one concern about this. If we drive some current to the ground, the only effect that we may expect is a lower voltage on the bus, that will depend on the internal resistance of the power supply.
Assuming a not regulated 30 VDC 1A power supply, we can assume an internal resistance of 5 Ohms, that will lead a 5V voltage decrease when supplying 1A. So we have to use the TX current to lower the voltage.
We have to identify a voltage drop that identify our bit over the bus, let me say 5V. That means, when the power supply is fully loaded (1A), the steady state voltage is 25V and while transmitting the voltage shall drop to 20V. Most of the 24V relays will work at 20V.

So, if the generator resistance is 5 Ohms, we need to drive 1 more ampere to the ground, I think that is too much. On the other hand, the transmission will be for shorter time, and the max current from the power supply is 6A (short circuit current).
Let me say that it may work, but doesn't look to me the best suitable option.

One way could be find out a voltage regulator circuit, that will increase the output resistance at high frequencies. In that case, the problem to address will be: 1) How to get this; 2) Does this affect the normal operation in case of load changes and noise?

A starting point could be this one.

What do you think about this?

Souliss - Open-source Distributed Home Automation with Arduino and Android

Follow at @soulissteam



Hi everyone,
I get the appeal of such a system. But my preference would always be with a system where power lines and signal lines are separated. Like ClimateTalk, for example.

Successful implementations of single-pair systems include 1-wire from Dallas/Maxim or the early tekmar thermostats. I'd reverse-engineer those approaches, if possible.

Go Up