Posts | Comments

Planet Arduino

Archive for the ‘Stewart platform’ Category

PID balancing a ball on a plate

For their Mechanical Engineering senior design project at San Jose State University, [Tyler Kroymann] and [Robert Dee] designed and built a racing motion simulator. Which is slightly out of the budget of most hackers, so before they went full-scale, a more affordable Arduino powered Stewart platform proof of concept was built. Stewart platforms typically use six electric or hydraulic linear actuators to provide motion in six degrees of freedom (6 DOF), surge (X), sway (Y), heave (Z), pitch, roll, and yaw. With a simple software translation matrix, to account for the angular displacement of the servo arm, you can transform the needed linear motions into PWM signals for standard hobby servos.

The 6 DOF platform, with the addition of a resistive touch screen, also doubled as a side project for their mechatronic control systems class. However, in this configuration the platform was constrained to just pitch and roll. The Arduino reads the resistive touch screen and registers the ball bearing’s location. Then a PID compares this to the target location generating an error vector. The error vector is used to find an inverse kinematic solution which causes the actuators to move the ball towards the target location. This whole process is repeated 50 times a second. The target location can be a pre-programmed or controlled using the analog stick on a Wii nunchuck.

Watch the ball bearing seek the target location after the break.

Thanks to [Toby] for sending in this tip.

We at Hackaday look forward to the real life implementation of Marble Madness!

Need help Demystifying PID Control? Or perhaps you would like to build your own Stewart Platform?


Filed under: Arduino Hacks, robots hacks

StewartPlatform

[Dan Royer] has noticed that most university projects involving a Stewart platform spend more time building a platform than on the project itself. He hopes to build a standard platform universities can use as the basis for other projects.

Stewart platforms are six degree of freedom platforms often seen hefting flight simulators or telescopes. The layout of the actuators allows movements in X,Y,and Z as well as pitch, roll and yaw. While large platforms often use hydraulic systems to accelerate heavy loads quickly. [Dan] is looking at a smaller scale system. His platform is built of laser cut wood and uses six steppers to control motion.

One of the harder parts in designing a platform such as this is creating a mechanical system that is strong, precise, and smooth. With so many linkages, it’s easy to see how binding joints could bring the entire thing to a grinding halt. [Dan] is currently using RC helicopter ball joints, but he’s on the lookout for something even smoother.

For locomotion, stepper motors are more than adequate  - providing both the quick acceleration and holding torque needed to control the platform. Adafruit’s stepper motor controller boards provide the drive from an Arduino. The bottleneck in all of this is the i2C link with control of 6 steppers limiting the overall speed of the platform.

Software is another big issue on Stewart platforms. Kinematics of 6 DOF platforms are no easy task. To this end, [Dan] has gone open source. His Gcode demo is available at github.


Filed under: Arduino Hacks, cnc hacks, robots hacks


  • Newsletter

    Sign up for the PlanetArduino Newsletter, which delivers the most popular articles via e-mail to your inbox every week. Just fill in the information below and submit.

  • Like Us on Facebook