-
Notifications
You must be signed in to change notification settings - Fork 0
Getting Started in ROS
You can either create a standalone executable for accessing the VI-Sensor or you can stream the VI-Sensor output to ROS (Robotic Operating System) using the corresponding ROS-frontend. For the standalone interface, refer to this section.
You can download the low-level driver from this Github repo into your catkin workspace (for information on how to set up your catkin workspace, please refer to this tutorial). Equivantly, download the ROS front end from here:
#making sure you have all the necessary dependencies
sudo apt-get install libeigen3-dev libboost-dev libopencv-dev
#change directory into catkin folder
cd ~/<CATKIN_WS>/src
#checkout low-level driver
git clone https://github.com/ethz-asl/libvisensor.git
#checkout ROS frontend
git clone https://github.com/ethz-asl/visensor_node.git
# build visensor low-level driver and ROS frontend
cd ..
catkin_makeStart a roscore in a separate terminal:
roscoreAssuming that the sensor is powered and connected, you can run the driver as
rosrun visensor_node visensor_nodeIf there is an error (most likely failed autodiscovery), please refer to the FAQ.
If the ROS frontend started properly, you can check the image stream using
rosrun image_view image_view image:=/cam0/image_raw
rosrun image_view image_view image:=/cam1/image_rawThe IMU stream is at the topic /imu0
rostopic echo /imu0We also provide a launch file for the standard ROS stereo pipeline. You can launch the ROS block-matcher using
roslaunch visensor_node dense.launchIf the disparity output is very noisy, please refer to the FAQ.
The VI-sensor comes preconfigured with standard settings, such as automatic gain and exposure control for example. If you want to change these parameters, you can do this using rqt_configure. This tool allows the fine-grained control of the imaging sensors (e.g. gain-, exposure settings etc.) and the IMU.
There is a time-synchronization scheme that estimates the clock offset and skew of the VI-Sensor time to the host PC time. The message timestamps are based on the VI-Sensor time which are transformed into host PC time using the corresponding clock offset and skew. As a consequence, communication delay between the host PC and the VI-Sensor does not affect the message timestamps.
Powering the Sensor
Connecting the Sensor
Updating the Sensor Firmware
Getting started in ROS
ROS Topics and Services
Configuring the Sensor
Getting Extrinsic and Intrinsic Calibrations
Compiling the VI Sensor Driver Standalone (Without ROS)
Setting Sensor Parameters
Tutorial: Hello World Example
Tutorial: Dense Reconstruction