You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am trying to automate starting an EGM session using the abb_robot_driver. I basically follow the steps in the example provided here, using a state machine in Python. Here is a short summary of the calls I perform via the state machine:
There are some race conditions that I take care of by monitoring /rws/system_states, /rws/sm_addin/runtime_states and /egm/egm_states/ before I execute the next service call.
For this issue specifically, I monitor the active field of the message received from the /egm/egm_states topic after executing the service call to /rws/sm_addin/start_egm_joint to check if my request has been processed. If I then try to activate a controller via the /egm/controller_manager/switch_controller service, I sometimes get the following error from the /egm_hardware_interface node:
EGM is active, but not in running mode (i.e. listening for command references)! Refusing to start controller(s): [joint_position_trajectory_controller]
This is another race condition (if I add a sleep, it works), but I wonder how I can make sure EGM is ready to start a controller. How can I monitor if EGM is 'in running mode'?
The text was updated successfully, but these errors were encountered:
I am trying to automate starting an EGM session using the
abb_robot_driver
. I basically follow the steps in the example provided here, using a state machine in Python. Here is a short summary of the calls I perform via the state machine:There are some race conditions that I take care of by monitoring
/rws/system_states
,/rws/sm_addin/runtime_states
and/egm/egm_states/
before I execute the next service call.For this issue specifically, I monitor the
active
field of the message received from the/egm/egm_states
topic after executing the service call to/rws/sm_addin/start_egm_joint
to check if my request has been processed. If I then try to activate a controller via the/egm/controller_manager/switch_controller
service, I sometimes get the following error from the/egm_hardware_interface
node:This is another race condition (if I add a sleep, it works), but I wonder how I can make sure EGM is ready to start a controller. How can I monitor if EGM is 'in running mode'?
The text was updated successfully, but these errors were encountered: