-
Notifications
You must be signed in to change notification settings - Fork 406
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
URScript execution status #19
Comments
No, there isn't such a thing. Depending on what you want to do, you can write a wrapper around this and use information published by the driver (IO states, joint states, etc.) to infer whether your script code has finished execution. However, since it's a longer running script, I assume that this is being run as a primary script without the control script (aka External Control) being active. We are currently working on publishing more robot state data, so you will be able to see whether there is a program running currently. |
Access to more controller state data would be super helpful. This driver is awesome so far! |
#20 aims at implementing the controller status. Currently Robot mode and Safety mode are published on topics and are available through the dashboard client. |
As discussed in #40, there is no native status tracking for URScript sent to |
As a clarification: there is no feedback about urscript execution status - period. Not in the driver, not coming from the controller. There is the
It would also be difficult to disambiguate between external control running and a urscript snippet. |
URSim 5.4.0.76181 As @gavanderhoorn mentioned, "/ur_hardware_interface/robot_program_running" monitors only the primary program, specifically status of 'external control' node in the program. Therefore, this won't work for the script snippets we sent thorough the secondary interface. However, I've tried using the dashboard interface, querying this topic "/ur_hardware_interface/dashboard/robot_running" and this tells you exactly what the dashboard shows you on the UI (not sure 'PAUSED' state). Currently, this service topic is not available due to #75. Until the PR is accepted, we can use query this topic "/ur_hardware_interface/dashboard/raw_request" with 'running'. Check these pages for reference: |
@mgkwon thank you for the PR! However, using the |
@fmauch Sorry, actually, I am not sure what the difference between primary and secondary programs. Yes, querying On the other hand, So I've tested publishing scripts through |
The main problem remains, however. As soon as you have the normal program running with the In my opinion this implementation is better than polling it through the dashboard interface. This is basically the same as the The more I'm thinking about it: Execution status of secondary programs do not really make sense, anyway, right? As secondary programs are required to "not take any physical time to execute" they are expected to return immediately, anyway. Still the main problem is there that you will only know whether ANY program is currently running. This could be a program running on the TP, this could be your |
@fmauch Thank you! and sorry for the late response. I understand what the secondary program is now... I was thinking that anything goes through 'send_command' was considered as secondary program. So yes, there is no execution of status of secondary programs. Thank you again for the clarification :) |
Excuse me not use issue template. It's not a bug, but a question or functionality request.
Is there an interface to track execution of URScript sent to
/ur_hardware_interface/script_command
? For me it's necessary to know when execution completes.The text was updated successfully, but these errors were encountered: