updated 10/17
In the zero position (i.e., pose vector of [0.0, 0.0, 0.0, 0.0, 0.0]) the linkage should be extended, standing straight up. The base of the linkage is has the 3 DoFs with the 2 higher joints each having 1 DoF |
static floatpose[NUMPOSES][NUMDOFS] = { // exercise each 3 DoF joint independently 0.0, 0.0, 0.0, 0.0, 0.0, // straight up 0.0, 0.0, 0.0, -45.0, 45.0, // kinked arm - so rotations are easier to see 90.0, 0.0, 0.0, -45.0, 45.0, // 1st DoF 0.0, 0.0, 0.0, -45.0, 45.0, // kinked arm 0.0, 90.0, 0.0, -45.0, 45.0, // 2nd DoF 0.0, 0.0, 0.0, -45.0, 45.0, // kinked arm 0.0, 00.0, 90.0, -45.0, 45.0, // 3rd DoF 0.0, 0.0, 0.0, -45.0, 45.0, // kinked arm // test Euler angle implementation 45.0, 0.0, 0.0, -45.0, 45.0, // 1st DoF 45.0, 90.0, 0.0, -45.0, 45.0, // 1st + 2nd DoF 45.0, 0.0, 0.0, -45.0, 45.0, // 1st DoF // exercise last two joints independently 0.0, 0.0, 0.0, 0.0, 0.0, // straight up 0.0, 00.0, 0.0, 80.0, 00.0, // 4th DoF 0.0, 0.0, 0.0, 0.0, 0.0, // straight up 0.0, 00.0, 0.0, 0.0, 80.0, // 5th DoF // put in gimbal lock configuration and test quaternion interpolation 0.0, 0.0, 0.0, 0.0, 0.0, // straight up 0.0, 0.0, 0.0, -45.0, 45.0, // kink arm 0.0, 90.0, 0.0, -45.0, 45.0, // 2nd DoF -90.0, 0.0, 90.0, -45.0, 45.0, // 1st + 3rd DoF showing gimbal lock 0.0, 90.0, 0.0, -45.0, 45.0, // 2nd DoF 0.0, 0.0, 0.0, 0.0, 0.0, // straight up };
Kink | Euler Test | |
Joint Test | Gimbal Lock Configuration #1 | Gimbal Lock Configuration #2 |
Extra Credit: