generic_thermal_camera.urdf.xacro 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?xml version="1.0"?>
  2. <robot xmlns:xacro="http://www.ros.org/wiki/xacro">
  3. <xacro:include filename="$(find hector_xacro_tools)/urdf/sensor_macros.urdf.xacro" />
  4. <xacro:macro name="generic_thermal_camera" params="name parent resolution_x:=320 resolution_y:=256 *origin">
  5. <joint name="${name}_joint" type="fixed">
  6. <xacro:insert_block name="origin" />
  7. <parent link="${parent}"/>
  8. <child link="${name}_frame"/>
  9. </joint>
  10. <link name="${name}_frame">
  11. </link>
  12. <xacro:add_optical_frame name="${name}" />
  13. <gazebo reference="${name}_frame">
  14. <sensor type="camera" name="thermal_camera_sensor">
  15. <update_rate>10</update_rate>
  16. <camera>
  17. <horizontal_fov>${90.0*M_PI/180.0}</horizontal_fov>
  18. <image>
  19. <format>R8G8B8</format>
  20. <width>${resolution_x}</width>
  21. <height>${resolution_y}</height>
  22. </image>
  23. <clip>
  24. <near>0.01</near>
  25. <far>100</far>
  26. </clip>
  27. </camera>
  28. <plugin name="thermal_camera_controller" filename="libgazebo_ros_thermal_camera.so">
  29. <alwaysOn>true</alwaysOn>
  30. <updateRate>10</updateRate>
  31. <imageTopicName>/${name}/image_raw</imageTopicName>
  32. <cameraInfoTopicName>/${name}/camera_info</cameraInfoTopicName>
  33. <frameName>${name}_optical_frame</frameName>
  34. </plugin>
  35. </sensor>
  36. </gazebo>
  37. </xacro:macro>
  38. </robot>