- Posts: 18
- Thank you received: 0
Pico USC Following Error
Chris
Please Log in to join the conversation.
- tommylight
-
- Offline
- Administrator
-
- Posts: 22012
- Thank you received: 4
Please Log in to join the conversation.
The step generator has a maximum step rate determined by these parameters in the configs filecprhodin wrote: I'm using a Pico USC to drive my milling machine. The board is configured to use the internal feedback, not external encoders. In this configuration I'm getting following errors. What can cause this? Is there something that needs tuning?
Chris
univstep_motion.hal :
setp ppmc.0.stepgen.00-03.pulse-width-ns 3500
setp ppmc.0.stepgen.00-03.pulse-space-min-ns 3500
# setup time is set to 1 uS
setp ppmc.0.stepgen.00-03.setup-time-ns 1000
If these times are excessive for your stepper motor driver, you can reduce them.
Then, in the .ini file, there are settings for the max velocity for the entire system in the [TRAJ] section and
then for individual axes and joints in the [AXIS_<letter>] and [JOINT_<number>] sections. You likely need
to up those numbers. Note that they are in user units per SECOND.
Finally, there are PID settings in the [JOINT_n] sections, but hopefully you will not have to touch those.
Jon
Please Log in to join the conversation.
Attachment not found
Attachment not found
Attachment not found
Attachment not found
Attachment not found
Attachment not found
I'm using an AC servo that accepts quadrature step inputs at up to 4 MHz. This weekend I reduced the resolution to 0.001 inches per step to limit the step frequency and make the steps visible on the ball screw position dial.
Please Log in to join the conversation.
I'm still getting a following error at ~80 IPM (with my current resolution of 0.0001"). I noticed that this error only occurs on long moves and is associated with an audible thunk at the end of a move. Looking at the velocity on HAL Scope I can see short moves have linear velocity ramps and long move ramp up normally and ramp down sharply with a decay shape. What it looks like is LinuxCNC is requesting a velocity higher than the USC is willing to deliver. I've been checking the LinuxCNC settings but can't figure out where this limit is being imposed. I've increased every velocity (searched for "VEL") in the INI to 180 IPM.
Where should I be looking to fix this?
Chris
Please Log in to join the conversation.
So, you clearly need to increase this number in both the [TRAJ] and [JOINT_x] sections.
Then, your SCALE is 327680. So, if user units are inches, you want 180 IPM that is 3 IPS. 3 * 327680 = 983040 steps/second. This is WAY above the rating for the Universal stepper controller, we usually recommend staying below 300K steps/second.
Do you REALLY need this resolution? You are talking about a step resolution of 3 microinches! If your drives have a lower microstepping ratio, I would recommend that as the first thing to do.
Also, to step at this rate, the step width and space would have to be about 1 us.
Jon
Please Log in to join the conversation.
- BeagleBrainz
- New Member
-
- Thank you received: 0
Please Log in to join the conversation.
Yes, that is why having a SCALE factor of 327680 is just wrong, unless you have a diamond turning lathe making optical parts under a constant temperature water deluge. Such machines exist, but probably aren't running LinuxCNC and stepper motors.BeagleBrainz wrote: Wouldn't 3 micro inches be less than the thermal expansion of cast iron per inch per degree F ?
Jon
Please Log in to join the conversation.
My latest INI is attached. The three stepgen times are all set to 300.
Chris
Please Log in to join the conversation.
Still, you are really asking the USC board to do what it is not designed for. The step generator clock is 10 MHz, so when making step rates around 900K/sec, then each increment of velocity is approximately a 10% jump. But, even worse, the digital filter on the step pulse counter is 1 MHz, so when step rates approach 1 MHz, counts could be lost. That is why I recommend not going about about 300K steps/second, so the counter can be assured to never miss a step. (Now, the encoder counter is used to count the quadrature step signal that is derived from the same clock source, so the digital fiter is not actually needed in the open-loop case, but it is part of the design and can't be disabled.)
Jon
Please Log in to join the conversation.
