Archive for category Robotics
Quadrupeds Need a Whole Lot of Motor Controllers
Each leg has it’s own motor controller to manage the two motors in each leg, and another two motor controllers will manage the four motors in the core. The leg motor controllers are shaped specifically to fit within the frame on one side. The other side of the upper leg frame will hold another PCB with some sensors (I’m planning on e-field and/or pressure sensors in the robot’s feet and on the leg itself.)
Each joint requires angular feedback for the motor controller’s closed loop system. This is accomplished by using special potentiometers through which the joint shaft will pass. The potentiometer is wired as a simple voltage divider, and as the angle of the shaft changes, the potentiometer will give a different voltage output. This voltage will in turn be read by the motor controller and turned into useful data. The special potentiometers used here were a bit of an obscure find, but luckily they are a stock item at Digikey.In order to ease the routing of all the connections on a 2 layer PCB, I decided to offload the large BDM header onto a separate board, which can be screwed onto the leg frame when I load the motor controller firmware. Several pogo pins then make the programming connections to the test points on the controller PCB. I decided to get creative with the shape, and it turned out pretty neat.
I’m toying with the idea of putting a customized boot loader in the 9s12 controller, and giving the main processor (the Gumstix) programming control over all motor drivers. This way, instead of individually updating firmware on the motor controllers as I continue development down the road, I can instead just load one hex file into the Gumstix’ file system, and it will automatically update the firmware on all six motor controllers.
I also recently ordered the batteries I will be using to power the robot, 4x 2000 mAh LiPo batteries. I will be running then in a 2-series 2-parallel configuration to get 4000 mAh at 7.2 volts to run the entire robot. I still need to design and build a board that will fit underneath the batteries in the core of the robot, which will be responsible for battery protection/charging as well as power and control signal distribution to the four legs.Still a lot of work to go, but it’s getting closer to walking…
Some Random Stuff
Posted by Roko in Mini Sumo v6, Quadruped, Robotics on May 9th, 2009
2009 Western Canadian Robot Games I
Posted by Roko in Mini Sumo v6, Robotics on May 5th, 2009
I made the decision to forgo edge sensors for this competition, and instead chose to make the robot as aggressive as possible, the theory being that if I push the opposing robot off the edge before my robot gets to the edge, I won’t need edge sensors. In the end, I managed to get a working robot, measuring 98mm wide by 97mm long, and weighing in at only 331 grams!.After I finish the actual controller board I intend to use on this robot, I’ll have to make some weights to bring it closer to the 500 gram limit.
In the end, I placed first in the advanced mini sumo category, though I had some good competition! For more videos, check out the WCRS website. I will try to post my own pictures and videos when I get a chance.
Mini Sumo PCBs…
Posted by Roko in Mini Sumo v6, Robotics on April 28th, 2009
You’ll also notice on the silk screen that I have given this robot a more creative name than Mini Sumo Version 6. I now call it “1.21Gw,” pronounced, of course, much as Doc Brown pronounced it in the timeless classic (no pun intended) “Back to the Future”
Now to finish it up and write some basic code for the robot games this weekend.
It’s not a robot until it looks like a robot.
Posted by Roko in Mini Sumo v6, Robotics on April 15th, 2009
I also spun the two aluminum motor mounts, and cut the stainless steel base plate that seal off the bottom of the body. Still a lot of work to do on the chassis, and the circuit design is progressing slowly.. Now it’s just a race against time to get the PCBs made, circuits debugged, and a rudimentary program written up to get the robot running for the games. It’ll be tight, but I think It will be ready…
Here are some additional pictures…
Adventures in Mold Making Part II
Posted by Roko in Mini Sumo v6, Robotics on April 8th, 2009
The traction on these tires is amazing, and the dark blue colour looks cool, however I think I’ll use a bit less pigment next time. The tricky part will be maintaining a consistent amount of pigment, since I only have one tire mold and will have to mix up a new batch for each tire I make. Making another mold would take valuable time away that I need to work on the chassis and electronics design if I’m to have any chance of finishing in time for the WCRG…
Note the air bubble that caused a missing piece in the tire.. Since this was a prototype tire that I plan to rip apart to test the strength, I wasn’t too concerned about fixing that part while molding it.
Adventures in Mold Making Part I
Posted by Roko in Mini Sumo v6, Robotics on April 7th, 2009
I’m planning to do some fairly sophisticated sensors, but that’s a topic for another day, and likely after the games as I likely have to run a temporary brain for this competition as time is too tight to get a PCB turn.
I have made decent headway on the chassis, having made more wheel blanks, and made a mold so that I can cast my own polyurethane tires. The mold itself is made from Delrin on the mill, held togethor by four screws, and kept in alignment with 6 dowel pins. The center slug was spun on a lathe, and forms the bottom of the mold, as well as a means to seat the wheel directly in the center of the mold. A top plate from scrap polycarbonate is screwed on to keep the top finish of the wheel nice.Delrin is a really nice material to work with on a hobby mill and lathe, and it was relatively easy if somewhat time consuming to bore out the 25mm diameter hole for the robot.
6 or 7 years ago was the last time I cast polyurethane for sumo tires, I reckon, so I figured what I had lying around was no longer good. A bunch has changed since then, and a stop to a local mold making shop with some samples had me settled on Smooth-On Reoflex 30. Other people have used various Reoflex durometers for sumo robot tires as well. Feeling in a spendy mood, I also decided to buy some blue pigment.Excitedly, at the end of the work day I got home with the polyurethane in it’s shiny box, which I’d bought over lunch hour, and prepared the mold. After collecting all the things I would need to cast my tires, I found that the really Old AIrbrus lying around wouldn’t spray the mold release agent anymore, so I cheated and used a brush instead. After waiting for the mold release to dry, I clamped the mold pieces together, popped in a wheel, and started mixing some polyurethane.
This new stuff works better than what I’d used previously, and was less viscous and as such did not get as many air bubbles trapped in it while mixing. An added benefit was that I could use some over-sized syringes I had lying from an old ink-jet cartridge re-filling kit.A word of caution when using pigment for polyurethane, however: The “SoStrong” pigment.. Is, just as the name would imply, oddly, So Strong. I used a few drops, which was a few drops too many. The end result was a very dark mix. But, as this is a prototype tire that I plan to rip appart to test strength, I wasn’t too concerned.
Now the tire is sitting in the mold. With a 16 hour de-molding time, It should be ready tomorrow roughly around lunch… We shall see how it turned out then.
For now, here are some other links you may find useful with regards to polyurethane sumo tires:
- Jon Hyland’s Seeker3 Sumo - He has some very good pictures of his awesome robots, including some more details on molds
- Dave Hyland’s “Making Marauder’s Tires” – Jon’s brother has more good details on casting polyurethane
- WCRG’s Molding Tires
Mini Sumo Motor Mounts
Posted by Roko in Mini Sumo v6, Robotics on March 26th, 2009
Well, it’s been a while since I’ve updated, and I have gotten a little bit of work done on the robots in between ice diving adventures, and working on the Jeep. Most of the progress made has been playing with software (Investigating webcams and OpenCV for Spyder’s machine vision) and hardware design (PCB layouts for Spyder’s many circuits.)
Today, however, I sat down and got some machining work done for my mini sumo. I was wrestling (no pun intended) with the idea of how to mount the motors, and eventually decided to make a flanged sleeve for the motor to fit inside, which will then be securly attatched to the frame of the robot. The first attempt turned out pretty good, although not quite perfetct, as I didn’t properly square it off in one of the steps. It’s useable, but I’ll have to decide wether or not I want to make another one.So, things are slowly comming a long. I’m afraid I won’t have all the circuitry I wanted to put into the mini sumo done in time for the robot games (chiefly goverened by the long lead time for budget PCB’s from batchPCB), but hopefully I can at least get something that will run arount the ring. I suppose as a backup, I do have my H-Bridge prototype board I could use to control it.. Complete with high-efficiency H-Bridge, and a powerful little 9s12 to control it all… Hmm..
First Assembly of all Four Legs
One of the other things I still need to complete are the motor controllers, and the actual robot’s brain (likely a Gumstix Overo, but I would have to make my own carrier baord). I have tweaked and fixed small bugs in the design of h-bridge prototype I built in the fall, however I want to move the same circuit into a shape that will fit into the actual upper-leg side piece. Luckily that gives me more space to work with than the current itteration of the board (which will be used for controlling the inner four motors), so it should be a relatively easy task once I find the time.
Mini Sumo Beginnings
Posted by Roko in Mini Sumo v6 on February 3rd, 2009
As with many projects, a mini sumo has been several years in the making, and has undergone several design revisions without actually having time to begin construction. But, finally, I took a bit of a break from the quadruped to start work on a mini sumo robot in the past couple days.
I had some round aluminum stock sitting around, and felt like playing around with the lathe. I got my trusty hack-saw out, cut off a chunk of aluminum, chucked it up on the lathe, and started spinning. Over the course of one evening, I came up with a basic wheel and hub assembly to go with the Maxon 17:1 gear motors I’ve had lying around for almost a year now, waiting for a sumo robot to be built around them. This is the same Maxon motor many people use, and I had to contend with the same issue, that the motor length itself is half the maximum width of a mini sumo robot (About 50mm). This called for making a hollow wheel that would slide over the motor.I made a two piece assembly, with a hub that is attached to the motor with a set screw, and a wheel that is attached to the hub with several 2-56 screws.
Overall, the boring went well on the lathe, but was definately a learning experience. The process itself was tedious, starting with drilling out a center hole using drill bits of incremental sizes until I had a center hole large enough to fit the boring tool, then slowly boring out a 21mm depth, 0.1-0.2mm at a time, slowing down as I approached the desired tolerance.The tool itself chatters easily if you’re not careful, but I managed to produce a mostly clean bore. I’ll have to experiment/research a bit more on the best chip rates for turning aluminum stock…
Making the inner hub itself was easy to do, simply turning down the outside of a piece of aluminum, then using a couple drill bits to center drill a hole to about 2.85mm, then using a reamer to finish the center hole at a nice, clean 3mm to fit the shaft. A 4-40 set screw fit nicely, though I did have to file down a fraction of a millimeter that was sticking out from the hub itself, as that part of the hub fit with close tolerance into the wheel itself.
[caption id="" align="alignright" width="150" caption="Prototype Wheel Assembly"]