In my latest code, I limit the current when the motor goes out of range. Also when the current exceed the set limit, it tapers it back and holds it at that value.
Wow! That's awesome! My power supply is 83 volts DC using one of the original transformers to step down and run through a beer can size cap and rectifier.
My pid settings on the other drives were as listed earlier. This y-drive was set at p450, i1, d400 as the only way I could get it to work without skipping. It seemed like it was working fine at that point, but then I noticed that it would overtravel when commanded back to zero. My settings were a lot higher when it fried the fuse, something like p900, i0, and d1500. The motor was mechanically disconnected (drive belt removed) and it went into a violent pulsing oscillation before shutting down. Again I suspected that it might be one of the dinosaur motors, but after swapping to another drive with good results I am ruling out the motor as a culprit.
Anyway, thanks for helping me out! I look forward to getting this project running well.
In my latest code, I limit the current when the motor goes out of range. Also when the current exceed the set limit, it tapers it back and holds it at that value.
I got the parts and installed them last night. First indication that things were better is that I set the drive parameters same for all motors and got similar performance from each axis. Thanks again for the great product support; I'll ship the old parts back right away.
I still need a little work on my drive settings. I wound up with p600, i1, d1000, and l4. In my cnc software I set a start speed of 5hz, acceleration of 2500 hz and max speed of 2500 hz. This gives me 100ipm rapids, but when running a program it still seems like the axes come to a slamming halt when changing direction. One thing I think I can safely do is to reduce the pulse multiplier setting and go to a higher speed in the software. This will give me a little bit better resolution. I think I am also going to run my error graphing program again to see what the graphs look like with motors in the mill rather than on the bench.
As a follow up I had a chance over the past 3 days to cut some brackets out of 1/4" fiberglass sheet. In my last post I said that the settings did not seem right. Turns out it was the cnc controller software settings and not the drive settings. The backlash compensation made the machine seem too "rough". Removing this and the machine has been smoothe and reliable, albeit with .003" worth of backlash that I now have to figure out how to remove.
Where is the backlash, I'm sure there is some way you can reduce it.
Matt
The backlash is in the y-axis primarily (.004 to .005), and there is a little (.001 to .002) in the x-axis. When I got the machine the y-axis was frozen. I am going to work on the y-axis gibs, and then if the backlash is still unnacceptable I'm going to take the ballscrew assembly to a place near my house that was recommended in another post for evaluation and repair.
The tolerance is fine right now for my machining needs, but I have built this mill for ultimate resale and don't want it to leave my shop until commercially acceptable.
Make sure that is it not the support bearings that have play.
Dennis
Disclaimer: So far I have little hands on experience setting PID values.
BUT... from what I've read, I think I see some misconceptions that could bite someone if they didn't know better, so I'm throwing them out for confirmation/correction and instruction.
When setting up PID values you need to have the servo motors on the machine they will be used with. Anything attached to the servo motor changes the dynamics of the system, and makes different PID values necessary. If you set the PID values while the motor is clamped to the bench, and then try to use it on the machine with extra friction and inertia, I suspect it will perform sluggishly. If you've set it up on the machine, and then for testing purposes pull it out, clamp it to the bench, and run it; I suspect that you will likely damage something, and at least blow a fuse.
The trick of using a 10 ohm power resistor in series is good for checking the wiring polarity, but then to set the PID it needs to go. If you initially wired the motor with 18 guage wire, and then switched to 12 guage, while it will probably work, due to the change in wire resistance, a motor that draws 10 AMPs might change it's response slightly.