Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

How to reduce static in a CPU based ite

Status
Not open for further replies.

balagary

Electrical
Feb 9, 2007
11
US
We are using a 89c52 cpu in a machine and we are having horrible static issues. When the user touches the machine and discharges static to it it resets the machine. We have tried a lot of grounding throughout the machine and still no luck . It only seems to happen when the humidity drops low ( less then 30 percent or so )and the problem ' fixes ' itself when it gets more humid and less static in the air. Any help would be aprrecaited . Is there anything that can be done now ,after the intitial enginerring has been done , to modify this board to help out ?
 
Replies continue below

Recommended for you

Static flows to the outside of a metal case. Your design has to be such that when it flows by the shortest path to the outer case it doesn't go through your logic board. There is nothing to measure and nothing much to simulate. You have to look at the case design and see the way the current will flow. It takes a while to develop this ability. It is not the logic board itself that is necssarily the problem, but the way it is mounted in the case will be critical. You may need insulated pillars on the mounting points if you don't want to redesign the pcb.

Use a static discharge gun to simulate the effect in order to make fault finding easier. This way you get a deterministic repeatable test so you know what changes are better.
 
The specific CPU is more than likely irrelevant. What kind of circuitry do you have surrounding the chip itself in the way of bypass caps on the power/ground line pairs, caps on the power line, etc.? Is there any shielding of the CPU itself? What kind of I/O lines are running in/out of the box?

Dan - Owner
Footwell%20Animation%20Tiny.gif
 
Are there any user controls (switches, pots, etc) that are mounted on the case? It gets more difficult if this is the case. It will help to have clamps or some other kind of ESD protection on there, but if the path goes through your logic ground, it can make still make the board reset.

If there are no user controls, then isolating the PCB or having a single grounding point may help.
 
"a single grounding point may help"

I wouldn't say so. I had a similar problem with an operator's panel mounted in a control desk. The only way to make that particular system work without resets was to cround its 0 V rail directly to the panel steel with a short wire. Doing this created a path for ESD discharge directly to ground - without passing through circuit ground and creating resetting or otherwise disturbing voltage peaks while finding its way to control desk ground.

Of course, controlling humidity or ionizing air is another way of avoiding the problem. Sometimes a semi-conducting mat solves the problem.

Gunnar Englund
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
 
The make this more understandable, the machine is one of those claw grabbing games where you win the stuffed toy, so Yes there are controls ie: Joystick , buttons , coin acceptors, that are mounted to the metal front control panel. THere are 1000uf caps across the power inputs to the main logic board and just maybe 1 or 2 of those tiny caps in the cpu area itself. We have tried putting ferrite cores around the harness going from the control panel to the main cpu but no luck there either .
 
Like this. Note that paint has been removed from desk metal and that toothed washers are used.

405bes9.jpg


The microfarad capacitors have nothing to say when ESD hits. Use small, fast ceramic capacitors.

Gunnar Englund
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
 
Gunnar beat me to the punch... you need some small caps in there. Think in terms of decades, like adding in a 0.1uF and a 4.7uF or 10uF. You need to quash those high-frequency noise spikes before they hit your processor. Do you have any resistors/caps on your panel cables? You can slow down any signals coming from the panel using those, reduce the radiated stuff most likely getting into your ground plane.

Dan - Owner
Footwell%20Animation%20Tiny.gif
 
ok great , the .1uf and 4.7 uf or 10 uf , where to you recommend that I put them , across the vcc to ground at the power supply , across the vcc at the cpu ? or where ? Do i use all of the values in paralel ? or just 1 at a time till I get 1 that works ?

As far as the caps on the panel cables , please explain . The cables right now do direct from the controls ( joystick , buttons... ) direct to the main board and in through a connector . What would you recommend that a resistor / cap solution go in this area ? This is set up like an RC network , so they go in paralell with each other , right ? What values should we try .

Thanks
Gary
 
Resistors in series with any signal that goes to the activators, or the other interfaces on the panel. They will limit the instant current of the spike and will also allow the filtering caps to do their job. What values? well it depends on the design. Try values high enough until it disturbs the normal functions, the step down to have a fudge factor.

The reset can also take its source from the spike irradiating energy from the cables inside of your box. So filtering at the panel level would be the way to go.
 
Post a picture of your setup, surroundings, and sensitive static locations. This may help in our suggestions.
 
Toys covered with plastic fibers and see-through plexi or glass side panels may also be a 'potential' generator of static.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
"It's the questions that drive us"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 
Check out these shots of the control area and the main pcb , i hope you can see the images

cranegary.jpg


cranegary3.jpg


cranegary2.jpg


