RViz与Gazebo中自定义STL模型错位问题求助
ROS2机械臂自定义STL基座错位问题解决思路
我正在跟随ROS2机械臂示例学习,机械臂部件以STL格式呈现。使用示例自带的STL文件时,机械臂完全对齐;但用Tinkercad创建的基座在RViz和Gazebo中均出现错位:
以下是针对性的解决思路:
检查STL模型原点位置
Tinkercad默认模型原点可能和示例STL的原点不一致。打开你的基座模型,把安装基准点(比如和其他部件连接的接触面中心)移到Tinkercad的坐标原点(网格中心)后再导出STL。核对URDF的链接参数
打开机器人URDF文件,查看基座link的<origin>参数,确认自定义基座的origin配置和原基座完全匹配。如果新模型原点调整过,要同步修改origin的x/y/z偏移或rpy旋转值。统一模型单位
Tinkercad默认单位多为毫米,而ROS示例通常用米。导出STL时确认单位设置,或者在URDF的<mesh>标签里用scale参数调整缩放比例,确保尺寸和原部件一致。修正模型朝向
若Tinkercad中模型的朝向和原基座不同,直接在Tinkercad里旋转模型对齐原朝向,也可以在URDF的origin中添加旋转参数修正姿态。重新导出并清理模型
Tinkercad导出的STL可能带冗余数据,尝试重新导出(确保只选中基座形状),必要时用MeshLab这类工具修复模型拓扑错误,再导入ROS环境测试。
内容的提问来源于stack exchange,提问作者Steve Brown
相关产品推荐
相关产品推荐

