sick_visionary_ros package from sick_visionary_ros reposick_visionary_ros |
|
Package Summary
Tags | SICK Visionary-S Visionary-T Mini 3D snapshot 3D vision stereo time-of-flight |
Version | 1.1.2 |
License | Unlicense |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/SICKAG/sick_visionary_ros.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-02-06 |
Dev Status | DEVELOPED |
CI status |
|
Released | RELEASED |
Tags | SICK Visionary-S Visionary-T Mini 3D snapshot 3D vision stereo time-of-flight |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- SICK AG TechSupport 3D Snapshot
Authors
- SICK AG TechSupport 3D Snapshot
sick_visionary_ros
Overview
This repository contains the ROS drivers for Sick Visionary-T Mini CX (V3S105-1AAAAAA) and Sick Visionary-S CX (V3S102-1AAAAAA and V3S102-1AABAAB).
License
The source code is released under The Unlicense.
Supported environments
The sick_visonary_ros package has been tested under [ROS] Noetic 64bit on Ubuntu 20.04.
Table of Contents
Supported Hardware
device name | part no. | description | version |
---|---|---|---|
Visionary-T Mini CX (V3S105-1AAAAAA) | 1112649 | 3D structured light stereovision camera with RGB data | ✔ 2.0.0 |
Visionary-S CX (V3S102-1AAAAAA, V3S102-1AABAAB)) | 1090184 1090185 | 3D time-of-flight camera | ✔ 6.0.0 |
Getting Started
Installation
1. First you need a working ROS installation. (ROS wiki) (If you already have a running ROS environment skip to step 2.
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' # Setup your sources.list
sudo apt install curl # if you haven't already installed curl
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add - #Set up your keys
sudo apt update #Update your Debian package index
sudo apt install ros-noetic-desktop ros-noetic-pcl-ros ros-noetic-pcl-conversions # install the packages
2. Clone this repository into your catkin workspace. Change <YOUR_WORKSPACE>
to your actual workspace name and <REPO_URL>
to the url provided by the Clone button.
cd ~/<YOUR_WORKSPACE>/src
git clone <REPO_URL>
After cloning this repository into the src folder of your catkin workspace run these additional git commands to have the correct submodules in place:
git submodule init
git submodule update
Note If you’ve received a distribution archive just extract it into the src folder of your catkin workspace.
Important Ensure the ROS environment is active.
source /opt/ros/noetic/setup.bash
3. Compile and install
cd ~/<YOUR_WORKSPACE> # move to the top level of your catkin workspace
catkin_make # Compile the drivers
catkin_make install # local install
source install/setup.bash # source your workspace on top of your environment
Quick Start
Important Ensure the camera device is connected to your computer.
- Connect your device via Ethernet to your local PC
- Connect the device to the power supply and wait until it has booted up
1. Use the launch file to start the node. For the Visionary-T Mini CX run:
roslaunch sick_visionary_ros sick_visionary-t_mini.launch
Note Please use the device specific launch file to start the correct driver variant.
2. Visualize the results in RViz (3D visualization tool for ROS). Open a new terminal and run
rosrun rviz rviz
You should see the rviz window pop up.
In the Displays window (inside Rviz) under Global Options, set Fixed Frame to camera
to match the default frameid (see parameters).
Subscibre to the topic you want to be displayed. **For example to view the _Depth map**:
Add > By Topic > /sick_visionary_t_mini > /depth > Camera > Ok
You should see a new display in the main Rviz window which visualises the topic data.
Note Optionally save the Rviz configuration to skip setting the parameters and windows at the next restart. Simply close the Rviz window and follow the instructions.
Launch files
There is one launch file for each supported device.
sick_visionary-s.launch
sick_visionary-t_mini.launch
The launch file starts the respective ROS Node and provides it with the necessary parameters and arguments.
Note The driver connects to the default IP and API-port (2114) of the device. To adapt this for your needs just edit the launch file for the specific variant.
Arguments
-
camera:
Name of the device. (default: sick_visionary_t_mini or sick_visionary_s)
Parameters
sick_visionary-s.launch
-
remote_device_ip:
IP-address of the device (string, default: 192.168.1.10) -
frame_id:
Name of the reference frame. (string, default: camera) -
enable_z:
Enables publishing of z-topic. (bool, default: true) -
enable_statemap:
Enables publishing of statemap-topic. (bool, default: true) -
enable_rgba:
Enables publishing of rgba-topic. (bool, default: true) -
enable_points:
Enables publishing of points-topic. (bool, default: true) -
desired_frequency:
Sets the desired frequency in the diagnostics-topic. Min and max frequencies are derived from it (double, default: 15.0)
sick_visionary-t_mini.launch
-
remote_device_ip:
IP-address of the device (string, default: 192.168.1.10) -
frame_id:
Name of the reference frame. (string, default: camera) -
enable_depth:
Enables publishing of depth-topic. (bool, default: true) -
enable_statemap:
Enables publishing of statemap-topic. (bool, default: true) -
enable_intensity:
Enables publishing of intensity-topic. (bool, default: true) -
enable_points:
Enables publishing of points-topic. (bool, default: true) -
desired_frequency:
Sets the desired frequency in the diagnostics-topic. Min and max frequencies are derived from it (double, default: 15.0)
Nodes
sick_visionary_s_node
Visionary-S is a 3D camera based on structured light stereovision. It provides real-time 3D and RGB data at up to 30 frame per second (fps).
Published Topics:
-
/camera_info
(sensor_msgs/CameraInfo) Camera calibration and metadata. -
/z
(sensor_msgs/Image) Depicts distance to camera. Contains uint16 distance values. -
/points
(sensor_msgs/PointCloud2) Contains XYZ point cloud [m] -
/statemap
(sensor_msgs/Image) Contains uint16 statemap values which help to understand wheter the data is missing due to a configured filter or due to other circumstances e.g. saturation effects. -
/rgba
(sensor_msgs/Image) RGBA color image.
sick_visionary_t_mini
Visionary-T Mini is a 3D camera based on the time-of-flight (TOF) principle. It provides real-time 3D and 2D data at up to 30 frame per second (fps).
Published Topics:
-
/camera_info
(sensor_msgs/CameraInfo) Camera calibration and metadata. -
/depth
(sensor_msgs/Image) Contains uint16 radial distance values [1/4 mm] -
/points
(sensor_msgs/PointCloud2) Contains XYZ point cloud [m] -
/intensity
(sensor_msgs/Image) Raw image from device. Contains uint16 intensity values. Helpful for visual identification of the scene. -
/statemap
(sensor_msgs/Image) Contains uint16 statemap values which help to understand wheter the data is missing due to a configured filter or due to other circumstances e.g. saturation effects.
Support
Depending on the nature of your question, there are two support channels:
- For questions regarding the code shared in this repo please check the FAQ first and search if an issue already exists. If a related issue doesn’t exist, you can open a new issue using the issue form.
- For application or device specific questions look for common solutions and knowledge articles on the Sick Support Portal. If your question is not answered there, open a ticket on the Sick Support Portal.
Keywords
Visionary-S Visionary-T Mini ROS SICK CX
Changelog for package sick_visionary_ros
1.1.2 (2024-02-06)
- update sick_visionary_cpp_shread to fix CoLa2 session timeout
- bump package.xml version
- fix CMakeLists.txt used wrong PCL LIBRARY variable, fix project version
1.1.1 (2023-12-14)
- fix: bump package.xml version
- add tags to package.xml for ros-index
1.1.0 (2023-12-08)
- add ROS diagnostics feature to check topic publishing frequencies (Contribution by 4am-robotics)
- update README with new parameters and fix relative links
- add new parameters to launch files
1.0.0 (2023-11-16)
- First public release
- Enforce style guide using pre-commit
- simplify project structure
- remove support for discontinued devices
0.2.3 (2022-06-08)
- Auto connect to device if connection is lost
0.2.2 (2020-12-02)
- support for Visionary-T Mini CX (V3S105-1AAAAAA)
- Fix bug for Visionary-S CX (V3S102-1AAAAAA and V3S102-1AABAAB) pointcloud data
0.2.1 (2019-12-23)
- adapted VisionayControl module to control also through CoLa 2 besides CoLa B
- support for control of Visionary-T CX VGA
0.2.0 (2019-11-03)
- support for Visionary-T CX VGA
0.1.1 (2017-12-06)
- increased performance
- support cartesian data e.g. for Visionary-T DT or AG
- support polar data
0.1.0 (2017-09-01)
- rename to visionary
- usage of Visionary_Common library
- support for Visionary-S CX (V3S102-1AAAAAA and V3S102-1AABAAB)
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
pcl_conversions | |
pcl_ros | |
cv_bridge | |
diagnostic_updater | |
image_transport | |
roscpp | |
roslaunch | |
sensor_msgs |
System Dependencies
Name |
---|
libpcl-all-dev |
Dependant Packages
Launch files
- launch/sick_visionary-s.launch
- Entry point for using OpenNI devices
-
- camera [default: sick_visionary_s]
- launch/sick_visionary-t_mini.launch
- Entry point for using OpenNI devices
-
- camera [default: sick_visionary_t_mini]