How to control relays using Arduino board?

Hi all,

I am new to this forum and the electronic industry too. I am working on a project where I have set of indication relays(which is used for indication) and control relays(which is used for controlling). The no of relays are more than 200 and each relay having 24VDC/200mA . I have to control these relays from computer(via ethernet) and read the status of indication relays. How can I do this using Arduino board? Can somebody help me on this please?

Thanks in advance.

That is a lot of relays.

having 24VDC/200mA

Is that how much current the coils take? If so you are looking at 24 * (.2 *200) = 960W of power!!!

First off wire up the relays like this:-
http://www.thebox.myzen.co.uk/Workshop/Motors_1.html

Next you need to have 200 outputs so you need something like 25 shift registers wired together. Check out http://www.arduino.cc/en/Tutorial/ShiftOut

and read the status of indication relays.

Is this the relays you have set? If so you know what they are and can send that information back.

Thanks a lot. Actually the relays I mentioned are placed in a relay interlocking system and they are powered too. What I need to do is, build an interface to connect to the computer and control those relays. The indication relays are used only for indications i.e. they are not used to control.(More clearly, say I activate the control relay and it will do some action by switching another circuit. Then the result of the action performed is brought back to the LED panel using the indication relays).

Can you suggest a good way to handle this situation? I thought of handling these relays using miniature relays which are connected to Arduino board. Is it a good method?

Thanks for the explanation but I still have absolutely no idea what you are talking about.

What is an "indicator relay"? never herd of one in over 40 years in this game? Is it switch contacts you want to monitor? A link or two would be good.

If so then look at the shift in version of the link on the shift out.

So how many relays do you want to control, that is turn on an off. What makes them go on or off. If it is command from a computer what form does that take? Is there a program on the computer that is running or do you have to write one?

Is this the relays you have set?

No. They are the indication relays which are controlled by the system on the other side. We have to read the status of this relay.

We have to read the status of this relay.

So what access do you have to the relays? Can you get at the contacts? Can you get at the coils? Can you get at what ever they are indicating?

Actually the relay is connected to the LED bulb. i.e. when ever a signal comes from the other end, the relay will on the LED.

The term "indication" we use with the relay, is actually used to categorize the purpose of the relay in the system. Nothing more:).

So how many relays do you want to control, that is turn on an off.

say about 100 that we need to control(on/off)
and 100 which we need to get the status whether its on/off.

What makes them go on or off. If it is command from a computer what form does that take? Is there a program on the computer that is running or do you have to write one?

They need to be turned on when we click a button on the computer. We have to write a program for that .

thanks.

OK getting clearer now.
The controlling relays you will need the shift register expander link I posted earlier. Look at writing your code in processing, it's free and programs up like an aduino.

As to monitoring the LEDs this is a bit more tricky. Can you get into the wiring of the LEDs. If so you can wire an opto isolator (and resistor) in parallel with the LED and resistor of your indicator. An opto isolator is just an LED and a photo transistor in one package and will allow you to detect when the LED is on, by connecting it to an Arduino input.

As the arduino doesn't have 100 inputs you will have to use input shift registers to read all the signals.

Is there any other way to read the status other than using the opto isolator? Because we are trying to remove those LEDs and display it on a LCD screen(by animating color light shapes).

You can read the LED directly if you want to connect the ground of your external system to the ground of the arduino.

You will have to make sure that when you remove the LEDs you have a clear connection to ground when the LED is activated and open circuit when it is not. If you have this then you can wire what went into the LED directly into the shift register and have a pull up resistor to +5V.

The beauty of an opto isolator is that it is not dependent on how they have wired up the other side of the circuit.