Uncategorized

Stewart Platform v2 Electronics Changed

stewart platform v2 + rumba
When I first built this stewart platform I had never worked with 6 stepper motors at once. I didn’t spend a lot of time looking for electronics because I already had some available in the store – Adafruit Motor Shields stack to so you can control up to 64 steppers at once. When I ran my first tests the shields showed a down side: the time it takes for the Arduino to talk to the shields can be measured in milliseconds. Doesn’t sound like much, does it? I have 6 steppers that have 400 steps per turn and I’m using 1/16th microstepping. To move 1/2 turn means 200*16=3200 steps each. If it takes 3 milliseconds (3000 microseconds) to make one step then moving all 6 steppers 1/2 turn takes 57.6 seconds. That’s fine for some other applications but it’s unacceptable for this project and my future work.

I turned to the people I know who have the most knowledge with moving a lot of motors: irc.freenode.com#reprap. Whenever I get stuck on a problem and Google can’t help me I turn to IRC for some live help. There I learned about the RUMBA control board from reprapdiscount.com. They even had a reprap wiki page that gives all the technical details I need. Order arrived quickly and works like a charm. How great? The Adafruit boards take 3000 microseconds to make a step. The RUMBA takes less than 150 for all six steppers. That means the same move as before takes 1.28 seconds. ZOOM!

Long story short, I’m going to be ordering more of these boards and using them in Stewart Platforms. I’ll keep using the Adafruit boards for my 7 and 8 stepper projects, too…until someone sends me a 7 or 8 stepper control board.

Edit: The firmware for the new controller is in the same github project, https://github.com/MarginallyClever/RotaryStewartPlatform2. ./firmware_rumba_minimal has the same program as ./firmware_ams2 (adafruit motor shield 2), with one addition: M17 (enable motors) is the opposite of M18 (disable motors).

Uncategorized

Would you buy a great robot if you had to help write the software?

I’ve got this hot new Stewart Platform sitting on my desk. Stewart Platforms are the machines under flight simulators. They’re also used in robotic surgery. I’ve been building them for a while, each time getting better and better. Every time I hear about them it’s because a university student had to reinvent the machine in order to do something else. As part of Raising Robot Literacy I want to make a few standard models they can just buy and use. So the question is: Would you buy a great robot if you had to help write the software?

Here are some of the stats:
– Runs on GCODE
– Limit switches & homing (G28)
– 1500g static holding force (worst case, tested to failure)
– 20 degrees pitch & roll
– 10 degrees yaw, holes planned for an extra 7th axis (full yaw rotation) if needed
– 100mm heave
– 40mm surge & sway
– Measures 165mm across the top, 230mm across the base, 190mm high at rest, ~230mm at center position.
– Weighs ~1650g. 150g less and it could carry a copy of itself!

I’ve shown this to a few people already and I’m getting a lot of interest.

So what’s the issue?

The machine already has some software. I can command each motor to move and it will go. In most CNC machines each motor is independent of it’s siblings – you can move one and not worry about what the others are doing. To move a Stewart Platform safely all the motors have to work together. With the software I have now the only thing I can safely do is home the machine and move it up and down.

The challenge is the “higher order” software – instead of telling it how to move motors I just want to tell it “go to this position and angle” and it figures out how to safely move the motors for me.

On the one hand…

I’m running a business and I want to look the way I feel – professional, confident, and happy. In a perfect world that would mean a video, a media release, and a dozen robots packaged and ready for sale all at once.

On the other…

I’m running a business – it could be weeks before the software is ready. Having the community of interested people help design the open source software would mean they get what they want when they want instead of what I imagine they want on my schedule.

So these are the kind of business philosophy questions I ask myself. Sell it now less than perfect, or sell it when it’s ready. Please: Discuss! Tell me what you think.