Some success with a servo drive/tachometer mode



I think that Jon's PPMC has some kind of a watchdog.
i
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Fri, 9 Jul 2010 12:00:04 -0500, "Karl Townsend"

A cultural note: that's a Minnesota rocket, by golly.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
On Fri, 09 Jul 2010 11:46:37 -0500, Ignoramus30064

When the amp is set to velocity mode, the setting when you're using a tach, it acts as a voltage to voltage amplifier. In torque mode, which as Karl said is what the vast majority of motion control apps use, the amp's output *current* is proportional to the command voltage. If the controller sees, via the encoder feedback, that the motor is moving too slowly it increases the command signal, the amp increases current, motor torque goes up, and speed increases. Repeat until the controller is satisfied.
I've designed and built 15 or 20 different systems with perhaps 50 servo axes over the last 20 years, and I can think of only one instance that used tach feedback, and even that was synthesized from an encoder signal. And in that case there was no traditional controller.
Re your earlier remark that tach feedback decreases the load on the controller -- every modern digital motion controller I've worked with is constantly updating the servo loop unless you specifically tell it not to. The typical rate is in the range of 10 KHz.
--
Ned Simmons

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

OK. So, I think that I am making a mistake by using tachometer and instead, I should go to torque mode. It will actually be easier to use torque mode, anyway. If everyone does it, so will I. It is also safer and I can remove a whole bunch of cables from the control that I do not need. Seems to be a win-win all around.
i
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Ignoramus30064 wrote:

The control has the velocity loop in software. It reads the encoder and subtracts new pos from last pos to compute velocity. Commanded velocity - actual velocity is the velocity error output, and is fed out as a torque command. This is IDENTICAL to what a velocity servo amp does (usually with op amps and resistors) except it is done by computation. The one place this falls down is if the machine is moving slowly enough that you get NO encoder counts in a servo period, then there is no way to calculate velocity.
Jon
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

    The place where this is most likely to make a difference is cutting a line which almost but not quite parallels an axis of the machine. This means that one axis is moving at a speed which is determined by the appropriate feed rate for the tool/material combination, and the other axis is moving at a very slow creep. An example would be turning (or milling) a shallow taper. While turning, maybe Morse, even more so for the taper of a tapered arbor.
    If the controller is monitoring the encoders frequently enough, and the encoders have sufficient resolution, you are fine anyway. However, with a coarser resolution encoder, the ability to command a precise slow speed means that you can trust it to maintain the very shallow angle between encoder pulses. The Galil, with a set of sufficient resolution encoders probably does not truly need the tach feedback -- but even it might find the job easier with that.
    Enjoy,         DoN.
--
Email: < snipped-for-privacy@d-and-d.com> | Voice (all times): (703) 938-4564
(too) near Washington D.C. | http://www.d-and-d.com/dnichols/DoN.html
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Karl Townsend wrote:

Why do you say this? Most of the older machines had tach feedback and velocity servo amps, and many still do, in one form or another. Are you serious that "precise smooth control" is not an issue in machining applications? Or, are you saying that torque mode control can be just as smooth?
The problem with no-tach servo control is that at SOME point, as you go slower, the encoder counts come in farther and farther apart in time, and the CNC control has no velocity information between encoder counts. This is why some CNC controls (Fanuc, for example) moved to ever higher and higher encoder counts, now Fanuc is at 4 million counts/rev. Try pricing a million cycle/rev encoder!
When I first set up my Bridgeport, I wanted to see how well the velocity servo loop worked, so I moved at ever slower rates until the movement started to become irregular. That was at about 0.01 IPM, or 3 encoder counts/second on this setup. With the EMC2 servo loop operating at 1000 cycles/second, that meant it was going 333 updates before seeing each count. But, the velocity servo was keeping the movement quite steady.
Jon
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Jon, I'm just saying the first rule of good engineering is KISS.
Torque mode is simple and will work very well for Iggy.
Karl
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Karl Townsend wrote:

