Greetings,
I finished connecting my Huanyang VFD 2,2kw 110v Water Cooled Spindle to my D3MB6HCv1 mainboard. Wanted to post this info for others that wanted to do the same.
Searched this forum and started with this post by Catalin_RO 26 Jun 2018, 13:54 - https://forum.duet3d.com/topic/4762/vfd-spindle-drive-0-10v-output/6
I bought the module on Amazon (currently unavailable, but there are other similar modules available, make sure it is a 0-10V) KNACRO PWM to 0-10V Conversion Module Digital to Analog Module PLC Industrial Interface Conversion Module.
Wired the module using information from an Openbuilds post here - https://openbuilds.com/threads/workbee-cnc-w-duet2-and-chinese-spindle-control.14004/
The module needs external power and will operate at 5v and 24v. There is a white jumper on the side that can be changed for the voltage you have available. The black and red wires in the image below are from the 24v power supply that powers the mainboard.
The orange and yellow wires are connected to the mainboard on the - 2-pin JST VH or compatible connectors OUT_1 thru OUT_3 pins normally used for extruders, heaters, and fans. I used the "OUT_1" connection. With this 2 pin connection, OUT_1 pin connects to the yellow wire and the V_FUSED connects to the orange wire.
I found this image on the Openbuilds site. I do not know if it is accurate. I could not find a schematic of the module and this image was helpful.
The grey and pink wires from the module connect to the VFD control circuit terminals at the ACM (grey) and the VI (pink) terminals. The red wire is a jumper to keep the VFD in an 'always on' state using DCM and FOR terminals, (WARNING: I do not know if this will cause some unforeseeable problem with the VFD, use at your own risk) otherwise you will need to use another module (two total) and use another pin on the mainboard to turn the spindle on when the M3 is issued. See M453 for more info: https://duet3d.dozuki.com/Wiki/Gcode#Section_M453_in_RepRapFirmware_3_0_and_3_1_x
Next, you will need to program the VFD on the main panel. The following information was taken from: https://openbuilds.com/threads/workbee-cnc-w-duet2-and-chinese-spindle-control.14004/
-
PD001 from 0 to 1 to change spindle on/off from "operator" control to "external" control.
-
PD002 was already set to 1, which is "external" control, but until you switch the jumper, the "external" is the potentiometer on the control panel. Once you move the jumper to the left, it will use the pins.
-
PD070 from 1 to 0 to change the input voltage it's looking for from 0-5v to 0-10v. Before I changed this, the spindle speed was double what I was sending. i.e. I'd send M3 S12000 and the spindle would go to 24000RPM.
The module is velcro'd to the inside of the hatch and out of the way when it's buttoned up.
The config.g needs to be reconfigured to use the "OUT_1" pin on the mainboard.
; Configuration file for Duet 3 (firmware version 3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.1.4 on Wed Jul 29 2020 15:25:39 GMT-0700 (Pacific Daylight Time)
; General preferences
M453 ; CNC Mode
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"Duet 3" ; set printer name
; Drives
M569 P0.2 S0 ; X 0.2 physical drive goes backwards
M569 P0.0 S0 ; Y-R 0.0 physical drive goes backwards
M569 P0.1 S0 ; Y-L 0.1 physical drive goes backwards
M569 P0.3 S1 ; Z 0.3 physical drive goes forwards
M584 X0.2 Y0.0:0.1 Z0.3 E0.4:0.5:0.6 ; set drive mapping
M350 X16 Y16 Z16 U16 I1 ; configure microstepping with interpolation U=dummy Y axis
M92 X400.00 Y400.00 Z400.00 ; set steps per mm
M566 X900.00 Y900.00 Z12.00 ; set maximum instantaneous speed changes (mm/min)
M203 X2000.00 Y2000.00 Z1000.00 ; set maximum speeds (mm/min)
M201 X500.00 Y500.00 Z20.00 ; set accelerations (mm/s^2)
M906 X3000 Y2500 Z3000 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout
; Axis Limits
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X500 Y375 Z60 S0 ; set axis maxima
; Endstops
M574 X2 S1 P"!^io0.in" ; configure active-high endstop for high end on X via pin !^io0.in
M574 Y1 S1 P"!^io1.in" ; configure active-high endstop for low end on Y via pin !^io1.in
M574 Z2 S1 P"!^io2.in" ; configure active-high endstop for high end on Z via pin !^io2.in
; Z-Probe
M558 P5 c"!^io7.in" H5 F120 R1 T300 ; Z probe switch type, probe recovery 1s probe speed and travel speed
M557 X15:215 Y15:195 S20 ; define mesh grid
; Fans
M950 F0 C"out7" Q500 ; create fan 0 on pin out7 and set its frequency
M106 P0 S1 H-1 ; set fan 0 value. Thermostatic control is turned off
M950 F1 C"out8" Q500 ; create fan 1 on pin out8 and set its frequency
M106 P1 S1 H-1 ; set fan 1 value. Thermostatic control is turned off
; Tools
M563 S"XYZ-Probe" P1 ; define XYZ Touch Probe tool 1
M563 P0 S"Spindle" ; define tool 0
G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
G10 P0 R0 S0 ; set initial tool 0 active and standby temp to 0C
; Custom settings are not defined
M564 S1 H1 ; disable jog commands when not homed
M501 ; load stored parameters
; CNC
M453 S0 C"out1" R24000 Q100 T0 ; set to CNC mode using tool 0 pin=1 max RPM 24000 PWM frequency 100hz
Lines 47-49 and line 57 need to be added. I'm not sure if lines 48 and 49 are needed concerning the G10 parameters for the M563 that defines the spindle as tool 0.
M563 P0 S"Spindle" defines the spindel as tool 0.
M453 S0 C"out1" R24000 Q100 T0 sets up the tool and needs to come after the M563 that defines the spindel. T0 is optional and aids the DWC in monitoring the tool.
To test the setup, enter M3 S500 on the DWC console to turn the spindle @ 500 RPM and all should be well. Enter M5 to turn it off.
If anyone needs help, post a reply and I'll try to help out. Otherwise, somone with more experience from Duet3D will come to your aid.