7i29 amp fault output pins?

More
20 Jul 2020 22:48 #175275 by Nitram
HI Peter.

I have two 7i29's connected to a 5i24 via ribbon cable.

How does the 7i29 tell the controller of an internal amp fault (auto overtemp shutdown for example)?

Does it have an output pin which should be connected to axis.N.amp-fault-in

or if it faults out and (as a closed loop device) then generates a following error that is the trigger back to LCNC, in which case I guess that having following error limits set as low as reasonable is beneficial?

Thanks,

Marty.

Please Log in or Create an account to join the conversation.

More
21 Jul 2020 00:12 - 21 Jul 2020 00:13 #175286 by PCW
Replied by PCW on topic 7i29 amp fault output pins?
There is no fault flag on the interface so you will need to detect
drive shutdown with a following error flag.

Another thing you can do is monitor pid.N.saturated-s pin.
This is the number of seconds the PID output has been saturated.

If you fault when this number exceeds some reasonable time limit
(say 20 ms) and you have a non zero integral term, you can also
prevent some runaway while static situations, that the following error
cannot detect (say with a failed encoder)
Last edit: 21 Jul 2020 00:13 by PCW.
The following user(s) said Thank You: Nitram

Please Log in or Create an account to join the conversation.

More
21 Jul 2020 09:54 #175319 by Nitram
Replied by Nitram on topic 7i29 amp fault output pins?
Thanks for the information Peter!
I need to ask an interesting behavioral question based on implementing this...

I have implemented the following code in my HAL file (initially for the Y axis).
Basically, taking the pid saturation time, comparing it to a .02 second threshold, as well as monitoring the following error triggered pin.
Via an OR2 component, if either goes true, it sends the signal to the axis.1.amp-fault-in pin.

Just to confirm, there are no glaring errors in the code below (like getting the values of the comparison wrong etc)?
# ---amp fault and following error control---

net pid-y-saturation-time wcomp.0.in pid.y.saturated-s
setp wcomp.0.max 0.02
net pid-y-is-saturated wcomp.0.over

net y-following-errored axis.1.f-errored or2.1.in0
net pid-y-is-saturated or2.1.in1
net axis-y-fault or2.1.out axis.1.amp-fault-in

My machine has DC servos, with encoders attached. The encoders provide positional and velocity data (the DC servos formerly had tachos for velocity, but the tachos were removed for simplicity when the resolvers were removed in favor of the encoders.)

So then the next step was to test by generating a following error and making sure the amp is faulted out.
I thought the easiest way to reproduce such an error would be to unplug the encoder input into the Y axis of the 7i29 card and then do a jog until a following error occurs.

I was wrong...
After the jog via the MPG, the Y axis cruised towards the limit until I hit the estop. I tried this while watching the motion.current-vel pin and of course as there was no velocity feedback with the encoder unplugged it was a zero reading. So I suspect that the axis may be incapable of generating a following error if the encoder is unplugged/fails/wire breaks etc. based on the fact that if it is not seeing the servo move (no velocity feedback) then similarly it also does not expect a positional change and thus doesn't trip the following errored pin in this situation.

Am I on the right track with this assumption?

If so, I was thinking about adding a further section to the above code. Comparing PID output to axis velocity feedback.
If, PID output is greater than zero and velocity feedback is not greater than zero within (say) 0.1 seconds, then also drive the axis amp fault pin true.

Do you think there is a better way to do this, and what HAL components would make this comparison the easiest?

Thanks again!

Cheers,
Marty.

Please Log in or Create an account to join the conversation.

More
21 Jul 2020 14:05 - 21 Jul 2020 14:06 #175336 by PCW
Replied by PCW on topic 7i29 amp fault output pins?
I would expect an instant following error if you jogged, but the encoder was not connected
(as long as it was a jog larger than the FE settings)

A small jog (less than the FE settings) would cause a (slow) runaway if the encoder
was not working and you had no or a very small I term, but if you had a high enough I term,
it will very quickly speed up and saturate the PID.

You can check the PID output vs fb velocity but you can have a non zero PID output
output at zero velocity when the drive is holding position against cutting forces.
In a static situation the PID drive to a PWM drive for maximum torque is pretty low
because there is no back EMF, just motor resistance. so a PID output of say
even 20% of the value needed to get full output indicates a problem at 0 velocity.
Last edit: 21 Jul 2020 14:06 by PCW.
The following user(s) said Thank You: Nitram

Please Log in or Create an account to join the conversation.

Moderators: PCWjmelson
Time to create page: 0.212 seconds
Powered by Kunena Forum