Problem reaching max velocity step generation with 7i76e

More
25 Jun 2018 11:35 #112839 by dom96
Hi all,

After configuring the machine in PnCConf I ran LinuxCNC and on start I got an error:
" hm2/hm2_7i76e.0: stepgen.00maxvel is too big for current step timings & position-scale, clipping to max possible "

The max velocity I set and expected was 3000rpm which equals 50 rotations per second. The velocity parameters I have set in the .INI file are:

MAX_VELOCITY = 50.0
STEPGEN_MAXVEL = 62.50 (25% larger than MAX_VELOCITY)

For some reason the max velocity I can get in LinuxCNC is only 1999 instead of 3000. The measured input frequency on the servo drive is 333.2kHz at 1999rpm.

Does anyone know how can I fix this problem?
More
25 Jun 2018 15:52 - 25 Jun 2018 23:42 #112852 by PCW
What the:

" hm2/hm2_7i76e.0: stepgen.00maxvel is too big for current step timings & position-scale, clipping to max possible " message

means is that your current steplength and stepspace settings will not let you reach the maximum velocity in your INI file at your current steps/turn settings

The way to fix it is to reduce the steplength and or stepspace settings (if they can be reduced and still meet your drives timing specifications) or if the step timings cannot be shortened, reduce the number of steps per turn in your drive.
Last edit: 25 Jun 2018 23:42 by PCW.
The following user(s) said Thank You: tommylight, dom96
More
25 Jun 2018 16:04 - 25 Jun 2018 16:05 #112853 by tommylight
What do you have set for timings ? or what microstepping?
You have the scale set at 10000 steps per revolution.
Last edit: 25 Jun 2018 16:05 by tommylight.
The following user(s) said Thank You: dom96
More
26 Jun 2018 10:03 #112872 by dom96
So, the STEPLEN and STEPSPACE settings are both set to 1000 what according to the drives manual is the lowest I can set. I didnt really want to adjust the electronic gear ratio on the drive as I didnt want to lose accuracy but I see how this could solve the RPM problem.

My microstepping multiplier is 10 so I do get 10000 steps per revolution as advised by the servo drive manufacturer. Is 10 too high?

Also the input frequency on the drive is only 333.2kHz and the maximum accepted by the drive is 500kHz. Is there a way I could just generate higher frequency output on the Mesa? Would this frequency limitation be caused by high latency on my laptop or is it just the specs limitation of the Mesa card?
More
26 Jun 2018 12:36 #112881 by Todd Zuercher
What are your timing settings for step length and step spacing? My guess is that you have them set so they are limiting your step rate to 333kHz. (The Mesa hardware is not the limiting factor, it can step at MHz rates.)

If you post your ini file we could look for your mistakes.
The following user(s) said Thank You: dom96
More
26 Jun 2018 14:27 - 26 Jun 2018 14:28 #112890 by PCW
Latency does not affect the maximum step rate with the 7I76E, maximum 7I76E steprate is approximately 10 MHz. The limitation is in the hal/ini file setup somewhere, so as Todd said, the best thing is to post your hal and ini files here so they can be examined.
Last edit: 26 Jun 2018 14:28 by PCW.
The following user(s) said Thank You: dom96
More
26 Jun 2018 15:15 #112894 by dom96
I attach the .ini file

File Attachment:

File Name: my_LinuxCN...test.ini
File Size:4 KB


I now changed the microstepping to 5 instead of 10 and then set the gear ratio to 2:1 on the drive. This allowed me to get rid of the error message and I can now get 3000 RPM as expected but I lost half the steps per rotation this way. Is there a better way to solve this problem without reducing the steps count?
Attachments:
More
26 Jun 2018 17:02 - 26 Jun 2018 17:03 #112897 by PCW
Please include your hal file

I suspect the 333 KHz limit is because at some point you had 1 usec and 2 usec step time settings ( 1/(1+2 usec) = 333.33 KHz)

1 usec step length and step space will allow the stepgen to run at 500 KHz but will not leave any margin for the control loop to run so will not work reliably at the maximum speed.

(To get to the 62.5 RPS for control headroom would require a 650 KHz stepgen rate
and you drives cannot go that high)
Last edit: 26 Jun 2018 17:03 by PCW.
The following user(s) said Thank You: dom96
More
27 Jun 2018 09:25 #112924 by dom96
I attach the .hal file.

File Attachment:

File Name: my_LinuxCN...test.hal
File Size:10 KB


So, is it better to have reduced steps per rotation count on the servos than having no input frequency headroom?
Attachments:
More
27 Jun 2018 12:52 - 27 Jun 2018 12:55 #112928 by Todd Zuercher
Having that head room is essential for the hardware to safely and accurately generate the steps. (no missed steps)

Are your motors actually true servos or are they step motors? (most real step/dir servo drives I've worked with can accept much higher step rates.)

It depends on what resolution and accuracy the physical machine is capable of achieving. (no point in exceeding what is physically possible.) That is determined by the stiffness of the machine and the accuracy of its components.
Last edit: 27 Jun 2018 12:55 by Todd Zuercher.
Moderators: cmorley
Time to create page: 0.105 seconds
Powered by Kunena Forum