Most Recent Update:
Uploaded new code (v1.9) that introduces some 'shuffle' to Blind Lemon's beats. Thanks for the tip, Frits!
Blind Lemon is now a functional drum bot...
and he's gone YDM with his new look!
This simple robot handles basic navigation and is armed with a bass drumstick thumper at the rear and a high hat drumstick on his left side. His front bumper switch is used for collision detection. He currently has three drumbeats he alternates between.
My goal with Blind Lemon is to get as much out of the little Picaxe-08M as I can. I used my dual Y-Bridge motor control design so I could drive with only 3 processor outputs, rather than 4 outputs for a traditional dual H-Bridge. That left me one dedicated input and one input/output.
That wasn't enough, so I added a DPDT relay. One Picaxe output controls the relay, and now I can get double duty from the other four pins.
Pin3 on the Picaxe-08M is a dedicated input and is being used for the bump switch. The other three switches allow motor control in one mode and drum and speaker outputs in the other.
The circular base is 1/8 inch fiberboard. Rectangular notches are cut for the motors, which are mounted with small wood blocks as supports and hot glue.
The wheels are home made from prescription pill bottle caps and hot glue. Two Arexx rollers from DAGU keep Blind Lemon from pitching forward or backward.
Now that Blind Lemon is looking so fine, I may upgrade his wheels. The ones I want to use are a little smaller in diameter, and the hole for the axle is too big for the motor shafts. If I can come up with a good way to mount them, I'll lower the motors to fit the smaller diameters. The wheels are nice black ones and it'll look great next to Blind Lemon's paint job.
Blind Lemon is... well, blind. The only sensor he has is the bump switch mounted on the front. Sort of a "walking cane". An unintended, but welcome function of the round base and the placement of the wheels and bump switch is that when Blind Lemon hits a wall or other flat vertical surface, he tends to rotate until he is facing it squarely and the bumb switch is activated. You can see this pretty clearly in some of the videos.
The motors are two DAGU 3V gear motors, which are appropriately yellow in color. That was the main reason I chose them (not).
The motors for the drum sticks are these little guys, suggested by fritsl for his YDM.
Four AA batteries in a vertically mounted battery case sit at the centerline of the base. It is attached with hot glue (what else?)
There's a small speaker taken from a broken toy, which is hot glued underneath the base. The wires for the speaker feed up through a small hole in the base.
I really like the look I came up with for Blind Lemon. The cover is the bottom of an old scots whisky carton. His shades are the lenses from some clip on sunglasses I had. The frame broke, so they were useless to me.
Here's the Picaxe-08 Protoboard populated with the dual Y-Bridge circuit... just fits!
To the left of the vertical battery box you can see a green circuit board used for auxilliary circuits. Primarily it holds the 4PDT relay (in yellow) that switches between motor control for motion and drumming. The power switch is to the left of the auxilliary board.
Adding the relay added a lot of wires between the auxilliary board and the Picaxe Protoboard, which is why there are so many wires inside Blind Lemon now.
Blind Lemon drives forward until his bump switch is hit. Then he plays one of three stored beats before backing up,turning and continuing on. The next time his switch is bumped, he will play the next beat in sequence.
The commented code is uploaded as a file attachment to this post.
Version 1_4 is the first real release.
Version 1_5 optimized code and added a 'dance' routine.