What is Pulse and direction signals?

What are pulse and direction signals?

One signal counts movement; the other selects direction

Pulse/direction control uses PULSE to request position increments and DIR to select their direction. The interface is used by stepper and servo drives. Commands usually come from a PLC high-speed pulse output or a motion controller; the drive supplies motor power, not the signal cable.

Pulse count sets commanded distance or angle, pulse frequency sets commanded speed, and the DIR level selects direction. DIR alone does not command movement. Changing it without incoming pulses does not create another position increment.

Editor’s note: “PULSE moves forward and DIR moves backward” is incorrect for PULSE/DIR. It confuses this interface with CW/CCW mode, which uses separate inputs for forward and reverse pulses. The controller and drive must use the same pulse format. This page describes position control; the assignment of DIR low/high to either direction depends on drive settings.

Pulse count, frequency and active edge

PULSE, STEP and PUL are common input names. The drive counts the selected rising or falling edge; holding an input high does not generate more pulses. Frequency means pulses per second: 10 kHz means 10,000 pulses per second. This alone does not determine motor speed: the commanded pulses per motor revolution must also be known.

A 1.8° full-step motor has 200 full steps per revolution. With 1/10 microstepping, it requires 2,000 command pulses per revolution. A servo drive can set this scale through electronic gearing; command pulses per revolution need not equal the resolution of its motor encoder.

Both directions require pulses

Both directions use the PULSE input The cursor moves along the timeline. Four pulses increase the target angle with DIR low. Direction changes during a pulse-free interval. Four more pulses return the target angle with DIR high. PULSE DIR 1 0 1 0 Forward: DIR = 0 Reverse: DIR = 1 4 pulses 4 pulses Target angle Start Stop

The diagram uses rising-edge counting and an example mapping of DIR=0 to forward and DIR=1 to reverse. Eight pulses per revolution are assumed to exaggerate each command increment to 45°. The pointer shows the target angle, rather than the motor’s mechanical response. Direction changes during the pulse-free interval. Stop resets the demonstration; reduced-motion settings show a static diagram.

Calculating speed and distance

Let P be command pulses per motor revolution, f pulses per second, N total pulses, and L linear travel per motor revolution. Include any transmission ratio in L. Then speed in rpm = 60 × f / P, distance = N × L / P, and linear speed = f × L / P.

With P=2,000 pulses/rev and L=5 mm/rev, 4,000 pulses command 10 mm of travel. A constant 10 kHz pulse rate corresponds to 300 rpm and a commanded feed rate of 25 mm/s. One pulse represents 0.0025 mm, or 2.5 µm of command resolution; this does not establish 2.5 µm of actual positioning accuracy.

Electrical compatibility and direction changes

5 V and 24 V inputs must not be assumed interchangeable. For open-collector wiring, check sink/source compatibility; for differential wiring, check the PUL+/PUL− and DIR+/DIR− pairs. A line driver interface differs from a single-ended input. Similar terminal names are insufficient: use the wiring diagram for the actual drive model.

Match the maximum pulse frequency, minimum high/low times, and DIR setup/hold times against both devices’ specifications. Use an appropriate motion profile to decelerate before reversing, change DIR, and observe the required timing. Use shielded twisted-pair cable, separate signal wiring from power cables, and terminate the shield as instructed by the manufacturer.

When motion occurs but position is wrong

First compare the pulses-per-revolution scale and transmitted/received pulse counts. Then investigate backlash, load and acceleration. In an open-loop stepper system, generating pulses does not prove that the shaft reached its target. Closed-loop steppers and servos also require commands and feedback to be assessed separately. An incremental encoder’s A/B feedback must not be confused with the PULSE/DIR command interface.

For no movement, check enable, alarms, input mode and signal level; for movement in only one direction, inspect DIR wiring and polarity. If low speed works but high speed fails, use an oscilloscope to check the waveform at the drive input, pulse width and required load torque. Motor and drive selection, particularly for CNC axes, depends on acceleration as well as speed. Stopping pulses stops new position commands; it does not guarantee an immediate mechanical stop, removal of torque or a safety-rated stop.

Related topics: Servo systems, stepper drives and EtherCAT servo systems, which use a different command interface.