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