Background: I have access to a UR-10, 6DOF robotic arm through my school (I'm very new to robotics). I know the desired set of linear speeds that I want in the x,y, z-direction in terms of the end effector ([x,y,z,rx =0, ry,=0, rz =0]). Using an analog controller I receive linear speeds in the x,y, z-direction ranging from -.1 -.1m/s.
I found the forward kinematics for the UR-10 online and begin to derive the Jacobian Matrix. (If anyone has the Jacobian matrix for a UR-10 that would be awesome.) Since I'm only interested in the linear motion, where rx,ry,rz =0 I thought I could simplify my Jacobian to a 3x3 matrix.
I realized that by doing so I would be unable able to solve for all the joints speeds 1-6.
$J^{-1} \dot{X} = \dot{Q}$
where $J^{-1}$ is the inverse Jacobian, $\dot{X}$ is the Cartesian velocity vector and $\dot{Q}$ is the joint velocity vector. With the above simplification [3x3][3x1] = [3x1] joint velocity vector.
However, I need a 6x1, so I have the speed for each joint.
What am I doing wrong?
What are the other 3 equations I would need to define a full 6x6 Jacobian and solve for the appropriate joint speeds?
EDIT: I foresee a problem that since my linear speeds change incrementally there may be singularities when calculating my Inverse Jacobian how could I work around that?
-.1 -.1m/s
, which I would personally rewrite as(-0.1) to 0.1 m/s
. Sometimes negative signs and decimals can get lost in a wall of text/code. Again, passing advice - take with a grain of salt :) $\endgroup$