Floor Vacuum Cleaner Robot. Version #13
Intro: Floor Vacuum Cleaner Robot. Version #13
This robot has vertical container which collects dust using 12 volts cooler turbine.
Most parts were bought on eBay.
It is controlled by Arduino board with very simple algorithm.
3 to 6 volts motors are used for moving. H-Bridge motor driver on HG7881 - a board controlling motors.
Base was made from plastic kitchen board - soft enough to be drilled, sawn and cut without much efforts.
Lithium battery (with solar cell) gives 5 volts and allows to work the robot about one hour.
Step-up circuit provides 12 volts to a turbine which collects dust. This circuit is made using standard design of MC34063 and induction.
Cons:
Too tall - more than 12 centimeters (should be 11 cm maximum to go under a sofa).
Too slow - gear mounted on motors has too high ratio.
Other cons can be fixed:
thin bumper, simple algorithm for moving, no sensor on getting stuck.
Most parts were bought on eBay.
It is controlled by Arduino board with very simple algorithm.
3 to 6 volts motors are used for moving. H-Bridge motor driver on HG7881 - a board controlling motors.
Base was made from plastic kitchen board - soft enough to be drilled, sawn and cut without much efforts.
Lithium battery (with solar cell) gives 5 volts and allows to work the robot about one hour.
Step-up circuit provides 12 volts to a turbine which collects dust. This circuit is made using standard design of MC34063 and induction.
Cons:
Too tall - more than 12 centimeters (should be 11 cm maximum to go under a sofa).
Too slow - gear mounted on motors has too high ratio.
Other cons can be fixed:
thin bumper, simple algorithm for moving, no sensor on getting stuck.
42 Comments
achal16 10 years ago
can u share the complete details regarding this project.
the info you provided isn't sufficient to build this robot.
please help.
arif93 10 years ago
revrekad 10 years ago
arif93 10 years ago
revrekad 10 years ago
arif93 10 years ago
revrekad 10 years ago
If motors run in correct direction but when one of bumpers is hit (pressed) and the robot is turned wrong direction (an opposite to what was expected) - swap wires connected to Arduino connectors 7 and 8.
crevs1 10 years ago
can i use more than one computer cooler fan for cleanning large area? or can you suggest anything else that is working on 12v or 5v?
what kind of vacuum are used in romba?
revrekad 10 years ago
Two coolers is a good option to increase performance even though this will increase power consuming as well.
Roomba has relatively small vacuum turbine because it uses rotating brush as a major cleaning tool. I used such approach on one of previouse prototypes and it worked well - a rotating brush throw dust to a dustbin and vacuum did not allow dust go away. But this is mire noisy approach.
derwn 10 years ago
i asked robotics parts manufacture.they told me that i can work with 2 ultrasonic sensor with arduino leonardo that give complate wall and object detection performance.
they also suggest me i can use two ultra sensor with some other pins given on board(except 2,3,4,5,7,8 that we used for bumpers and other purposes)
is it right and possible to use two ultra sensor with pins expcept 2,3,4,5,7,8 (means there are availability of pins for two ultra sensors? if yes then which are they?)
coz i haven't purchase arduino because of this confusion.
revrekad 10 years ago
derwn 10 years ago
(actualy i'hv made transistor and led circuit for line follower robot(2 led and 2 trasistor) it will ok to use with this circuit
revrekad 10 years ago
return !readDigital(
giliyance 10 years ago
2) http://trollmaker.com/article3/arduino-and-hc-sr04-ultrasonic-sensors
3) http://www.youtube.com/watch?v=lFwe3QFLp-k
sir,i'hv studied your both vacuum cleaner project,i need to discuss with u for some better modification in this robot than i wanted to apply in my project.you'hv used jumper and connected it to arduino to avoid obstacles like chair and etc.you wrote con. that 'no sensor on getting stuck' i want to fix this bugs. and moreover it also can replace sensitive and much error occuring jumper.... we can use 'ultrasonic distance measuring sensor' to avoid obstacle and outcooming problem of getting stuck. i'hv put here one link of this practicle..1) photo of this sensor 2) ready complate successful practice on arduino with programming 3) video of vaccum robot using this sensor.check this,it's realy amazing! now the problem comes,we r going to replace bumper with this 4 pin ultrasonic sensor,so what are the changes we should need to make in arduino leonardo programming.(pin confugiration and logic) in link no 2) it's programme nd practicle given and as i knw your programme is also there on git hub. so are u geting any idea how can we merge this two programme with modifiction? please write down or attech file. i'hv tried soo many times but i haven't done vacuum project practicaly so m getting confused. please help.thank you. flag[delete]
revrekad 10 years ago
giliyance 10 years ago
but what i was asking..what type of changes we need to make in programming.,if u'hv seen the link i'hv posted in last comment..their is already a programme given for this ultra sonic sensor,but how can we merge this two program(in case of using sensor & bumper both)
example....in programme u have given this type of pin connection.ok..
onst int pinLED = 13;
//right side
const int pinRightMotorDirection = 2;
const int pinRightMotorSpeed = 3;
const int pinRightBumper = 7;
//left side
const int pinLeftMotorDirection = 4;
const int pinLeftMotorSpeed = 5;
const int pinLeftBumper = 8;
so now..which pin number we should give to ultrasonic sensor?
and what are the changes we need to make in 'main loop'
u'hv already done practicle and made that programme,so u can only know how to do this change.
if possible than right down.
i'll also try.
coz i wanted to use both sensors.
revrekad 10 years ago
void verifyAndSetSonar(){
//put the code you referred by abow link calculating distance from sonar data - without "delay(500)"
if(distance > 20)//checks if there is no objects close than 20 (put your number here)
return;
if(checkCounterIsNotSet(countDownWhileMovingToRight))//if the counter is not yet counting down
runRightMotorBackward();//run the right motor backward
countDownWhileMovingToRight = turnTimeout;//set the counter to maximum value to start it counting down
}
It is not necessary to use LED connected to pin 13 - this was just for presentation.
derwn 10 years ago
and one more thing want to ask..2. i wanted to use 3 ultrasonic sensor for more accurate result left,right,and back.
so there should be 6 more pins i need to use so which connection i can give to this 3 ultra sensor?
2,3,4,5,7,8 already alocatted as per your program,so in which order i should give pin connection?any random pin available in arduino?(it's ok about trig and echo pin..but in this case theres 3 ground and 3 vcc pin for 3 ultra sensor. so how to give them power supply?
3.what's meanning of this ..why i should right distance without 'delay(500)?
revrekad 10 years ago
2. I did not try to connect more than one ultrasonic sensor - I cannot suggest anything. May be search "multiple ultrasonic sensors arduino" or "several ultrasonic sensors arduino" give a hint how to connect it. At start - bumpers can be disconnected and pins for it reused for sensors.
I had to join two wires with one pin connector to provide power from one Arduino board. Power can be also provided from external plug as I did for step-up. Ensure connect correct with polarity - sometimes I break my circuits with wrong +/-!
3. When I mentioned "no need for delay(500)" I forgot to tell I used for testing exist program taken from Internet which has delay(500) at the loop in the method where distance was calculated - delay already exists in main loop(), so no need to add one more delay in verify method.
derwn 10 years ago
can you please provide the link of that program of sonic sensor you have tested?
and if i use 'several ultrasonic sensor arduino' i just need to change pin configuration? main loop program for vacuum cleaner will remain same in both the board?