A little web robotics visualization project built with React, Three.js and react-three-fiber to solve for the inverse kinematics of a Stewart-Gough Platform. This implementation primarily utilizes three.js's
localToWorld
function as a geometric method for solving for linear leg lengths.
Inverse kinematics is a method to calculate robotic motion based on a desired end effector position. In this case, the end effector is our platform and the inputs are our leg lengths. There are various combinations of hexagons and triangles1 that can make up the geometry of a Stewart platform, both of 3 and 6 degrees of freedom.
This implementation employs regular hexagons for both the platform and base in order to take advantage of symmetries while demonstrating 6 degrees of freedom. Platform position and leg lengths are calulated at a frequency of approximately 1.538Hz
. See react-three-fiber docs for more on performance.
Use pan and zoom controls to navigate the Scene. Adjust sliders to change platform position. Note platform controls are not set to realistic physical constraints.
stewart-little-three was built by Eni and is hosted on Github Pages
1 - Martinez, Peña, Soto - International Journal of Advanced Robotic Systems