LabVIEW-DCAF / MotionModule

The DCAF Softmotion module is aimed towards simplifying the experience of creating embedded motion systems.
Apache License 2.0
2 stars 1 forks source link

Issues with STOP #52

Closed aggieslaughter closed 6 years ago

aggieslaughter commented 6 years ago

The Halt input to:

MotionModule-master\trunk\Utilities\Controlword_ModeSpecific_PositionProfile.vi

Is not wired to the connector pane - but it seems like the recommended way to stop.

Also - if I wire this on my copy and then use that command, instead of stopping the drive will reverse direction and go back to where it was before I began the move I was trying to halt. The parameters appear to be getting passed in right - not sure what's going on with it.

aggieslaughter commented 6 years ago

So - regarding the 'going back to original position' - I think that's because when you use the VI listed above and wire up the 'halt' - it doesn't de-assert the bits for the move- so it's trying to do an absolute move to the position listed in my move parameters instead of ignoring the 'position' bit of the parameters.

SimonRPSM commented 6 years ago

Good catch. I added the Halt to the connector pane.

Additionally, now when the Halt is asserted, the New Setpoint forced to zero. That way if you use the Halt from the Position Profile ( to stay within Op. Enable) the move will not happen.

It is still possible to use the QuickStop Mode as well - if that mode is used, the entire Op Enable case will be skipped. Would it be worthwhile to add a Read method to the Quick Stop Active state, or the Skip case of the Op Enable?

aggieslaughter commented 6 years ago

Having it behave like op enable in regards to the read is a great idea. At some point it may make sense to put the check for the read bit outside the main case structure? I'm not sure if there are cases where we couldn't want to read the axis information (like before init?) - but if it starts showing up in more and more of the cases it may start to make sense.

SimonRPSM commented 6 years ago

I think that this issue is a little bit too broad. I'll treat this as "getting to the stop case" and I will create a "Axis do not stop" issue that is separate.