Ground routing in a system with 2 PCBs - Page 1
Forum section: electronics / projects

author: brumbarchris
author_rank: Regular Contributor
timestamp: August 05, 2016, 06:41:41 am
content: Hi,I have this project which has to go on 2 PCBs and which consists (as a simplified explanation) of a micro (supplied from battery through a 3V3 linear regulator), a motor driver and a boost converter (see diagram attached). Due to non-negotiable reasons, the boost converter has to reside on a separate PCB. The whole system is to be supplied from a 12V battery. The motor driver needs the 29V supply (from the boost converter) in order to operate. Motor current is max 10A.I do not know how it would be better to route the ground of the motor driver. Should I route it on PCB1, along the green dotted path, or through PCB2, along the blue path?To make things more interesting, the motor driver (a Toshiba TB67H303HG, datasheet attached) has a Signal Ground (SGND) pin and separate Power Ground (PGNDA and PGNDB) pins. So in theory, it would be possible to route the signal ground along the green path (using a rather narrow track), and the power ground separately along the blue path (using wide enough track to accommodate motor current). But if the SGND and PGND pins are internally connected inside the driver then this would not really be an option, as there would be to much danger for the motor current to flow along the green path and just destroy it. This method would also create a ground loop (which is not desired).So anyway, what is better, the green or the blue path? My gut feeling says the blue one, but the control signals from the micro to the driver are 3V3 and besides being concerned by a potential ground shift between the two ICs, I also need to consider that any current (admittedly very small) injected by the micro in the driver will also return along the blue path.Regards,Cristian

author: T3sl4co1l
author_rank: Super Contributor
timestamp: August 05, 2016, 09:29:36 am
content: Loops are interference nightmares! Shrink or open them if at all possible.Ferrying power between boards is also an invitation to trouble. Could you put the motor driver on the boost board too?You can open a loop, say by breaking the green dotted line, but that hasn't fixed anything, because you've still got signal(s) crossing the gap: the "CONTROL" stuff. Which is even worse, because those are low level signals that are at the mercy of whatever noise is generated by the power components!So what to do? Simple, really: bring CONTROL back over the connection, with red and blue. Route it around, then back through the other red/black connection to the first board.See why I suggest moving the driver?Alternately, you can use green, cut blue, and suck in the red (29V) wire, so it doubles back through the same connection as 12V/GND. No loops, and as a bonus -- the layout on the boost board, itself, can avoid loops, because input and output are in the same physical location. You hardly have to worry about inducing ground loop noise between (any pairs of) 29V, 12V and GND, because all three can be filtered at a single point.Tim

author: LightBlue
author_rank: Unknown
timestamp: August 05, 2016, 10:35:49 am
content: I'm doing something very similar at the moment.An alternative solution is to break the loop using isolated control signals. I'm currently evaluating these digital isolators to isolate an SPI bus:Analog Devices ADuM141D1BRZNVE Corporation IL717T-3ETexas Instruments ISO7341CDWMaxim MAX14931CASE+Silicon Labs Si8641EC-B-IS1In this case you would use the blue link to minimise the motor current loop area.

author: CM800
author_rank: Frequent Contributor
timestamp: August 05, 2016, 10:49:59 am
content: I would either bring it all onto one board or put the Control on one board and all power on the other.

author: brumbarchris
author_rank: Regular Contributor
timestamp: August 05, 2016, 10:55:32 am
content: Answer to the first reply:Hmm, I do have some difficulties in understanding.First of all, moving the driver is not an option, unfortunately. It is stuck on the board where it is illustrated due to higher level project constraints.Secondly, I am not sure what you mean by "bring CONTROL back over the connection, with red and blue"; does it mean to route them from the micro to PCB2 through the same connector as the 12V and GND and then across PCB2 through and then back on PCB1 through the same connector as 29V and blue dotted line? That would make them even longer and have them cross two connectors, which I do not see how it would improve their signal integrity. Just to note, the CONTROL lines are digital 3V3 signals, this would indeed make them good in terms of immunity.Third, again, I am not sure what you mean by "and suck in the red (29V) wire, so it doubles back through the same connection as 12V/GND" (sorry, English is not my mother tongue). Route it back through the same connector as 12V and GND coming from PCB1 to PCB2? Would this imply I would have a single ground connection between the two PCBs?Regards,Cristian

