gazebo

启动文件
想修改仿真环境中的模型,修改其中的sdf plane一行

urdf问题
导入gazebo的urdf要删除utfcode这一项

gazebo中乱飞的urdf

防止乱飞

————————————————

原文链接:https://blog.csdn.net/weixin_36965307/article/details/125343227

固定后,散架问题
导入的urdf的origin 和 实际的pose不同,这个就是坐标系的问题,应该在solid中解决,目前没找到原因。
红x绿y,模型的origin之间应该是叠加的关系。

https://blog.csdn.net/qq_33179208/article/details/70805896讲的坐标系gazebo的

必须要有params
必须要有params这个参数,rviz中才会启动模型

模型成功导入gazebo发生严重抖动

  1. 添加模型摩擦力,可以防止随便乱动,但是不能解决抖动的问题
    2.抖动是collision的问题,模型与地面发生了碰撞应该是

发生碰撞的模型

gazebo下载模型

https://blog.csdn.net/BlacKingZ/article/details/112647264

加入了几个简单的小模型

gazebo的插件无法加入问题,

插件的加入有三个过程:

  1. 建立该插件的link模型
  2. 设置该插件的joint,保证和模型相连。
  3. 对该插件进行配置
  <link name="imu_link">
  	<visual>
      <origin xyz="0 0 0.0" rpy="0 0 0"/>
      <geometry>
		    <box size="0.2 0.2 0.2"/>
      </geometry>
    </visual>
    <collision>
      <origin xyz="0 0 0.0" rpy="0 0 0"/>
      <geometry>
		    <box size="0.02 0.02 0.02"/>
      </geometry>
    </collision>
    <inertial>
      <mass value="0.1"/>
        <inertia ixx="0.000190416666667" ixy="0" ixz="0" iyy="0.0001904" iyz="0" izz="0.00036"/>
      </inertial>
  </link>

  <!-- imu joint -->
  <joint name="imu_joint" type="fixed">
      <parent link="link_3" />
      <child link="imu_link" />
      <origin xyz="0 0 0.02" />
  </joint>
  
  <gazebo>
  <gazebo reference="imu_link">
      <sensor name="imu_sensor" type="imu">
      <plugin filename="libgazebo_ros_imu_sensor.so" name="imu_plugin">
          <ros>
            <namespace>/</namespace>
            <remapping>~/out:=imu</remapping>
          </ros>
          <initial_orientation_as_reference>false</initial_orientation_as_reference>
        </plugin>
        <always_on>true</always_on>
        <update_rate>100</update_rate>
        <visualize>true</visualize>
        <imu>
          <angular_velocity>
            <x>
              <noise type="gaussian">
                <mean>0.0</mean>
                <stddev>2e-4</stddev>
                <bias_mean>0.0000075</bias_mean>
                <bias_stddev>0.0000008</bias_stddev>
              </noise>
            </x>
            <y>
              <noise type="gaussian">
                <mean>0.0</mean>
                <stddev>2e-4</stddev>
                <bias_mean>0.0000075</bias_mean>
                <bias_stddev>0.0000008</bias_stddev>
              </noise>
            </y>
            <z>
              <noise type="gaussian">
                <mean>0.0</mean>
                <stddev>2e-4</stddev>
                <bias_mean>0.0000075</bias_mean>
                <bias_stddev>0.0000008</bias_stddev>
              </noise>
            </z>
          </angular_velocity>
          <linear_acceleration>
            <x>
              <noise type="gaussian">
                <mean>0.0</mean>
                <stddev>1.7e-2</stddev>
                <bias_mean>0.1</bias_mean>
                <bias_stddev>0.001</bias_stddev>
              </noise>
            </x>
            <y>
              <noise type="gaussian">
                <mean>0.0</mean>
                <stddev>1.7e-2</stddev>
                <bias_mean>0.1</bias_mean>
                <bias_stddev>0.001</bias_stddev>
              </noise>
            </y>
            <z>
              <noise type="gaussian">
                <mean>0.0</mean>
                <stddev>1.7e-2</stddev>
                <bias_mean>0.1</bias_mean>
                <bias_stddev>0.001</bias_stddev>
              </noise>
            </z>
          </linear_acceleration>
        </imu>
      </sensor>
    </gazebo>
    </gazebo>

gazebo颜色不显示的原因

要在下面这块代码中设置

    <gazebo reference="base_link">
     <material>Gazebo/Pink</material>
   </gazebo>
      <gazebo reference="link_1">
     <material>Gazebo/Yellow</material>
   </gazebo>
      <gazebo reference="link_2">
     <material>Gazebo/Blue</material>
   </gazebo>
      <gazebo reference="link_3">
     <material>Gazebo/Green</material>
   </gazebo>

前面urdf的link中设置的颜色,在rviz中会显示。
颜色列表

插件加入

黑色的是imu

imu的数据读取

ros2 topic list
ros2 topic info /imu
ros2 topic echo /imu

rqt可视化

moveit setup assistant不显示模型文件

说是urdf有问题
但是我正常启动rviz看urdf文件是没有问题的,这个地方并不一定是有问题,由于我模型的质心问题,是0 0 4.5 导致模型的visual比较高,所以这个地方看不到,但是经过正常的设置以后是可以完成的。
参考下方链接牛的

注意要保证所有地方的变量名相同,如joint什么的不然就会导致各种插件的链接出错

完整编辑一个urdf文件导入ros2并启动gazebo

坐标系编辑最麻烦:[https://www.bilibili.com/video/BV1a54y1z74q/?p=5&vd_source=8f26fba86844127b4d9a3fb69330ba05]

两个自己模仿别人写的launch文件

** ros2 run moveit_setup_assistant moveit_setup_assistant 用moviet assistant配置,得到配置文件**

https://blog.csdn.net/joyopirate/article/details/129424607

launch文件
一个是my_moviet_rviz.launch.py还有一个是gazebo.launch.py,先启动gazebo这个就可以完成gazebo和moviet联动,moviet中规划好路径后gazebo会进行运动。

realsense 导入

https://github.com/SyrianSpock/realsense_gazebo_plugin/blob/master/urdf/realsense-RS200.macro.xacro 参考这个

xacro转换成urdf为空的时候,可能prefix没有设置好

realsense插件找不到报错

[Err] [Plugin.hh:212] Failed to load plugin librealsense_gazebo_plugin.so: librealsense_gazebo_plugin.so: cannot open shared object file: No such file or directory

如何添加ros2中的包到路径中

  1. 先export写入到路径中
    export AMENT_PREFIX_PATH=~/Desktop/code/d2lros2/chapt2/chapt2_ws/install/my_moviet:$AMENT_PREFIX_PATH
  2. 再source
  3. source ~/Desktop/code/d2lros2/chapt2/chapt2_ws/install/setup.bash
    source ~/Desktop/code/d2lros2/chapt2/chapt2_ws/src/mii3/my_moviet/install/setup.bash
  4. 再检查环境变量
    echo $AMENT_PREFIX_PATH
    然后就可以了

不显示模型,gazebo

奇怪啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊
之前再mymii3版本的urdf中,就是没有添加深度相机里面,使用的上面那个spawn_entity_cmd函数,然后可以正常使用,现在添加深度相机的插件以后,只能用下面这个。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值