Hello,

About a month ago, I managed to get a hand-me-down Hurco VM1 from our production machine shop (I run a very small R&D shop). It hasn't worked in some time, and sat abandoned for over a year. It has the Ultimax dual screen control (The second screen seems to go in and out whenever it feels like). It has yaskawa SGDH-10AE servo drives on all 3 axis. I have access to 3 old hurco hawks, one of which I was using before getting this machine, one of which is retired but at least booted up and moved the table (but is missing it's spindle), and a third which is mostly, but not completely stripped for parts. When first powering the machine it reported a spindle error and failure to communicate with the pendant. Replaced the pendant cable, and the CANbus board from one of the Hawks, the machine booted up, and mostly started working. Occasionally, the Z axis would jump when it should be standing still. Looking at the servo motor, it would slowly turn 45 degrees, before quickly returning back to its position. This would happen 3-5 times in a row after startup then sort of stop. I managed to make some parts, and spent some time troubleshooting and repairing the tool changer (which is now working).
Occasionally when calibrating the machine, I would get a following error on Z axis. This could be cleared by resetting servos and calibrating again. Rarely the following error would instead jump to the X or Y axis. It would happen right after the calibration would find the limit switch, and would move foreword to locate the encoder zero. Sometimes the error would report as phase loss on encoder rather than following error. For a little while the error would happen only once in a while, and only during calibration. Otherwise I could use the machine. Then one day the error started occurring all the time, and the machine was no longer usable. Again, usually following error, almost always on Z, but sometimes on X or Y. I swapped the DSP board from one of the hawks, and reprogrammed it with VM1 settings. Error persisted, but would occasionally clear. I checked all the connectors, cables, cleaned whatever wires I could get to. Checked the connectors on the Z encoder cable. Checked continuity, checked again while flexing the cable. Checked Z limit switch for functionality. Bought a replacement servo motor and encoder on E bay and replaced it. As far as I could tell there are no glass scales on this machine. I checked that mechanically the axis seems fine, no loose pulleys, nothing wrong with gibs, switches, or anything else that I could find. After replacing the motor and encoder the machine would sometimes go thru calibration, other times it would not, 50/50. When it did go thru, it seems to work mostly fine, except for when there is a fast move on Z followed by a precise stop (Such as moving up from a low hight to toolchange position, or during a pecking cycle). The new servo also hums more, like the tuning isn't quiet right. However, it doesn't do the shuttering jump of turning 45 degree slowly and quickly returning. There is a minor jump/judder from one of the driver when machine is stopped and I switch from manual to auxilary mode (as there was before), which I assume is sort of normal.
I reduced the z axis max speed from 19k to about 12k, which allowed me to change tools. I can drill without error if I turn the rapid switch to a low setting, around 20%. However, at certain low speeds the Z axis makes a horrible noise, which I believe is the servo vibrating/oscillating. I can replicate it by jogging the axis, but only at a certain (not particularly fast) speed. Above and below that speed everything is well.
The PID settings in the controller (that were in the machine as I received it) aren't what I believe the factor settings were. Gain is 4500 (as opposed to 2500) D is 100 as opposed to 250. I tried what I think are factory settings, but those are more likely to result in a following error. I have some experience with PID tuning (heaters, custom systems, etc), but no experience with servo PID tuning. I'm not sure what the feed forward parameter means, and I can't find any sort of an auto tune function. In the tuning screen (under the super secret code 100) there are buttons that command the axis to move up and down. I tried on, which sent the head moving rather quickly, and continued moving when I wasn't pressing. I had no idea if it would stop, so E stop it is.
I found lots of help with many of these issues on this site, from people dealing with similar problems. I know the reasonable move would be to buy a machine in a better shape, but this isn't available to me. It's this, or the hawk, and I'm making tiny mold cavities with 1mm tools. 3700rpm spindle and worn leadscrews that can't quiet make a circle that are on the hawk aren't great for that.
I'm running out of ideas as to what's going on here. The problem jumps from one axis to another, although tends to favor Z. This suggests a DSP board or wiring, although I swapped the boards around between machines. I haven't tried changing out the drives (yet). I'm wondering if a wrong set of tuning parameters is causing the drive to try to hard when it's time to stop the servo from speed, which causes some EMI, which then registers as an error on a different axis. I don't see any kind of emi filter in the electrical cabinet. Maybe hurco didn't feel it needed one? It's also strange to have the same drive on Z as there are on XY, as the Z drive is typically larger. Someone clearly worked on this machine before, I don't know the who, the why and the how. They did things, and some of those things don't inspire confidence.
Does anyone have a tuning procedure for the servo? Some help and advice in how to tune it?
Thanks in advance