cranegary1.jpg








 
Your problem is that the static is being conducted into the micro via the I/O lines from the control panel. I have seen this on many applications...
The classic is the standard 2-Line LCD displays. They have a metal bezel around them. If this bezel is not deliberately grounded when someone touches it or a spark jumps thru an overlay to it they always crash the CPU running them by conducting the pulse thru the data lines to the CPU's I/O.

This problem has nothing to do with your power supply or any caps associated with it.

You need to deal with that conducted charge.

The best method is to have the controls be either insulated or directly grounded. Barring this possibility you need to limit the voltage spikes from getting to the CPU. This is likely not possible via add on stuff but should be part of the I/O board/hardware.

You you put a healthy ground plane everywhere you can on the board.

Use a semiconductor transient voltage suppression(TVS) protection device like a SIDACtor or Thyristor, Transorb, MOVs, zeners or voltage suppressors from the circuits leading from the offending control appendages to your ground plane. (my favorite = bidirectional Transorb)

Look in a Digikey Catalog.

As previously mentioned (by felixc) you run resistors of some value between these controls and the CPU on all lines except the grounds.

It is best if you can also put some resistance between the aforementioned appendages and the suppression devices as that gives the suppression devices a huge boost in protection ability.

You may be able to retro some of these solutions to your existing boards but it won't be pretty.

33m4hzq.jpg




Keith Cress
Flamin Systems, Inc.-
 
Holy moly, but that main board is stuffed with stuff... I understand the bulky relays, but I can't imagine all of that stuff being necessary to run a simple crane game. That design probably hasn't changed since the 80's...

Dan - Owner
Footwell%20Animation%20Tiny.gif
 
Hey Dan.
Nature of the beast. Most the time they want a million possibilities covered so they add the kitchen sink then use half the stuff. I can imagine those dipsw for which product are we today.

hmmm you got the CPU, RAM, ROM and 2 PIOs and some jungle logic to address them all.. That's par for the course!

Good to see a forest of opto's too.(unless they're bridges)
They aren't getting it done though if static is still blitzing things.

Nice idea to use a junker PC supply because they are potent but cheap.

Thanks for the pictures balagary!

Keith Cress
Flamin Systems, Inc.-
 
A word of warning about Keith's suppression circuit. It is shown with innocent looking earth points. BUT, these are the problem points. It is no good using Keith's circuit and having a 10 inch earth wire to ground.

I saw several of these in your pictures. It is the exact way that the earthing is done which is critical.

I also noticed a lot of wood inside. Wood is not a good RF conductor. Remember that a static discharge has a risetime of less than 1ns; that is seriously fast! You need a metallic shell around your circuit board. If you don't have one you need to make one.
 
logbook makes a good point. If you have two wires and subject them both to a voltage pulse you can end up with both rising instead of being able to clamp one against the other - that is held at a rigid (or more nearly) ground potential.

What happens if the PC supply or your control board catches fire? All that wood... Is that a problem or the way things work in that industry?

Keith Cress
Flamin Systems, Inc.-
 
ok , so if we were going to make a shield for the main pcb, what would it be like , how would it attach to the board or would it just go to ground ? If we are using the ground - now which ground ? Earth ground ( my ac ground ) or the DC ground from the power supply ?

Next - If the static is coming in to the machine is being introduced from the player into the control panel, is it more likely that it is coming through something like the joystick i/o and into the main computer ( being that the joy stick is plastic ) or maybe it is more likely that it is getting in the computer from the coin acceptor which is a metal / metal plated plastic which is mounted to the metal panel ? The reason I am asking this is that maybe we can get away with only pretecting just the inputs that are more likely to be carrying the static problem to the main pc instead of having the problem of trying to put the fix into all of the inputs.

Next - What is the best way to trouble shoot this problem? I mean to make the static and put it to the machine to make it be a problem ? We currently just put on a sweatshirt and rub up and down on some bubble wrap and then go and touch the game . Any better ways ?

Part of above - In trying to see if we are making any progress in fixing the problem , if we remove all of the wires coming from the control panel and just leave 1 or 2 attached and then work on shocking the machine, can we just put the mods on these 1 or 2 inputs instead of doing the 10 or so that are there all the time. Once we figure what fix works , then we implement it to all of the inputs ? Am i looking at this the right way?




Next - Is there a way to 'watch' the static and actually see where it is going ? I was thinking of using a scope and watching differnet parts of the cpu or the i/o chips or is the static so crazy it goes all over and it is impossible to watch ?

There are a bunch of these machines in the field that are experiencing these problems so thanks all of you for helping out here to try and get this solved

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top