Split logic/motor power and ground? - Page 1
Forum section: electronics / general

author: brbj1503
author_rank: Newbie
timestamp: July 09, 2025, 08:12:58 am
content: HiI want to provide both motor power and logic power to 6 PCBs, each driving 8 BLCD motors. The motors have an internal controller, and I control it using an MCU (pwm, dir, hall). The system will use between 6-12A total current at full load. The PCBs are connected using cables. My question is how should I do this? I see three options:1. Split motor/logic power at the DC/DC input and use separate cables for motor/logic power to the PCB's in the chain (PCB 2)?2. Use the same cables for motor/logic power and not split them at all?3. Split power, but share ground in the cables.My concern with 1. is that the ground level will differ at each of the PCBs, such that the pwm input, direction input and hall effect output, will have different voltages depending on how much current is drawn. But, it is not that many amps, so should it be possible to neglect this?My concern with 2. is that motor noise can couple over to the logic side.Any ideas of best practice here?

author: mtwieg
author_rank: Frequent Contributor
timestamp: July 09, 2025, 09:22:12 am
content: QuoteWait, so there is an "internal" controller, but the PWM and hall sensor signals are passed to/from an external MCU? Sounds like the MCU must be the controller then... maybe you just meant that the hall sensors are built into the motors?QuoteTotal for 48 motors? That's actually very small per motor.QuoteSo your block diagram only shows power connections between the PCBs. There is no signaling (analog or digital) between them? And there's no other external controller telling each MCU how fast to spin each motor?If so, then I don't even see any potential issues with grounding. There are no signals traversing across different power domains to worry about. The only thing you might have to worry about is excessive ripple on your 24V supply rail. But I'm guessing you've left something out of your diagram....QuoteI'm hesitant to go very in depth until I'm sure there aren't any major details missing from the setup. But the simplest and most foolproof way to handle your logic supplies is to only provide 24V to each board, and give each board generate its own logic supply from the 24V rail.However if the controllers actually do share some signaling, then this approach might not be wise. Again, I'll wait on more details....

author: brbj1503
author_rank: Newbie
timestamp: July 09, 2025, 10:49:45 am
content: QuoteYes, exactly. It is a three-phase motor with integrated driver. I just need PWM, direction to control it, and I can read the hall output to get the speed.QuoteYes, that is the maximum practical current they draw. Of course, during full stall, there will be more, but I am not designing for that. Besides, I have a hotswap IC which will prevent damage during such occurrences.QuoteI apologize, the MCUs are indeed controller from the distribution PCB using RS485 (as well as a plain digital signal for enumeration).QuoteYes, I am worried about the ripple and noise in the 24V rail. I have read that best practice is splitting power/ground close to the source (DC/DC), but in that case I will have signals crossing diffferent GND domains between the MCU and the BLDC motor.

author: mtwieg
author_rank: Frequent Contributor
timestamp: July 09, 2025, 11:58:45 am
content: Quote from: brbj1503 on July 09, 2025, 10:49:45 amOk so the cables between each motor controller and motor will carry 24VDC, as well as logic signals for speed/direction control and measurement. Is that all?I'm assuming the signal I/O of the integrated drivers are referenced to the same GND as its power circuitry? Can you share the part number/datasheet of the motors?QuoteDistribution PCB? Is that the "Hotswap" PCB1 or another board not in the diagram?Will the "distribution PCB" be slaved to something else, like a PC or user interface? I'm imagining this is some sort of CNC or robotics project, with a big central "brain" somewhere.These sorts of design decisions require mapping out all power and signal domains (including how/whether each part is earthed) at a high level. Leaving out some mundane details can turn everything on its head later. For example, I've worked on complex projects where everything worked perfectly until somebody tried to debug an MCU with a JTAG tool while things are running. The addition of that new earth return path caused all hell to break loose.QuoteAlthough I can't say for certain that splitting grounds isn't a good idea, this statement doesn't make any sense at all IMO.For example, it's hard to tell what you specifically mean by "splitting" grounds. I could think of a couple interpretations, but both of them are quite messy...Also you mentioned "ripple and noise in the 24V rail." Sounds like you're referring to the voltage on the 24V rail. But ripple voltage on supply rails is only indirectly related to the real problem. Usually grounds and power domains are "split" in order to restrict the paths of return currents, especially from power circuits with high di/dt.For example, the motor drivers will draw substantial ripple current from the 24V bus. If this ripple current also flows through the cable between the PCB and motor, then that will cause some amount of ground "bounce" between the PCB and driver side, potentially causing issues for signals which have to cross that cable. One way to mitigate this is to put a large amount of bypass capacitance on the motor side of the cable. Some of the high frequency ripple current will be diverted through that capacitor, thus lowing ripple current through the cable. Adding a properly selected choke on the 24V wire to the motor driver would be much more effective. Ironically, you might end up observing much larger ripple on the driver's supply, but the ripple current (and thus ground bounce) on that cable would be reduced, which is what you want.But if all the signals on that cable are logic signals, then you may not need any special tricks at all. Especially if none of the logic signals are edge-sensitive.

