Using geometricJacobian and velocities

N
Nathaniel · Mar 24, 2021 · 2.4K views
Question
I used the geometricJacobian method that generated a the  matrix for a puma. So I underatand v = J theta_dot, where v is a vector of cartesian velocities, and theta_dot is is a vector of joint velocities. When I created the rigidbodytree and rigidbody, I did not specify any velocities. Am I supposed to spectify velocities when I create the rigidbody joints? With the Jacobian I got from using geometricJacobian, is there a method that returns the joint velocities and the cartesian velocities, so I know what they look like, and I can multiply the J with the jount velocities, to verify the result of the cartesian velocities? I am confused where the velocities are basically, and which functions are there to obtaon velocities.  
Expert Answer
Profile picture of John Williams
John Williams PhD Expert
Answered Aug 11, 2026
  1. NO. rigidBodyTree in Robotics System Toolbox is designed to be stateless. So there are no joint positions/velocities/accelerations on the robot objects. These quntities are passed in as input argumetments to robot methods, such as getTransform, or inverseDynamics.
  2. NO. the geometricJacobian is just a  matrix that relates joint velocities to end-effector velocity. It is also conifguration-dependent, so it's typically written as J(q). To get the end-effector velocity in Cartesian space, you need to provide your vector of joint velocity qDot, and do xDot = J(q) * qDot;
Have a different question? Ask here

Get a Free Consultation or a Sample Assignment Review!