什么 门户网站媒体库wordpress
- 作者: 五速梦信息网
- 时间: 2026年04月20日 09:19
当前位置: 首页 > news >正文
什么 门户网站,媒体库wordpress,仿做购物网站,网页设计视频网站建设1 安装MoveIt2
安装参照在ROS2中#xff0c;通过MoveIt2控制Gazebo中的自定义机械手 安装 MoveIt2可以选择自己编译源码安装#xff0c;或者直接从二进制安装。 个人建议直接二进制安装#xff0c;可以省很多事。 sudo apt install ros-humble-moveitmoveit-setup-assistan…1 安装MoveIt2
安装参照在ROS2中通过MoveIt2控制Gazebo中的自定义机械手 安装 MoveIt2可以选择自己编译源码安装或者直接从二进制安装。 个人建议直接二进制安装可以省很多事。 sudo apt install ros-humble-moveitmoveit-setup-assistant 这是一个配套moveit的配置助手有了它就可以方便地进行很多初始化的工作。 sudo apt install ros-humble-moveit-setup-assistant顺便把别的东西也装了 sudo apt install ros-humble-moveit-*启动moveit_setup_assistant ros2 run moveit_setup_assistant moveit_setup_assistant弹出如下界面表示安装成功
2 运行并学习MoveIt2的tutorials
参照MoveIt教程
2.1 源码准备
创建工作空间mkdir -p ~/ws_moveit/src下载教程源码cd ~/ws_moveit/src
git clone -b humble https://github.com/moveit/moveit2_tutorials下载剩余源码vcs import –recursive moveit2_tutorials/moveit2_tutorials.repos出现红色字表示拉取失败我重复到第3次才拉取成功。。。拉取成功是这样的 在tutorials同一层文件夹多出了刚刚拉取成功的文件夹
2.2 开始编译–好多错 _
安装colcon mixin不然编译报错
sudo apt install python3-colcon-common-extensions
sudo apt install python3-colcon-mixin
colcon mixin add default https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
colcon mixin update default开始编译
cd /ws_moveit
colcon build –mixin release报错了。。。。
2.2.1. No module named ‘catkin_pkg’ 已解决
ModuleNotFoundError: No module named catkin_pkg奇怪pip list 明明有catkin_pkg啊 这是python环境的原因有catkin_pkg的是系统自带的python环境但是不知道为什么colcon build自动用的是anaconda的base环境而base环境里没有catkin_pkg所以报错了。。。
在base环境中安装
conda activate base
pip install catkin_pkg或者为 ROS 2 强制指定 Python 解释器 如果需要同时使用 Anaconda 和 ROS 2可以为 ROS 2 工具链强制指定 Python 解释器路径。 在运行 colcon build 前设置以下环境变量
export PYTHON_EXECUTABLE/usr/bin/python3再次
colcon build –mixin release2.2.2. No module named ‘em’错的对的在2.2.3 ModuleNotFoundError: No module named em安装em
pip install em再次
colcon build –mixin release2.2.3. module ‘em’ has no attribute ‘Interpreter’已解决
AttributeError: module em has no attribute Interpreter
附带另一个错
AttributeError: NoneType object has no attribute shutdown嘻嘻2.2.2 错了
应该是
pip uninstall em
pip uninstall empy
pip install empy3.3.42.2.4 No module named ‘lark’已解决
ModuleNotFoundError: No module named lark安装
pip install lark多个python环境共存容易分不清是在哪个环境里所以我把anaconda卸载了
2.2.5 error: no matching function for call to ‘hardware_interface::已解决
终于不是缺包的错了
[ 87%] Built target test_crc_utils
[ 87%] Built target test_data_utils
/home/xj/ws_moveit/src/ros2_robotiq_gripper/robotiq_driver/tests/test_robotiq_gripper_hardware_interface.cpp: In member function ‘virtual void robotiq_driver::test::TestRobotiqGripperHardwareInterface_load_urdf_Test::TestBody()’:
/home/xj/ws_moveit/src/ros2_robotiq_gripper/robotiq_driver/tests/test_robotiq_gripper_hardware_interface.cpp:79:114: error: no matching function for call to ‘hardware_interface::ResourceManager::ResourceManager(std::string, rclcpp::node_interfaces::NodeClockInterface::SharedPtr, rclcpp::node_interfaces::NodeLoggingInterface::SharedPtr)’79 | hardware_interface::ResourceManager rm(urdf, node.get_node_clock_interface(), node.get_node_logging_interface());| ^
In file included from /home/xj/ws_moveit/src/ros2_robotiq_gripper/robotiq_driver/tests/test_robotiq_gripper_hardware_interface.cpp:31:
/opt/ros/humble/include/hardware_interface/resource_manager.hpp:66:12: note: candidate: ‘hardware_interface::ResourceManager::ResourceManager(const string, bool, bool)’66 | explicit ResourceManager(| ^~~~~~~~~~~~~~~
/opt/ros/humble/include/hardware_interface/resource_manager.hpp:67:36: note: no known conversion for argument 2 from ‘rclcpp::node_interfaces::NodeClockInterface::SharedPtr’ {aka ‘std::shared_ptrrclcpp::node_interfaces::NodeClockInterface’} to ‘bool’67 | const std::string urdf, bool validate_interfaces true, bool activate_all false);| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/opt/ros/humble/include/hardware_interface/resource_manager.hpp:49:3: note: candidate: ‘hardware_interface::ResourceManager::ResourceManager()’49 | ResourceManager();| ^~~~~~~~~~~~~~~
/opt/ros/humble/include/hardware_interface/resource_manager.hpp:49:3: note: candidate expects 0 arguments, 3 provided目前这个错我还看不懂请教一下chatgpt 这个错误是因为 hardware_interface::ResourceManager 的构造函数在 ROS 2 Humble 版本中发生了变化。在你的代码中调用的 ResourceManager 构造函数与当前 ROS 2 Humble 提供的 API 不匹配。 问题原因 根据 Humble 版本的 hardware_interface::ResourceManager其构造函数定义如下
explicit ResourceManager(
const std::string urdf,
bool validate_interfaces true,
bool activate_all false);参数变化不再接受 rclcpp::node_interfaces::NodeClockInterface::SharedPtr 和 rclcpp::node_interfaces::NodeLoggingInterface::SharedPtr。 解决方法更新代码调用当前的 ResourceManager 构造函数签名。 解决方案 你需要修改 test_robotiq_gripper_hardware_interface.cpp 文件的第 79 行将错误的参数调整为符合 Humble API。
原始代码hardware_interface::ResourceManager rm(
urdf,
node.get_node_clock_interface(),
node.get_node_logging_interface());修改后的代码 根据 Humble 版本的构造函数去掉多余的参数只传递 urdf 字符串hardware_interface::ResourceManager rm(urdf);完整解释 validate_interfaces 和 activate_all 的默认值分别是 true 和 false。因此除非你有特殊需求否则直接传入 urdf 字符串即可。 如果需要自定义 validate_interfaces 和 activate_all 可以显式传入
hardware_interface::ResourceManager rm(urdf, true, false);验证修改 保存修改后的文件。 重新编译项目
总结 原因ROS 2 Humble 中 hardware_interface::ResourceManager 的 API 已更改。 解决调整构造函数调用移除多余的参数符合新的函数签名。
2.2.6 ImportError: cannot import name ‘soft_unicode’ from ‘markupsafe’
ImportError: cannot import name soft_unicode from markupsafe (/usr/local/lib/python3.10/dist-packages/markupsafe/init.py)这个错误是由于 markupsafe 版本不兼容 导致的。在较新的 markupsafe 版本如 2.1.0 及以上中soft_unicode 已被移除而某些旧版本的 jinja2 依赖于它。 解决方案 降级 markupsafe 版本我降级的这个 将 markupsafe 降级到兼容的版本如 2.0.1 pip install markupsafe2.0.1 –user升级 jinja2 版本 如果你的项目依赖较新版本的 markupsafe可以通过升级 jinja2 来解决兼容性问题。 pip install –upgrade jinja2 –userjinja2 的新版本如 3.1.0 及以上已经去除了对 soft_unicode 的依赖。 3. 检查 Python 包版本 确保你的环境中 jinja2 和 markupsafe 版本正确。使用以下命令查看当前版本 pip show jinja2 markupsafe我的输出 Name: Jinja2
Version: 2.10.3Name: MarkupSafe
Version: 3.0.2总结 降级 markupsafe 到 2.0.1。我降级的这个 升级 jinja2 到最新版本推荐。 确保正确的 Python 包被加载避免多环境冲突。
2.2.7 编译成功辣 然后source一下
source ~/ws_moveit/install/setup.bash或者添加路径到.bashrc
echo source ~/ws_moveit/install/setup.bash ~/.bashrc3. 导入urdf文件控制机器人
由于目前还没有找到专用于MoveIt2的视频教程先参照这个教程4.ROS机械臂开发中的主角MoveIt!
没有错误略过有错误记录解决方案
3.1 在Solidworks中配置并导出机器人的urdf文件
Solidworks to urdf
3.2 在RViz2中可视化机械臂
3.3 在MoveIt2中对机械臂进行运动控制
3.4
- 上一篇: 深圳做自适应网站公司软文推广方法
- 下一篇: 什么程序做网站安全vue开发视频网站
相关文章
-
深圳做自适应网站公司软文推广方法
深圳做自适应网站公司软文推广方法
- 技术栈
- 2026年04月20日
-
深圳做营销网站清理wordpress头部
深圳做营销网站清理wordpress头部
- 技术栈
- 2026年04月20日
-
深圳做物流网站搭建网站挣钱
深圳做物流网站搭建网站挣钱
- 技术栈
- 2026年04月20日
-
什么程序做网站安全vue开发视频网站
什么程序做网站安全vue开发视频网站
- 技术栈
- 2026年04月20日
-
什么创网站景德镇建设网站
什么创网站景德镇建设网站
- 技术栈
- 2026年04月20日
-
什么电脑做网站前段用怎样写营销策划方案
什么电脑做网站前段用怎样写营销策划方案
- 技术栈
- 2026年04月20日
