Using Gazebo plugins with ROS

本文详细介绍了ROS环境中摄像机模型的构建,包括固定关节、链接、碰撞体、视觉体和惯性体等组件的定义。同时阐述了如何在Gazebo中配置摄像机传感器,涉及更新率、视野、图像尺寸、裁剪范围和噪声参数的设定,以实现真实感的仿真场景。

Camera

RRBot Example


rrbot.xacro

  <joint name="camera_joint" type="fixed">
    <axis xyz="0 1 0" />
    <origin xyz="${camera_link} 0 ${height3 - axel_offset*2}" rpy="0 0 0"/>
    <parent link="link3"/>
    <child link="camera_link"/>
  </joint>

  <!-- Camera -->
  <link name="camera_link">
    <collision>
      <origin xyz="0 0 0" rpy="0 0 0"/>
      <geometry>
    <box size="${camera_link} ${camera_link} ${camera_link}"/>
      </geometry>
    </collision>

    <visual>
      <origin xyz="0 0 0" rpy="0 0 0"/>
      <geometry>
    <box size="${camera_link} ${camera_link} ${camera_link}"/>
      </geometry>
      <material name="red"/>
    </visual>

    <inertial>
      <mass value="1e-5" />
      <origin xyz="0 0 0" rpy="0 0 0"/>
      <inertia ixx="1e-6" ixy="0" ixz="0" iyy="1e-6" iyz="0" izz="1e-6" />
    </inertial>
  </link>

rrbot.gazebo

 <!-- camera -->
  <gazebo reference="camera_link">
    <sensor type="camera" name="camera1">
      <update_rate>30.0</update_rate>
      <camera name="head">
        <horizontal_fov>1.3962634</horizontal_fov>
        <image>
          <width>800</width>
          <height>800</height>
          <format>R8G8B8</format>
        </image>
        <clip>
          <near>0.02</near>
          <far>300</far>
        </clip>
        <noise>
          <type>gaussian</type>
          <!-- Noise is sampled independently per pixel on each frame.
               That pixel's noise value is added to each of its color
               channels, which at that point lie in the range [0,1]. -->
          <mean>0.0</mean>
          <stddev>0.007</stddev>
        </noise>
      </camera>
      <plugin name="camera_controller" filename="libgazebo_ros_camera.so">
        <alwaysOn>true</alwaysOn>
        <updateRate>0.0</updateRate>
        <cameraName>rrbot/camera1</cameraName>
        <imageTopicName>image_raw</imageTopicName>
        <cameraInfoTopicName>camera_info</cameraInfoTopicName>
        <frameName>camera_link</frameName>
        <hackBaseline>0.07</hackBaseline>
        <distortionK1>0.0</distortionK1>
        <distortionK2>0.0</distortionK2>
        <distortionK3>0.0</distortionK3>
        <distortionT1>0.0</distortionT1>
        <distortionT2>0.0</distortionT2>
      </plugin>
    </sensor>
  </gazebo>


test@test-VMware20-1:~$ apt search gz-sim Sorting... Done Full Text Search... Done libgz-sim6/jammy 6.16.0-2~jammy all transitional package libgz-sim6-dbg/jammy 6.16.0-2~jammy all transitional package libgz-sim6-dev/jammy 6.16.0-2~jammy all transitional package libgz-sim6-plugins/jammy 6.16.0-2~jammy all transitional package python3-gz-sim6/jammy 6.16.0-2~jammy all transitional package ros-humble-ros-gz-sim/jammy 0.244.16-2jammy.20241205.203411 amd64 Tools for using Gazebo Sim simulation with ROS. ros-humble-ros-gz-sim-dbgsym/jammy 0.244.16-2jammy.20241205.203411 amd64 debug symbols for ros-humble-ros-gz-sim ros-humble-ros-gz-sim-demos/jammy 0.244.16-2jammy.20250211.200053 amd64 Demos using Gazebo Sim simulation with ROS. ros-iron-ros-gz-sim/jammy 0.254.2-1jammy.20241114.224242 amd64 Tools for using Gazebo Sim simulation with ROS. ros-iron-ros-gz-sim-dbgsym/jammy 0.254.2-1jammy.20241114.224242 amd64 debug symbols for ros-iron-ros-gz-sim ros-iron-ros-gz-sim-demos/jammy 0.254.2-1jammy.20241126.215247 amd64 Demos using Gazebo Sim simulation with ROS. ros-jazzy-gz-sim-vendor/noble 0.0.8-1noble.20250220.105624 amd64 Vendor package for: gz-sim8 8.9.0 Gazebo Sim : A Robotic Simulator ros-jazzy-gz-sim-vendor-dbgsym/noble 0.0.8-1noble.20250220.105624 amd64 debug symbols for ros-jazzy-gz-sim-vendor ros-jazzy-irobot-create-gz-sim/noble 3.0.4-1noble.20250305.001338 amd64 Metapackage for the iRobot(R) Create(R) 3 robot Ignition simulator ros-jazzy-ros-gz-sim/noble 1.0.9-1noble.20250220.114428 amd64 Tools for using Gazebo Sim simulation with ROS. ros-jazzy-ros-gz-sim-dbgsym/noble 1.0.9-1noble.20250220.114428 amd64 debug symbols for ros-jazzy-ros-gz-sim ros-jazzy-ros-gz-sim-demos/noble 1.0.9-1noble.20250220.115000 amd64 Demos using Gazebo Sim simulation with ROS. ros-rolling-gz-sim-vendor/noble 0.2.1-1noble.20250227.011014 amd64 Vendor package for: gz-sim9 9.1.0 Gazebo Sim : A Robotic Simulator ros-rolling-gz-sim-vendor-dbgsym/
03-14
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值