0 10V Output Module - bdring/6-Pack_CNC_Controller GitHub Wiki
This can be used with spindle controllers that require a 0-10V analog voltage for speed control. It also has (2) opto isolated digital outputs that can be used for signals like direction. It has a potentiometer to adjust the output voltage, so it can be used with 3.3V and 5V signals. With a 3.3V signal the full speed output can be adjusted with the potentiometer from 4.75V to 11V. It has (3) LEDs to indicate the status of the outputs. The brightness of the LED on the spindle output pin will be proportional to the 0-10V output. It has a pluggable terminal block that can be installed horizontally or vertically.
Note: Ignore if "Use spindle type PWM" is written on back of module.
Huanyang VFD Instructions.
Set the following parameters
| Parameter | Value | Description |
|---|---|---|
| PD001 | 1 | Source of on/off is external (optos) |
| PD002 | 1 | Source of freq is external (0-10v) |
| PD005 | 400 | Max frequency Hz (24000 RPM/ (60sec/min) = 400) |
| PD011 | 120 | Min Frequency (going too slow could overheat motor) |
| PD014 | 10 | Acceleration in secs (test to optimize) |
| PD015 | 10 | Deceleration in secs (test to optimize) |
| PD023 | 1 | Reverse enabled (optional) |
| PD142 | 3.7 | Max current (0.8kw=3.7, 1.5kw=7.0, 2.2kw=??) |
| PD070 | 0 | External speed control is 0-10V |
FlidNC Config Examples
In socket #3
10V:
output_pin: gpio.26
forward_pin: gpio.4
reverse_pin: gpio.16
spinup_ms: 0
spindown_ms: 0
tool_num: 0
speed_map: 0=0% 6000=0% 24000=100%
In socket #4
10V:
output_pin: gpio.14
forward_pin: gpio.13
reverse_pin: gpio.15
spinup_ms: 0
spindown_ms: 0
tool_num: 0
speed_map: 0=0% 6000=0% 24000=100%
Grbl_ESP32 Machine definitions
*Note: This module uses the VMot voltage. VMot should not exceed 32V is you install this module.
This module should be used in sockets $3 and #4 only, do to the pin properties of the other sockets.
// when used in socket #3
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/0-10V-Output-Module
#define SPINDLE_TYPE SpindleType::_10V// default, check actual $Spindle/Type Setting
#define SPINDLE_OUTPUT_PIN GPIO_NUM_26
#define SPINDLE_FORWARD_PIN GPIO_NUM_4
#define SPINDLE_REVERSE_PIN GPIO_NUM_16
// when used in socket #4
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/0-10V-Output-Module
#define SPINDLE_TYPE SpindleType::_10V// default, check actual $Spindle/Type Setting
#define SPINDLE_OUTPUT_PIN GPIO_NUM_14
#define SPINDLE_FORWARD_PIN GPIO_NUM_13
#define SPINDLE_REVERSE_PIN GPIO_NUM_15
Setup
Make sure the following settings are correct
- $Spindle/Type=10V
- $GCode/MaxS=24000 (your max RPM)
The output voltage has to be tuned to 10V. Connect USB and the primary voltage (12V-24V). Connect a voltage meter to the ground and 10V terminals. With Grbl in Idle, send M3 S24000 (assuming 24000 is your max speed). Adjust the potentiometer until meter reads 10V.
Wiring
| CNC I/O Module | VFD | Description |
|---|---|---|
| Grn | ACM | Analog Common |
| 0-10V | VI | signal voltage input |
| Com | DCM | Digital common |
| Out1 | FOR | Forward Direction Signal |
| Out2 | REV | Reverse Direction Signal (Optional) |
If there is a jumper, make sure it is on the VI side. VR is for a potentiometer that is often on the control panel.
Testing
Make sure the rotation of the spindle is correct. It is is not, see your manual on how to fix it.