Introduction: Voice Controlled Switch With Arduino
This is for the first time am uploading my project in Inscrutable. So if you guys find any silly mistakes please ignore it.
So, about my project, this is about the voice operated lights inspired from IRON-MAN movie. So JARVIS by Michel c, the software is used here to recognize the voice commands and opens the particular file. The interaction between the computer and arduino is done through the COM port in command prompt in Windows.
Step 1: Starting Up...
Here is the list of items you need:
1. Arduino Board
2. Wires
3. 5v relay
4. PCB
5. 2 pin screw Terminal (2)
6. All soldering Components
Step 2:
1.Place all the Components as shown in the images above.
2. Now place the cable in the screw terminals.
-> One pair (red and black) at the other end is connected to the source or battery. In my case i have connected to a 6v 4.7ah Battery.
->And the other pair (Green and white) is connected to the lights.
->You can add the AC/DC power supply according to the configuration of the lights. I have connected 10 1w LEDs.
3. I have also connected Female header Terminals so that it would be easy to plug the jumper cables from the arduino.
Step 3: Circuitry...
The relay acts as if condition in electronic circuits. when ever 5v is applied across the coil, the tongue connected to p1 else connected to p2.
Connect all the points as shown in the diagram above.
Step 4: Arduino Program
int incomingByte = 0; // for incoming serial data
void setup()
{
Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
pinMode(12,OUTPUT);
}
void loop()
{
// send data only when you receive data:
if (Serial.available() > 0)
{ // read the incoming byte:
incomingByte = Serial.read();
// say what you got:
Serial.print("I received: ");
Serial.println(incomingByte, DEC);
}
if (incomingByte==100)
digitalWrite(12,HIGH);
else if (incomingByte==97)
digitalWrite(12,LOW);
}
Attachments
Step 5: How It Works
Step 6: The C# Codes...
// c# program to switch on the lights using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO.Ports; using System.IO; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { SerialPort sp= new SerialPort(); sp.PortName = "com4" // write your com port connected to arduino sp.BaudRate=9600; sp.Open(); sp.Write("d"); sp.Close(); } } }
This one to switch off the lights.
// c# program to switch off the lights
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO.Ports; using System.IO;
namespace ConsoleApplication1 { class Program { static void Main(string[] args) { SerialPort sp= new SerialPort(); sp.PortName = "com4" // write your com port connected to arduino sp.BaudRate=9600; sp.Open(); sp.Write("a"); sp.Close(); } } }
Type both the projects separately
Type => Build => take the .exe file
you can get the .exe file from
Documents/Visual Studio/Projects/<project name>/<project name>/bin/Debug/<project name>.exe
for both the off and on, bring two exe files and place them somewhere u are comfortable.
Attachments
Step 7: Time to Power Up...
=> Connect the red and black wire to the +ve and -ve terminal of the supply respectively.
In my case i am using 10 1W Leds. Hence I have connected a 6v 4.7Ah battery to power them. If you want to connect to the AC supply then you can go for it.
WARING..!!! Dont connect the LEDs directly in the AC, Use a ac appliance instead.
=> Connect the white(gnd) and Green (+ve) to the two terminals of the appliance or LEDs.
I have also connected a DPDT switch to the battery in order to turn the leds on directly. whthout arduino. You can skip that.
Step 8: Putting Them All Together
Step 9: Configuring JARVIS.
you can download the JARVIS:
Download Jarvis Software from here
After finishing the installation, open the program, select the language you are comfortable with.
then click on the +button at the right bottom to add custom commands...
then add commands,
add response, and their respective file location.
Finally say "Update commands" to save and active those commands.
try to say those commands and see the results
Step 10: Possible Errors
If the jarvis program dose not recognizes your voice then you should train your system.
In order to do that goto
control pannel > Speech Reorganization
Complete the training process then try it.
If the problem still persist then feel free to contact me or comment below.
catch me at www.facebook.com/bisudw
mail me: mails2bisu@gmail.com
Step 11: Any Device Can Be VOICE CONTROLLED
With a little bit of modification in the codes, and by adding some more relay switches to the arduino board can be controlled from the voice.
Here is my modification. I added one more switch with 230v 50hz AC supply to control the fan.
Then updated the commands at JARVIS console... den all set to go.
instead of the Fan plugin any device you want and get started.

Participated in the
Arduino Contest
60 Comments
9 years ago on Introduction
Cool project, but the way you have connected the coil of the relay to the Arduino could end damaging the chip.
I know it because I've been involved in a very similar project and I found several discussion topics about this.
http://makezine.com/2009/02/02/connecting-a-relay-to-arduino/
Reply 9 years ago on Introduction
Thanks Victor8o5... I was wondering why i wasnt able to connect more than 2 relays, I got the mistake, connecting directly draws a lot of current. You solved my problem. Thanks a lot.
Reply 9 years ago on Introduction
Hello :) I just want to ask, how did you solved the problem with relays connecting on arduino? I'm afraid that if I try to connect the relays directly to arduino may harm the chips, right? Can you elaborate it please? have a good day :)
Reply 9 years ago on Introduction
no they are not going to harm the chi if you want you can connect them directly.
Reply 6 years ago
Back emf reverses the polarity, so it may damage the board... due to change in polarity.. better to put diode ;)
Reply 8 years ago on Introduction
it would be better if u connect a diode across relay so that it prevents back emf generated when relay deenergises to enter arduino>.
Reply 8 years ago
Yeah it would b better... since m not a electronic endgineer.. i havnt thought about back emf... but hey.. dats a nice idea... safety comes first... go ahead..
Reply 8 years ago
No directly connecting the relay wont harm ur board... the problem is.. since the relays are 5v abd the board too works on 5v (usb connection) so there will be lack of power when u will connect 3 or 4...
Sorry 4 late reply...
Question 3 years ago on Step 1
which model aurdino board is it?
6 years ago
can i use main current for controlling lights in my room.as i am having arduino uno r3.is it possible.if possible then how
6 years ago
is there any anathor way to control tube lights with voice recognisation
6 years ago
Hello,
Can i get your email please. I have something to ask you.
Thanks
Reply 6 years ago
Mails2bisu@gmail.com
6 years ago
The link given for JARVIS is not working. Can I get any other working link?
7 years ago
Hey I need to know how you run the light on code and using which software
8 years ago
how can i download the file that you are posted
Reply 8 years ago
which file you are talking about??
Reply 7 years ago
the jarvis file, it was taken down, can you email me the file at srivishnupiratla@gmail.com
7 years ago
Pelo Amor de Deus, alguem fez isso em portugues brasil pra me traduzir????
7 years ago
hello, jarvis software is not available in the site you have mentioned above can you suggest me some alternatives