author: brbj1503
author_rank: Newbie
timestamp: July 09, 2025, 02:34:08 pm
content: Thank you so much for the answer!QuoteThe motor part number is BL2430I integrated with the GC4931P 3-phase driver.Yes, exactly. The motor pins are:- PWM input (must be above 2V for logic high)- DIR input (must be above 2V for logic high)- HALL output (5V internally regulated)- 24V- GNDQuoteYes, the hotswap (PCB 1).Yes, it is connected to a PC over Ethernet. That is the brain!_QuoteI have 1mF close to each group of 8 motors.QuoteDo you mean one choke close to each motors 24V?QuoteSorry, let me be more precise. Focusing on the logic connected directly to the motors, there are two options. I can hook the regulator supplying the logic directly to a local motor's power input (use local power). This ensures the motors and MCU have the same potential. Another solution is to lay another pair of wires between the PCBs for logic supply. This is only routed to the logic on each PCB and is tied together with the motor power at the DC-DC input location. Perhaps this is just a bad idea.Are you saying it is best to route just a single pair of 24V + GND in the wires between the boards, do the filtering close to each motor, and adding enough capacitance?

author: mtwieg
author_rank: Frequent Contributor
timestamp: July 10, 2025, 12:43:43 pm
content: QuoteThis will help prevent ripple currents from propagating from one PCB to another, but won't prevent ripple currents from one motor within that PCB from affecting signals for other motors connected to that PCB. Ideally all ripple current would be restricted to capacitance right next to the driver for each motor.One thing to be aware of is that if the capacitance on the motor-side of each cable is large, then hot plugging those cables will not be a good idea... unless you have a hot swap controller or ICL for each motor.QuoteYes.Though if you want to actually try using LC filters, there are caveats to be careful of. For example, if one side of the LC filter suddenly has power applied, then the other side might overshoot momentarily to twice the input voltage, potentially damaging components. Also the LC filter may cause stability issues in the 24V power supply. As a general rule, I always critically damp my LC power filters. Simplest way to do this is to put a power resistor in parallel with the choke with value equal to around sqrt(L/C). This does reduce its effectiveness as a filter, but should avoid most issues with the resonant behavior.QuoteThis is still incoherent to me...Quote"The logic". You mean the circuitry on your PCBs driving/reading the signals on the cable? Or on the motor side?QuoteFrom what I can tell the GC4931P has an internal LDO, so it already generates its own logic supply from Vbb (the 24V rail).QuoteYou're referring to the supply voltages for the logic on either side of the cable? Those don't need to be exactly the same (so long as they have compatible logic levels). What you want is for the voltages observed at each end of each signal wire to be the same with respect to whatever circuitry is detecting/driving it. I don't think the placement of the regulator(s) for the logic supply factors into that.QuoteNot sure which "PCBs" you're referring to here....Having updated diagrams would help a lot.QuoteThat's the simplest option I can think of which doesn't require introducing a large amount of circuitry (logic isolators, isolated power supplies, etc). Not sure if adding any filtering on the motor side is even feasible for you, though.Also I should again emphasize that you might just be overthinking things and you might be fine without any special mitigations (for this project, anyways).

author: Doctorandus_P
author_rank: Super Contributor
timestamp: July 19, 2025, 10:42:08 am
content: I would use a local SMPS on each motor controller board, and generate the logic power supply from that.With RS485, input levels are valid down to -7V, and this is an important specification.Suppose the motors on the "far end" of the cable have 3V of voltage drop due to cable resistance. The local GND on that motor controller will then be raised by 3V, and the logic inputs will be between -3V and +2V. This is not a problem at all for RS485, it's explicitly designed for that. But this voltage drop is a problem if you have two separate power cables.If you have separate cables, then beware of what happens if the GND of the motor cable has a bad connection. If the current then goes though the cable for the logic power supply, it may release a lot of magic smoke and stop working.