OK, so its been a while since I did an update. I feel like I have achieved nothing but have been spending almost all of my (small amount of) spare time on this project. I have had an absolute battle with trying to find a suitable spindle motor drive and get working servo drives. I have also had a fight to try to get everything to fit on my limited space control panel. I have however got most of my PLC code sorted while I have been waiting for parts and tested all my IO and wiring. I will post some pictures of the control panel once it is tidied up.
So, what I have done that is relevant to this machine build is determine some of the characteristics of the spindle servo motor. This motor has no data available. The OEM controller had data in it for the axis motors but zeros for the spindle motor. After testing the motor on several VFDs and doing a ton of research on motors and drivers, it became apparent that this motor has some unique driving requirements. It is only 1.5kW rated but has a huge OEM driver capable of 75A. As it turns out the motor is very low impedance and capable of pulling a heap of current (~60A) during hard acceleration. It can do a speed reversal from -6000 to +6000 RPM in around half a second on the OEM controller. The VFDs were not able to come close to that sort of acceleration due to current limits, even one ABB 5kW rated drive. I have just received a Hitachi SJ-P1 so will see how that goes, but to be honest I am not holding my breath.
You will probably be thinking who needs acceleration that fast. Well, not me, but I have taken it upon myself to try make a new control achieve what they did 25 years ago. But, even I could accept a slower acceleration!
Anyways, motor characterization. The first and easiest thing to determine is the winding resistance R. As it is in the low ohms range, a multimeter is not going to be able to measure it. Passing a known current through the winding and measuring the voltage drop is a better method. This yielded a resistance per phase (including cable resistance) of 0.1242 Ohms. Approx 0.1 ohms if you take out the cable resistance, but the drive sees the cable resistance.
Next is to measure the back EMF Ke. This is done by measuring the motor windings with an oscilloscope while rotating the motor. I drove the motor at 2500 RPM. After the maths and conversion to appropriate units, this motor has 40mV/RPM (RMS line to line) or 39.265 mVs/rad (peak phase, electrical angle).
The final important parameter is the winding inductance L. This can be measured by two methods. I tried both and got similar results. One method is to drive a sine wave into the windings and find the frequency that the motor impedance matches the driver impedance. At this frequency the measured sine wave will be 50% of the unloaded driving signals amplitude. The other method is to inject a square wave and measure the time constant of the current rise. These gave me an inductance of 0.7uH and 0.5uH. A bit of variance, but much closer than guessing at it!
Anyone who knows their motors will know that there are usually two inductance values required. Ld and Lq. On motors with internal magnet rotors, these values are quite different. On surface magnet motors they should be identical. They are the inductances measured at the pole and 90 deg from the pole. You can determine the type of motor by confirming that the measured inductance does not change while the motor is rotated. In my case it stayed constant so is a SMM motor.
Finally you need to do a bit of maths to convert the results. Then type the numbers into the drive. Any self respecting drive should have these parameters required for a permanent magnet motor. Although some claim to be able to self measure them.
This weekends mission if I can find time will be to try run the motor on a new Hitach SJ-P1 drive with encoder interface and see how it goes. If I can get this spindle to work I have probably overcome my biggest hurdle. Fingers crossed.