CIFASIS / tara-stereo-camera

ROS2 driver for the e-consystems See3CAM_Stereo (Tara) camera

Home Page:https://www.e-consystems.com/3D-USB-stereo-camera.asp

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

tara-stereo-camera

ROS2 driver for the e-consystems See3CAM_Stereo (Tara) camera based on the see3cam package.

Publishes the left and right camera images apart and also concatenated. Haves support for setting and getting exposure and brightness and for getting IMU data.

Installation

  1. Clone this repo inside src directory which has to be inside some directory that will be your ROS2 workspace (lets say ros2_ws) and cd into ros2_ws. There can be others ROS2 packages inside src dir.
mkdir ros2_ws/src -p
cd ros2_ws/src
git clone https://github.com/CIFASIS/tara-stereo-camera
cd ..
  1. Compile the package (being at ros2_ws directory):
colcon build --symlink-install
  1. Create the directory which stores the camera config files (yaml):
mkdir ~/.ros/camera_info -p 
  1. Assign permissions to use the device that corresponds to the camera:
sudo cp src/tara-stereo-camera/udev/99-uvc.rules /etc/udev/rules.d/99-uvc.rules

Launch

  1. Configure the package's environment (you've to do this once on every terminal where you want to launch the package. Otherwise add the line to your ~/.bashrc file, in that case specify full path to setup.bash).
cd ros2_ws
source install/setup.bash
  1. Launch the package.
ros2 launch uvc_camera tara_launch.launch

The following topics will be created upon launching this driver.

    /stereo/concat
    /stereo/image_raw
    /stereo/left/image_raw
    /stereo/left/camera_info
    /stereo/right/image_raw
    /stereo/right/camera_info
    /stereo/get_brightness
    /stereo/set_brightness
    /stereo/get_exposure
    /stereo/set_exposure
    /stereo/get_IMU
    /stereo/get_inclination

The Camera preview and IMU data can be seen using RQt. To Install and use RQt

sudo apt install ros-humble-rqt*
rqt

Some Tested Examples

  • To check the exposure of the camera at run time:
ros2 topic echo /stereo/get_exposure
  • To check the brightness of the camera at run time:
ros2 topic echo /stereo/get_brightness
  • To change the exposure of the camera at run time:
ros2 topic pub -1 /stereo/set_exposure std_msgs/Float64 "data: <value>"

e.g. :

ros2 topic pub -1 /stereo/set_exposure std_msgs/Float64 "data: 20000"
  • To change the brightness of the camera at run time:
ros2 topic pub -1 /stereo/set_brightness std_msgs/Float64 "data: <value>"

e.g. :

ros2 topic pub -1 /stereo/set_brightness std_msgs/Float64 "data: 6"
  • To read the inclination of the camera using the built-in IMU:
ros2 topic echo /stereo/get_inclination
  • To read the angular velocity and linear acceleration of the camera using built-in IMU:
ros2 topic echo /stereo/get_IMU

Comments

Only the bare minimum of the package necessary to use the Tara camera has been migrated to ROS2. The package also have nodes to work with more general cameras and that hasn't been migrated. Anyone who need that migrated feel free to do it, the work already done may help to migrate what's left.

About

ROS2 driver for the e-consystems See3CAM_Stereo (Tara) camera

https://www.e-consystems.com/3D-USB-stereo-camera.asp


Languages

Language:C++ 82.1%Language:C 14.9%Language:CMake 2.9%