-
Notifications
You must be signed in to change notification settings - Fork 119
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
add ros parameters file to node context #60
Conversation
Signed-off-by: Karsten Knese <Karsten1987@users.noreply.github.com>
Signed-off-by: Karsten Knese <Karsten1987@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Karsten1987 I was testing your contribution but I was not able to run the example or get the /joint_states
. You didn't launch the controllers.
That's on purpose. As mentioned above, not all controllers can be loaded/configured at the same time due to resource conflicts. Also I believe it's not good practice to launch them within the gazebo plugin. I'd rather use either the spawner functionality (once available) or load them explicitly via services through a launch file. |
I will have a look to the PR ros-controls/ros2_control#310 anyhow the conditional to get the |
you don't necessarily need the spawner PR. You should be able to use Not sure we need to manually parse the parameters to get the |
Signed-off-by: Karsten Knese <Karsten1987@users.noreply.github.com>
done in 1047c22 |
I was testing the ros2 control load_start_controller joint_trajectory_controller` But I'm not able to load the ros2 param get /joint_trajectory_controller joints
String values are: [] You should set up the parameters for the controller in the code. |
923e5bb
to
88a0706
Compare
Signed-off-by: Karsten Knese <Karsten1987@users.noreply.github.com>
88a0706
to
7a8a62b
Compare
There's currently no clear way to set parameters to a gazebo plugin's node. So I had to do this manually by parsing the ros parameter's file and add the arguments to the node's context. That's certainly not a recommended way, but the only feasible at the moment. |
I just wanted to add my 2c and say that as someone fairly new to all this, I found it quite confusing that the plugin loaded my controllers on its own as I expected a flow similar to my real robot where I used This PR resolved an issue I was having where the |
@ahcorde friendly ping. |
Signed-off-by: ahcorde <ahcorde@gmail.com>
I created a PR which builds on top of this PR load the controllers in the launch files: #64 |
Load controllers in the example launch files
fixes #59
With this PR, the actual parameters are being set:
While implementing this, I found actually a second bug in which all specified controllers in the loaded yaml file would be loaded. It didn't show in the example, however this would necessarily lead to resource conflicts when more than one controller use the same command interface.