当前位置: 首页 > news >正文

长沙网站开发 58微信开发社区

长沙网站开发 58,微信开发社区,做教育app的网站有哪些,做一个好一点网站费用多少目录 写在前面的话整体流程1 URDF 文件结构2 查看原始碰撞形状描述3 加入简单碰撞形状描述方法一 Meshlab 自动测量方法二 人为测量 4 加入XACRO函数简化描述 最终结果展示侧视图正视图碰撞几何体中心点设置不对出现的结果 写在前面的话 本文使用的 URDF 文件是由 solidworks …

目录

  • 写在前面的话
  • 整体流程
    • 1 URDF 文件结构
    • 2 查看原始碰撞形状描述
    • 3 加入简单碰撞形状描述
      • 方法一 Meshlab 自动测量
      • 方法二 人为测量
    • 4 加入XACRO函数简化描述
  • 最终结果展示
    • 侧视图
    • 正视图
    • 碰撞几何体中心点设置不对出现的结果

写在前面的话

本文使用的 URDF 文件是由 solidworks 的 URDF export 插件生成,详情请看上一篇文章:solidworks模型导出urdf(超详细)

整体流程

1 URDF 文件结构

写法跟XML文件格式非常类似,<robot>块包含了所有机器人的描述,<link>块描述了零件的连接,<joint>块描述了单个零件。collision碰撞的描述是在<link>块中,包含<origin><geometry>两个属性,<geometry>描述的是碰撞几何体的形状,<origin>描述的是碰撞几何体的姿态,包括中心点的位置和欧拉角(这个地方需要重点关注)

在这里插入图片描述

2 查看原始碰撞形状描述

原始的 URDF 文件是直接使用零件的三维模型文件作为碰撞几何体的描述,但是这样在仿真的时候 gazebo 仿真软件需要耗费大量的时间进行碰撞计算,gazebo 会出现加载时间过长和崩溃的情况,所以有必要进行简化这个碰撞形状描述

<collision><originxyz="0 0 0"rpy="0 0 0" /><geometry><meshfilename="package://car_urdf/meshes/left_front_wheel_Link.STL" /></geometry>
</collision>

3 加入简单碰撞形状描述

需要提前下载meshlab软件,方便后面的碰撞形状参数测量和查看

sudo apt install meshlab

方法一 Meshlab 自动测量

在meshlab界面菜单栏找到 Render > Show Box Corners 可以查看外接矩形的尺寸大小(下图左上角的Size)该外接矩形中心点的位置(下图左上角的center),这个矩形中心点一般不是零件的原点(可以通过下面第二图的坐标轴看出),因为零件不一定是对称物体,而且零件的原点也跟它保存的三维数据(三维坐标)有关。

注意:这个只能支持拟合外接矩阵

在这里插入图片描述

在这里插入图片描述

方法二 人为测量

还可以如下图操作,选中菜单栏的正方体,并在右边 Measure Info 设置为 On,进行人为测量,这个人为结果可能会有偏差,但其实影响不大,因为我们在实际设置碰撞几何体的时候经常会预设一定范围的安全空间。

在这里插入图片描述

为了得到更加准确的结果,可以选择不同的视图进行查看并测量

在这里插入图片描述

  1. 引入长方体描述整个机器人
    box 表示长方体,size分别表示长宽高三个尺寸。
    box size = 外接矩形的尺寸大小(下图左上角的Size)
    origin xyz = 该外接矩形中心点的位置(下图左上角的center)
    <collision><origin rpy="0 0 0" xyz="-0.9 0 0.1"/><geometry><box size="2.9 1.5 1.6"/></geometry></collision>

在这里插入图片描述

  1. 引入长方体描述车轮转向零件
    box 表示长方体,size分别表示长宽高三个尺寸。
    <collision><origin rpy="0 0 0" xyz="0 -0.03 -0.27"/><geometry><box size="0.34 0.39 0.54"/></geometry></collision>

在这里插入图片描述

  1. 引入圆柱体描述车轮
    cylinder 表示圆柱体,length表示圆柱的高,radius表示圆柱的底的半径。

这里要注意的是要设置欧拉角,因为圆柱体默认是竖直的,也就是底部跟地面(xy面)平行,但是车轮是竖直的,所以这里的圆柱需要横滚角(roll角)设为90度,也就是约等于1.57弧度。

    <collision><origin rpy="1.5707963267948966 0 0" xyz="0 -0.05 0"/><geometry><cylinder length="0.2" radius="0.3"/></geometry></collision>

