Inverse Kinematics Tutorial & Workshop Recording

Screenshot from 2023-03-19 02-23-01

New tutorial for inverse kinematics on Stretch has been released on Github! You can preview the tutorial on Github, and instructions to run it are within the notebook itself.

Additionally, I’m hosting a workshop in 2 weeks to go through the tutorial and answer any questions. Here are the event details:

Inverse Kinematics Workshop

Date: March 29, 2023 at 11am PT
Meeting Link:
Agenda: Inverse Kinematics Workshop - Google Docs


Recording of the workshop is on Youtube at Inverse Kinematics Workshop - Part 1 - YouTube !


Hi @bshah, thanks so much for this, this is extremely helpful! I was wondering – is there something similar for Forward Kinematics? I tried looking for a tutorial / python script for this, but had no luck. Thanks!

Hey @arjung, glad to hear you found it helpful! That’s a good question. The IK tutorial actually includes forward kinematics. Set everything up the same way as in the tutorial, and you can do FK using:


ROS has its own way of doing FK through a library called TF2. If you’re using ROS, check out this example:

Hi Binit, I was able to execute the IK on the stretch and have it working. The mentioned goal point is respect to which origin? Thank you

I missed the part that said the goal is defined with respect to base link. Thank you for the tutorial.

I have a question: If my goal pose is a 3D point in the optitrack world frame, how would I implement this?

Hi @Shashank_Shiva, would you open a new thread? I’d like to keep this thread focused on the IK tutorial.

Short answer: you’d need to transform the point into the robot’s frame, which requires you to also know where the robot’s frame is with respect to the optitrack world frame. You might do this by attaching fiducials to the robot, so optitrack can track where the robot is as well. Happy to elaborate in the new thread.

1 Like

I was able to transform the point. Thank you.

@bshah I have created a new thread for IK with fixed base.