DIY Voice Coil Winding Machine

That's a really nice execution of your winder ghemml!
I am wondering if it is possible these days to order from some mechanical shop in China or elsewhere where they machine parts for just one kit at an affordable DIY cost similar to the PCB manufacturers do these days?? How did you get your parts done and could you mentioning something about the cost for the machined parts?

Cheers Michael
 
My apologies.

I have to keep the source code closed for the moment because my previous CNC Winder source code was abused by someone, using them on their designs and sell them online.

My work which is not just limited to designing CNC winding machine and programming, main bulk of my work is designing and fabricating Fullrange speakers(My main product line) and field coil motor, and even my photos were abused on facebook, alibaba and some other China loudspeaker manufacturer, used without giving credits. This prompted me to reduce sharing my of work online, even in diyaudio.

To help everyone, I still in the process of reducing the amount of work needed for building your own CNC Winding machine. One way is to make it into a complete kit set or DIY Plans. At the same time I am working with a vendor in Germany to work on a another easy approached building a CNC winder using 3D Printer, which hopefully to reduce cost.

But if you still want this particular CNC winding machine, you can drop me a message on my facebook page(Link in my signature). The machining of all the parts will cost around USD$1570 excluding shipping. I do not earn any money or profit out of this fabrication and I can provide the actual quotation from my machine vendors.

GML
Gamut Magnetic Laboratories - GML Loudspeakers - Home | Facebook

Some of my other works
Custom DIY 8" Fullrange Driver
Custom DIY 6.5" Fullrange Driver

Or you can find me here as well
Lowther Modification Support Group
 
Last edited:
Hi to those interested in this build.

I haven't got time to update the arduino, but this current version still work fine.

you can download them from my google drive

Part List:
Parts List.xlsx - Google Drive

Arduino Binary:
Winder_Shield_V0.3.1.2.ino.arduino_due_x.bin - Google Drive

Winding Machine GUI(Windows Application):
Winding Machine GUI.zip - Google Drive

AutoCAD Files:
CAD Files.zip - Google Drive

You can modify the AutoCAD files or come out with your own design. The only thing that this project needs to follow closely to is the Arduino Due wiring and the using the suitable Hybrid Stepper Motor.

Arduino Due pin assignment:

Stepper Motor(Step)(Dir) - Stepper(Hybrid) Motors winding
Winder pins: 3, 4
Feeder pins: 7, 8

SD Card CS Pin - Simple text based memory card to store the settings for the stepper motor's microstepping
Pin: 53

Enable SW for Stepper Motor - Enabling/Disabling the winder and Feeder Motor
Winder pin: 2
Feeder pin: 6

Limit switch - Feeder's limit Switch
Left pin: 5
Right pin: 9

E-Stop Switch - Emergency Stop Button
E_Stop pin: 13

Analog Control Buttons - Winder/Feeder manual control
Push on button
Left pin: A0 - Control feeder movement to the left or Winder rotate clockwise
Right pin: A1 - Control feeder movement to the right or Winder rotate counter- clockwise
Push on/off button
Winder pin: A2 - This is to signal to the arduino to disable the Winder on pin 2
Feeder pin: A3 - This is to signal to the arduino to disable the Winder on pin 6
Speed Pot pin: A5 - This is a potentiometer for controlling the speed for the feeder and winder. Arduino - Potentiometer

Toggle Switch Contol - This is to toggle the manual controls between the Winder and the Feeder
Winder pin: 11
Feeder pin: 12


Some parts are missing from the list, like push buttons and E-Stop buttons. Etc.

Please let me know what are the parts that are still missing and I will update again.
 
Last edited:
@jpk73

it is a clone of the 200mm CNC coil winder.

But I had stop developing this project due to lack of free time.

The Windows GUI and Arudino communication via USB Serial com port still has it limitation. As the arudino works in continuous cycle, it tends to miss out capturing text messages send to the GUI via com port even though I tweaked the com port bandwidth.

But still the winder does its job and since I have no more time for them so I decided to release both the source code for the Visual Basic(GUI) and the Arduino code as well.

Arduino CNC Winding Machine

*So anyone join the facebook group i created will able to see the download link for the source code, along with the visio diagram on the connectivity
 
The Windows GUI and Arudino communication via USB Serial com port still has it limitation. As the arudino works in continuous cycle, it tends to miss out capturing text messages send to the GUI via com port even though I tweaked the com port bandwidth.

I agree running this kind of tasks on ARM is way more comfortable, especially with my limited programming skills - but I have seen solutions running on lesser Arduinos with great speed and reliability.

On my winder I also run a front end, just not on windows but on a second micro controller (a Teensy3.5). This front end handles all the calculations, knobs, display etc., and sends serial comands to the mcu (a Teensy3.6) which generates the step pulses. I never miss serial messages as everything on the low level mcu runs non blocking. I use SerialCommand for transmitting the messages, but there are many good alternatives, see also Nick Gammons non blocking serial library.

Generating the step pulses non blocking can be done with TeensyStep: this library works completely in the background and is very handy for winding tasks. But the Teensies are fast enough to do this also by polling. On the Due I used PWM to generate the pulses in the background, see this thread.

As mentioned PTHAT is a module which can do everything for you, no need to program anything, just hook it up to your GUI and send serial messages. I tried it, it works well. See here for how it works. I still have one pthat module left over, you can PM me if you want it. But you can do the same without that module by just using DDS modules to generate the pulses, I made this library for that and had the GUI running on a DUE.

It should be fairly easy to update just the firmware on your mcu to never miss a serial message again. If you like you can send me your source files (as I have no access to facebook) and I can have a look into it and see if I can help.
 
For my stepper I used AccelStepper which is not much difference from TeensyStep, just that acceleration and deceleration requires more compute resource.

It is really down to how good the stepper motor controller is. Hence I preferred using Hybrid Stepper Motor with encoder for better accuracy.

Currently for my code, I preferred using Due. As Mega having issues to keep up due to lower clock speed and require tweaking the digital pin out to max speed.

But Due requires logic leveler