Building a basic robot

Hey Guys,
after having used an Arduino for to school projects I want to build a very basic robot for myself. First he should only be able to drive backwards, forwards and to drive curves. I want to use a clone of the Arduino Mega 2560 found there http://www.dfrobot.com/index.php?route=product/product&path=35_38&product_id=458 so that I can add various sensors later and the motors found there http://www.dfrobot.com/index.php?route=product/product&path=47&product_id=100. Now i got some questions:

  • Do I have to use a motor controller like this one http://www.dfrobot.com/index.php?route=product/product&product_id=66 or can I connect the pwm output of my arduino directly to the motor?
  • Should I use one motor for every wheel or one for the front wheels and one for the rear wheels? I don't to just power one of them.
  • Would you use a servo to steer or just change the speed of the motors in this case i would have to use different motors for the right and the left wheels.
  • Can i power the motors from the 5V outputs of the arduino or do i need an external power source?
  • Are there any other things I should pay attention to?

Thank you for your answers!
PS: please excuse my bad english.

Javafant:
Do I have to use a motor controller like this one http://www.dfrobot.com/index.php?route=product/product&product_id=66 or can I connect the pwm output of my arduino directly to the motor?

Each pin of the Arduino must be limited to 40ma maximum current output or you risk burning it out. That won't be enough to move a robotic platform.

Javafant:
Should I use one motor for every wheel or one for the front wheels and one for the rear wheels? I don't to just power one of them.
Would you use a servo to steer or just change the speed of the motors in this case i would have to use different motors for the right and the left wheels.

That's something you'll need to decide for yourself. Using different motors for the right and left side is usually the simplest solution so you don't have to worry about all the linkages to turn the tires with a servo.

Javafant:
Can i power the motors from the 5V outputs of the arduino or do i need an external power source?

The Arduino you're looking at probably only supplies around 800ma or less of current. However, if you're using a motor controller, the motor controller will usually have separate power inputs for the motor power so you can directly connect your batteries that way and not worry about regulation.

Javafant:
Are there any other things I should pay attention to?

Taxes! Always make sure you file on time.

Do I have to use a motor controller like this one http://www.dfrobot.com/index.php?route=product/product&product_id=66 or can I connect the pwm output of my arduino directly to the motor?

Each pin of the Arduino MEGA must be limited to 800ma maximum current output or you risk burning it out. So connect Darlington pairs in between Arduino and Motor. Do Current Amplification.

Should I use one motor for every wheel or one for the front wheels and one for the rear wheels? I don't to just power one of them.
Would you use a servo to steer or just change the speed of the motors in this case i would have to use different motors for the right and the left wheels.

Well its your choice. Even you can connect four Motors for 4 wheel drive. then your control of car would be depends on two sides motor. 1.Left Side. and 2.Right Side.

Can i power the motors from the 5V outputs of the arduino or do i need an external power source?

Yes.... Connect ElectroMechanical Relay in between Arduino Output and Motor. and now you can suppy any voltage upto 120V. (Depends on Relay)

Coincidentally I just bought a bargain of a small robot platform here in the UK for only £5 :wink: - two motors, lots of gears, six legs (or wheels). No other electronics but large enough to plonk an Arduino and motor shield on. I'd suggest unless you're into lots of mechanical making then finding a basic kit like this is a great first step (especially if a bargain like this).

The motors are rated at 4.5V and seem to take 200mA on light load, 1A or so stalled - I suspect that sort of spec for a motor is going to be common for small robots (no chance of direct drive from a logic signal!!)

I suspect I'm going to find a Pololu or similar tiny motor controller as the first step to animating it - they have a wide range of controllers that's a good starting point.

Each pin of the Arduino MEGA must be limited to 800ma maximum current output

If you try to draw anywhere near 800mA current, you will have problems. The maximum safe limit per pin is 40mA, not 800mA.

PaulS:

Each pin of the Arduino MEGA must be limited to 800ma maximum current output

If you try to draw anywhere near 800mA current, you will have problems. The maximum safe limit per pin is 40mA, not 800mA.

I believe that 800ma is the maximum rating for the regulator supplying the entire board when it is being powered by an external power brick.

Isn't there an additional current limit per-port as well as per-pin? I want to say it's about 200ma for most ports, so even if you stick under the 40mA pin limit, if you try and drive every pin at that level you will still do damage.

Hi,
Yes there are per-port as well as per-pin limitations. Take a look here for details:
http://arduino-info.wikispaces.com/ArduinoPinCurrent

..other how-to stuff there also, like Motor Drivers, here: http://arduino-info.wikispaces.com/MotorDrivers

keep asking questions!