在这里插入图片描述

4 加入XACRO函数简化描述

  1. 先把.urdf文件的后缀加上.xacro
  2. 在urdf文件头部的<robot name=“”xxx“”>后面属性加上xmlns:xacro="http://www.ros.org/wiki/xacro"
<robotname="car_urdf" xmlns:xacro="http://www.ros.org/wiki/xacro">
  1. 因为我的三维模型车轮转向器和车轮都是重复的东西,可以进行统一函数封装,方便函数调用,这个类似函数定义,不细讲,可以去看古月居的视频,或者找几个代码看看。
    这里的左右轮和左右轮转向器为什么要分开写?因为他们的中心点是不一样的,这个需要注意一下,这个可能真正的工程试验才会遇到,提醒一下。
  <xacro:property name="base_box_size" value="2.9 1.5 1.6"/><xacro:property name="orient_box_size" value="0.34 0.39 0.54"/><xacro:property name="wheel_cylinder_radius" value="0.3"/><xacro:property name="wheel_cylinder_length" value="0.2"/><xacro:macro name='base_collision'><collision><originxyz="-0.9 0 0.1"rpy="0 0 0" /><geometry><box size="${base_box_size}"/></geometry></collision></xacro:macro><xacro:macro name='left_orient_collision'><collision><originxyz="0 -0.03 -0.27"rpy="0 0 0" /><geometry><box size="${orient_box_size}"/></geometry></collision></xacro:macro><xacro:macro name='right_orient_collision'><collision><originxyz="0 0.03 -0.27"rpy="0 0 0" /><geometry><box size="${orient_box_size}"/></geometry></collision></xacro:macro><xacro:macro name='left_wheel_collision'><collision><originxyz="0 -0.05 0"rpy="${pi/2} 0 0" /><geometry><cylinder radius="${wheel_cylinder_radius}" length="${wheel_cylinder_length}"/></geometry></collision></xacro:macro><xacro:macro name='right_wheel_collision'><collision><originxyz="0 0.05 0"rpy="${pi/2} 0 0" /><geometry><cylinder radius="${wheel_cylinder_radius}" length="${wheel_cylinder_length}"/></geometry></collision></xacro:macro>

最终结果展示

侧视图

在这里插入图片描述

正视图

在这里插入图片描述

碰撞几何体中心点设置不对出现的结果

这是长方体中心点全部默认为 0 ,且车轮圆柱没设置欧拉角的显示结果

在这里插入图片描述

http://www.yayakq.cn/news/648192/

相关文章:

  • 公司网站功能模块网站建设服务费应计入什么科目
  • 哪个网站是专做宝宝饭的公司名字大全及寓意
  • 企业 手机网站网站设计 做鼠标效果
  • 怎么自己做网站模板有什么网站可以做电子版邀请函
  • 网站建设优化推广排名网页设计实验报告单模板
  • 长宁专业网站制作公司erp系统介绍
  • 小程序开发网站设计制作中科建建设发展有限公司网站
  • 成都网站备案查询门户网站编辑流程
  • 可商用的免费素材网站wordpress免费主机空间
  • 凡科网站的ftp聊城手机网站建设价格
  • 网站建设技术包括廊坊网站建设技术外包
  • 企业电子商务网站开发数据库设计wordpress tdk优化
  • 招标网站建设申请下载贵州省建设厅网站
  • 网站在线咨询系统wordpress 好用吗
  • 聊城市建设局网站首页wordpress 头像加速
  • 昆明行业网站建设自己做的网站打开超慢
  • 网站建设过程发生的费用生鲜网站建设背景
  • 手机网站发号系统源码高校信息化建设 网站
  • 襄阳住房和城乡建设局网站首页2017响应式网站 全站
  • 门户网站的基本特征有网站建设整个流程图
  • 视觉网站建设wordpress备份图文文章
  • wordpress可以做什么站按天计费的seo弊端
  • 常德经开区网站官网wordpress适用于图片站的主题
  • 建行的官方网站吗h5做的网站如何连接数据库
  • 个人做流量大的网站网页设计html代码大全怎么改颜色
  • php网站建设外国参考文献阿里巴巴网站导航栏怎么做
  • 做游戏网站要备案吗html5网站建设报价
  • 长沙企业如何建网站合肥市建设工程市场价格信息网站
  • 南京做网站南京乐识赞公司简介ppt模板素材
  • 居家养老网站建设wordpress导入 ftp