Overview
The Heiz Zero3 controller ships configured for a Mechatron spindle drive. Retrofitting a Huanyang VFD (the common 1.5 kW water-cooled spindle package, 65 mm body) works, but the controller documentation describes the 25-pin 0-10V port only loosely, and the Huanyang control terminal block splits its returns into two electrically separate commons:
-
ACM- analog common, return for theVI0-10 V speed reference -
DCM- digital common, return for theFOR/REVrun inputs
Bench measurement on the drive in question showed no continuity between ACM and DCM. They are separate nets inside the VFD, and the Zero3 side has its own reference. Tying them together to "simplify" the wiring is what creates the ground loop that drives spindle speed jitter, nuisance run commands, and in the worst case injects drive-side switching noise into the parallel-port logic.
VI/ACM. Never bridge ACM to DCM, and never use the controller chassis or PE as the analog return.Heiz Zero3 Port Assignment
The Zero3 exposes two interfaces relevant here. Confirm both against your own unit with a meter before wiring - port pinouts vary between controller revisions and the extra output found under LPT2 on some units is not documented consistently.
| Port | Function | Notes |
|---|---|---|
LPT1 |
Step/direction for the axes | Drive from a PCI parallel card; keep this port on the deterministic hardware |
LPT2 |
Secondary I/O, spindle and auxiliary control | Motherboard printer port is adequate; standard LPT ribbon/DB25 cable works |
0-10V (25-pin) |
Spindle analog reference plus switching outputs | Supplies both the variable voltage and the spindle enable switching |
Measured behaviour on the 0-10V port in this installation:
| Pin | Measured / observed | Use |
|---|---|---|
| 1 | Switching output, pulls to ground when spindle is commanded on | Low-side switch for a relay coil |
| 14 | Constant 3.25 V | Coil supply for the relay switched by pin 1 |
| 18 | Positive 0-10 V analog output | To VFD VI
|
| 19 | Second analog-related pin (function unverified) | Do not use until confirmed with a meter |
| 25 | Analog return / ground | To VFD ACM
|
Isolated Run Command (FOR / DCM)
The forward-run input on the Huanyang is a dry-contact input: it runs when FOR is connected to DCM. That means any isolated contact will do, and isolation is exactly what you want between two chassis that share no common reference.
- Connect Zero3
0-10Vpin 14 (3.25 V) to one side of the relay coil. - Connect Zero3
0-10Vpin 1 to the other side of the coil. The controller sinks this pin to ground to energise the relay. - Fit a flyback diode across the coil (cathode to the +3.25 V side) if the relay is not internally suppressed. Reed relays have inductive coils like any other.
- Wire the relay's normally-open contact between VFD
FORandDCM. Nothing else connects to these two terminals. - Route the FOR/DCM pair as a twisted pair, physically separated from the motor cable and from the 0-10 V pair.
An equally valid variant when the controller's logic output is too weak: use the Zero3's switched 240 V spindle outlet to energise the coil of a mains-rated relay, and switch FOR-DCM with its dry contact. This gives full isolation and a strong, unambiguous drive, at the cost of relay chatter risk if the outlet is soft-switched.
Analog Speed Reference (VI / ACM)
Run the analog reference as its own two-conductor shielded pair - pin 18 to VI, pin 25 to ACM. Do not fold this return into any other ground, and do not connect ACM to the machine frame.
- Confirm polarity at the VFD terminal block before energising. On the Huanyang control block,
VIis the reference input andACMis its return. Verify against the terminal legend on your drive rather than a downloaded diagram - the control-block silkscreen is authoritative. - Confirm the drive is set for an external analog frequency source and for external terminal run control, not keypad control. On the Huanyang keypad the source-selection parameters are in the run/frequency-source group; consult the parameter list for the exact codes on your firmware.
- Set the drive's maximum and upper-limit frequency to match the spindle nameplate before the first run. A 400 Hz spindle commanded to the drive's default ceiling is a bearing failure waiting to happen.
- Shield: bond the cable screen at the controller end only. Bonding both ends creates the loop you spent the whole design avoiding.
An earlier idea considered in this build - using pins 18 and 19 straight to VI and ACM - is only safe if pin 19 is a true isolated analog return. If pin 19 shares the controller's digital 0 V, you have re-created the loop through the DB25 shell. Meter it: with everything de-energised and the DB25 unplugged, check continuity from pin 19 to the controller chassis and to the LPT2 ground pins. Any continuity disqualifies it as a floating analog return.
Verification Sequence
Do this with the spindle mechanically uncoupled or the collet empty, and with the drive output disconnected if you want a fully cold check first.
| Step | Measurement | Pass criterion |
|---|---|---|
| 1. Common isolation | Ohmmeter, VFD powered off: ACM to DCM
|
Open circuit (no continuity) |
| 2. Cross-unit isolation | Ohmmeter: Zero3 analog return (pin 25) to VFD DCM, and to VFD PE |
Open circuit |
| 3. Relay pull-in | Command spindle on; ohmmeter across relay contacts | Contacts close reliably; no chatter over 10+ on/off cycles |
| 4. Analog span at controller | DVM pin 18 to pin 25, command 0%, 50%, 100% speed | Approximately 0 V, mid-scale, and near 10 V; monotonic |
| 5. Analog span at VFD | DVM VI to ACM, same commands |
Same values as step 4 within a few tens of mV - a large drop means a wiring or loading fault |
| 6. Frequency tracking | VFD display in Hz, sweep 0-100% | Display tracks smoothly to the configured max frequency; no dropouts |
| 7. Noise check | DVM on VI-ACM while jogging all axes with spindle running |
Reference stable; no wandering RPM |
If step 4 gives a full 0-10 V swing but step 5 reads low, the drive's analog input is loading a weak controller output - buffer it, or use the drive's own analog supply through a 10 k potentiometer as a sanity reference to prove the input works. If frequency drifts only while the spindle runs, the fault is coupling from the motor cable, not the controller: re-route, use a shielded motor cable, and bond the screen at the drive.
Practical Build Notes
- Mounting: a 65 mm spindle body needs a fabricated mount to attach to the Heiz gantry. The stock Kress mount will not carry it.
- Keypad extension: a longer ribbon cable lets the VFD panel live on an operator console away from the drive enclosure. Keep that ribbon out of the motor-cable run.
-
Manual override: a switch that selects between the controller's 0-10 V output and a 10 k potentiometer across the VFD's own analog supply gives a useful fallback for setup and tool trials. The potentiometer must reference
ACM, and its supply must come from the drive - not from the controller. - Cooling: water-cooled spindles need proven flow before the first cut. A pump plus a radiator matrix and fan bank under a temperature controller is adequate for hobby duty; interlock the spindle enable to a flow or temperature signal if you can, so a dead pump cannot leave the spindle running.
- Retrofit staging: keep the original spindle wired and usable until the VFD chain passes every verification step above. There is no value in taking the machine out of service for a control-wiring experiment.
FAQ
Can I connect ACM and DCM together on a Huanyang VFD?
No. They are separate nets inside the drive - confirm with an ohmmeter that they read open. Bridging them ties the analog reference return to the digital input return and creates a ground loop between the CNC controller and the drive, causing unstable spindle speed.
Which Heiz Zero3 0-10V port pins drive the spindle?
In this installation pin 18 is the positive 0-10 V analog output and pin 25 is its return, going to VFD VI and ACM. Pin 14 supplies a constant 3.25 V and pin 1 switches to ground, forming a low-side switched pair for a relay coil. Verify these on your own controller revision with a meter.
How do I start the spindle without joining grounds?
Use an isolated dry contact - a reed relay, optocoupler, or small SSR - wired between VFD FOR and DCM. The coil is driven from the controller side; only the isolated contact touches the drive's digital input.
Is 3.25 V enough to operate a 5 V relay coil?
It is below the coil's rated pull-in and outside the specified range. It worked with a small reed relay in this build, but verify pull-in and drop-out at your lowest supply voltage, or fit a 3.3 V-compatible reed relay or an optocoupler instead.
Spindle RPM wanders while the machine is cutting - where do I look?
Measure VI to ACM with a DVM while jogging. If the reference is stable but frequency wanders, check drive parameters; if the reference itself moves, it is coupling from the motor cable - re-route the analog pair away from it, use shielded twisted pair, and bond the screen at one end only.