Depending on how smooth he wants it, and what his encoder resolution works out to, maybe yes, and maybe no. The whole basis of my argument for the tach feedback is the velocity servo is a continuous-time system, the DC tach and velocity error amplifier are not sampled in any way. (Yes, the PWM modulator, etc. downstream in the typical servo amp then makes it discontinuous-time, but the PWM frequency is high enough that this shouldn't interfere with my argument.)
Deriving velocity info from an encoder effectively samples the information both in position (encoder resolution) and in time (servo sampling rate), thus introducing a type of noise into the system, but also making the system run open-loop between encoder counts. At low speeds, this requires much lower gain of the velocity loop, or you get a step-wise response at each encoder count.
This is why Fanuc, for example, uses encoders with a million lines/rev.
Jon
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Make sure the encoder wiring is good or your control has no way to know you have an axis that is running away. The only thing your control can do is put your system in e-stop.
I had a waterjet cell that profiled headlinders for explorers. The drives were DC and used a tach. I always kept in mind that one wire broken could cause a lot of grief and danger. Not a real problem to the operators but if I'm inside teaching a profile, I better be somewhere a run away can't get me.
As far as your tach, have you opened the motor and looked at the brushes? If the brushes are worn down, trouble is on the horizon. I've never had problems with tach brushes during the time period I had to deal with dc drives, usually the motor brushes that have a more demanding task fail. Oh, while you are in there, blow out the dust.
Wes -- "Additionally as a security officer, I carry a gun to protect government officials but my life isn't worth protecting at home in their eyes." Dick Anthony Heller
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

http://igor.chudov.com/projects/Bridgeport-Series-II-Interact-2-CNC-Mill/11-New-Wiring/11-New-Wiring-7670.jpg
    Looks nice.

    Without cutting load, of course.

    Usually, there is a zero trimpot on the servo amp (drive) which will first off eliminate drive with zero input signal voltage. When this is done, it might also eliminate the runaway problem with no tach feedback connected -- but I'm not sure of that.
    I presume the black module near the bottom marked 'X' is the servo amp?

    So -- this is a motivation to do it right. :-)

    Indeed -- congratulations.

    Especially with the new motivation. :-)
    Enjoy,         DoN.
--
Email: < snipped-for-privacy@d-and-d.com> | Voice (all times): (703) 938-4564
(too) near Washington D.C. | http://www.d-and-d.com/dnichols/DoN.html
  Click to see the full signature.
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Ignoramus6355 wrote:

Yes, of course. Any servo needs to have its "loop" closed at all times. It may be that if you put a 10 K Ohm resistor across the tach input terminals on the servo amp, then an open tach circuit will no longer cause a runaway.

Well, the tach can also have the brushes go bad, the wire can fail due to flexing, etc.

It is unlikely the tach AND the encoder will fail at the same time.
I just got in the boards for my "Copley interface", which will also work on the AMC amps (they are the same). The servo amp needs a contact closure to ground to enable it, and produces a 5 V signal when it goes into fault status. A quirk is that when disabled, it shows fault status. So, this board suppresses the fault indication for a moment until the amp has gotten enabled. The signal from one of the DIO SSR's can be used to send the enable to the servo amps. By default, EMC2 does not go to E-stop on a following error, allowing the servo amps to drift (or continue to run away, if that was the cause). I have to find out how to modify the ppmc_io.hal file to make this happen.
Jon
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Jon, the way I am planning to do things, estop will cut power to servo amps and will also stop the spindle by interrupting its signal circuit.
I would like to know, what do you think is the best mode to run these amps: voltage mode, torque mode or tach mode? Any thoughts on this?
By the way, I wired in your PPMC and it powers find every time.
I have not connected it to a PC after placing it inside the mill.
i
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
Ignoramus30064 wrote:

Well, you might want to think about having a braking resistor switched in when the servo power is cut off. Something like a 10 Ohm 25 W resistor on the NC relay contacts that drains energy from the motors via the DC bus.

I would run in velocity (tach) mode. You have the tachs on the machine now, all it takes is a little bit of wire to connect them. You should be able to get smooth motion even at low speeds with the tachs. I am using velocity servo mode on my Bridgeport, and never had a problem with them.
Jon
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Polytechforum.com is a website by engineers for engineers. It is not affiliated with any of manufacturers or vendors discussed here. All logos and trade names are the property of their respective owners.