The number that matters is the sign of the handwheel increment. Motor current produces torque, but neither current nor thermal load explains one axis moving opposite to two others from the same handwheel. The working correction is a per-axis sign inversion in the handwheel command branch, leaving the absolute HSPS0 command and the shared A/B input unchanged.
Wrong Direction Fixes
Swapping the handwheel A/B phases reverses the decoded count direction before the PLC distributes that value. Because all three servos use the same handwheel, this corrects the third servo while reversing the two axes that already work. It changes the shared source rather than the mismatched destination.
Changing the direction through mpara affects the HSPS0 motion path in this installation. That path is already correct, so this adjustment trades one direction fault for another instead of isolating the handwheel command.
Reversing motor direction in the servo drive makes the handwheel motion look correct, but it also reverses the relationship between physical travel and DR4088. The reported result is that DR4088 decreases during the motion that must be treated as positive. A drive-level reversal is therefore too broad when only one PLC command source has the wrong sign.
| Attempted correction | Scope | Result |
|---|---|---|
Swap handwheel A/B
|
All axes using the shared input | Reverses all three servos |
Change mpara
|
HSPS0 path |
Changes the path that is already correct |
| Reverse direction in the drive | Motor and displayed position relationship | Corrects handwheel motion but reverses the required DR4088 trend |
Signed Command Mismatch
A handwheel with A/B signals produces a signed count increment: one phase sequence counts positive and the opposite sequence counts negative. Timing establishes the decoded direction. After decoding, the PLC can distribute that same signed increment to several motion branches.
Two servos respond correctly to both the handwheel and absolute HSPS0 commands. The third responds correctly to HSPS0 but incorrectly to the handwheel. That split identifies the mismatch after the shared handwheel decoder and before the third axis receives its manual-motion contribution. It is a sign-mapping fault, not a global encoder-phasing fault.
The required transformation is:
Corrected handwheel increment = Incoming handwheel increment × (-1)
Apply that multiplication only to the third servo's handwheel branch. Keep the other two branches, the shared A/B count, and the absolute command unchanged.
Command-Path Quantities
Direction troubleshooting becomes deterministic when each path is treated as a signed quantity. Record the sign before and after every transformation while turning the handwheel slowly in the designated positive direction.
| Quantity | Required relationship | Where to read it |
|---|---|---|
| Raw handwheel increment | One stable sign for the selected handwheel direction | PLC monitor at the shared A/B decoder output |
| Axis handwheel contribution | Same sign for the two correct axes; inverted sign for the mismatched axis | PLC logic immediately before each axis command branch |
HSPS0 direction |
Remain unchanged after the correction | Commanded motion and PLC motion status |
DR4088 trend |
Increase during the machine's defined positive motion | Online register monitor |
| Physical travel | Match the selected positive direction | Machine reference mark or measured axis movement |
If the PLC program exposes only a cumulative handwheel count, calculate the scan-to-scan increment first, then invert the increment assigned to the third axis. Negating an accumulated absolute count after motion has begun can command a discontinuous target because both its sign and accumulated magnitude change at once.
Per-Axis Sign Correction
- Place the mechanism in a safe test condition and select a low manual-motion rate. Mark the machine direction that must be positive.
- Monitor the shared handwheel value, the third servo's manual command, the
HSPS0command, andDR4088. Record whether each value rises or falls for the chosen handwheel direction. - Locate the program branch that maps the shared handwheel increment to the third servo. Make the correction after the shared
A/Bdecoding so the other servos retain their present direction. - Multiply only that branch's incoming handwheel increment by
-1. An equivalent implementation may invert the direction selection for that branch, but the inversion must occur exactly once. - Feed the corrected increment through the existing scaling, travel limiting, enable, and interlock logic. Preserve the magnitude; only the sign changes.
- Leave function
140, the absoluteHSPS0command, and the two correct servo branches unchanged. - Test one handwheel increment in each direction before permitting continuous movement.
Third-axis handwheel contribution = Shared handwheel increment × (-1)
Third-axis manual target = Existing manual target + Third-axis handwheel contribution
If the application selects one servo at a time, place the multiplier inside the selected-axis branch. If several axes can follow the handwheel simultaneously, give each axis its own direction multiplier so a shared source never dictates machine-positive direction for every mechanism.
Direction and Position Verification
- Turn the handwheel in the designated positive direction. Confirm that the third servo now moves positive and that the two previously correct servos have not changed behavior.
- Turn the handwheel negative. Confirm equal reversal without a jump when motion starts.
- Issue the existing absolute command through
HSPS0. Its direction must match its behavior before the edit. - Watch
DR4088during positive physical travel. It must increase as required; during negative travel, it must decrease. - Stop and restart manual mode, then repeat both directions. This catches retained accumulators or a sign applied only during initialization.
- Test near both permitted travel ends at low speed. Existing software limits must still block travel in the correct physical direction.
The edit passes only when three signs agree: the operator's positive handwheel direction, positive physical travel, and an increasing DR4088 value. A correct motor direction with a decreasing position value is still a coordinate-system fault.
Recurring Integration Pitfalls
The most common mistake is applying -1 to the shared handwheel value. That silently reverses every consumer. Decode the handwheel once, then perform axis-specific sign mapping downstream.
A second inversion can hide elsewhere in scaling logic, a direction selector, or a drive direction setting. Two inversions cancel for one command path and remain active in another, producing exactly the kind of source-dependent behavior seen here. Trace the sign from input to command and label each inversion.
Position, command, and physical direction also need one coordinate convention. Correcting only visible shaft rotation can leave homing, limits, stored positions, or displayed values reversed. Use the required positive trend of DR4088 as one verification point, not merely the appearance of rotation.
Finally, test handwheel and absolute modes separately. A change that repairs manual motion but alters HSPS0 has been placed in common logic and should be moved into the manual branch.
FAQ
How do I reverse only one servo from a shared handwheel?
Multiply the handwheel increment sent to that servo by -1 after the shared A/B value has been decoded. Leave the shared input and the other servo branches unchanged.
How do I keep HSPS0 direction unchanged?
Place the sign inversion only in the third axis's handwheel branch. Verify the absolute HSPS0 motion before and after the edit; its physical direction must not change.
How do I verify DR4088 direction after the change?
Jog the mechanism slowly in the defined positive direction and monitor DR4088. The value must increase for positive travel and decrease for negative travel.
When should I stop testing and contact official support?
Stop if the axis jumps, runs away, violates a travel limit, or if physical direction and DR4088 cannot be made consistent without changing the working HSPS0 path. Record the monitored signs at the handwheel input, axis command, and DR4088, then contact the PLC or servo manufacturer's official support channel with the program section and drive configuration. Keep power removed if continued testing could cause injury or mechanical damage.