Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/MIUAV/vibe-coding-ros2 --skill gazebo-sensor-plugin명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SKILL.md 표시 중
SOC 직업 분류 기준
| name | gazebo-sensor-plugin |
| description | Gazebo 传感器插件技能 - 激光雷达、相机、IMU、深度相机插件配置 |
| argument-hint | Gazebo传感器 OR laser OR camera OR imu OR sensor plugin |
| user-invocable | true |
Gazebo 传感器插件配置
当需要以下帮助时使用此技能:
<!-- Gazebo 激光雷达 -->
<link name="lidar_link">
<sensor name="lidar_sensor" type="ray">
<pose>0 0 0 0 0 0</pose>
<visualize>true</visualize>
<update_rate>10</update_rate>
<ray>
<scan>
<horizontal>
<samples>720</samples>
<resolution>1</resolution>
<min_angle>-3.14159</min_angle>
<max_angle>3.14159</max_angle>
</horizontal>
</scan>
<range>
<min>0.1</min>
<max>30.0</max>
<resolution>0.01</resolution>
</range>
<noise>
<type>gaussian</type>
<mean>0.0</mean>
<stddev>0.01</stddev>
</noise>
</ray>
<plugin name="gazebo_ros_ray_sensor" filename="libgazebo_ros_ray_sensor.so">
<ros>
<namespace>/robot</namespace>
<remapping>out:=scan</remapping>
</ros>
<output_type>sensor_msgs/LaserScan</output_type>
</plugin>
</sensor>
</link>
<!-- Gazebo 相机 -->
<link name="camera_link">
<sensor name="camera_sensor" type="camera">
<update_rate>30</update_rate>
<camera name="rgb_camera">
<horizontal_fov>1.047</horizontal_fov>
<image>
<width>640</width>
<height>480</height>
<format>R8G8B8</format>
</image>
<clip>
<near>0.1</near>
<far>100</far>
</clip>
</camera>
<plugin name="gazebo_ros_camera" filename="libgazebo_ros_camera.so">
<ros>
/robot
image_raw:=camera/image_raw
camera_info:=camera/camera_info
rgb
camera_link
<!-- Gazebo IMU -->
<link name="imu_link">
<sensor name="imu_sensor" type="imu">
<always_on>true</always_on>
<update_rate>100</update_rate>
<imu>
<angular_velocity>
<x>
<noise type="gaussian">
<mean>0</mean>
<stddev>0.0002</stddev>
</noise>
</x>
<y>
<noise type="gaussian">
<mean>0</mean>
<stddev>0.0002</stddev>
</noise>
</y>
<z>
< =>
0
0.0002
0
0.017
0
0.017
0
0.017
/robot
imu:=imu
imu_link
# launch/gazebo_bridge.launch.py
from launch import LaunchDescription
from launch_ros.actions import Node
def generate_launch_description():
return LaunchDescription([
# 激光扫描桥接
Node(
package='ros_gz_bridge',
executable='parameter_bridge',
arguments=['/lidar/scan@sensor_msgs/msg/LaserScan@gz.msgs.LaserScan'],
remappings=[('/lidar/scan', '/scan')]
),
# 图像桥接
Node(
package='ros_gz_bridge',
executable='parameter_bridge',
arguments=['/camera/image_raw@sensor_msgs/msg/Image@gz.msgs.Image'],
remappings=[('/camera/image_raw', '/image_raw')]
),
# TF 桥接
Node(
package='ros_gz_bridge',
executable='parameter_bridge',
arguments=['/tf@tf2_msgs/msg/TFMessage@gz.msgs.Pose_V']
),
# IMU 桥接
Node(
package='ros_gz_bridge',
executable='parameter_bridge',
arguments=['/imu/data@sensor_msgs/msg/Imu@gz.msgs.IMU']
)
])