I have also been asked for more details on my motor suppression circuit that I first blogged in dc-to-daylight, so here goes :-
The Solarbotics GM3 generates large amounts of RF noise from 20MHz up to at least the TV band, which is 470- 850MHz in the UK. I know this because I can see the 20 MHz on my scope and it was also affecting our TV reception.
This is the circuit I used :-
The 1nF capacitors were axial ceramics and the 10nF was a radial ceramic, mainly because that is what I had to hand. I don't know the spec of the ferrite beads because I salvaged them from an old disc drive. Here is what they look like though :-
They should be a low Q type rated for at least 1A. The current rating is not so much about how much current they can carry but about the point where the magnetic field saturates the ferrite and the inductance disappears.
We want them to have a high impedance from 20 MHz to 800 MHz. I don't have much knowledge in this area but think this is quite a big ask for a ferrite and that I fell lucky with these. To get more impedance at the low frequency end it is normal to increase the number of turns to increase the inductance which is proportional to their square. The problem with that is that it increases the capacitance, reducing the attenuation at the high frequency end.
These beads are a good compromise: they have nearly a whole turn compared to a straight through bead which is half a turn, hence four times the inductance, but the wires maintain 0.1" separation so minimizing the capacitance.
The first two 1nF capacitors are soldered to the motor case. This is easier than you might imagine because steel is such a poor conductor of heat compared to copper, although it has to be said I am using a 50W temperature controller soldering iron. I cleaned the area first with a PCB cleaning block.
This is the rest of the circuit before it was soldered on top of the two capacitor leads. Spot my mistake!
Ignore the back emf diode, it is specific to my controller and should really be part of it. I used twin screened cable with the braid grounded at the controller end and left unconnected at the filter end.
Wow! (jaw drops) Reading all this I wonder how my system works at all?
ReplyDeleteI slapped a 0.1 uF polyester film capacitor across the leads into my GM3's and GM8's and have never had any trouble of that sort.
Mind, I don't have a scope, but I've never heard any radio interference nor have I had any complaints from the neighbors in my building about TV interference. I'd have thought that I would since I've run the silly thing for days at a time.
I used the polyester film capacitor instead of a ceramic for some reason that Simon mentioned over a year ago. I can't remember what the reason was, though.
I wonder if I'm just too dumb to have noticed the sorts of problems you're finding?
We have terrestrial digital TV which is more sensitive to noise than analogue and the aerial is in the loft, which is not the best location. Isn't it all cable in the US?
ReplyDeleteAlso my use of I2C means that the comms is more susceptible to noise, it's 3.3V rather than 5V, edge sensitive rather than level and 10 times the data rate.
I wouldn't have thought a polyester film capacitor would have less inductance than the disc ceramic I tried bit it may do if it is small. They are used for mains motor suppression for safety reasons.
The three 1nF capacitors were enough to fix the TV and make the comms work but there was still a lot of noise on the scope.
"Isn't it all cable in the US?"
ReplyDeleteJust about, except in some rural areas. Even there you're more likely to find people using satellite dishes instead of antenna what with mountains and all making reception shadows pretty much everywhere. When they went over from VHF to UHF years and years ago transmission became more or less line-of-sight.
"Also my use of I2C means that the comms is more susceptible to noise, it's 3.3V rather than 5V, edge sensitive rather than level and 10 times the data rate."
I've thought about going over to I2C for some of the comms. Sounds like I could get in trouble with brushed motors.
"They are used for mains motor suppression for safety reasons."
Disk or film? Where does the safety issue come in?
Yes I2C is IIC which stands for inter IC and was designed for comms between chips on the same board. Comms between boards should done with something with electrical noise immunity. RS232 achieves that with large voltage swings, making it slow, RS485, CAN, USB and Ethernet all do it with twisted pairs carrying differential signals so the noise cancels out.
ReplyDeleteI was tempted to use I2C, against my better judgment, because all my micros support it with only two resistors, and it is multi-drop. I have got it to work but I use separate PSUs for my heads and main controller to eliminated ground currents in the comms wires, had to suppress my motor well, added a CRC, sequence flag and retries, used screened cable throughout.
If I was using micros with UARTs I would have used RS485.
Capacitors connected across the mains have to have an X safety rating which basically means the won't catch fire, even when the line has big voltage spikes. Some film capacitors achieve this by being self healing. When a high voltage spike punches through the dielectric it seals itself again and recovers. A ceramic capacitor would just go short circuit and either take out a fuse or explode. A cap between mains and earth has to have an even more stringent Y rating which means they are not allowed to break down with high voltage spikes.
Ceramic capacitors are not safe to put across the mains but they are good low inductance decouplers. In fact all you need to do to a multilayer chip ceramic capacitor to make it catch fire is connected it across a high current supply and mistreat it enough physically to make a microscopic crack through the chip. In time moisture causes current to track through the crack. That causes metal to migrate along the crack till it makes a connection. Because it is microscopic it has a few ohms resistance rather than a complete short. That causes several watts to be dissipated by a tiny device so it burns and if you are unlucky, sets fire to your PCB.