Hi, I’m wondering if the power and signal wires (from say an esc) should be routed along physically separated paths to avoid any interference. My teams robot had a very buggy electrical system last year, am I’m wondering if not doing something like this could be a potential cause of the weirdness.
Should signal wires and power wires be routed separately to avoid interference? (wiring best practices)
I’ve tended to run them separately.
Our robot for 2020 split into two major sections (“top” and “bottom”) and all the electrical connections went through one of two APP compound connectors - one connector was all high current 12V power to motor controllers on the top side while the other included the CAN bus, some sensor signals that needed to cross between the two sections, and other low current connections. The connectors were on opposite sides of the robot.
That said, there was one place where we needed to route power and signal through a common tube that crossed through the open center section of the robot (our robot was essentially open in the center to hold PowerCells) - power went one way and CAN bus went the other but they were all in a single about 1" diameter tube. I didn’t sweat it too much and wasn’t willing to make two cross over tubes to keep things apart.
The twisted nature of the CAN bus helps it to tolerate noise (which could come from the power leads as the current flowing through them changes) and I tend to use twisted wires for other sensors and things like that because 1) it just helps keep stuff together that’s going to one device and 2) there is some noise resistance from the twisting (this is more of a secondary concern).
In a lot of cases, the wiring between power and CAN bus (thinking about the common scenarios) tend to diverge pretty quickly anyway - you’ll have some parallel(ish) runs from the PDP that might accompany a set of primary power runs to the motor controllers but once you get to the first motor controller, the control bus heads off in it’s own direction towards the next motor controller in the chain without necessarily snaking along the primary wiring that much.
It’s good practice to keep things separate like that but I can’t say I’ve been able to attribute failures to not doing that. The CAN bus is pretty robust as a technology if you’re doing it right (using the right wire, the right topology, and good connections).
Troublesome robots in the past have almost always been the result of poor connections, poorly strain relieved connections, bad crimps, and abused / damaged wiring than anything I could attribute to interference between power and signal wiring due to proximity.
IMO, it’s not a bad idea but in practical experience, I’ve always found a lot of things that were way worse offenders when it came to itchy robots. But then, some robots are more cursed than others for some reason.
Differential digital signals, like CANbus and Ethernet, are very resistant to noise, and you shouldn’t have to worry about it. On the other hand, single-ended signals, like SPI or I2C that you might use for some sensors, will be more vulnerable. Analog signals will be the most sensitive; if you’re using, say, a potentiometer as an encoder, definitely keep that wire run away from power.
It cannot hurt, but it might not help.
As for buggy electrical, be sure your wiring practices are excellent.
In the past 1745 has used this to shield our longer signal and sensor wires ( SPI, analog, encoder)
But shielding isn’t a substitute for solid properly terminated(crimped, etc), properly fitted, and properly managed connections.
Whenever you see twisted pairs of cables (CAN, Ethernet, etc), that means it’s using differential signals. They are very noise resistant. It won’t matter much.
That being said, it won’t hurt either. I just wouldn’t spend a bunch of time trying to separate them
It’s more important to worry about strain, like bending motions and sharp corners, and also bad / loose connectors
Edit: @CarlosGJ beat me to it
It’s good practice to do so. However, unless you were really tangling up signal and power wires tragically, and unless you also pull them really far apart and/or shield them with a ground-attached shield, you’re not making much of a difference. When I’ve worked through the math and/or solved an EMI issue in my professional life it’s always been a relatively high power/high current agitator or broken power component with an immensely sensitive sensor, like a thermocouple (10s of µV). There’s nothing quite this silly in an frc robot.
Motor power wires are really just high-current differential signals. Twist your motor lead pairs together to dramatically reduce their EMI for a low-effort thing to do. I don’t bother with it though.
100% of the flakey robot electrical systems I’ve debugged have come down to poor termination and poor strain-relief practice.
Your best bet to combat bad electrical performance:
-Modest quality ratcheting crimpers
-Properly-sized crimp terminals
-Inspection for all wired connections before they’re buried in cable bundles
Tangential thought: I’ll give someone a free internet point if they post a video of an FRC robot with electrical signal corruption that is solved by shielding. I would love to see an FRC case where shielding helps.
There was someone in the Lamprey thread claiming that emf off the Falcon was causing noise in the encoder signal, and aluminum foil solved it. In that case the Lamprey tries to pick up mT of field change (and reports as analog encoder), and the motor coils are a much higher power source of potential emf emission due to the multiple windings.
You had me right until here. The motor case is solid, more or less, and metallic. It ought to be a great EMI shield.
It is entirely possible (if not likely) that by installing the aluminum foil that other things associated with the wiring or sensor implementation were changed. Now the results are correlated to installing aluminum foil, but aren’t mechanistically related to EMI shielding.
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.