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 want to use lipm-walking for controlling HRP4’s right hand while being in double-support with all the stabilizer functionalities. Therefore I need to extend the state “Standing” (correct?). I tried two different versions. For both I added to the transition map in the config file:
I can access the new state via the Rviz gui -> “force transition to standing” -> “force transition to TestState” and read the expected output in the terminal Starting state TestState
However, for some reason the right-hand trajectory is not executed...
Second approach via c++ code:
I created new state files .h and .cpp inside the states-directory and adapted the cmake file with add_fsm_state_simple(TestState).
This new state derives from Standing and overrides the main functions
This cannot work. Standing is its own state and doesn't care that you have a tasks entry
Second approach
You're probably missing two things:
target_link_libraries(TestState PUBLIC Standing) to link your state with the Standing state that it's using
set_target_properties(TestState PROPERTIES INSTALL_RPATH ${FSM_STATES_INSTALL_PREFIX}) this one will ensure that the state finds Standing when it's loaded. Depending on how you build it you might also want:
set_target_properties(TestState PROPERTIES BUILD_RPATH ${CATKIN_DEVEL_PREFIX}/lib/${PROJECT_NAME}/states) to get it to work in a catkin setup
However, I think there is a third (and better) approach in your case: Parallel
In that case, the two states will run together. If you want a fully stabilized FSM, you can write your FSM using the Meta state and use this FSM in parallel with the Standing state
I want to use lipm-walking for controlling HRP4’s right hand while being in double-support with all the stabilizer functionalities. Therefore I need to extend the state “Standing” (correct?). I tried two different versions. For both I added to the transition map in the config file:
First approach via config file only:
I added the following state
I can access the new state via the Rviz gui -> “force transition to standing” -> “force transition to TestState” and read the expected output in the terminal
Starting state TestState
However, for some reason the right-hand trajectory is not executed...
Second approach via c++ code:
I created new state files .h and .cpp inside the states-directory and adapted the cmake file with
add_fsm_state_simple(TestState)
.This new state derives from Standing and overrides the main functions
and
The code compiles sucessfully, but when launching the controller I receive the error message:
Whats wrong here?
Maybe related to that, I noticed that Stephane uses
while in other controllers we used
The text was updated successfully, but these errors were encountered: