TV Remote Controlled Servo Motor-Using Arduino!
Greetings!
We use our TV remotes to control the functions of the TV's, but when the TV is not in use, they're absolutely useless. Today, we are going to learn how to add more functionality to ordinary IR based remotes, in this one we shall see how to control servo motors. There are so many (SO MANY) different applications of this project that one can think of. Using the following tutorial, you can make one yourself!
1. Watch the video tutorial-
2. Things you will need-
Let your creativity overwrite my code :)
Enjoy your journey of learning and making new things, and let the exploration never stop!
Cheers
-Siddharth
1. Watch the video tutorial-
2. Things you will need-
Note that you may use a different IR receiver other than TSOP1738, if it isn't available. Usually you can find this on websites like amazon and ebay.
3. The circuit diagram!
4. The IR Remote Library
5. The Arduino Code-
Just copy paste this code into your Arduino IDE
// Written by Siddharth Kothari, curiousmotor.com // Enjoy your journey Exploring Arduino! #include <IRremote.h> #include <IRremoteInt.h> #include <Servo.h> int RECV_PIN = 11; //IR receiver pin int gndIR=10; //initialize pin 10 int powerIR=9;//intialize pin 9 IRrecv irrecv(RECV_PIN); Servo myservo; // create servo object to control a servo // a maximum of eight servo objects can be created int pos = 0; // variable to store the servo position decode_results results; void setup(){ irrecv.enableIRIn(); // start the receiver pinMode(gndIR, OUTPUT); pinMode(powerIR, OUTPUT); digitalWrite(gndIR, LOW); // using pin 10 as gnd digitalWrite(powerIR, 255); // using pin 9 as a 5v power source myservo.attach(5); // declaring the servo object } void loop() { if (irrecv.decode(&results)) { if (results.value==0xE0E0D02F ){ //Move the servo to 35 degrees position // You've gotto change these hexadecimal values(0xE0E...) to button values corresponding to your remote myservo.write(35); delay(15); } if (results.value==0xE0E0E01F ){ //move the servo to 170 degrees position myservo.write(170); delay(15); } if (results.value==0xE0E0A659 ){//add +10 degress to servo position if(pos<180){ pos=pos+10; myservo.write(pos); delay(15); }} if (results.value==0xE0E046B9 ){// decrease servo position by 10 if(pos>0){ pos=pos-10; myservo.write(pos); delay(15); }} irrecv.resume(); } }
ReplyDeleteyour explanation way is too good, very easy to understand for all readers. Thank you for providing the best details and I want more unique posts.
Primavera Training in Chennai
Primavera Course in Chennai
Tableau Training in Chennai
Spark Training in Chennai
Power BI Training in Chennai
Excel Training in Chennai
Oracle Training in Chennai
Oracle DBA Training in Chennai
Social Media Marketing Courses in Chennai
I have read your blog its very attractive and impressive. I like it your blog.
ReplyDeleteTechnology
businessexceltemplates
This post is much helpful for us. This is really very massive value to all the readers and it will be the only reason for the post to get popular with great authority.
ReplyDeleteSelenium Training in Chennai
Selenium Course in Chennai
PHP Training in Chennai
Hadoop Training in Chennai
Big Data Training in Chennai
German Classes in Chennai
German Language Classes in Chennai
Selenium Training in Adyar
This comment has been removed by the author.
ReplyDeleteThank You.
ReplyDelete