Download Man Pages - LinuxCNC

Transcript
STEPGEN(9)
HAL Component
STEPGEN(9)
PARAMETERS
stepgen.N.frequency float ro
The current step rate, in steps per second, for channel N.
stepgen.N.maxaccel float rw
The acceleration/deceleration limit, in length units per second squared.
stepgen.N.maxvel float rw
The maximum allowable velocity, in length units per second. If the requested maximum velocity
cannot be reached with the current combination of scaling and make-pulses thread period, it will
be reset to the highest attainable value.
stepgen.N.position-scale float rw
The scaling for position feedback, position command, and velocity command, in steps per length
unit.
stepgen.N.rawcounts s32 ro
The position in counts, as updated by make-pulses. (Note: this is updated more frequently than
the counts pin.)
stepgen.N.steplen u32 rw
The length of the step pulses, in nanoseconds. Measured from rising edge to falling edge.
stepgen.N.stepspace u32 rw (step types 0 and 1 only) The minimum
space between step pulses, in nanoseconds. Measured from falling edge to rising edge. The actual
time depends on the step rate and can be much longer. If stepspace is 0, then step can be asserted
every period. This can be used in conjunction with hal_parport’s auto-resetting pins to output
one step pulse per period. In this mode, steplen must be set for one period or less.
stepgen.N.dirsetup u32 rw (step type 0 only)
The minimum setup time from direction to step, in nanoseconds periods. Measured from change
of direction to rising edge of step.
stepgen.N.dirhold u32 rw (step type 0 only)
The minimum hold time of direction after step, in nanoseconds. Measured from falling edge of
step to change of direction.
stepgen.N.dirdelay u32 rw (step types 1 and higher only)
The minimum time between a forward step and a reverse step, in nanoseconds.
TIMING
There are five timing parameters which control the output waveform. No step type uses all five, and only
those which will be used are exported to HAL. The values of these parameters are in nano-seconds, so no
recalculation is needed when changing thread periods. In the timing diagrams that follow, they are identfied by the following numbers:
(1) stepgen.n.steplen
(2) stepgen.n.stepspace
(3) stepgen.n.dirhold
(4) stepgen.n.dirsetup
(5) stepgen.n.dirdelay
For step type 0, timing parameters 1 thru 4 are used. The following timing diagram shows the output waveforms, and what each parameter adjusts.
STEP
Time
DIR
322
_____
_____
_____
____/
\_______/
\_____________/
\______
|
|
|
|
|
|
|-(1)-|--(2)--|-(1)-|--(3)--|-(4)-|-(1)-|
|__________________
________________________________/
2007-01-16
LinuxCNC Documentation