Let's Make Robots!

Arduino/ servo/ RC basics

I'll start off admitting that I'm a complete novice at robot building, so pardon me for what is probably stupid questions. I have bought an arduino with the intention of building a robot and have an idea of doing so mainly with servos, and I know that I can probably run them off the arduino without any problems helped by the arduino servo library, but can I just plug them in directly to the arduino or do I need a resistor in between or something? And question 2 How do I make my robot controllable via R/C? How do I put those circuits(?) together? I'm thinking of using some of these components: Arduino UNO

Servos: http://www.hobbyking.com/hobbyking/store/%5F%5F9549%5F%5FTurnigy%5FTG9e%5F9g%5F1%5F5kg%5F0%5F10sec%5FEco%5FMicro%5FServo.html And for R/C control: http://www.hobbyking.com/hobbyking/store/%5F%5F9041%5F%5FHobby%5FKing%5F2%5F4Ghz%5F6Ch%5FTx%5FRx%5FV2%5FMode%5F1%5F.html

I guess I'll worry about the code later on...

Thanks for all your help in advance! Hayabusabot

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

So I bought those servos now... I even bought two metal gear servos as well, just in case they would be better for the continuous rotation and moving the bot around(?)... My next problem as Chris comments is the code, are there any good tutorials on writing code for moving servos, please give suggestions!? 

Thanks again all of you! This is very educational for me (And I'm loving it!)

The servo sweep example on the Arduino website is a good place to start.

http://arduino.cc/en/Reference/Servo

Those a very small servos, and migth not have enough torke for wheel application, I would recomend you this http://www.hobbyking.com/hobbyking/store/uh_viewitem.asp?idproduct=16269. Cheap and strong, I have used them in my latest projects with no problem they can handle till 11v 3s LiPo :D

 

EZ

birdmun's picture

ChuckCrunch is using something similar on his The China Syndrome bot. I would guess there are other examples here, but, Chuck's is the most recent and therefore easiest to point to.

The other problem with the 9g servos is that to make them continuos rotation you have to clip the potentiometer, bit of complicated procedure, I damaged two servos last night :P the big one, the potentiometer is just held by one bolt and gives about the double of torque and the electronics are the same so not big challenge :P my two cents

 

you can see them working here http://letsmakerobots.com/node/30465

birdmun's picture

removed and replaced the pot with a pair of equal 5% resistors to simulate a centered pot.

First, thank you for your quick reply! 

I know that I have to figure out the code and I have played aruond with the basic arduino stuff from "Getting started..." so I guess I hope to get it done through watching some more tutorials... (I see you've done some of those as well :-) )

I basically just wanted to know if it could be done and if you say it can I trust you, and I'll eventually figure it out I hope! 

Btw. Would it be an extremely bad idea to make my robot move by fitting weels to servos modified for continuous rotation? 

Thanks again! - a whole bunch!

TeleFox's picture

Nothing wrong with using continuous rotation servos to drive your wheels, as long as the servos have enough torque and speed for your needs.

Continuous servos make for easy motor speed control too, and only one signal wire is needed per motor =)

Chris the Carpenter's picture

Everything you want to do can be done, but you have a few steps to get there --and you are going to have to learn code, period.

Servos are quite easy and yes, the servo library will take care of actually sending a signal to them to control the position. That said, there are different ways to make them move smothly and with the right "timing" which are all done through code and must be learned. In terms of hardware, yes, it is typical to use a current-limiting resistor on the signal wire going to the servo. I have seen this resistor with a value of 330 to 4k7 in different set-ups. I think the arduino manual calls for a 4k7 but double check me on this one. If you use a shield, these resistors are commonly included with designated "servo" connections.

As for your remote control, you can connect the servo outputs of the RX to your arduino and "read" them with a pulse in command. You will need a I/O for each channel of the Tx/Rx. This is a bit complicated and you may want to hold off a bit on this one until you get some code under your belt.

My suggestion is to get your Arduino, a breadboard and a LED and simply get that guy to blink. From there, you may want to look at running just one servo. The bottom line here is that everything must be broken down into smaller steps. Also --Hardware will do nothing without code. --It must be learned.

airuno2l's picture

Yeah, I've never put a resistor inline with a servo and have never had any problems.