JeffLowe Posted November 9, 2018 Share Posted November 9, 2018 Trying to create a 2 element CompTable to correct axis squareness. The table is using CompTable[15].Ctrl = $4 This should be linear interpolation, non-rollover. The comp generated starts at zero, at half travel my full comp is being applied. It then diminishes back to zero at full travel. It looks like this is doing a mirror instead of holding the last value. Do I need more data points? Link to comment Share on other sites More sharing options...
curtwilson Posted November 9, 2018 Share Posted November 9, 2018 I can't duplicate this problem. My attempt works as it should. Here's what I used: CompTable[0].Source[0]=1 CompTable[0].SourceCtrl=0 CompTable[0].Nx[0]=1 CompTable[0].Nx[1]=0 CompTable[0].Nx[2]=0 CompTable[0].X0[0]=0 CompTable[0].Dx[0]=10000 CompTable[0].Data[0]=0 CompTable[0].Data[1]=100 CompTable[0].Ctrl=4 CompTable[0].Target[0]=Motor[1].CompDesPos.a CompTable[0].Sf[0]=1 CompTable[0].OutCtrl=0 As I jog slowly across the range of the table (0 - 10000), the correction increases in direct proportion to the commanded position and saturates at 100 as I go past the end of the defined range. It also saturates at 0 as I pass the negative end. Why aren't you using the axis definitions to correct for squareness? Link to comment Share on other sites More sharing options...
JeffLowe Posted November 9, 2018 Author Share Posted November 9, 2018 Why aren't you using the axis definitions to correct for squareness? We are using both transformation/rotation matrix, and kinematics. Comp tables are more straight forward in my mind. Link to comment Share on other sites More sharing options...
curtwilson Posted November 9, 2018 Share Posted November 9, 2018 In the manual, we show an example of correcting for a 1 arcmin squareness error at 10,000 cts/unit with: #1->10000X-2.91Y #2->10000Y It would be easy to do the same functionality in kinematic subroutines. (You do have to mathematically invert this for the forward kinematics.) You can do matrix transformations "on top" of this just as for simpler configurations. Link to comment Share on other sites More sharing options...
JeffLowe Posted November 12, 2018 Author Share Posted November 12, 2018 Thank you Curt for pointing out my error. A two point non-rollover comptable should have Nx[0]=1 for a single zone. Link to comment Share on other sites More sharing options...
Recommended Posts