-
Notifications
You must be signed in to change notification settings - Fork 22
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 Isaac Sim support for the Agilus series #47
base: master
Are you sure you want to change the base?
Conversation
I approved your PR, thanks for the contribution :) |
If Isaac Sim is like Gazebo (ie: surrogate hw), should it be treated as such? Having to switch to fake hardware in order to use a simulator is not how it's typically done in Additionally: rather than expansion, composition has worked well in the past. The latter would keep Isaac dependencies out of the main support packages, while the former would need updates to all 'supported' The UR driver/packages have recently partly made the switch to composition for this reason: the description package(s) were starting to depend on MoveIt, |
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.
Blocked until comment from @gavanderhoorn is resolved
I agree, this does not scale well and that's why I stopped at the Agilus, however the code is not very abstract at the moment. I did not see an easier way without major changes in your code. I am happy to change it composition but I am not too familiar with xacro. Would you mind pointing me to the UR driver example? I have taken a look but I don't quite understand what you mean. I find on their side a very similar pattern at least judging from here. https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver/blob/main/ur_robot_driver/urdf/ur.ros2_control.xacro One way I could think of is to move the joint controls into something like this
and then I would import this into my own ros control xacro that contains the Isaac bits ? Regarding the semantic, I am ok in changing this into something like "ros2_controller_type" that leaves fake_hardware as mock_system. |
Before submitting this PR into master please make sure:
If you added a new robot model:
README.md
with the new modeltest_<robot_model>.launch.py
and after launching the robot was visible inrviz
<robot_model>_joint_limits.yaml
file in theconfig
directory (to provide moveit support)If you modified an already existing robot model:
README.md
with the changestest_<robot_model>.launch.py
and the robot was visible inrviz
Short description of the change
I have simulated the Kuka robot on an Isaac Sim environment. In order to do that I had to add a new TopicBased planning that is consumed by Isaac. I took inspiration from the Pandas robot where they have added this support.
https://github.com/ros-planning/moveit_resources/blob/humble/panda_moveit_config/config/panda.ros2_control.xacro#L7
I have added support only for the Agilus series for now.
If a user sets
use_fake_hardware
, they can optionally setfake_hardware_type = isaac
, which will change the planner to deal with TopicBasedSystem controls.