??? 05/05/05 10:58 Read: times Msg Score: +2 +2 Good Answer/Helpful |
#92978 - The outside world Responding to: ???'s previous message |
We understand your application a bit better now. I would suggest for inputs that are connected via a length (> 1m) of wire that more precautions are necessary - I gather these wires would be run around your house. Of the things you need to consider:
1/ safety - say you have 5 volts running down your wires for your switches and you wire is something like CAT5 since it is cheap. You need some form of current limiting so that a short circuit won't cause excessive current to flow in the wire and thus cause a fire. Also, even if excessive current can't flow, you don't want to to kill your cpu power. So a fuse and a current limit circuit should cover you. The fuse in case the current limit circuit fails and the current limit circuit so a short circuit won't necessarily blow the fuse. 2/ ESD,Lightning and coupling from mains wiring. Keep your wiring away from mains where possible and try not to run parallel - cross at right angles with the mains. Long wires act as a secondary turn in a transformer with lightning - large voltages can be induced from close strikes - transzorbs do a good job of soaking up low level effects of lightning strikes - if you get a direct hit all bets are off! Also, transzorbs do a good job with ESD - people walking across carpets and touching a control panel is ESD city! If your control panels are metallic - earth them. For 5V signals like RS485 and switch inputs, a transzorb like the SA5.0 are economical. They act like a zener diode - above 5.6V they start conducting. 3/Opto isolating relays is generally a waste of time. The relay itself galvanically isolates the load from your circuitry, so why add another galvanic isolation? Rather than use 5V relays and power them from your cpu supply, use 12v or 24v relays (most likely cheaper) and use a device like a ULN2003 to drive them. The ULN2003 has built in catch diodes and has plenty of current drive to cope with the usual small relay. Keep in mind your 0V wiring - the average 12V 10A relay draws about 40mA each, turn a number of them on and off at once will cause a current pulse - so don't expect to have your 0V wiring run through your cpu circuitry then onto the relays - have a 0v run for your cpu stuff and another to the relay circuit. I don't know if you want to run I2C around your house, not something I would suggest though. In my professional lighting controls I used RS485 which has proved robust and cheap. You can do quite a lot with a 89C2051 and a RS485 chip! I used these in my control panels that had pushbuttons and leds. A newer choice might be a philips LPC9xx series cpu. The 75176 style RS485 transceivers are quite robust. I run multidrop on the RS485 so you can have little boards with dip switches to set the unique address. Have I said enough??? Herlich! |