Well, the sumoORE robot is coming along nicely. I’ve got all the software libraries essentially in place now so I wrote a quick little bit of code to demo a simple mini sumo. It checks the line sensors first. If a white line is detected, it reverses and turns away a random amount. If it is on black, it checks the two front sensors and tries to turn towards anything if it is seeing a strong reflection.
I’ve got a bit of code that turns the received IR signal into a rough estimate of distance to an object. I say rough, because the returned signal really depends on what it is seeing… large white objects reflect more light than small black objects. Still, it works well for the small sumo arena. It is sensitive enough that it sees objects outside the ring easily, so you have to keep back when you are running tests. 😉 If you look carefully in the video, you’ll see red leds lighting up on the two front corners and the rear when it is detecting IR.
No enemy detected gives a value of 0 from the IR detection routine. A strong signal being detected gives back a 76 or so (ie- all IR pulses sent out are received back). Everything else sits somewhere in between. For the demo code, I’m using a value of 70 and above as a detection. It means that the robot isn’t very aggressive but it doesn’t chase after ghosts outside the ring.
The robot also doesn’t check for the enemy when it is turning away from the edge. That is the first thing that someone using this robot will need to remedy. In the video you can see points where the robot should have gone after the block but ended up turning right past it.
Beyond that, the weight needs to come up. Its sitting right around 250 grams right now, so who ever takes one of these robots will have to start adding another 200+ grams of weight, both on the front blade as well as around the wheels. A thin strip of metal also needs to be added to the front blade to give a nice sharp edge to get under competitor. A thin piece of aluminum or brass will do the trick.
Anyhow, looks like it is going to be a really nice base to build on top of! Now I’ve just got to get started with populating more of the PCBs!