Closing the servo loop with HAL mesa 7i76
from the X axis section of your ini file:
MAX_VELOCITY = 250
STEPLEN = 1000
STEPSPACE = 1000
STEP_SCALE = 2000
With a max velocity of 250 mm/s and a step scale of 2000 steps/mm you are right at the
limit of the stepgens maximum rate at the current steplen and stepspace settings:
Maximum step rate = 1/(steplen+stepspace) so 500 Khz at your current settings
500 KHz is also stepscale * maxvel = 2000*250 = 500 KHz.
If you need higher velocities you will need to shorten the steplen and stepspace.
Thank for your continued help with this.
I have tried with
STEPLEN = 750 : 600 : 500
STEPSPACE = 750 : 600 : 500
All these above No.s I can get 15mtr/min which equates to 3000 rpm which is max servo speed. So that seems all good.
But I am still getting following errors even with 3000mm/min. Another clue might be in that if I command a distance of 1800mm it will error out at about 1380mm .
When jogging at about 2000mm/min it always errors on lifting the jog key ! I have tried using P term at 1 and 10
Any help would be appreciated.
Attachments:
Please Log in or Create an account to join the conversation.
You probably also need to delete the max_error = .01 statements at least for initial tuning
Please Log in or Create an account to join the conversation.
Since you are tuning an actual physical device you will need to do a normal PID tuning procedure, using HALScope to see what's going on
You probably also need to delete the max_error = .01 statements at least for initial tuning
I don't see any max_error statements. Are there any tuning docs for step/dir servos that you know of?
Please Log in or Create an account to join the conversation.
setp pid.x.maxerror .01
Tuning should be similar to:
gnipsel.com/linuxcnc/tuning/servo.html
Please Log in or Create an account to join the conversation.
- thefabricator03
- Offline
- Platinum Member
- Posts: 1130
- Thank you received: 533
Did you end up getting this issue sorted? If so what did you do?
I am thinking of trying what you have done but with closed looped steppers.
Please Log in or Create an account to join the conversation.
Clive,
Did you end up getting this issue sorted? If so what did you do?
I am thinking of trying what you have done but with closed looped steppers.
Sorry but I have not had time, but am starting again. Closing the loop was easy but I can't seem to be able to sort the following errors out.
I am testing this out on the bench with a 1.8Kw servo using step/dir. it runs fine with open loop but I am getting errors with closed loop when I get above about 5 Mr/min
Please Log in or Create an account to join the conversation.
I am still getting a following error when going above 7Mtr/min and then reversing with G0 ie. about 15mtr/min.
It does not error when just doing a G0 x1000. but if I do G01000 then G0 that is when it errors
In open loop there is no problems. Only in closed loop. Servo 1.8Kw step/dir on the bench.
Please Log in or Create an account to join the conversation.
Is it possible that the encoder output connected to the 7i85s could be delayed within the drive and thus causing the following error?
Please Log in or Create an account to join the conversation.
Plotting the following error (and velocity) with halscope would likely
provide enough information to debug the issue
One possibility is that you are running into the encoder maximum
count rate. To test this, you might try turning off the encoder filter bit
in the hal file.
Please Log in or Create an account to join the conversation.
One possibility is that you are running into the encoder maximum
count rate. To test this, you might try turning off the encoder filter bit
in the hal file.
Is this a matter of commenting out this line setp hm2_7i76e.0.encoder.00.filter 1
I have never used hal scope but will give it a try.
Thanks for the support.
Please Log in or Create an account to join the conversation.