DC Powerline Communication - Page 1
Forum section: electronics / projects

author: rudy
author_rank: Newbie
timestamp: December 20, 2012, 06:03:54 am
content: Hi, I'm hoping somebody can point me at a reasonable (cheap and reliable) 1 or 2 chip solution for communicating over a DC power line.Whatever I end up with will be openhardware as soon as I have my prototype wiggling.My application is controlling a fireworks show where individual stations are connected to a master with a 2-wire cord.Typically this will be lamp cord - 18ga, not twisted pair.Nodes can be connected to any other node in the circuit (an acyclic directed graph - Y connections are allowed at any node).Maximum wire length is flexible but I'd like to design for up to 200m of wire between the farthest stations.The power is anywhere from 12-48V DC at up to 100's of mA with charge storage at each node for firing currents (1A for 50ms).I'll be using an AVR processor at each node, so I'm looking at a power/comm solution that could be applied to any arduino link.This could make a nice shield project for the arduino world.Even a slow serial link would have adequate bandwidth for my needs.I could go old-school and do simple OOK (on-off keying) of a 10MHZ carrier with simple low-pass/high=pass filters to separate/combine the power/comm signals, but I know there's something out there for this.I've looked at automotive solutions, but most are 3+ wires.I've seen a commercial system that works this way - one of the giant companies that makes professional systems - and I've always wanted to try it on my setup.I have too much noise when ematches fire for any kind of voltage shift/current loop approach.The biggest advantage for me is not having to run lots of wires like typical wired setups, and not having to have dozens of rechargable batteries to maintain like the typical radio link setups.I figured this could be very interesting to the arduino crowd as well. You could power and communicate with remote stations over long distances with speaker wire as the only power/comm link.I see lots of PLC (powerline communication) chip intended for communicating over mains AC voltages that I assume I could modify.The most promising chip I've seen is the yamar.com SIG60/SIG61 chips but they aren't available from any of the suppliers I use like mouser.com digikey.com or newark.comIt looks perfect, so I'm hoping someone knows where to get these (I sent mail to their sales earlier today and haven't heard back yet) or can suggest an equally good approach.I looked at CAN-BUS, LIN-BUS, RS-485 but all require extra wires and are generally more complex solutions.Thanks in advance for any suggestions!- Rudy

author: nctnico
author_rank: Super Contributor
timestamp: December 20, 2012, 06:39:53 pm
content: For these kind of problems people often use voltage and current modulation. One side modulates the current, the other side modulates the voltage. In many cases they use a Manchester coding scheme with pre-amble to stabilize the receiver and CRC check to skip faulty messages. Look at the Opentherm protocol.

author: roli_bark
author_rank: Regular Contributor
timestamp: January 15, 2014, 09:53:03 am
content: Sorry for the late bump. Quite potential interesting subject.I've also looked around in a look out for a single-chip system solution.It seems that 'Yamar's SIG60 chip is readily available. Also gotten good support from them.See -http://yamar.com/product/sig60/

author: kripton2035
author_rank: Super Contributor
timestamp: January 15, 2014, 11:50:43 am
content: simple pic based open source powerline remote control (text in french - use google to translate)http://herve.hollard.perso.sfr.fr/telec-sect.htm

author: roli_bark
author_rank: Regular Contributor
timestamp: January 15, 2014, 03:31:15 pm
content: Thanks for the link.It looks like there are 2 schemes for Power-Line communications: Mains (e.g. - 230v AC), and over DC Supplies.I guess that these 2 drive difference applications.

author: kripton2035
author_rank: Super Contributor
timestamp: January 15, 2014, 05:51:25 pm
content: first schematic is the emitter, second is the receiver.it is a one way communication but as it is open source, it should be relatively easy to modify to make a two ways communication between them.

author: roli_bark
author_rank: Regular Contributor
timestamp: January 15, 2014, 06:21:04 pm
content: What I meant was that there are 2 applications: Communications over Mains AC line, and Communications over DC Supply line.In your link it seems that it is for over AC lines, while the subject here relates to over DC Supply lines.

author: temmi_hoo
author_rank: Contributor
timestamp: January 18, 2014, 05:23:26 pm
content: How about using Power over Ethernet? The components are pretty cheap nowadays as is the cabling and all. Nice benefits are that if true per spec PoE is used, the nodes are also galvanically isolated. Communication distance is as per Ethernet spec of 100m per cable. For one-off projects and prototyping, everything can be store bought.PoE has some terms I'll shortly describe here:PSE - Power Sourcing Equipment - the thing that puts power on the Ethernet linePD - Powered Device - whatever is at the power consuming end of cableMidspan - something that sits between an Ethernet switch and a node injecting powerInjector - same thing as midspanNow, there are Ethernet switches that have integrated PSE or you could use an existing switch and put a midspan injector between it and the PoE-powered nodes. At least one company sells Arduino clone with integrated Ethernet and a module for PD, so you could have a nice fast to develop platform from mostly storebought parts.When having first ideas about "how to smarten our houses" I and Pekka liked PoE so much we decided to base our system on it. We are long time Internet and Unix users so TCP/IP was a natural choice for us. Ethernet is everywhere and is pretty much the cheapest cable there is per meter. We didn't like 8bitness of AVR platform, so we made our own and it is in the works.If you're interested in what we are doing, visithttp://ell-i.org/and see. This _could_ be made suitable to your use or it might be unnecessarily complex. However we did want to use bog standard parts and wanted to fit existing standards and basically be compatible with the rest of the world.Even in the case all this is way too complex, the basic idea how PoE puts DC power and AC communications on the same conductors is pretty easy to use in simpler designs. It resembles a microphone phantom supply very much. I'll try to find some nice images to link that are descriptive enough.

author: temmi_hoo
author_rank: Contributor
timestamp: January 18, 2014, 05:35:33 pm
content: http://powerelectronics.com/site-files/powerelectronics.com/files/archive/powerelectronics.com/power_systems/ic-duo-fig2.jpgThis here puts the power on the two communicative pairs and illustrates the main idea nicely. Several variations exist and the chip and transformer manufacturers are really helpful.Our first prototype was several chip evaluation boards botched together with patch wires. Linear PD and flyback EVboard, a ENC80J60 EVboard and a STM32 Discovery F0 board. Then we put some breadboards on it and hacked three software controlled discrete component buck regulators to fire up a nice IP68 RGB power led light.I mentioned Phantom power as well, here goes one solution not involving any transmogrifiers or other expensive components:http://www.prosoundweb.com/images/uploads/BBartlettPhantomPrimerF1.jpg

author: C
author_rank: Super Contributor
timestamp: January 19, 2014, 06:58:09 am
content: The sort answer is toMake all the non power nodes current changes slower by using a shunt regulator. It would not have to totally remove the current changes just lower their freq content.Then the nodes could use this idea. If you know what you are saying you can subtract this from what is on the wires to get what you are receiving. Many systems do this, the analog phone system is one.A second way to think of this is a full duplex version of 4 to 20ma current loop working at higher dynamic current levels.Note here that part of what a node is saying is the changing power needs of the non power node(s). By making all power changes slow ( the rate that the watts usage change ) faster changes can = signal.For a sensor you could use two voltage dividers on each side of a shunt resistor. Connect the two voltage dividers to a differential amp. One side of the shunt resistor is connected to the power/signal wires. The second side is connected to a circuit thathandles transmit & Power. The output of the differential amp is connected to one of the AVR's ADC inputs. This does not really need to be calibrated, just stay in the range allowed for the ADC. Instead of this a high side current sensor could be used.Transmit & Power section could be as simple as switch shorting a resistor. Or changing a transistor between two resistances. For the powered node this section is between the power source and the above sensor. for the non-powered nodes this section is between the above sensor and the shunt regulator.The current change this switch of resistance causes will show at the other end of the wire while also being sensed by sensor above. You now have a signal that changes by transmit signal and power changes with it also changing by received signal.Due to the non power nodes trying to keep a constant voltage via the shunt regulator, Changing the resistance between the supply and nodes constant voltage supply will cause a current change in the powered node's shunt resistor and all the non-powered nodes shunt resistors. All the ADC's values will change. If one node is transmitting, the ADC will change will be between two values in a short time. If two nodes are transmitting and the timing does not match exactly then you will have four values in a short time. Note also that if every node used exactly the same TX resistance change you would still have a difference in ADC values due to the wire resistance used to connect the nodes. And the ADC values will change slowly also due to watts needed for power at the time. The power node changing resistance will be fast in one direction and slower in the other direction. For a non-power node this rate of change will be different. The rate of change is different for all nodes due to connecting wire.Knowledge can be powerful, and could be used here as this is a dynamic system.Information the node can compute while talking and receiving could be used to improve the receiving side of this. If no node is talking then the ADC value will change slowly due to the shunt regulator at the nodes. A node talking will add a second ADC value or will shift to two new values at a fast rate. A node will know when it is talking and what it is trying to say. So it can use information from a little longer term to remove what it is saying from it's ADC values to get what is being received while it is talking.If the powered node had two messages. The first message being to take a reading of your stored power just after the message ends and all nodes did this, followed by a second message from the power node stating Power supply reads x and my two ADC signal readings were A & B then all nodes could compute a value that would be a good guess of the resistance from the node to the power node while taking notice of the nodes A & B values.With all the different ADC values a node might be able to guess what node is talking just by the ADC values and this computed information.This is just an ideaC