diff --git a/README.md b/README.md index c02ac3e..e2dabff 100644 --- a/README.md +++ b/README.md @@ -11,8 +11,7 @@ | **ifm3d-ros version** | **ifm3d version** | **embedded O3R FW version** | **ROS distribution(s)** | | --------------------- | ----------------- | --------------------------- | ----------------------- | -| 1.1.2 | 1.4.3 | 1.4.22 | ROS Noetic | -| 1.1.2 | 1.3.3 | 1.0.14 / 1.1.30 | ROS Noetic | +| 1.1.2 | 1.3.3, 1.4.3, 1.5.3| 1.0.14, 1.1.30, 1.1.41, 1.4.30 | ROS Noetic | | 1.1.1 | 1.2.6 | 1.0.14 | ROS Noetic | | 1.1.0 (unreleased) | 1.2.3 | 1.0.x | ROS Noetic | | 1.0.1 | 0.93.0 | 0.14.23 | ROS Noetic | diff --git a/ifm3d-ros/package.xml b/ifm3d-ros/package.xml index 9af8078..e908e51 100644 --- a/ifm3d-ros/package.xml +++ b/ifm3d-ros/package.xml @@ -4,9 +4,9 @@ ifm3d-ros 1.1.2 metapackage for the ifm3d-ros package group which interacts with the ifm 3D ToF Camera ROS package - ifm robotics group + ifm robotics group Apache 2 - ifm robotics group + ifm robotics group https://github.com/ifm/ifm3d-ros/ catkin diff --git a/ifm3d_ros_driver/README.md b/ifm3d_ros_driver/README.md index 22acee0..d753b1e 100644 --- a/ifm3d_ros_driver/README.md +++ b/ifm3d_ros_driver/README.md @@ -5,7 +5,7 @@ The core `ifm3d-ros` sensor interface is implemented as a ROS nodelet. This allows for lower-latency data processing vs. the traditional out-of-process node-based ROS interface for applications that require it. However, we ship a launch file with this package that allows for using the core `ifm3d-ros` driver as a standard node. To launch the node, the following command can be used: ``` -$ roslaunch ifm3d_ros_examples camera.launch +$ roslaunch ifm3d_ros_examples camera_3d.launch ``` >Note: Please notice the use of the subpackage `ifm3d_ros_examples`. diff --git a/ifm3d_ros_driver/doc/building.md b/ifm3d_ros_driver/doc/building.md index 74e4d1d..da2f513 100644 --- a/ifm3d_ros_driver/doc/building.md +++ b/ifm3d_ros_driver/doc/building.md @@ -57,14 +57,14 @@ Now we are ready to build the code. The following code block shows you how to si $ cd ~/catkin_ws/ $ catkin_make ``` -This will create a `devel` and `build` folder in your catkin workspace, which contains the required code for running the ROS node. To test this you can easily set-up your current shell and run: `source ~/catkin_ws/devel/setup.bash && roslaunch ifm3d_ros_examples camera.launch`. +This will create a `devel` and `build` folder in your catkin workspace, which contains the required code for running the ROS node. To test this you can easily set-up your current shell and run: `source ~/catkin_ws/devel/setup.bash && roslaunch ifm3d_ros_examples camera_3d.launch`. The ROS package should now be installed in `~/ros/ifm3d-ros`. To test everything out you should open a fresh bash shell, and start up a ROS core: (Please don't forget to source the ifm3d-ros package first if you haven't done it yet.) ``` $ roscore & -$ roslaunch ifm3d_ros_examples camera.launch +$ roslaunch ifm3d_ros_examples camera_3d.launch ``` > **NOTE**: This example expects the camera on PCIC port 50010. You can change the default value with `pcic_port`. @@ -73,7 +73,7 @@ Open another shell and start the rviz node to visualize the data coming from the ``` $ roslaunch ifm3d_ros_examples rviz.launch ``` -> **NOTE**: `rviz.launch` does not include the camera node itself, but subscribes to published topics (distance, amplitude, etc). A camera node need to be running in parallel to rviz (you can use `camera.launch`). +> **NOTE**: `rviz.launch` does not include the camera node itself, but subscribes to published topics (distance, amplitude, etc). A camera node need to be running in parallel to rviz (you can use `camera_3d.launch`). At this point, you should see an rviz window that looks something like the image below (note that this is the view from 3 camera heads): ![rviz1](figures/O3R_merged_point_cloud.png) diff --git a/ifm3d_ros_driver/doc/diagnosis_link.md b/ifm3d_ros_driver/doc/diagnosis_link.md index c5237b4..a4539c4 100644 --- a/ifm3d_ros_driver/doc/diagnosis_link.md +++ b/ifm3d_ros_driver/doc/diagnosis_link.md @@ -1,4 +1,4 @@ # Diagnosis information and error codes The underlying C++ API `ifm3d` supports live status monitoring via diagnosis information sent from the embedded device. -Please check the definition and meaning of the error codes [here](https://ifm3d.com/documentation/DeviceConfiguration/Troubleshooting/diagnosis.html#error-descriptions). \ No newline at end of file +Please check the definition and meaning of the error codes [here](https://ifm3d.com/latest/SoftwareInterfaces/ifmDiagnostic/diagnostic_sources.html). \ No newline at end of file diff --git a/ifm3d_ros_driver/doc/dump_and_config.md b/ifm3d_ros_driver/doc/dump_and_config.md index 5ca1094..377e409 100644 --- a/ifm3d_ros_driver/doc/dump_and_config.md +++ b/ifm3d_ros_driver/doc/dump_and_config.md @@ -90,7 +90,7 @@ For example, to dump the state of the camera: >Note: The service proxying only works on the `/ifm3d_ros_examples/camera/` namespace at the moment. ``` -$ roslaunch ifm3d_ros_examples camera.launch & +$ roslaunch ifm3d_ros_examples camera_3d.launch & $ rosrun ifm3d_ros_msgs dump { "device": { diff --git a/ifm3d_ros_driver/doc/noetic.md b/ifm3d_ros_driver/doc/noetic.md index def6744..7c286f5 100644 --- a/ifm3d_ros_driver/doc/noetic.md +++ b/ifm3d_ros_driver/doc/noetic.md @@ -14,7 +14,7 @@ This article provides a quick-start guide for getting a fresh installation of Ub $ sudo apt-get update $ sudo apt-get -u upgrade ``` -2. Install ROS Melodic: +2. Install ROS Noetic: Follow [these steps](http://wiki.ros.org/noetic/Installation/Ubuntu) exactly (we assume you did) and choose to install `ros-noetic-desktop-full`. 3. Additional Dependencies: @@ -44,7 +44,7 @@ This article provides a quick-start guide for getting a fresh installation of Ub [ifm3d](ifm3d/doc/sphinx/content/README:ifm3d%20Overview) is the core underlying C++ driver that `ifm3d_ros` wraps. To install `ifm3d`, please follow the instructions [here](ifm3d/doc/sphinx/content/installation_instructions/source_build:Installing%20ifm3d%20from%20source). - **NOTE**: Choose the correct ifm3d version. See [compatibility Matrix](https://ifm3d.com/ROS/ifm3d-ros/README.html#software-compatibility-matrix). + **NOTE**: Choose the correct ifm3d version. See [compatibility Matrix](https://ros.ifm3d.com/latest/README.html#compatibility-matrix). You are now in position to install the `ifm3d-ros` wrapper. Please switch to the instructions [here](building.md). diff --git a/ifm3d_ros_driver/doc/visualization.md b/ifm3d_ros_driver/doc/visualization.md index 23a70b0..9e44556 100644 --- a/ifm3d_ros_driver/doc/visualization.md +++ b/ifm3d_ros_driver/doc/visualization.md @@ -1,5 +1,5 @@ ## HOW to visualize the point cloud with RVIZ -The included launch file `camera.launch` will publish and remap all topics and services to `/ifm3d_ros_driver/xxx`, for example the point cloud topic will be remapped to `/ifm3d_ros_driver/camera/cloud`. +The included launch file `camera_3d.launch` will publish and remap all topics and services to `/ifm3d_ros_driver/xxx`, for example the point cloud topic will be remapped to `/ifm3d_ros_driver/camera/cloud`. When you open RVIZ for the first time and subscribe the point cloud topic to it, it will not be displayed as the transformation chain between the different reference frames is not complete. diff --git a/ifm3d_ros_driver/package.xml b/ifm3d_ros_driver/package.xml index 86da3a7..b80973b 100644 --- a/ifm3d_ros_driver/package.xml +++ b/ifm3d_ros_driver/package.xml @@ -4,9 +4,9 @@ ifm3d_ros_driver 1.1.1 ifm 3D ToF Camera ROS main driver package - ifm robotics group + ifm robotics group Apache 2 - ifm robotics group + ifm robotics group https://github.com/ifm/ifm3d-ros/ catkin diff --git a/ifm3d_ros_driver/test/ifm3d.test b/ifm3d_ros_driver/test/ifm3d.test index 194f785..f95ab57 100644 --- a/ifm3d_ros_driver/test/ifm3d.test +++ b/ifm3d_ros_driver/test/ifm3d.test @@ -1,6 +1,6 @@ - + diff --git a/ifm3d_ros_examples/README.md b/ifm3d_ros_examples/README.md index c8f15fc..337e338 100644 --- a/ifm3d_ros_examples/README.md +++ b/ifm3d_ros_examples/README.md @@ -8,17 +8,16 @@ Please see the list below for launch files shipped with the examples package: | Name | Description | | ---- | ----------- | -| `six_cameras.launch` | Launches six nodes, reading data streams on ports 0, 1, 2, 3, 4 and 5. Provide coordinate frame transforms for each node. Note: you can use this example for less than six heads, but you will get a `timeout` error where no heads are connected. This does not disrupt the proper functioning of the connected heads.| | `nodelet.launch` | This is handling the nodelet manager which makes it possible to launch a nodelet similarly as you would a simple node.| -| `head.launch` | Launches two data streams for both the 2D RGB imager and 3D TOF imager on a camera head. Default ports are 0 for 3D data (pcic_port_1:=50010) and 2 for 2D RGB data (pcic_port_2:=50012). For different port numbers input port as a parameter when launching. | -| `camera.launch` | Launches a single camera stream - so only 3D data or 2D RGB data. This launch file is comparable to a single camera setup (O3Ds and O3Xs) | +| `camera_3d.launch` | Launches a single 3d camera stream - so only 3D data data. This launch file is comparable to a single camera setup (O3Ds and O3Xs) | +| `camera_2d.launch` | Launches a single 2d camera stream - so only 2D RGB data. This launch file is comparable to a single camera setup (O3Ds and O3Xs) | ### Nodelet launch structure >Note: The O3R platform can handle multiple data streams.* -The `camera.launch` file only launches a node for one data stream, on the default pcic port 50010. To launch a node for a different port, use: +The `camera_3d.launch` file only launches a node for one data stream, on the default pcic port 50010. To launch a node for a different port, use: ``` -$ roslaunch ifm3d_ros_driver camera.launch pcic_port:= +$ roslaunch ifm3d_ros_driver camera_3d.launch pcic_port:= ``` @@ -28,11 +27,11 @@ The launch file(s) encapsulate several features: 3. It launches the camera nodelet itself. 4. It publishes the static transform from the camera's optical frame to a traditional ROS sensor frame as a tf2 `static_transform_publisher`. -You can either use [this launch file](launch/camera.launch) directly, or, use it as a basis for integrating `ifm3d_ros` into your own robot software system. +You can either use [this launch file](launch/camera_3d.launch) directly, or, use it as a basis for integrating `ifm3d_ros` into your own robot software system. > Note: the O3R camera heads carry two imagers, a 3D time-of-flight and a RGB imager. -We provide the `head.launch` launchfile to handle a whole O3R camera head, that starts two nodes, one for the RGB image (we assume it is plugged in port 0), and one for the 3D imager (we assume it is plugged in port 2). +We provide the `camer_2d.launch` launchfile to handle the RGB image (we assume it is plugged in port 0). ## Building launch files distributed systems >Note: This is WIR. We are currently working on Docker images which will allow you an easy deployment of our ROS node to the VPU. diff --git a/ifm3d_ros_examples/package.xml b/ifm3d_ros_examples/package.xml index 3f6d8e6..9bafbb5 100644 --- a/ifm3d_ros_examples/package.xml +++ b/ifm3d_ros_examples/package.xml @@ -4,9 +4,9 @@ ifm3d_ros_examples 0.2.0 ifm3d_ros examples subpackage - ifm robotics group + ifm robotics group Apache 2 - ifm robotics group + ifm robotics group https://github.com/ifm/ifm3d_ros/ diff --git a/ifm3d_ros_msgs/package.xml b/ifm3d_ros_msgs/package.xml index 856090f..302e2f1 100644 --- a/ifm3d_ros_msgs/package.xml +++ b/ifm3d_ros_msgs/package.xml @@ -4,9 +4,9 @@ ifm3d_ros_msgs 0.2.0 ifm3d_ros messages subpackage - ifm robotics group + ifm robotics group Apache 2 - ifm robotics group + ifm robotics group https://github.com/ifm/ifm3d-ros/