AIRLab-POLIMI / BTGenBot

BTGenBot: a system to generate behavior trees for robots using lightweight (~7 billion parameters) large language models (LLMs)
MIT License
31 stars 2 forks source link

igus_rebel_commander #8

Open ysuxing opened 3 weeks ago

ysuxing commented 3 weeks ago

Dear Author,

I have been reading your paper and code, and I noticed that only the navigation task has been validated on the TurtleBot3. Could you please provide a more detailed explanation of how other types of tasks, such as robotic arm tasks, can be validated in a simulation environment? For instance, could you specify the choice of robot models and simulation environments? Thank you very much.

Sincerely

RiccardoIzzo commented 3 weeks ago

Hello, we did the complete tests directly on the physical robot, so we don't have a full simulation that exactly replicates that scenario. However, my suggestion is to replicate this test using the Turtlebot3 on Gazebo for what concerns the navigation tasks and, in parallel, work with the manipulator using MoveIt2 as specified in the ros2-igus-rebel package. Here, in igus_rebel_commander, you will find an action server called manipulator_action_server that you can start using the launch file manipulator_action_server.launch.py. This server handles the MoveManipulator action. Additionally, in igus_rebel_moveit_config you can find more details on how to simulate the robotic arm in a Gazebo environment.

ysuxing commented 3 weeks ago

您好,我们直接在物理机器人上进行了完整的测试,因此我们没有完全复制该场景的完整模拟。但是,我的建议是使用 Gazebo 上的 Turtlebot3 复制此测试,以完成与导航任务相关的任务,同时使用包中指定的 MoveIt2 与操纵器一起工作ros2-igus-rebel。在这里igus_rebel_commander,您将找到一个名为的操作服务器manipulator_action_server,您可以使用启动文件启动它manipulator_action_server.launch.py。该服务器处理该MoveManipulator操作。此外,igus_rebel_moveit_config您可以在中找到有关如何在 Gazebo 环境中模拟机械臂的更多详细信息。

Do you mean that i can integrate the igus Rebel robotic arm with the TurtleBot3 chassis and verify the feasibility of all tasks in the Gazebo simulation environment?

RiccardoIzzo commented 3 weeks ago

As far as I know not in the same environment, what I meant was to use two separate Gazebo windows, one for the navigation with the Turtlebot3 and the other one for the igus rebel robotic arm for the manipulator tasks.

WEXIJUE commented 1 week ago

As far as I know not in the same environment, what I meant was to use two separate Gazebo windows, one for the navigation with the Turtlebot3 and the other one for the igus rebel robotic arm for the manipulator tasks.

According to your description in igus rebel moveit_config I use the command: $ ros2 launch igus_rebel_moveit_config demo.launch.py ​​load_gazebo:=true hardware_protocol:=ignition load_base:=true The following error log appeared when simulating the robotic arm. log:[move_group-4] [WARN] [1719147185.049221068] [moveit.ros.occupancy_map_monitor.middleware_handle]: Resolution not specified for Octomap. Assuming resolution = 0.1 instead [move_group-4] [ERROR] [1719147185.049251972] [moveit.ros.occupancy_map_monitor.middleware_handle]: No 3D sensor plugin(s) defined for octomap updates [move_group-4] [INFO] [1719147185.089876040] [moveit.ros_planning_interface.moveit_cpp]: Loading planning pipeline 'stomp' [move_group-4] [ERROR] [1719147185.102091769] [moveit.ros_planning.planning_pipeline]: Exception while loading planner 'stomp_moveit/StompPlanner': According to the loaded plugin descriptions the class stomp_moveit/StompPlanner with base class type planning_interface::PlannerManager does not exist. Declared types are ompl_interface/OMPLPlanner pilz_industrial_motion_planner/CommandP 截图 2024-06-23 20-59-20 lannerAvailable plugins: ompl_interface 截图 2024-06-23 20-56-12 /OMPLPlanner, pilz_industrial_motion_planner/CommandPlanner file:///home/fkx/%E5%9B%BE%E7%89%87/%E6%88%AA%E5%9B%BE/%E6%88%AA%E5%9B%BE%202024-06-23%2020-55-47.png There is nothing in gazebo simulation environment。

RiccardoIzzo commented 1 week ago

I'm sorry to hear that but I'm unaware of this error since I never encountered it. However, it seems related to MoveIt2, hence I would suggest you to verify the installation process. In my case, I'm able to load the manipulator arm together with the mobile base only with the command ros2 launch igus_rebel_moveit_config demo.launch.py load_base:=true load_gazebo:=true hardware_protocol:=ignition also used by you. In this way, both Rviz and Gazebo launch correctly. Screenshot from 2024-06-23 15-36-31 2024-06-23T15:37:32 922038582 Screenshot from 2024-06-23 15-50-37 Please check again the installation process with all the related dependencies.

WEXIJUE commented 1 week ago

很遗憾听到这个消息,但我不知道这个错误,因为我从未遇到过。但是,它似乎与 MoveIt2 有关,因此我建议您验证安装过程。就我而言,我能够仅使用您使用的命令将机械臂与移动基座一起加载ros2 launch igus_rebel_moveit_config demo.launch.py load_base:=true load_gazebo:=true hardware_protocol:=ignition。这样,Rviz 和 Gazebo 都可以正确启动。 请再次检查安装过程以及所有相关依赖项。 2024-06-23 15-36-31 的截图 2024-06-23T15:37:32 922038582 2024-06-23 15-50-37 的截图

Thank you very much for your reply. Does installing moveit2 have to be built from source? Is the workspace of moveit consistent with that of igus-rebel?

RiccardoIzzo commented 1 week ago

Yes, install it from source and check out the demos in the quickstart. It is sufficient to have both MoveIt2 and igus-rebel in your ROS2 workspace.