鱼香ROS社区
    • 版块
    • 最新
    • 未解决
    • 已解决
    • 群组
    • 注册
    • 登录
    紧急通知:禁止一切关于政治&VPN翻墙等话题,发现相关帖子会立马删除封号
    提问前必看的发帖注意事项: 社区问答规则(小鱼个人)更新 | 高质量帖子发布指南

    运行自己编写的代码时出现Could not find parameter robot_description_semantic and did……问题

    已定时 已固定 已锁定 已移动 已解决
    机械臂运动规划
    moveit2 parameter
    5
    30
    5.5k
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • 空白空
      空白 @小鱼
      最后由 编辑

      @小鱼 小鱼你好,手动拖拉是可以的,也能正常规划,我在param get 里面发现move_group的publish_robot_description的值是无not set,会不会是因为move_group没有发布robot_description的相关内容?

      空白空 1 条回复 最后回复 回复 引用 0
      • 空白空
        空白 @空白
        最后由 编辑

        @空白 因为我发现其他能用move_group控制的这个参数是bool值true

        小鱼小 1 条回复 最后回复 回复 引用 0
        • 小鱼小
          小鱼 技术大佬 @空白
          最后由 编辑

          @空白 有这个可能,没理解错这个值设成true的意思才是发布robot__description,你可以到配置文件找找这个参数,改改看

          新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

          空白空 1 条回复 最后回复 回复 引用 0
          • 空白空
            空白 @小鱼
            最后由 编辑

            @小鱼 将semantic重映射的原理是什么呢,我在设置里面semantic对应的是srdf模型,对应的是动作组机械臂,而robot_description是用的urdf,对应的是机械臂模型

            1 条回复 最后回复 回复 引用 0
            • 空白空
              空白 @小鱼
              最后由 编辑

              @小鱼 因为我重新改了launch文件,urdf文件都还是报一样的错误,只有觉得是参数的问题了😵

              小鱼小 1 条回复 最后回复 回复 引用 0
              • 小鱼小
                小鱼 技术大佬 @空白
                最后由 编辑

                @空白 从你的参数这块入手,重映射方法要先确保robot_description是正常的才行,你可以通过ros2 topic echo /robot_description看看

                新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                空白空 2 条回复 最后回复 回复 引用 0
                • 空白空
                  空白 @小鱼
                  最后由 编辑

                  @小鱼 我用ros2 param get robot_description得到的内容是正确的,同理robot_description_semantic内容也是正确的

                  1 条回复 最后回复 回复 引用 0
                  • 空白空
                    空白 @小鱼
                    最后由 编辑

                    @小鱼 这个重映射是为什么呢?因为在我的理解范围内两者并不是同一个内容

                    小鱼小 1 条回复 最后回复 回复 引用 0
                    • 小鱼小
                      小鱼 技术大佬 @空白
                      最后由 编辑

                      @空白 这应该都是机械臂的描述文件吧,看具体的错误是没有订阅到数据,不是通过参数传递的,而是话题,所以你应该检查话题

                      @空白 在 运行自己编写的代码时出现Could not find parameter robot_description_semantic and did……问题 中说:

                      did not receive robot_description_semantic via std_msgs::msg::String subscription within 10.000000 seconds.

                      新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                      空白空 1 条回复 最后回复 回复 引用 0
                      • 空白空
                        空白 @小鱼
                        最后由 编辑

                        @小鱼 我好像没有发布和订阅相关的话题 在后面用panda机械臂对比的时候也是,我理解中应该是调用move_group给节点的时候自动发布和订阅了这个话题吧?

                        小鱼小 1 条回复 最后回复 回复 引用 0
                        • 小鱼小
                          小鱼 技术大佬 @空白
                          最后由 编辑

                          @空白 有可能,这两天比较忙,抽空看看moveit源码这个话题到底用来干啥的

                          新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                          空白空 1 条回复 最后回复 回复 引用 0
                          • 空白空
                            空白 @小鱼
                            最后由 编辑

                            @小鱼 嗯嗯,辛苦小鱼了,我明天再尝试下反馈结果

                            小鱼小 1 条回复 最后回复 回复 引用 0
                            • 小鱼小
                              小鱼 技术大佬 @空白
                              最后由 编辑

                              @空白 好的,保持沟通,应该不是大问题

                              新书配套视频:https://www.bilibili.com/video/BV1GW42197Ck/

                              空白空 32268600243 3 条回复 最后回复 回复 引用 0
                              • 空白空
                                空白 @小鱼
                                最后由 编辑

                                @小鱼 小鱼,我改了publish_robot_description后问题更大了,连节点启动move_group都出问题了

                                [robot_state_publisher-4] Error:   No name given for the robot.
                                [robot_state_publisher-4]          at line 118 in ./urdf_parser/src/model.cpp
                                [robot_state_publisher-4] Failed to parse robot description using: urdf_xml_parser/URDFXMLParser
                                [robot_state_publisher-4] terminate called after throwing an instance of 'std::runtime_error'
                                [robot_state_publisher-4]   what():  Unable to initialize urdf::model from robot description
                                [rviz2-2] Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
                                [move_group-1] [WARN] [1670671365.891849812] [move_group.move_group]: Falling back to using the the move_group node namespace (deprecated behavior).
                                [move_group-1] Error:   No name given for the robot.
                                [move_group-1]          at line 118 in ./urdf_parser/src/model.cpp
                                [move_group-1] Failed to parse robot description using: urdf_xml_parser/URDFXMLParser
                                [move_group-1] [INFO] [1670671365.916302193] [moveit_rdf_loader.rdf_loader]: Unable to parse URDF
                                [move_group-1] [ERROR] [1670671365.927268512] [moveit_ros.planning_scene_monitor.planning_scene_monitor]: Robot model not loaded
                                [move_group-1] [ERROR] [1670671365.927441140] [moveit.ros_planning_interface.moveit_cpp]: Planning scene not configured
                                [move_group-1] [FATAL] [1670671365.927454969] [moveit.ros_planning_interface.moveit_cpp]: Unable to configure planning scene monitor
                                [move_group-1] terminate called after throwing an instance of 'std::runtime_error'
                                [move_group-1]   what():  Unable to configure planning scene monitor
                                [move_group-1] Stack trace (most recent call last):
                                [move_group-1] #12   Object "", at 0xffffffffffffffff, in 
                                [move_group-1] #11   Object "/home/pan/moveit2_ws/install/moveit_ros_move_group/lib/moveit_ros_move_group/move_group", at 0x5637b9e6aea4, in _start
                                [move_group-1] #10   Source "../csu/libc-start.c", line 392, in __libc_start_main_impl [0x7f67aac07e3f]
                                [move_group-1] #9    Source "../sysdeps/nptl/libc_start_call_main.h", line 58, in __libc_start_call_main [0x7f67aac07d8f]
                                [move_group-1] #8    Object "/home/pan/moveit2_ws/install/moveit_ros_move_group/lib/moveit_ros_move_group/move_group", at 0x5637b9e6a1e3, in main
                                [move_group-1] #7    Object "/home/pan/moveit2_ws/install/moveit_ros_planning/lib/libmoveit_cpp.so.2.5.4", at 0x7f67ab5cc11b, in moveit_cpp::MoveItCpp::MoveItCpp(std::shared_ptr<rclcpp::Node> const&, moveit_cpp::MoveItCpp::Options const&) [clone .cold]
                                [move_group-1] #6    Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30", at 0x7f67aaed4517, in __cxa_throw
                                [move_group-1] #5    Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30", at 0x7f67aaed42b6, in std::terminate()
                                [move_group-1] #4    Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30", at 0x7f67aaed424b, in 
                                [move_group-1] #3    Object "/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.30", at 0x7f67aaec8bbd, in 
                                [move_group-1] #2    Source "./stdlib/abort.c", line 79, in abort [0x7f67aac067f2]
                                [move_group-1] #1    Source "../sysdeps/posix/raise.c", line 26, in raise [0x7f67aac20475]
                                [move_group-1] #0  | Source "./nptl/pthread_kill.c", line 89, in __pthread_kill_internal
                                [move_group-1]     | Source "./nptl/pthread_kill.c", line 78, in __pthread_kill_implementation
                                [move_group-1]       Source "./nptl/pthread_kill.c", line 44, in __pthread_kill [0x7f67aac74a7c]
                                [move_group-1] Aborted (Signal sent by tkill() 2895 1000)
                                [rviz2-2] [INFO] [1670671366.652270025] [rviz2]: Stereo is NOT SUPPORTED
                                [rviz2-2] [INFO] [1670671366.652369356] [rviz2]: OpenGl version: 4.3 (GLSL 4.3)
                                [rviz2-2] [INFO] [1670671366.665326153] [rviz2]: Stereo is NOT SUPPORTED
                                [rviz2-2] Warning: class_loader.impl: SEVERE WARNING!!! A namespace collision has occurred with plugin factory for class rviz_default_plugins::displays::InteractiveMarkerDisplay. New factory will OVERWRITE existing one. This situation occurs when libraries containing plugins are directly linked against an executable (the one running right now generating this message). Please separate plugins out into their own library or just don't link against the library and use either class_loader::ClassLoader/MultiLibraryClassLoader to open.
                                [rviz2-2]          at line 253 in /opt/ros/humble/include/class_loader/class_loader/class_loader_core.hpp
                                [ERROR] [robot_state_publisher-4]: process has died [pid 2901, exit code -6, cmd '/opt/ros/humble/lib/robot_state_publisher/robot_state_publisher --ros-args -r __node:=robot_state_publisher --params-file /tmp/launch_params_srky38s1'].
                                [ERROR] [move_group-1]: process has died [pid 2895, exit code -6, cmd '/home/pan/moveit2_ws/install/moveit_ros_move_group/lib/moveit_ros_move_group/move_group --ros-args --params-file /tmp/launch_params_cz20p03m --params-file /tmp/launch_params_ct3y8_i6 --params-file /tmp/launch_params_0ortefko --params-file /tmp/launch_params_t6ts9z45 --params-file /tmp/launch_params_camlgkvc --params-file /tmp/launch_params_2sclyplm --params-file /tmp/launch_params_qhbrrs6c'].
                                [rviz2-2] [ERROR] [1670671369.787600339] [moveit_ros_visualization.motion_planning_frame]: Action server: /recognize_objects not available
                                [rviz2-2] [INFO] [1670671369.798753966] [moveit_ros_visualization.motion_planning_frame]: MoveGroup namespace changed: / -> . Reloading params.
                                [rviz2-2] Error:   No name given for the robot.
                                [rviz2-2]          at line 118 in ./urdf_parser/src/model.cpp
                                [rviz2-2] Failed to parse robot description using: urdf_xml_parser/URDFXMLParser
                                [rviz2-2] [INFO] [1670671369.858143117] [moveit_rdf_loader.rdf_loader]: Unable to parse URDF
                                [rviz2-2] [ERROR] [1670671369.864293830] [moveit_ros.planning_scene_monitor.planning_scene_monitor]: Robot model not loaded
                                r
                                

                                具体原因不知道为啥,不过我看moveit2_tutorials里面关于robot_model部分确实是需要设置publish_robot_description部分的,现在基本上部分功能包废掉了,打算重新弄个

                                1 条回复 最后回复 回复 引用 0
                                • 空白空
                                  空白 @小鱼
                                  最后由 编辑

                                  @小鱼 最终解决了,思路还是在publish部分设置为true就可以,后面的报错和问题无关,其实是在尝试的过程中修改了太多文件乱了,重新回档后修改了launch的参数即可。谢谢小鱼了😁

                                  zhuq97Z 32268600243 2 条回复 最后回复 回复 引用 1
                                  • 空白空 空白 将这个主题转为问答主题,在
                                  • 空白空 空白 将这个主题标记为已解决,在
                                  • zhuq97Z
                                    kiryu @空白
                                    最后由 编辑

                                    @空白 你好,请问你是怎么解决的,publish部分是指哪个文件啊

                                    32268600243 1 条回复 最后回复 回复 引用 0
                                    • 32268600243
                                      3226860024 @空白
                                      最后由 编辑

                                      @空白 你好,publish你是指的哪个文件呢

                                      1 条回复 最后回复 回复 引用 0
                                      • 32268600243
                                        3226860024 @zhuq97
                                        最后由 编辑

                                        @zhuq97 你好,请问您解决了吗,我也遇到类似的问题

                                        1 条回复 最后回复 回复 引用 0
                                        • 32268600243
                                          3226860024
                                          最后由 编辑

                                          请问您说的publish指的是哪块的呢

                                          1 条回复 最后回复 回复 引用 0
                                          • 32268600243
                                            3226860024 @小鱼
                                            最后由 编辑

                                            @小鱼 鱼哥,这个问题我还是存在,看你们交流了很多,还是没有给出解决方案啊,哪个publish没说是哪个啊,这问题困扰好久了。可以指明详细一点吗?
                                            er
                                            [ERROR] [1659434560.178463185] [moveit_ur_test]: Could not find parameter robot_description_semantic and did not receive robot_description_semantic via std_msgs::msg::String subscription within 10.000000 seconds. Error: Could not parse the SRDF XML File. Error=XML_ERROR_EMPTY_DOCUMENT ErrorID=13 (0xd) Line number=0 at line 715 in /home/******/ws_moveit2/src/srdfdom/src/model.cpp [ERROR] [1659434560.193027035] [moveit_rdf_loader.rdf_loader]: Unable to parse SRDF [FATAL] [1659434560.193493008] [move_group_interface]: Unable to construct robot model. Please make sure all needed information is on the parameter server. terminate called after throwing an instance of 'std::runtime_error' what(): Unable to construct robot model. Please make sure all needed information is on the parameter server. [ros2run]: Aborted

                                            小鱼小 1 条回复 最后回复 回复 引用 0
                                            • 第一个帖子
                                              最后一个帖子
                                            皖ICP备16016415号-7
                                            Powered by NodeBB | 鱼香ROS