Closed antonio1matos closed 2 months ago
Hi @antonio1matos , looking good , happy to see the gripper is making good progress. Sorry, little busy until the weekend.
So the controller_manager
is loaded as plugin into Gazebo. No Gazebo -> no controller_manager
.
That said, there is a way to use fake hardware, no simulation. This feature is missing here right now. Thank you for opening the issue. Let's look into that
for reference, this might be relevant: https://control.ros.org/master/doc/ros2_control/hardware_interface/doc/mock_components_userdoc.html
Ok. Thank you @mhubii. I will follow that link. Then i will give you feedback.
Hi @mhubii. I eventually solved my problem. I'm able to launch the robot iiwa14 without the gazebo system. The robot works only in moveit(rviz) and works fine independently of planner that im using. I used the hardware plugin: mock components as you said. Since i wanted to use a gripper in the arm i executed the MoveIt Setup Assistant to overwrite the iiwa14_moveit_config with the robot with the arm+gripper controllers. I launched the robot+gripper using the format presented in the moveit humble tutorials: https://moveit.picknik.ai/main/doc/how_to_guides/moveit_launch_files/moveit_launch_files_tutorial.html Instead of using the lbr_system_interface.xacro i used the file iiwa14.ros2_control.xacro generated by the MoveIt setup Assistant. This file is composed by this: <?xml version="1.0"?>
I know that in the launch file instead of using the iiwa14.ros2_control.xacro file (which was generated by the MoveIt setup assistant) I could have still used the lbr_system_interface.xacro file, since here:
As long as I created another
This was another question I wanted to confirm. You have the launch file named: sim.launch.py, where you are using the hardware:
These parts of code in the lbr_system_interface.xacro file present in the images below (sensors, torques..) are all related to the hardware to test on the real robot, right? But if i wanted to only simulate in gazebo (for example using the launch file: sim.launch.py,), i only needed this parts of code, right? (see images below)
@mhubii If you could clarify these doubts for me I would be grateful. Thanks
Hi @antonio1matos,
closing this particular issue as now supported via:
ros2 launch lbr_bringup mock.launch.py
Make sure to run RViz in a second terminal (if desired)
ros2 launch lbr_bringup rviz.launch.py
Trying to fix the end-effector issue in another topic.
Introduced in #190
Hello @mhubii . I was using this code: ros2 launch lbr_bringup bringup.launch.py model:=iiwa14 moveit:=true to launch the robot iiwa14 in simulation (gazebo) and Rviz. However i wanted to launch this robot only in Rviz without using gazebo. I tried following this tutorials of moviet humble: https://moveit.picknik.ai/main/doc/how_to_guides/moveit_configuration/moveit_configuration_tutorial.html and also this one: https://moveit.picknik.ai/main/doc/how_to_guides/moveit_launch_files/moveit_launch_files_tutorial.html
I tried to follow the way presented in the tutorials and this is my code:
import os from launch import LaunchDescription from launch.actions import DeclareLaunchArgument, OpaqueFunction from launch.substitutions import LaunchConfiguration, PathJoinSubstitution from launch.conditions import IfCondition, UnlessCondition from launch_ros.actions import Node from launch_ros.substitutions import FindPackageShare from launch.actions import ExecuteProcess from ament_index_python.packages import get_package_share_directory from moveit_configs_utils import MoveItConfigsBuilder from lbr_description import LBRDescriptionMixin, RVizMixin from lbr_bringup import LBRMoveGroupMixin
def generate_launch_description():
def launch_setup(context, *args, **kwargs):
PS: I put this launch file in a package called miar_robot as you can check in the code. However when i run this code in rviz i can plan a trajectory but i can´t execute it as you can see in the picture below:
In the terminal appears the following error: [ERROR] [ros2_control_node-5]: process has died [pid 15443, exit code -6, cmd '/opt/ros/humble/lib/controller_manager/ros2_control_node --ros-args --params-file /tmp/launch_params_e0scg7kp --params-file /home/antonio/lbr-stack/install/lbr_ros2_control/share/lbr_ros2_control/config/lbr_controllers.yaml']. [spawner-7] [INFO] [1719412041.691157785] [spawner_joint_trajectory_controller]: Waiting for '/controller_manager' node to exist [spawner-6] [INFO] [1719412041.739105946] [spawner_joint_state_broadcaster]: Waiting for '/controller_manager' node to exist Anyone know any way to launch the robot lbr only rviz and also be able to plan and execute in the rviz without using any simulator as gazebo?