author: brumbarchris
author_rank: Regular Contributor
timestamp: August 05, 2016, 10:57:16 am
content: Answer to second and third replies:Moving elements between boards is not an option, unfortunately. But yeah, using some isolators would not be so bad. Fortunately, I am not that constrained on cost, so within some boundaries, I can consider some of these new components. Thanks!Regards,Cristian

author: nctnico
author_rank: Super Contributor
timestamp: August 05, 2016, 11:00:43 am
content: I'd use the boost converter board to supply all power to the motor control board. That way you don't have ground loops.

author: max_torque
author_rank: Super Contributor
timestamp: August 05, 2016, 11:13:24 am
content: How physically separated are all the boards?One option is to put a slave controller right next to the motor driver, that is powered from the same 29V it gets, and outputs the necessary logic signals to operate the driver as necessary. Then use a simple galvanically isolated (opto-coupler etc) serial data line between the control processor and that new slave micro. This also has the advantage of making the motor driver "stand alone" and hence can be used for other projects easily! (if it's likely to be used remotely, then consider something like CAN /RS485 as the serial link)There are of course 3 issues with this solution1) cost2) complexity3) the serial line brings a control bandwidth limit to the main processors response time, which, depending how much control you do in the slave processor, may or may not be an issue for your application)

author: b_force
author_rank: Super Contributor
timestamp: August 05, 2016, 11:47:06 am
content: Star grounds are mostly the key to success.So separate the 'dirty' heavy power grounds from the rest.Although the problem is not as bad as combined analogue/digital circuits (especially audio!)First you need to find out where you want your star. Mostly it around the powersupply capacitors, but it depends a little.What I would do, is break up the ground from motor an use a separate cable to the start ground.Than also use a separate cable from the ucontroller+voltage regulator to the start ground.In this case I hope that you buffer/decouple your 12V as well.That would be a good starting point for a star ground.

author: brumbarchris
author_rank: Regular Contributor
timestamp: August 05, 2016, 12:06:50 pm
content: Hi All,Thanks for contributing.PCBs would be stacked one over the other max 2cm apart.But just to make myself clear: my initial intention is to either use the green route, or the blue one, not both of them simultaneously; and I personally prefer the blue path. In this case, I would not have a real ground loop, would I? I would only have a single star point for the ground, located at the entry of the ground cable from the battery in PCB1. My initial concern was related to the signal integrity of the CONTROL lines, if I take that route, although I am not totally clear in which way this would be detrimental for them. I realize that whatever current these control lines would inject in the motor driver would have to return via the blue path. But these currents are really small, the micro drives some digital inputs on the motor driver, and these sink just microamps.However, as I said, I do have an uneasy feeling about this, although I can not explain myself a predictable fail mechanism. The architecture in terms of component distribution over boards is relatively set, I cannot change that. While I appreciate people suggesting different component placements on boards, I am stuck with what is in front of me in that respect and I need to find a solution that would make the current arrangement work. I am allowed, though to fiddle around with the ground paths.Adding a second micro is a no-go, due to the SW effort involved (which is not mine, really). But I do favor isolating the control lines on their own, as LightBlue suggested earlier.Regards,Cristian

author: LightBlue
author_rank: Unknown
timestamp: August 05, 2016, 12:43:04 pm
content: Quote from: brumbarchris on August 05, 2016, 12:06:50 pmApart from ground loops, you also need to consider voltage drops. Your microprocessor generates 3.3V signal relative to its local "0V". If your motor is drawing 10A and you have 100mR resistance through the return wiring and connectors, you could potentially will have a voltage differential of 1V between the MCU "0V" and the motor driver "0V". The motor driver is unlikely to interpret the 3.3V logic signals correctly as they would appear to be 1V to 4.3V signals. If you add in current spikes in the motor return, you could create erroneous pulses because the motor controller "0V" is bouncing up and down compared to the MCU "0V".You could use differential signalling (i.e. RS485 or M-LVDS) but you still need to be aware of the common-mode input range of the transceivers, plus you still have a loop because the differential signals need to return common-mode current to the driver.Galvanic isolation solves this issue and also breaks the ground loops.The parts I mentioned above are all digital isolators, but as suggested you can also use opto-couplers. I'm not using them in my application as they aren't suitable.James

author: nctnico
author_rank: Super Contributor
timestamp: August 05, 2016, 04:25:25 pm
content: Using isolation on one board serves no purpose to prevent interference between circuits. Just keep the part with high currents seperated from the control circuitry.Even a solid ground plane can be modelled as a resistor between 2 points.