orbbec / OrbbecSDK_ROS2

OrbbecSDK ROS2 wrapper
Apache License 2.0
91 stars 35 forks source link

Implement the femto_bolt.urdf.xacro description #54

Closed Danilrivero closed 4 months ago

Danilrivero commented 4 months ago

Hello, I have created the following urdf.xacro to easily integrate the camera into anyone's robot.

Screenshot from 2024-07-15 11-29-22

The origin of the STL file is located in the bottom screw hole as shown here:

Screenshot from 2024-07-15 11-19-39

The STL file comes from https://github.com/orbbec/OrbbecHardware/blob/main/Femto%20Bolt/02_3D%20STP/Femto%20bolt.stp and I have downsampled the mesh to 500kB of weight for faster loading. As well as changing the origin to the location mentioned.

The resulting TF tree looks like this:

Screenshot from 2024-07-15 11-29-40

Which is compliant with the actual TF tree being published by the camera.

For anyone to integrate this urdf.xacro file into their main one they can easily use the following snippet:


  <xacro:femto_bolt parent="${prefix}base_link" prefix="camera" use_nominal_extrinsics="true">
  <origin xyz="0.0 0.0 0.0" rpy="${0.0 * M_PI} ${0.0 * M_PI} ${0.0 * M_PI}"/>
  </xacro:femto_bolt>

PS: It would be nice to reestructure the file view_model.launch.py to easily display and verify the models if needed.

I have made some changes here:

https://github.com/orbbec/OrbbecSDK_ROS2/blob/e9f053f47f27fc88c487e8db0bc3d2ee6604ed6b/orbbec_description/launch/view_model.launch.py#L27

Feel free to ask for the display launch file I have used if it is needed, else in a different PR that can be dealt with.

Warm regards.

Danilrivero commented 4 months ago

Hey @jian-dong can you take a look at this whenever possible? I don't know if Orbbec had in their roadmap integrating more camera descriptions but this one may be useful for those out there using the Femto Bolt.