In 1a, I read the question as computing the body velocity from the initial to the midpoint (2.5) as this is the location of the vector-form derived trajectory from the last homework. In part b, I use the initial and the final as this is the location of the computed twist from the last homework?
No I think you misunderstood the problem. the desired trajectory for the end effector is given by the formula in the problem. Your goal is to first find as a function of time the body velocity of the end effector that would be required to meet that trajectory. This homework is a different way of making the manipulator follow the desired trajectory. The midpoints from last week were only for the purpose of making splines. We are not making splines here.
Hey, I am also having trouble understanding what this question is asking for. So we are looking for a body velocity as a function of time. I guess I am having a hard time trying to figure out how to find this as a function of time.
Do you remember the definition of body velocity?
\[\xi = g ^{-1}(\alpha)(\frac{ \delta g(\alpha) }{ \delta \alpha })\]
unhatted
Is resolved rate trajectory generation something we will cover today? If not what does it mean?
There is a short review at the end of the homework. I think it will be covered today mostly. Your equation for body velocity seems to be correct - you should be able to get the body velocity as a function of time using that.
The vector form derived trajectory equation provided in 1a will be the \[g(\alpha)\] but as an equation with t in it. Is that correct?
with the initial and final alphas included also
I think what you said was right. Just remember that there is a special product of a transformation of a "twist".
I used matlab to calculate g (from alpha initial and alpha final using the trajectory equation provided in 1a ) as a funtion of t. I took the inverse of g and the derivative of gwith respect to t. The resulting v and w that I get would the be the answer to 1a. Is that correct?
I don't understand what you used MatLab for. ge(t) is given in the problem. You can take the derivative just by looking at it.
The only thing I see in problem one is the vector form derived trajectory equation.
In problem 1 you are given the desired ge(t). Correct?
I am given an equation that will compute a ge(t) at any t and told to use the initial joint angle from last hw (hw12) to compute the associated body velocity as a function of time
Ok you are given ge(t), you should be able to calculate gedot(t). Correct?
Yes. I would still use the initial joint angle? As an example I would get for the x component \[x _{e}(t) = (\frac{ 1 }{ T })(x _{e}(T) - x _{e}(0))\]
I mean xedot(t)=
Yes. You don't really have to separate the components. You can do the derivative as a vector but it's your choice. You can get xe(0) from the initial joint vector from last time yes. Then just multiply on the left by the inverse of ge(t). Remember that multiplying a transformation times a twist looks like this:\[\left[\begin{matrix}R & 0 \\ 0 & 1\end{matrix}\right]*\left(\begin{matrix}\xi_1 \\ \xi_2\\ \xi_3\end{matrix}\right)\]
What does 'then use resolved rate trajectory generation to obtain a trajectory in the joint space' mean?
I get the body velocity eq. then I need to use the resolved rate trajectory generation to obtain a trajectory in the joint space and plot the result. I do not have a final joint angle unless I use the one from the same hw12 problem that I got the initial joint angle from. Is that what I do?
You mean when you're calculating gedot(t)? Yes use the same final joint angle vector as the last homework. There is a section at the end of the homework on resolved rate trajectory generation. It should be helpful.
what are the alphas in the Jacobian?
Is the Jacobian a function of alpha(t)?
I am referring to the Jacobian from Hw 12 which I did not finish and I am looking at the hw12 solutions. I am looking at the 3x3 Jacobian and plan to use it in hw13 problem 1a. Three days and I am still on 1a.
Would I use inverse kinematics at each position generated by the \[g _{e}(t)\]to find the \[\alpha(t)'s\] and use them in the Jacobian?
No. The Jacobian is a function of alpha(t) yes, but your ode45 function will calculate the proper alphas for you. You just need to define your alphadot properly in your differential function in MatLab.
The inputs to your differential equation function are alpha and t. You just need to define alphadot in terms of those things and other things you know.
On 3a, how do you make a 2x1 into a 2x2?
That's a bit cryptic. What part and why do you feel like you need to do that?
\[Ad ^{-1}_{g} = \left[\begin{matrix}R ^{T} & (-R ^{T}d)^{\Lambda}R ^{T} \\ 0 & R ^{T}\end{matrix}\right]\] is the definition for adjoint in se(3) the \[(-R ^{T}d) \] makes a 2x1 the \[(-R ^{T}d)^{\Lambda} \] turns it into a 2x2 so it can be multiplied by \[R ^{T}\]
I believe you're thinking of 3x3. Rotation matrices in SE3 are 3x3. You can make a 3x1 into a homogeneous matrix the same way you convert a 3x1 omega vector into a 3x3 homogeneous omega matrix. It should have 0s down the diagonal...that's a start.
for this problem \[g _{6} = \left[\begin{matrix}1 & 0 & L4 \\ 0 & 1 & 0 \\ 0 & 0 & 1\end{matrix}\right]\] the rotation matrix is the 2x2 indentity matrix and \[d = \left(\begin{matrix}L4 \\ 0\end{matrix}\right)\]. Is the right?
g6 is a pure translation and ge=g1(alpha1)g2(alpha2)g3(alpha3)g4(alpha4)g5(alpha5)g6
No this is not right. SE3 homogeneous matrices are 4x4
Yes you are correct. I remember
For 3b, I find my g's and therfore my adjoints are 4x4's and my xi's are 6x1's. How do I multiply these together?
The adjoint matrix for SE3 is 6x6. Look in the formulas.
In the past I wrote code for an adjoint for se(3) and it was a 4x4
an example in the notes for se(3) resulted in a 4x4
If you look in the formulas at the end of the homework you will see there is another way to calculate an adjoint: through a matrix multiplication. this matrix is a 6x6
I see at the end of Hw 13 it talks about adjoint for SE(2)
I looked in the online notes both 2005 and 2007 and I did not see an SE(3) that produced a 6x6 adjoint
I know I can not just add zeros until it is a 6x6
Above you wrote the inverse of the adjoint matrix. That was a 6x6. How did you get that?
I see now. I am getting tired and making mistakes. The R^T is a 3x3 which makes a 6x6.
Right.
Join our real-time social learning platform and learn together with your friends!