luxonis / depthai-ros

Official ROS Driver for DepthAI Sensors.
MIT License
239 stars 173 forks source link

Urdf loader humble #347

Closed Serafadam closed 10 months ago

Serafadam commented 1 year ago

Overview

Author: @Serafadam

Issue

Issue link (if present): https://github.com/luxonis/depthai-ros/issues/98 and more Issue description: Publish accurate sensor transforms based on calibration data and refactor how and which urdf is launched. Related PRs

Changes

ROS distro: Humble List of changes:

Testing

Hardware used: OAK-D PRO Depthai library version: 2.22

Visuals from testing

Add screenshots/gifs/videos from RVIZ or other visualizers demonstrating the effect of the changes when applicable.

borongyuan commented 12 months ago

Hi @Serafadam , Could you add imu frame for other camera models to urdf? This is what we really need. For dm9098 (OAK-D S2 & OAK-D Pro), since the imu extrinsics does not exist in calibration data, I measured the following parameters from the pcb file.

<joint name="$(arg camera_name)_imu_joint" type="fixed">
    <parent link="$(arg base_frame)"/>
    <child  link="$(arg camera_name)_imu_frame"/>
    <origin xyz="-0.008 -0.037945 -0.00079" rpy="${pi} ${pi/2} 0" />
</joint>

For ng9097 (PoE models):

<joint name="$(arg camera_name)_imu_joint" type="fixed">
    <parent link="$(arg base_frame)"/>
    <child  link="$(arg camera_name)_imu_frame"/>
    <origin xyz="-0.008 -0.04 -0.020265" rpy="${pi} ${pi/2} 0" />
</joint>