Nothing wrong with asynchronous processing in control of machinery, as long as there are checks built in to ensure that events that must happen in a specific order cannot be executed out of order due to things like race conditions or operators inputting parameters and hitting the go button too fast. Atomic Energy Canada Limited found that out with the Therac 25.
On Wednesday, April 17, 2024 at 11:04:07 AM MDT, Todd Zuercher via Emc-users <emc-users@lists.sourceforge.net> wrote: Sorry to hijack the thread, but I've had to live with this on a machine that I'm using cascaded double PID loops on. I have the velocity loop PIDs running in a fast floating point base thread to help with the tuning of some cantankerous torque mode servos. The position loops are still in the servo thread (because I can't run the whole servo thread as fast as I can the floating point base thread.) Reading/writing to the Mesa hardware in a faster loop than the servo thread seems to break the f-error disable for the encoder reset. I think because the encoder reset doesn't always occur when the it is expecting it or something to that effect. I've tried just running a faster servo-thread, but I can run the lighter floating point base thread about 4x faster than I can the whole servo-thread. _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users