FLIR / flir_adk_ethernet

ROS ethernet camera driver, targeting BlackFly and Boson
11 stars 17 forks source link

flir_adk_ethernet

Drivers for running FLIR ethernet interface cameras (BlackFly and Boson)

Getting Started

Prerequisites

Installation

To install the drivers, first navigate to your catkin workspace. If one does not exist, create one

mkdir -p ~/catkin_ws/src

Clone the repo and build

cd ~/catkin_ws/src
git clone <repo-url>
cd ~/catkin_ws
catkin_make
source devel/setup.sh

Running Launchers

Single camera

Connect a BlackFly camera and run

roslaunch flir_adk_ethernet blackfly.launch

If you have a Boson, run

roslaunch flir_adk_ethernet boson.launch

These examples include an image viewer. You should see window pop up with the streaming video displayed.

If you want to demo a Boson and a BlackFly running concurrently, run

roslaunch flir_adk_ethernet multiple_cameras.launch

If you want a demo of stereo vision, connect 2 BlackFlys. Get their IP addresses and modify launch/sync_camera.launch lines 11 and 12. For example, if the left IP address is 169.254.87.157 and the right is 169.254.82.142. Change the lines to:

<arg name="left_ip" default="169.254.87.157"/>
<arg name="right_ip" default="169.254.82.142"/>

Next run the node:

roslaunch flir_adk_ethernet sync_camera.launch

You should see 3 image panes appear: left, right and disparity

Parameters

Subscribed topics

In order to control the camera(s) during operation, the nodes subscribe to topics where the user can send messages. Note: when using these with sub-namespaced nodes e.g. flir_adk_ethernet/left, then the topic will be under the sub-namespace

Services

The nodes advertise services so that user can query them for information

sendCommand script

Included is a script that makes sending commands to the camera easier. Run sendCommand.

sendCommand <command> <command param> [args]

Commands:

autoFFC <setting>
set the auto FFC setting on Boson. Valid values are "true" or "false"

pixelFormat <setting>
set the pixel format. Valid values are "mono_8" and "mono_16" for Boson and, additionally, "color_8" for BlackFly

ffc
trigger shutter in Boson camera

nodeMap <node name> [value]
get or set node value. To get node value, only specify the node name. To set, specify the value to set. As mentioned above, this can cause unstable behavior. Do not change node values that would change the buffer size of the image (width, height, pixel format)

setROI <setting>
sets the viewing window within the entire scene of the camera view. Setting must be in the form e.g. "x_offset: 10, y_offset: 20, width: 400, height: 300"

setCenterROI <setting>
sets the viewing window to be centered within the camera view. Setting must be in the form e.g. "width: 400, height: 300"

Options:

-n <namespace> DEFAULT flir_adk
Specifies a namespace for the topic

-s <sub-namespace>
Specifies a sub-namespace for the topic. Typically left or right
e.g. topic is /flir_adk/left/pixel_format then run:
sendCommand pixelFormat mono_8 -n flir_adk -s left