-
Notifications
You must be signed in to change notification settings - Fork 52
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
[WIP][hrpsys_ros_bridge_tutorials] Enable to call :def-limb-controller-method before *ri* initialization #1095
base: master
Are you sure you want to change the base?
[WIP][hrpsys_ros_bridge_tutorials] Enable to call :def-limb-controller-method before *ri* initialization #1095
Conversation
Good! If my understanding is collect,
|
Yes, you are right.
This may not work, because I think Why I used
Perhaps introducing |
I think this works.
With this method, |
I see, thank you for your information! |
I don't understand why you want to use :def-limb-controller-method before |
@YoheiKakiuchi |
But I know this is too robot-specific reason, so in the top comment, I talked about a merit for all rtmros robots. |
I understand you want to use :default-controller which is created by appending methods defined by :def-limb-controller-method. Very simple solution, you can create robot model before calling :def-limb-controller-method(it can be called before initialization) . |
Yes, you are right, I already tried that solution and confirmed it works. I thought required modification is very small and the modified |
default-controller returens list of possible controllers: https://github.com/jsk-ros-pkg/jsk_robot/blob/c161b6a87fa00a29909833bb1250c5ee96e42de6/jsk_baxter_robot/baxtereus/baxter-interface.l#L59-L63
default-controller returens list of possible controllers: https://github.com/jsk-ros-pkg/jsk_robot/blob/c161b6a87fa00a29909833bb1250c5ee96e42de6/jsk_baxter_robot/baxtereus/baxter-interface.l#L59-L63
default-controller returens list of possible controllers: https://github.com/jsk-ros-pkg/jsk_robot/blob/c161b6a87fa00a29909833bb1250c5ee96e42de6/jsk_baxter_robot/baxtereus/baxter-interface.l#L59-L63
Includes #1096
Problem
Currently, some of EusLisp interface in rtmros_tutorials cannot be initialized with a partial controller (e.g.,
:rarm-controller
):This is because partial controllers are not defined before
*ri*
initialization.We usually use
:def-limb-controller-method
to define partial controllers (e.g., here and here), but:def-limb-controller-method
cannot be used before*ri*
initialization because it usesrobot
slot of*ri*
:https://github.com/start-jsk/rtmros_common/blob/1.4.3/hrpsys_ros_bridge/euslisp/rtm-ros-robot-interface.l#L317
Solution
This PR fixes the above problem by avoiding evalution of
robot
when:def-limb-controller-method
is called.