# Are joint state vectors limited? [closed]

Are joint-state vectors $q$, which define the position and orientation of a set of joints, limited somehow?

I know they are used for the rotation part of the transformation matrix => therefore I would think they were limited within 0 and 2$\pi$

• Can you be more specific with what you're asking about? Are you referring to $q$ as in generalized joint parameters? – Chuck Jan 9 '16 at 4:18
• yes... I notice my book states that R_z(q) would be possible , or that at T_ref. – Carlton Banks Jan 9 '16 at 8:10
• Welcome to robotics dfh, but I'm afraid that it is not clear what you are asking. We prefer practical, answerable questions based on actual problems that you face, so it is a good idea to include details of what what you would like to achieve, what you have tried, what you expected to see and what you actually saw. Take a look at How to Ask and tour for more information on how stack exchange works. If you edit your question to make it more clear, flag it for moderator attention and we can reopen it for you. – Mark Booth Jan 11 '16 at 15:40

For generalized joint parameters, there are no explicit limits on the value of $q$, regardless of the joint type.

This is done because more complex joints can be created by a group of relatively simple joints, so it's best to have a library of joints that use the generalized parameter with no bounds.

Consider a rack and pinion. The pinion might rotate an angle $q$ radians, but the rack then translates a distance of $rq$, where r is the effective diameter of the pinion gear. In this case, assuming $0 <= q < 2\pi$ means that the rack can only translate a distance of $2\pi r$.

Screws are similar, where the rotation may be $q$, but the axial translation is based on the pitch and total degree of rotation, $h = qp$, where $p$ is the pitch.

If you would like to evaluate a joint angle as though it were bounded, I would suggest creating a virtual sensor that taps into the joint parameter and performs the bounding operation, but I would definitely leave the actual joint parameter alone.

• To be clear, by virtual sensor I just mean something like $q_{\mbox{sensed}} = q$, then performing the bounding, $q_{\mbox{sensed}} = q_{\mbox{sensed}} - 2\pi(\mbox{floor}(q_{\mbox{sensed}}/(2\pi)))$ etc. – Chuck Jan 9 '16 at 13:16

Additionally to what Chuck said, from a purely mathematical point of view, the rotation matrix is defined as: $$R(\theta) = \left[ \begin{array}[cc] \\ \cos(\theta) & -\sin(\theta) \\ \sin(\theta) & \cos(\theta) \\ \end{array} \right]$$

Thus, $R(\theta) = R(\theta+2\pi)$, thus you do not need to wrap the angle argument.