moved ros_driver to /src/, updated all docs for turtlebot merge

This commit is contained in:
Sabeeh Khan
2020-12-28 17:05:42 -06:00
parent 9a4a2ad22a
commit 250237c45e
78 changed files with 706 additions and 400 deletions

View File

@@ -27,8 +27,8 @@ The TI mmWave ROS driver integrates the mmWave out-of-box demo with Robot OS (RO
Features
========
- Compatible with TI mmWave SDK v3.4.0.3 out-of-box demo when using IWR6843AOPEVM
- Compatible with TI mmWave SDK v3.4.0.3 out-of-box demo when using IWR6843 ES2.0 EVM
- Compatible with TI mmWave SDK v3.5 out-of-box demo when using IWR6843AOPEVM
- Compatible with TI mmWave SDK v3.5 out-of-box demo when using IWR6843 ES2.0 EVM
- Offers the out-of-box demo Command Line Interface (CLI) as a ROS Service
- Reads Radar data from the mmWave EVM and publishes it as a ROS PointCloud2 Message
- Outputs the {X,Y,Z} coordinate and intensity (snr) of each detected point in the ROS PointCloud2 Message
@@ -41,6 +41,12 @@ The following is a list of known limitations for this release that were known at
- Currently tested for the IWR6843 EVM and IWR6843AOPEVM only
- The mmWave EVM must be configured to only send the "detected objects¨ data. The other possible output data types such as "log magnitude range¨, "noise profile¨, heat maps, etc. are not currently supported by the ROS driver. Also, the Doppler/velocity field is not currently output in the ROS PointCloud2 Message.
Changes in Version 2.1
========================
The following is a list of changes compared to the previous release.
- Added command 'calibData 0 0 0' to all cfg files to support TI mmWave SDK 3.5
- Changed instructions to download source from git.ti.com
Changes in Version 2.0
========================
The following is a list of changes compared to the previous release.

View File

@@ -2,7 +2,7 @@
<html>
<head>
<meta charset="utf-8" />
<title>TI mmWave ROS Driver User's Guide - Version 2.0</title>
<title>TI mmWave ROS Driver User's Guide - Version 2.1</title>
</head>
<!-- START PRE -->
@@ -120,85 +120,41 @@ xwr64xxAOP_mmw_demo.bin | IWR6843AOPEVM | `<INDUSTRIAL_TOOLBOX_INSTALL_DIR>\m
### Building the TI mmWave ROS driver
1. Follow the instructions on the following webpage to create a new ROS workspace:
http://wiki.ros.org/ROS/Tutorials/InstallingandConfiguringROSEnvironment
1. The packages for all ROS labs are held on git.ti.com. To download the packages, first ensure that git is installed on your computer.
[[d **NOTE:**
For convenience, the commands to source the required ROS environment setup scripts (“source /opt/ros/kinetic/setup.bash” and “source `<workspace_dir>/devel/setup.bash`”) can be placed at the end of your ~/.bashrc file so they are executed automatically every time you open a new Terminal/shell. Otherwise, you will need to source them each time you open a new Terminal/shell. The following commands can be used to add the “source” commands to the end of your ~/.bashrc file. In the second command below make sure to change “`<workspace_dir>`” to your actual workspace directory.
]]
```
sudo apt-get install git
```
[[y **Caution:**
Copying the commands from a web browser sometimes adds extra newline characters that will cause the commands to fail when pasted into Linux.Open the doc in a stand-alone PDF reader (i.e. Adobe Acrobat, etc.) if this occurs while you copy and paste commands directly into Linux.
]]
2. Next, clone the git repository from git.ti.com.
```
$ echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
```
```
$ echo "source <workspace_dir>/devel/setup.bash" >> ~/.bashrc
```
```
git clone git.ti.com/mmwave_ti_ros/mmwave_ti_ros.git
```
After you run these commands to add the scripts to your ~/.bashrc file, you must close and re-open your Terminal/shell for them to take effect.
Please note that the script in the devel directory is specific to the workspace and you would need to change your ~/.bashrc file and re-open your shell in order to work in a different workspace.
3. Change directory to the ROS Driver lab. This is the workspace directory.
Alternatively you can copy and paste the commands to your ~/.bashrc file using an editor. for example the command shown below should open ~/.bashrc using gedit text editor
```
gedit ~/.bashrc
```
```
cd mmwave_ti_ros/ros_driver/
```
2. Install the ROS serial package:
3. Build the lab.
```
catkin_make
```
a) Use GIT to download (clone) the ROS serial driver into your <`workspace_dir>/src` directory:
```
$ cd <workspace_dir>/src
```
```
$ git clone https://github.com/wjwwood/serial.git
```
b) More documentation on this library can be found at: http://wjwwood.io/serial/
3. Download the TI mmWave ROS Driver (ti_mmwave_rospkg) and copy it to your `<workspace_dir>/src` directory:
a) Point your web browser to the following link:
http://dev.ti.com/tirex/#/?link=Software
Click on “mmWave Sensors” and then click on “Industrial Toolbox"
b) Click on the link for “Labs”
c) Click on the “ROS Point Cloud Visualizer” lab in the table in the center
d) Click on the “Download All” button on the right side as shown in the following image and accept the user license agreement when prompted. Choose to open the downloaded zip file if prompted or save it to disk first and then open it by double-clicking it from the downloaded location.
<img src="images/Ros_TIREX.png" class="img-responsive"/>
e) Navigate into the folder structure of the opened zip file to the path shown in the following figure and then double-click on the `ti_mmwave_rospkg_<ver>`.zip file to open it. (Note that the path may start with `mmwave_training_<ver>` as shown or `mmwave_sensors/industrial_toolbox_<ver>` depending on package version)
<img src="images/Ros_Folder_Content.png" class="img-responsive"/>
f) After opening the `ti_mmave_rospkg_<ver>.zip` file, you should see the ti_mmwave_rospkg folder as shown in the left window in following screenshot. Open a new file browser and navigate to your `<workspace_dir>`/src directory as shown in the right window in the screenshot. Copy the ti_mmwave_rospkg folder to your `<workspace_dir>/src` directory by dragging it from the source (left) window to the destination (right) window.
<img src="images/Copy_paste.png" class="img-responsive"/>
g) You should now see the ti_mmwave_rospkg folder in your `<workspace_dir>/src` directory as shown in the following screenshot.
<img src="images/ti_mmWave_rospkg_folder.png" class="img-responsive"/>
4. Build your project:
In the Terminal/shell, go to your `<workspace_dir>` directory and build the driver:
```
$ cd <workspace_dir>
```
```
$ catkin_make
```
4. Source the setup.bash file
```
source devel/setup.bash
```
If all of the installation steps were followed and both ROS environment scripts were sourced, the driver should build successfully and you should see something similar to the following at the end of the output. Your output may look slightly different but it should still show “[100%]”.
If all of the installation steps were followed and both ROS environment scripts were sourced, the driver should build successfully and you should see something similar to the following at the end of the output. Your output may look slightly different but it should still show “[100%]”.
[[g! build Successful
[100%] Linking CXX executable /home/username/catkin_ws/devel/lib/ti_mmwave_rospkg/ti_mmwave_rospkg
[100%] Built target ti_mmwave_rospkg Scanning dependencies of target ti_mmwave_rospkg_generate_messages
[100%] Built target ti_mmwave_rospkg_generate_messages
]]
[[g! build Successful
[100%] Linking CXX executable /home/username/catkin_ws/devel/lib/ti_mmwave_rospkg/ti_mmwave_rospkg
[100%] Built target ti_mmwave_rospkg Scanning dependencies of target ti_mmwave_rospkg_generate_messages
[100%] Built target ti_mmwave_rospkg_generate_messages
]]
## Running the driver

View File

@@ -36,4 +36,5 @@ measureRangeBiasAndRxChanPhase 0 1.5 0.2
CQRxSatMonitor 0 3 5 123 0
CQSigImgMonitor 0 119 4
analogMonitor 1 1
calibData 0 0 0
sensorStart

View File

@@ -37,4 +37,5 @@ measureRangeBiasAndRxChanPhase 0 1.5 0.2
CQRxSatMonitor 0 3 5 123 0
CQSigImgMonitor 0 119 4
analogMonitor 1 1
calibData 0 0 0
sensorStart

View File

@@ -47,4 +47,5 @@ analogMonitor 0 0
aoaFovCfg -1 -90 90 -90 90
cfarFovCfg -1 0 0 8.92
cfarFovCfg -1 1 -1 1.00
calibData 0 0 0
sensorStart

View File

@@ -46,4 +46,5 @@ analogMonitor 0 0
aoaFovCfg -1 -90 90 -90 90
cfarFovCfg -1 0 0 8.92
cfarFovCfg -1 1 -6.48 6.48
calibData 0 0 0
sensorStart

View File

@@ -47,4 +47,5 @@ analogMonitor 0 0
aoaFovCfg -1 -90 90 -90 90
cfarFovCfg -1 0 0 8.92
cfarFovCfg -1 1 -1 1.00
calibData 0 0 0
sensorStart

View File

@@ -46,5 +46,6 @@ analogMonitor 0 0
aoaFovCfg -1 -90 90 -90 90
cfarFovCfg -1 0 0 8.92
cfarFovCfg -1 1 -1 1.00
calibData 0 0 0
sensorStart

View File

@@ -47,4 +47,5 @@ analogMonitor 0 0
aoaFovCfg -1 -90 90 -90 90
cfarFovCfg -1 0 0 8.40
cfarFovCfg -1 1 -5.02 5.02
calibData 0 0 0
sensorStart

View File

@@ -0,0 +1,53 @@
% ***************************************************************
% Created for SDK ver:03.02
% Created using Visualizer ver:3.2.0.1
% Frequency:60
% Platform:xWR68xx
% Scene Classifier:best_range_res
% Azimuth Resolution(deg):15 + Elevation
% Range Resolution(m):0.047
% Maximum unambiguous Range(m):9.04
% Maximum Radial Velocity(m/s):5.09
% Radial velocity resolution(m/s):0.64
% Frame Duration(msec):33.333
% Range Detection Threshold (dB):15
% Doppler Detection Threshold (dB):15
% Range Peak Grouping:enabled
% Doppler Peak Grouping:enabled
% Static clutter removal:disabled
% Angle of Arrival FoV: Full FoV
% Range FoV: Full FoV
% Doppler FoV: Full FoV
% ***************************************************************
sensorStop
flushCfg
dfeDataOutputMode 1
channelCfg 15 7 0
adcCfg 2 1
adcbufCfg -1 0 1 1 1
profileCfg 0 60 41 7 40 0 0 100 1 240 7500 0 0 30
chirpCfg 0 0 0 0 0 0 0 1
chirpCfg 1 1 0 0 0 0 0 4
chirpCfg 2 2 0 0 0 0 0 2
frameCfg 0 2 16 0 33.333 1 0
lowPower 0 0
guiMonitor -1 1 0 0 0 0 0
cfarCfg -1 0 2 8 4 3 0 15 0
cfarCfg -1 1 0 4 2 3 1 15 1
multiObjBeamForming -1 1 0.5
clutterRemoval -1 1
calibDcRangeSig -1 0 -5 8 256
extendedMaxVelocity -1 0
bpmCfg -1 0 0 1
lvdsStreamCfg -1 1 1 1
compRangeBiasAndRxChanPhase 0.0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
measureRangeBiasAndRxChanPhase 0 1.5 0.2
CQRxSatMonitor 0 3 4 99 0
CQSigImgMonitor 0 119 4
analogMonitor 0 0
aoaFovCfg -1 -90 90 -90 90
cfarFovCfg -1 0 0 9.00
cfarFovCfg -1 1 -5.14 5.14
calibData 0 0 0
sensorStart

View File

@@ -47,4 +47,5 @@ analogMonitor 0 0
aoaFovCfg -1 -90 90 -90 90
cfarFovCfg -1 0 0 8.92
cfarFovCfg -1 1 -1 1.00
calibData 0 0 0
sensorStart

View File

@@ -48,4 +48,5 @@ analogMonitor 0 0
aoaFovCfg -1 -90 90 -90 90
cfarFovCfg -1 0 0 9.00
cfarFovCfg -1 1 -5.14 5.14
calibData 0 0 0
sensorStart