2Deckard

2Deckard v0.1

Hi everybody!

First of all, I want to thank all of you guys who's robot projects and blog entries make this site such an amazing place! You all ignited my passion for robotics! I've dedicated my life to computers and programming and this is a really cool way of connecting it with the real world :-)

This is my very first robot called 2Deckard and is far from done but I really feel like sharing my first steps :-) The robot is driven by Arduino Uno, it has 2x 3V DC motors controlled by SN754410 IC (in combination with one 74HC04 hex invertor IC), two TM70145 wheels and one TM70168 gearbox form Tamiya, and SRF05 distance sensor attached on servo. There is also an IR detector that will be used to switch robot modes by TV remote control (right now I've got some problems with detecting signals from remote, I've made it work when the motors are disconnected but as soon as I plug them in I'm recieving a lot of noise... but since there is just one mode at the moment it doesn't bother me so much :-) ).

As a power source I use one 9V battery (for Arduino, servo and sensor) and 4x AAA alcaline battery (for motors). I'm planning to switch to rechargable batteries because the alcaline ones are drained pretty fast (especially the 9V one).

Right now it's just a prototype with lots of wires hanging from solderless board :-) One of the planned improvement is to create custom PCB that would be used as an Arduino shield (I know there is a lot of similar projects on the web but I would like to try making my own version).

So far the robot is moving around the room and avoiding obstacles. It seems that it's "navigating" quite well and it made it's way out even from a dead end of room. I have in plan to add line following (such a popular "hello world" of robotics :-) ) and maybe some other cool stuff, like aiming a poisoned darts throwing cannon :-) For a line following I'll use QRD1114 attach to the PATA cable that is taped to a gearbox on the front (one of many nice ideas I saw while wandering on LMR :-) ). One pair of QRD1114's will maybe end up as wheel encoders. There is so much more I would like to improve, still there is 6 analog inputs and 7 digital I/O left :-)

obstacle avoiding

  • Actuators / output devices: 1:344.2 Tamiya gears, 2x 3V DC motors
  • Control method: infra-red
  • CPU: arduino uno
  • Operating system: Windows7
  • Power source: 1x 9V battery, 4x AAA (1.5V) battery
  • Programming language: C++
  • Sensors / input devices: SRF05, ir detector, QRD1114 reflective sensor
  • Target environment: indoor

This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/2deckard

Motor noise

Hi and welcome to LMR

You probably already know this, but adding some small capacitors on the motors will remove lot of the noise. 

  1. Take two capacitors and twist them together.
  2. Scratch a spot on the motor between the two terminals.  Using soldering iron apply some solder.  Then solder the twisted end of the two capacitors to the spot on the motor case.
  3. Take the other end of the twisted pair of capacitors and insert one end to each motor brush terminal.
  4. Place a third capacitor between each motor brush terminal.

http://www.superdroidrobots.com/product_info/motor_wiring.htm

Great looking robot by the way!

 

Thank you, Geir! I found a

Thank you, Geir! I found a lot of design flaws when constructing the chasis but it’s a first version and still it was fun making it :slight_smile:

Thanks for advice about filtering the motor noise! I often saw a capacitor between motor terminals but was never sure why is it there (and now I know :slight_smile: ). I am still a beginner with electronics (forgot pretty much from what I’ve learned back in school). I will try to put three caps on each of my motor tomorrow. Do you think 0.1uF ones will do the trick?

Yes, I usually use 0.1uF

Yes, I usually use 0.1uF caps on the motors. When adding the caps:

  • One cap across the motor terminals = Good
  • One cap from each terminal to the motor body = Better
  • One cap from each terminal to the motor body and one cap across the motor terminals = Best

 

Hey Geir, that is an

Hey Geir, that is an interesting link. Have you ever tried using shielded cable and the ferrite rings on your motors in addition to the capacitors? Looks a bit extreme, but I’m sure that it might be worth it for some applications.

Hey ignoblegnome.No I have

Hey ignoblegnome.

No I have never tried that solution but it seems to make sense :slight_smile:
They even sell small shielding kits http://www.superdroidrobots.com/shop/item.aspx?itemid=387 but the price was a bit high :slight_smile:

Another technique I have

Another technique I have used is to twist the motor leads. This makes a twisted pair, which in theory should reduce noise. I have never done any testing to see if it is effective, since I don’t own an oscilloscope.

9V batteries can’t hold much energy

As a 9V battery is a pack of 6 thin AAAA batteries it’s not really for anything that draws some current.

http://en.wikipedia.org/wiki/Nine-volt_battery

I’m planning to switch to 9V

I’m planning to switch to 9V NiMH 200mAH rechargable battery, or maybe for some NiMH battery pack. It would be nice to have one battery source for both the logic and the motors.

You might want to give this

You might want to give this tip on voltage regulation a read. It is a great resource that I refer back to often.

https://www.robotshop.com/letsmakerobots/node/3880 

Thanks
Great resource, thanks!

From what I know the Arduino has it’s own 5V power regulator, so it should be all right to use 7.2 or 9V NiMH battery and connect it right to Arduino and (through some power diodes or voltage divider) to DC motors.

I’m thinking about switching the original 3V DC motors that came with Tamiya gearbox with some low current 6V ones, because the original motors take 2.1A (per motor) when stall, which is quite a lot.

Another approach is to run

Another approach is to run the 3V motors at 5 or 6V and use PWM. If you stay away from full duty cycle, you probably won’t kill your motors. ; j

So today I’ve finally found

So today I’ve finally found some time to progress with my little project. I soldered 2x 0.1uF caps to each motor (each from terminal to body) but I found out, that the IR detector is recieving noise even when only the servo is moving… So it looks like the IR is pretty sensitive to any kind of noise.

You can also place caps as

You can also place caps as close as possible to the your servo pins. Here’s a post that even includes a schematic.

https://www.robotshop.com/letsmakerobots/node/12679#comment-36429

Noise can come from many sourcdes, including your power supply, motors, servos. It is always best to try to eliminate or reduce the noise as close as possible to the source.

**Question on best capacitor placement **

Hello guys,

Nice bot :slight_smile:

Thanks a lot for the hints on noise, it will be very useful in my small bot…

I have one question: does it make difference between placing the capacitors near the motor or near the 754410?

It seems much easier and Im very tempted to solder them directly on the PCB but I have no idea if it will impact the filter efficiency…

Which place is better?