Note: This package should still work, but development has moved to MeshCatMechanisms.jl which offers more features and fewer binary dependencies. New users are encouraged to use MeshCatMechanisms.jl instead of this package.
This package provides a simple tool for inspecting and manipulating the kinematic structure of a robot inside of an IJulia notebook. It relies on several other packages to provide this functionality:
- tkoolen/RigidBodyDynamics.jl to parse and represent kinematic structures
- RobotLocomotion/director for 3D visualization
- rdeits/DrakeVisualizer.jl to communicate with
- rdeits/LCMCore.jl for message-passing and communication
For detailed examples of usage, check out the IJulia notebook demos in examples.
Here we show the three different visualization modes available in this package. In each case, we'll be looking at the NASA Valkyrie robot, which we loaded from the URDF files in https://github.com/RobotLocomotion/drake/tree/master/drake/examples/Valkyrie. These results are all taken from examples/urdf.ipynb
Pure kinematic skeleton
This visualization shows every joint in the model as a sphere, with a cylindrical rod between every pair of connected joints. It's useful primarily for inspecting the way various joints and bodies can move.
When rendered inside an IJulia notebook, a slider is created for each joint in the model:
The inertial visualization adds to every link on the robot an ellipsoid which would have the same mass and rotational inertia as the robot's actual link. Note that different ellipsoids may have different densities, so this may produce strange results for robot links that have large rotational inertias but small masses (like the fingers in the Valkyrie model):
Finally, we can render the actual meshes for each link in the robot: