On 2017-10-10 00:02, Sebastian Kuzminsky wrote:
I don't know about machinekit, but in linuxcnc incremental jogs are
safer than continuous jogs in high latency situations like these.
Same behavior with machinekit.
This is one of the motivations I have for adding physical jog wheels on
my machines.
Basically, I think the issue is coming from the way the continuous jog
is implemented.
For example, in gmoccapy code, we can see
def on_btn_jog_pressed(self, widget, data=None):
...
self.command.jog(linuxcnc.JOG_CONTINUOUS, joint_axis_number,
direction * velocity)
and
def on_btn_jog_released(self, widget, data=None):
...
self.command.jog(linuxcnc.JOG_STOP, joint_axis_number)
So, for any reason, if you have latency in the execution of
on_btn_jog_released(), or in the transmission of the linuxcnc.JOG_STOP,
the motion will not stop immediately when you are releasing the
key/widget. And more nasty, if the event is lost, the motion will
continue until you press/release again the widget, or press ESTOP.
On my router, I am using a wireless HB04 pendant. Sometimes, I am
experiencing small latency. But with no bad consequences because
basically the jog wheel is sending a bunch of incremental commands. So,
if you have latency, the motion will stop, and will never move more than
the absolute counter value which is transmitted by the pendant.
When using a physical button connected to a HAL pin, thanks to hard
realtime properties of HAL and polling implementation of digital inputs,
this issue does not exist. We could imagine a similar polling mode
implementation for widgets so that the motion will stop if polling
result is lost or is coming too late from a end2end point of view (over
NML or ZeroMQ path).
Frederic
http://cnc.f1oat.org
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users