Raghav Posted April 6, 2011 Share Posted April 6, 2011 Hi, Recently I had to remove my encoder in order to clean it. Till then the hmz command was working fine. But after placing back the encoder, the command seems to be working weirdly. After homing operation, the cts doesn't become zero and instead shows some random value every time I do homing operation. As a quick-fix when I try to use the zero move home command #1hmz or homez 1, it doesn't respond properly. Instead of 0 cts, the value is some random cts. This happens with the GUI we had developed also. Kindly suggest a solution for this issue. Thanks in advance. Link to comment Share on other sites More sharing options...
curtwilson Posted April 6, 2011 Share Posted April 6, 2011 It sounds like your servo loop is not operating very well. A "homez" command sets the present commanded position to zero. The actual position, which is what is reported, will be equal to the negative of the following error. In a homing search move, the actual position captured on the trigger becomes the motor zero position, and the commanded position for the end of the post-trigger move. The actual position at the end of the post-trigger move will be equal to the negative of the following error. Make sure your encoder is reporting position reliably. Also, check your servo tuning, particularly the integral gain term Ixx33. Link to comment Share on other sites More sharing options...
Raghav Posted April 7, 2011 Author Share Posted April 7, 2011 The encoder values are repeatable with +/- 2 counts. I tried to tune using the PID to achieve the required positioning accuracy. Here are the values of Ixx30-33 Ixx30=21000 Ixx31=1600 Ixx33=20000 So can you let me know if I have to increase or decrease the Ixx33 value? Also any other parameter is responsible for homez command? Thanks. Link to comment Share on other sites More sharing options...
curtwilson Posted April 7, 2011 Share Posted April 7, 2011 Do you have any significant following error when you do the HOMEZ command? If you have the integral gain value you say, it should pull the motor in to virtually zero error at rest. Is your Ixx63 integrator limit value set to near the default? Do you have any other position offsets, such as compensation tables? Link to comment Share on other sites More sharing options...
Recommended Posts