Arduino - Looking for Suggestions

General project help for Adafruit customers

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
billschreiber
 
Posts: 9
Joined: Thu Nov 22, 2012 7:39 pm

Arduino - Looking for Suggestions

Post by billschreiber »

Hello,

This is my first robot project, and I have had a lot of fun so far.

I am building a Roomba-like autonomous robot vacuum cleaner. I took an existing rechargable vacuum cleaner, added wheels, an Arduino and some whiskers when it runs into a wall so it will back up, turn a bit and go forward. I am using a 9V battery to power the Arduino and the existing 7.2 v rechargable NiCad battery to run the wheels and the vacuum itself. To control the power going to the motors, I use DPDT 3 position switches with some small servos to physically move the switch to the position I need. I started out with relays, but the power to keep them closed was > 3 watts so this seemed a less power intensive solution. If I was staring over, I would buy an H Bridge (didn't know they existed until after I built mine), but hey it works.

Question 1: I bought 2 battery powered screw drivers for $8 a piece to power the wheels. The thing doesn't track straight but always kind of edges to the right since one of the drills goes faster. What would be a good way to get it to track straight? I thought about resistors but it would be changing battery power for heat which seems inefficient. I also thought about ripping out my electro mechanical H Bridge and either make my own with transistors, diodes and caps or buy it for $2.50 from our kind hosts. Any suggestions I might have missed?

My next challenge is to have it find a charging station and recharge the 7.2V rechargable battery when it needs it. After a bit of research, I saw a video where a guy put an IR sensor in a tube and would rotate the tube until it sensed the IR from a VCR remote. From that, he could deduce where the IR source was in relation to his robot. The problem with that is a VCR remote creates a pretty narrow beam, has a limited range and also only works line of sight. I had thought about cleaning under my couch and just have the 5 remotes I lost 2 years ago pointing altogether outward. I could have the robot but if someone has a better solution, I would love to hear it. What algorithm have other folks used to solve this problem?

Thanks in advance.

Regards,

Bill

User avatar
adafruit_support_bill
 
Posts: 88086
Joined: Sat Feb 07, 2009 10:11 am

Re: Arduino - Looking for Suggestions

Post by adafruit_support_bill »

1) The best way to get your motors to run at the same speed is to use PWM (Pulse Width Modulation) to vary the power sent to each motor. Most motor controllers use PWM for speed control.
2) The TV-B-Gone might be a good solution for you. It has 4 IR LEDs which you could mount at different angles to give you a wider spread. You could also replace the 2 narrow bean ones with wide beam ones for even wider coverage. https://www.adafruit.com/products/73

User avatar
billschreiber
 
Posts: 9
Joined: Thu Nov 22, 2012 7:39 pm

Re: Arduino - Looking for Suggestions

Post by billschreiber »

Support,

I hadn't thought of looking at the TV B Gone. I have 3 IR emitters I bought from you folks already plus several I scavenged from my kid's dead remote control toys. I will give them a try first and barring success using those, I will get the TV B Gone.

It sounds like my electromechanical H bridge will have to go if I want it to go in a straight line. I didn't understand what a motor shield did before.

Regards,

Bill

User avatar
adafruit_support_bill
 
Posts: 88086
Joined: Sat Feb 07, 2009 10:11 am

Re: Arduino - Looking for Suggestions

Post by adafruit_support_bill »

Electromechanical (relay based) H-bridges still exist. But they are not fast enough to do PWM speed control. I have never seen a servo-actuated one though. 10 points for a novel solution! :D

Locked
Please be positive and constructive with your questions and comments.

Return to “General Project help”