A little one is born. After a lot of 3D refinement there is a working prototype on the road… keep reading!
Last version was made out of recycled scrap and household stuff. And it worked, partially. But the tracks were not good enough for further development. I wanted a more reliable track. Time for Pololu’s 22T Track set and to migrate the design to a more interesting hardware.
This is the BOM of the prototype:
- microcontroller board: ATmega328p (Arduino Pro Micro clone). $4.00 (shipped, if buying 2 units)
- IMU board: MPU6050 (GY-521) $2.80 (shipped)
- motors: 2x N20 micro motors, 1:150 reduction metal gearbox (many sellers: Pololu, Solarbotics, chinese traders, etc.) $4 to $15 each (shipped)
- motor controller board: Pololu DRV8833 dual driver carrier $7.00 (+ shipping)
- 2x 14500 li ion 700mAh rechargeable batteries (1S2P), $3.00 each (price shipped, if buying 10 units)
- Pololu 22T track set $12.00 (+ shipping)
- 4x TCRT5000 IR proximity sensors $0.20 each (shipped, buying 10 units)
Total aprox. $45.00, prices may vary depending on destination country and seller. Plus custom conection plates inbetween them, and a custom handmade aluminium chassis.
The result is less “frankesteinish” than the previous version, but still a working prototype.
The code had to be updated, tweaked and calibrated for the new motors an geometry. The initial just “climb towards slope if you are on a slope” behaviour of previous version was changed in this test to :
– climb towards slope if you are on a slope
– if you are on an horizontal surface, if it is black: then keep going straight; if it is white then stop
In the first seconds the robot expects to be on a white flat surface, to calibrate the sensors.
This simple set of rules allows, within a proper black playground with a white mountain, that the robot eventually gets to the mountain, climbs it up, reaches the top and stays there.
You can see the test results in this video.
And now the conclusions extracted from the test, most of them deducted beforehand as they are quite obvious:
– It needs a very good grip, silicone rubber tracks on cloth surface works fine, but may be improved (rubber on glass is excellent, but reflects IR light). Just one note: one has to ensure the black cloth is black for the IR sensors, and the white cloth is white for them. IR spectrum reflection/abortion is different from visible light.
– geometry: in order to be able to climb each other the width / height proportion has to be at least 4, so that the centre of mass of the one climbing surpasses the edge of the other one.
– behaviour: it would be nice to add a “avoid black slopes” rule, so that they turn back at an arbitrary angle once the reach a black wall.
– sensors: it could have a pair on each side to detect cliffs at the sides.
In the meanwhile I’ve been making a lot of 3D sketchup prototyping, with ideas as: put the batteries inside the wheels (1/3 AA batteries); make the wheels along all the whole front/back (but not the tracks, like the Flintstones’ cars, so that it doesn’t get stuck on the edges of the mountain); put the motors between the wheels, under the tracks, etc.
This is the last 3D version so far:
I’ve made a cardboard mockup of the last 3D version to test the size and the components fittings, like the sandwich board that connects all the other boards or the four 350mAh 10440 li-ion batteries (1S4P).
This is a prototype model made out of household stuff, that detects slopes (with an accelerometer) and runs uphill until it reaches an horizontal zone or finds a cliff (with IR proximity sensors).
The next goal is that it moves forward on medium gray horizontal surfaces (floor) and climbs up over white (other robots) surfaces until it gest to the top of the heap (an horizontal white place).
We are giving Sketchup a try, as it is free and will work on Mey’s OSX and my Lunix (via wine and some tweaking).
We called one of the robot models/alternatives in process of development “Moonwalker III”, as it will use bristles on its legs to slide like Michael’s famous movement.
This is an animation of the basic model with Sketchyphysics simulation:
It is controlled via an external computes. Amazing movements!
One of the physical problems to solve is that the body of the robots has a shape that is easy to be climbed, also when they are upside down. In the case of the tank-robot alternative, the solution could be to add a sort of self flipping flaps, that turn with gravity.