Homework #5                                                                           Due    10/11

1.     Consider our 3DOF robot shown below, together with the model used for the camera-space kinematics of point P:

 

 

xc = fx = (C12+C22-C32-C42) {[cosq2+cos(q2-q3)]cosq1}  +

2(C2C3+C1C4) {[cosq2+cos (q2-q3)]sinq1 - 1} + 2(C2C4-C1C3) {sinq2+sin(q2-q3) - 1} +  C5

 

yc = fy = 2(C2C3-C1C4) {[cosq2+cos(q2-q3)]cosq1} +

(C12-C22+C32-C42) {[cosq2+cos (q2-q3)]sinq1 - 1} + 2(C3C4+C1C2) {sinq2+sin(q2-q3) - 1} +  C6


The batch of samples is as given above.    Let k denote the row number.    So the camera-space sample of P of the kth row where k=3 is (73 , 14). 

(a)  Letting q1k q2k  q3k  be the joint rotations in radians for the kth row of batch data, write out the general expressions, in terms of the current guess C1o C2o … C6o together with q1k q2k  q3k, for the odd rows, i.e. hi, i=2k-1, as defined in class.

 hi(q1k q2k  q3k  C1o C2o … C6o)  =  h2k-1(q1k q2k  q3k  C1o C2oC6o)  = 

(b) Again, letting q1k q2k  q3k   be the joint rotations in radians for the kth row of batch data, write out the general expressions, in terms of the current guess C1o C2o … C6o together with q1k q2k  q3k, for the even rows, i.e. hi, i=2k.  hi(q1k q2k  q3k  C1o C2o … C6o)  =

                =  h2k(q1k q2k  q3k  C1o C2o … C6o)  = 

 

2.     We wish to improve upon our initial guess of [C1 C2C6]T = [C1o C2o … C6o]T by using:


(a)  Letting q1k q2k  q3k   be the joint rotations in radians for the kth row of batch data, as before, write out the general expressions, in terms of the current guess C1o C2o … C6o together with q1k q2k  q3k, for the odd rows of the matrix A, i.e. i=2k-1.  Ai,1(q1k q2k  q3k  C1o C2o … C6o)  =  A2k-1,1(q1k q2k  q3k  C1o C2o … C6o)  ;  Ai,2(q1k q2k  q3k  C1o C2o … C6o)  =  A2k-1,2(q1k q2k  q3k  C1o C2o … C6o)  ; Ai,3(q1k q2k  q3k  C1o C2o … C6o)  =  A2k-1,3(q1k q2k  q3k  C1o C2oC6o)  = 

(b) Again, letting q1k q2k  q3k   be the joint rotations in radians for the kth row of batch data, write out the general expressions, in terms of the current guess C1o C2o … C6o together with q1k q2k  q3k, for the even rows, i.e. hi, i=2k.  Ai,1(q1i q2i  q3i  C1o C2o … C6o)  =  A2k,1(q1k q2k  q3k C1o C2o … C6o)  ;  Ai,2(q1k q2k  q3k  C1o C2o … C6o)  =  A2k,2(q1i q2i  q3i  C1o C2o … C6o)  ; Ai,3(q1k q2k  q3k  C1o C2o … C6o)  =  A2k,3(q1k q2k  q3k  C1o C2oC6o)   

 

3.     Letting q1k q2k  q3k   be the joint rotations in radians for the kth row of batch data, as before

(a)  write out the general expressions, in terms of the kth camera-space sample (xck yck), the current guess C1o C2o … C6o together with q1k q2k  q3k, for the odd elements of the vector of residuals, i.e. i=2k-1.  ri(q1k q2k  q3k  C1o C2o … C6o)  = r2k-1(q1k q2k  q3k  C1o C2oC6o)

(b) Again, in terms of xck yck  C1o C2o … C6o q1k q2k  q3k, write out the general expressions for the even elements of the vector of residuals, i.e. i=2k.  ri(q1k q2k  q3k  C1o C2o … C6o)  = r2k(q1k q2k  q3k  C1o C2oC6o) 

 

4. Write code to implement Euler-Gauss iteration and converge onto the best equal-weighting solution of  C for these data.  Begin with an initial guess of your choice; note that if the elements of r do not become very small you may need to retry your initial guess.  List both your converged C elements as well as the corresponding final (converged) values of the 18 elements of the residuals r.