diff --git a/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_Release_Notes.pdf b/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_Release_Notes.pdf index 0fbbaf9..a3da3c8 100644 Binary files a/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_Release_Notes.pdf and b/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_Release_Notes.pdf differ diff --git a/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_Users_Guide.pdf b/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_Users_Guide.pdf index 349e0c3..2d0ca6e 100644 Binary files a/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_Users_Guide.pdf and b/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_Users_Guide.pdf differ diff --git a/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_release_notes.html b/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_release_notes.html index f9a4792..4326fd8 100644 --- a/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_release_notes.html +++ b/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_release_notes.html @@ -2,7 +2,7 @@ -Autonomous Robotics with ROS for mmWave Release Notes - Version 1.6 +Autonomous Robotics with ROS for mmWave Release Notes - Version 1.7 @@ -69,8 +69,8 @@ The following are Known Limitations in this release: * Currently supported/tested for IWR6843ISK ES2.0 EVM, IWR6843AOP ES2.0 EVM only * The mmWave EVM must be flashed with: - * The mmWave SDK version 3.4.0.2 out-of-box demo firmware for IWR6843ISK ES2.0 - * The mmWave SDK version 3.4.0.2 out-of-box demo firmware for IWR6843AOP ES2.0 + * The mmWave SDK version 3.5 out-of-box demo firmware for IWR6843ISK ES2.0 + * The mmWave SDK version 3.5 out-of-box demo firmware for IWR6843AOP ES2.0 * The fake_localization ROS navigation package is used to allow direct setting of the robot’s initial pose (position/orientation) and goal pose. Therefore, the gmapping and amcl ROS navigation packages are not used. @@ -82,7 +82,13 @@ Work Arounds for Major Known Issues The following are workarounds for each known issue with a major severity that exists in this release: * N/A +Changes in Version 1.7 +======================== +The following is a list of changes compared to the previous release. +- Changed cfg files to support SDK 3.5 +- Merged source files from safety bubble lab into Autonomous robotics lab +- Added support for quad sensor operation diff --git a/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_user_guide.html b/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_user_guide.html index 148c949..3543a5b 100644 --- a/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_user_guide.html +++ b/autonomous_robotics_ros/docs/Autonomous_Robotics_with_ROS_for_mmWave_user_guide.html @@ -2,7 +2,7 @@ -Autonomous Robotics with ROS for mmWave User's Guide - Version 1.6 +Autonomous Robotics with ROS for mmWave User's Guide - Version 1.7 @@ -22,333 +22,45 @@ Autonomous Robotics with ROS for mmWave This lab allows for the TI mmWave sensor to be used with popular mapping and navigation libraries in the Robot Operating System (ROS) environment, familiar to many robotics engineers. The lab uses the Octomap server and move_base libraries with TI’s mmWave ROS Driver Package software to interface to the TI mmWave sensor. The lab supports use of IWR6843ISK or IWR6843AOP ES2.0 EVMs. -With this TI driver and the software from the ROS community (ros.org) engineers may evaluate robot navigation and object avoidance quickly and easily. +With the TI driver and the software from the ROS community (ros.org) engineers may evaluate robot navigation and object avoidance quickly and easily. + +This lab could also be used with either one or four sensors. With the use of four sensors, the robot has the ability to have a 360° field of view, thus the robot is able to detect surrounding objects for better mapping and navigation. - -# Requirements - -### Prerequisite -[[y! Run Out of Box Demo -Before continuing with this lab, users should first run the out of box demo for the EVM. -This will enable users to gain familiarity with the sensor's capabilities as well as the various tools used across all labs in the mmWave Industrial Toolbox. ]] - -### Required and Supported mmWave Evaluation Modules (EVM) - -#### ISK module with MMWAVEICBOOST -Quantity | Item -------------------|----------------- - 1 | Antenna Module Board: [IWR6843ISK](http://www.ti.com/tool/IWR6843ISK) - 1 | OPTIONAL: [Industrial mmWave Carrier Board](http://www.ti.com/tool/MMWAVEICBOOST) for CCS based debugging - - OR - -#### AOP EVM +## Hardware and Software Setup - Quantity | Item -------------------|----------------- - 1 | [IWR6843AOPEVM](http://www.ti.com/tool/IWR6843AOPEVM) - 1 | OPTIONAL: [Industrial mmWave Carrier Board](http://www.ti.com/tool/MMWAVEICBOOST) for CCS based debugging - - -[[r! IWR6843 ES2.0 Only - This lab is only compatible with ES2.0 version of IWR6843. - - On ISK or ODS, check the device version on your IWR6843 using the on-chip device markings as shown below +Before starting this lab, please follow the directions described in the [ROS Setup Guide with TI mmWave](../../common/docs/Turtlebot_HWSW_setup.html). -1. If line 4 reads `678A`, you have an ES2 device. In this case, this lab is compatible with your EVM. -2. If line 4 reads `60 GHZi`, you have an older ES1 device. In this case, the lab is NOT compatible with your EVM. ES2 IWR6843ISK/IWR6843ISK-ODS boards are orderable from the EVM link above. - - - -On AOP, the EVM must be Rev F or later. This can be distinguished by the shape of the EVM if it is as shown above. -]] - -[[r! AoP ES2.0 EVM only - The IWR6843 AoP version of this lab is only compatible with ES2.0 silicon and the corresponding EVM. Please ensure your EVM is the same as in the below image. - - - -]] - - - -### Additional Hardware Requirements - -Quantity | Item | Details ----------|--------------------------|----------------- - 1 | Robot | [TurtleBot2](https://www.turtlebot.com/turtlebot2/) with plate and standoff kit - 1 | Computer (preferably laptop) | Running Linux Ubuntu 16.04. Used for remote operation and visualization - 1 | Laptop* | Used on Turtlebot2. Running Linux Ubuntu 16.04. - 1 | USB 2.0 printer-style cable (A-Male to B-Male) | Used to connect laptop to Turtlebot2 - 1 | Micro USB Cable | Used to connect laptop to the mmWave EVM (cable comes with the EVM and should be connected to ‘XDS110 USB’ port on EVM) - 1 | 12V to 5V DC to DC converter | Must be able to output at least 2.5Amps at 5V. Used to allow the EVM to be powered from the Turtlebot2 (this converter is required since the normal 5V output port on the TurtleBot2 cannot supply 2.5Amps) - 1 | 2-pin miniFit JR connector/cable | Used to go from Turtlebot2 12V output port to the 12V input on the converter (for example, Molex cable part number 245135-0210 or 245135-0220 can be used by cutting it in half so the connector end goes to the TurtleBot2 12V output port and the cut wire end goes to the 12V input of the converter) - 1 | 2.1mm barrel jack connector | Center positive with cable/wire to go from the 5V output on the converter to the EVM - | Misc. small bolts and nuts and brackets | For mounting mmWave sensor and DC converter to TurtleBot platform (not included with EVM or TurtleBot) - - [[b *Sitara AM572x processor can be used instead of a laptop for the Turtlebot2 - For instructions on how to implement the Sitara based alternative please refer to the [Autonomous robotics reference design with Sitara™ processors and mmWave sensors using ROS](http://www.ti.com/tool/TIDEP-01006). - The reference design demonstrates an embedded robotic system where point-cloud data from the mmWave radar sensing is processed by the Sitara AM57x processor which runs Robot Operating System (ROS) and is the main processor for the overall system control. - ]] - -### Software - - Tool | Version | Download Link -----------------------------|---------------------------|-------- - TI mmWave SDK | 3.4.x.x | [Link to Latest mmWave SDK](http://software-dl.ti.com/ra-processors/esd/MMWAVE-SDK/latest/index_FDS.html). To access a previous version of the mmWave SDK scroll to the bottom of the table and click the link under "MMWAVE-SDK previous release". Repeat to continue stepping back to previous versions. - mmWave Industrial Toolbox | Latest | Download and install the toolbox. Go to [Using TI Resource Explorer & the mmWave Industrial Toolbox](../../../../docs/readme.html) for instructions. - Uniflash | Latest | Uniflash tool is used for flashing TI mmWave Radar devices. [Download offline tool](http://www.ti.com/tool/UNIFLASH) or use the [Cloud version](https://dev.ti.com/uniflash/#!/) -Silicon Labs CP210x USB to UART Bridge VCP Drivers | Latest | Only needed for AOP EVM. [https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers](https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers) - ------------ - -### Laptops - -Both laptops need to have: -* Linux Ubuntu 16.04 natively installed (Ubuntu 16.04 Virtual Machine running on Windows can be used for remote control laptop if desired) -* ROS Kinetic Kame LTS with specified ROS packages -* TI mmWave ROS Driver -* Additional ROS packages supplied with this lab - Quickstart =========== -The quickstart guide will cover setting up the EVM, flashing firmware, and running the demo. +The guide is broken down into three sections: Remote Control Operation, Mapping Demo, and Autonomous Demo. The Remote Control section +explains how to bring up the sensor and drive the turtlebot remotely. The mapping demo uses the point cloud from the sensor to create a map of the +robot's environment. The robot must be manually operated. Finally, the autonomous demo -## 1. Setup the EVM for Flashing Mode -* For MMWAVEICBOOST + Antenna Module setup: Follow the instructions for [Hardware Setup for Flashing in MMWAVEICBOOST Mode](../../../common/docs/hardware_setup/hw_setup_mmwaveicboost_mode_flashing.html) -* For IWR6843ISK in Standalone/Modular Mode: Follow the instructions for [Hardware Setup of IWR6843ISK for Flashing Mode](../../../common/docs/hardware_setup/hw_setup_isk_ods_modular_mode_flashing.html) -* For AOP in Standalone/Modular Mode: Follow the instructions for [Hardware Setup of IWR6843AOPEVM for Flashing Mode](../../../common/docs/hardware_setup/hw_setup_aop_modular_mode_flashing.html) - - -## 2. Flash the EVM using Uniflash - -Flash the binary listed below using UniFlash. Follow the instructions for [using UniFlash](../../../common/docs/software_setup/using_uniflash_with_mmwave.html) - - BIN Name | Board | Location -------------------------------|-----------------|----------- -xwr68xx_mmw_demo.bin | IWR6843ISK | `\mmwave_industrial_toolbox_\out_of_box_demo\`
`68xx_mmwave_sdk_dsp\prebuilt_binaries\xwr68xx_mmw_demo.bin` -xwr64xxAOP_mmw_demo.bin | IWR6843AOPEVM | `\mmwave_industrial_toolbox_\out_of_box_demo\`
`68xx_aop_mmwave_sdk_hwa\prebuilt_binaries\xwr64xxAOP_mmw_demo.bin` - - - -## 3. Setup the EVM for Functional Mode -* For MMWAVEICBOOST + Antenna Module setup: Follow the instructions for [Hardware Setup of MMWAVEICBOOST + Antenna Module for Functional Mode](../../../common/docs/hardware_setup/hw_setup_mmwaveicboost_mode_functional.html) -* For IWR6843ISK in Standalone/Modular Mode: Follow the instructions for [Hardware Setup of IWR6843ISK for Functional Mode](../../../common/docs/hardware_setup/hw_setup_isk_ods_modular_mode_functional.html) -* For AOP: follow the instructions for [Hardware Setup of IWR6843AOPEVM for Functional Mode](../../../common/docs/hardware_setup/hw_setup_aop_modular_mode_functional.html) - - -## 4. Verification using online Visualizer ------------ - - -* Power up the EVM and connect it to the Windows PC with the provided USB cable (make sure that the SOP2 jumper is removed). -* Using Google Chrome, navigate to the following URL: https://dev.ti.com/mmWaveDemoVisualizer -* If prompted, follow the on-screen instructions for installing TI Cloud Agent (this is need the first time on a new PC) -* In the GUI menu, select Options → Serial Port -* In the serial port window, enter the appropriate port in each of the drop down menus based on your port numbers from the "flash the evm" section -* Click on Configure to connect the GUI to the EVM. The GUI Status bar should show Conected: - - - - -## 4. Setting up the TurtleBot2 ------------ - -* The TurtleBot2 is a low-cost, personal robotics platform that is well supported within the ROS -community. There are many existing demos that work out-of-the-box with the TurtleBot2 including -teleoperation (remote control), mapping, and navigation. -* In this guide we will have a look at how to modify these demos to integrate the TI mmWave sensor as the 3-D sensor. -* The TurtleBot2 should be assembled and mmWave EVM mounted as shown in the following pictures to work with this lab. There may be slight variation in mounting depending on EVM option. -* In the example shown, the 12V to 5V converter is mounted underneath the center of the top plate. -* The Turtlebot and EVM is connected to the laptop using USB cables - -IWR6843ISK with MMWAVEICBOOST carrier board – front view (shown without required laptop): - - -IWR6843ISK with MMWAVEICBOOST carrier board – side view (shown without required laptop): - - - -## 5. Installing ROS and the TI mmWave ROS Driver ---------------- -* Please follow the instructions in the TI mmWave ROS Driver Setup Guide (available on the **TI Resource Explorer under Labs > TI mmWave ROS Driver**) to install ROS and the TI mmWave ROS Driver on each laptop before continuing. -* ROS must be installed on both the TurtleBot laptop and the Remote Control laptop. -* It is a good idea to test out the installation on each laptop by connecting the TI mmWave EVM and trying out the point cloud visualization. - - -## 6. Installing the mmWave Mapping and Navigation Demo Packages ---------------- -After installing ROS and the TI mmWave ROS Driver, follow the steps below on both laptops for interchangeability. -Install the Required Dependent ROS Packages -1. Install the following ROS packages which are required dependencies to run the demos: -``` -$ sudo apt-get install ros-kinetic-navigation -``` -``` -$ sudo apt-get install ros-kinetic-hector-slam -``` -``` -$ sudo apt-get install ros-kinetic-octomap-server -``` -``` -$ sudo apt-get install ros-kinetic-kobuki -``` -``` -$ sudo apt-get install ros-kinetic-octomap-rviz-plugins -``` -``` -$ sudo apt-get install ros-kinetic-vision-opencv -``` -``` -$ sudo apt-get install ros-kinetic-depth-image-proc -``` -``` -$ sudo apt-get install ros-kinetic-joy -``` - -2. Download the source code for the specific version of the ROS fake_localization package required -to run the demos: -``` -$ mkdir -p ~/catkin_ws/src/navigation/fake_localization -``` -``` -$ cd ~/catkin_ws/src/navigation/fake_localization -``` -``` -$ wget https://raw.githubusercontent.com/ros-planning/navigation/1.14.2/fake_localization/fake_localization.cpp -``` -``` -$ wget https://raw.githubusercontent.com/ros-planning/navigation/1.14.2/fake_localization/CMakeLists.txt -``` -``` -$ wget https://raw.githubusercontent.com/ros-planning/navigation/1.14.2/fake_localization/package.xml -``` - -## 7. Download the TurtleBot mmWave Mapping and Navigation Packages ---------------- -1. Download the **ti\_mmwave\_ros\_map\_nav\_``.tar.gz** Linux archive file from the - Robotics / Autonomous Robotics with ROS for mmWave folder and copy it to your catkin `/src` directory. - -[[y! Note -Downloading and extracting the TurtleBot mmWave Mapping and Navigation Packages should be done on both laptops -]] - - - a) Point your web browser to the mmwave sensor software package: https://dev.ti.com/tirex/#/?link=Software - - b) Click on “mmWave Sensors” and then click on “Industrial Toolbox” - - c) Click on the link for “Labs” - - d) Click on the “Autonomous Robotics with ROS for mmWave” lab in the table in the center - - e) 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 save the -downloaded zip file if prompted or save it to disk first and then open it by doubleclicking -it from the downloaded location. - - - f) Navigate into the folder structure of the opened zip file to the path shown in the -following figure. (Note that the path may start with mmwave\_sensors/industrial\_toolbox\_ depending on package version.) - - - g) Open a new file browser window and navigate to your catkin `/src` -directory as shown in the right window in the following screenshot. Copy the -**ti\_mmwave\_ros\_map\_nav\_``.tar.gz** file to your `/src` directory -by dragging it from the source (left) window to the destination (right) window. - - - h) You should now see the **ti\_mmwave\_ros\_map\_nav\_``.tar.gz** file in your -`/src` directory as shown in the following screenshot. - - -2. Extract the turtlebot, navigation, and turtlebot\_mmwave\_launchers folders (as well as a -custom mmWave chirp config file which gets placed in the ti_mmwave_rospkg/cfg -directory) from the archive (.tar.gz) file using the following command executed from the -`/src` directory. Change to match the actual filename. - -``` -$ tar xzf ti_mmwave_ros_map_nav_.tar.gz -``` - -3. Go back to your catkin `` directory and build the workspace: - -``` -$ cd -``` -``` -$ catkin_make -``` - - If all of the installation steps were followed and both ROS environment scripts were sourced -the driver should build successfully and you should see [100%] on the lines at the end of the -build output. - -## 8. Networking ---------------- -ROS is a distributed system, meaning that it can communicate over a local network with other ROS -components. For this demo, both laptops mentioned above must be on the exact same network and -must be able to ping (icmp) each other by IP address. The Remote Control laptop must also be able to -ssh (tcp/ip) into the TurtleBot laptop by IP address. You may need to install ssh on the laptops using the -following command: - - ``` - $ sudo apt-get install ssh - ``` -For more information regarding ROS’s networking visit the link: - - -Additionally a ROS system may only have one “roscore” across all machines. In order for machines to -recognize this “roscore” they must have an environment variable defined which specifies the IP address -of the “roscore” machine. - - -###On the TurtleBot machine -Edit your **~/.bashrc** file to include the following lines at the bottom: - ``` - export ROS_MASTER_URI=http://localhost:11311 - export ROS_IP= - ``` -You can check your IP by running `$ ifconfig` on the command line. Note that the line -exporting the ROS_IP environment variable may not be required if your network is setup where -each machine can contact/ping the other by hostname. You must close and re-open the shell -for the updated **~/.bashrc** file to take effect. - -###On the Remote machine -Edit your **~/.bashrc** file to include the following lines at the bottom: - ``` - export ROS_MASTER_URI=http://:11311 - export ROS_IP= - ``` - You can check your IP by running `$ ifconfig` on the command line. Note that if your network -is setup where each machine can contact/ping the other by hostname then you can use - instead of in the first line -and the line exporting the ROS_IP environment variable may not be required. You must close -and re-open the shell for the updated **~/.bashrc** file to take effect. - -## 9. Remote Control Demo (TurtleBot Bring-up and Teleoperation) ---------------- +Remote Control Operation +=========== These steps must take place from the remote machine, “ssh-ing” into the TurtleBot laptop when necessary. + ##TurtleBot Bring-up To start the TurtleBot, open a terminal window on the remote machine, ssh into the TurtleBot laptop -and run the following command. +and run the following command. The `` tag noted below can be one of the following: `6843ISK` or `6843AOP`. - * For IWR6843ISK: + * For setups running a single sensor: ``` - $ roslaunch turtlebot_bringup minimal.launch mmwave_device:=6843ISK + $ roslaunch turtlebot_bringup minimal_single_sensor.launch mmwave_device:= ``` - * For IWR6843AOP: + * For setups running four sensors: ``` - $ roslaunch turtlebot_bringup minimal.launch mmwave_device:=6843AOP + $ roslaunch turtlebot_bringup minimal_quad_sensor.launch mmwave_device:= ``` + If the EVM was not in a good state the roslaunch command will fail. Try resetting the EVM by pressing the ‘NRST’ button on the EVM and then run the desired roslaunch command again. @@ -366,10 +78,10 @@ teleoperation (remote control) of the TurtleBot: Follow the instructions shown in the window to control the TurtleBot. You can exit out of the remote control application by pressing `CTRL-C`. -## 10. Mapping Demo ---------------- +Mapping Demo +=========== The Mapping Demo is an example of how to use TI’s mmWave Radar EVMs within the ROS framework -on a robot to build a map. +on a robot to build a map. This feature is only supported with single sensor setups. * The demo runs the octomap_server package in ROS. There are several filters that have been brought up for use: Pass Through filters for all the point cloud fields, and a Statistical Outlier Removal filter for @@ -450,41 +162,45 @@ You should see the saved map displayed in Rviz. Note that the other topics in Rv warning/error since they are not active. -## 11. Navigation Demo ---------------- +Navigation Demo +=========== The TurtleBot navigation demo runs on the nodes mentioned in the image below. -Here are the steps to run the navigation demo. +Here are the steps to run the navigation demo: + 1. Close all previous terminal windows if any were open 2. Open a new terminal window on the remote machine, ssh into the TurtleBot laptop and bring up the -TurtleBot and mmWave EVM with the following command. - * For IWR6843ISK: +TurtleBot and mmWave EVM with the following command.The `` tag noted below can be one of the following: `6843ISK` or `6843AOP`. + + * For setups running a single sensor: ``` - $ roslaunch turtlebot_bringup minimal.launch mmwave_device:=6843ISK + $ roslaunch turtlebot_bringup minimal_single_sensor.launch mmwave_device:= ``` - * For IWR6843AOP: + * For setups running four sensors: ``` - $ roslaunch turtlebot_bringup minimal.launch mmwave_device:=6843AOP - ``` - + $ roslaunch turtlebot_bringup minimal_quad_sensor.launch mmwave_device:= + ``` + If the EVM was not in a good state the roslaunch command will fail. Try resetting the EVM by pressing the ‘NRST’ button on the EVM and then run the desired roslaunch command again. - If the EVM was not in a good state the roslaunch command will fail. Try resetting the EVM by -pressing the ‘NRST’ button on the EVM and then run the desired roslaunch command again. - The configuration files are included in the ti_mmwave_ros_map_nav_v1p4.tar.gz package ...\ti_mmwave_ros_map_nav_v1p4\ti_mmwave_rospkg\cfg. To change the parameter, edit and save the file using a text editor. For example, to update the demo to run using the IWR6843ISK-ODS and configuration file used with the ODS point cloud demo - Edit the "6843ISK_3d.cfg" configuration file to one that works with the ODS point cloud demo. - Flash the IWR6843ISK-ODS with the ODS point cloud binary. - Run the demo as documented for 6843ISK EVM. - 3. To bring up the move_base and fake_localization nodes and load a prebuilt map using the octomap_server, open a new terminal window on the remote machine, ssh into the TurtleBot laptop and run the following command: + * For single sensor operation: ``` - $ roslaunch turtlebot_mmwave_launchers radar_navigation.launch + $ roslaunch turtlebot_mmwave_launchers radar_navigation_single.launch + ``` + + * For quad sensor operation: + ``` + $ roslaunch turtlebot_mmwave_launchers radar_navigation_quad.launch ``` **Note 1**: By default, this launch file loads a specific prebuilt map file containing a map of a simple diff --git a/common/docs/ROS Setup for mmWave User's Guide.pdf b/common/docs/ROS Setup for mmWave User's Guide.pdf new file mode 100644 index 0000000..af347e4 Binary files /dev/null and b/common/docs/ROS Setup for mmWave User's Guide.pdf differ diff --git a/common/docs/Turtlebot_HWSW_setup.html b/common/docs/Turtlebot_HWSW_setup.html new file mode 100644 index 0000000..5eecdac --- /dev/null +++ b/common/docs/Turtlebot_HWSW_setup.html @@ -0,0 +1,311 @@ + + + + +ROS Setup for mmWave User's Guide - Version 1.0 + + + + + + + + + + + + + + + + + + + + + diff --git a/common/docs/images/iwr6843_silicon_revision.png b/common/docs/images/iwr6843_silicon_revision.png new file mode 100644 index 0000000..a8f77fe Binary files /dev/null and b/common/docs/images/iwr6843_silicon_revision.png differ diff --git a/common/docs/images/iwr6843aopevm1.png b/common/docs/images/iwr6843aopevm1.png new file mode 100644 index 0000000..dca6336 Binary files /dev/null and b/common/docs/images/iwr6843aopevm1.png differ diff --git a/common/docs/images/setup/Turtlebot2_front.png b/common/docs/images/setup/Turtlebot2_front.png new file mode 100644 index 0000000..6235c94 Binary files /dev/null and b/common/docs/images/setup/Turtlebot2_front.png differ diff --git a/common/docs/images/setup/Turtlebot2_quad_iso.jpg b/common/docs/images/setup/Turtlebot2_quad_iso.jpg new file mode 100644 index 0000000..b6eb880 Binary files /dev/null and b/common/docs/images/setup/Turtlebot2_quad_iso.jpg differ diff --git a/common/docs/images/setup/Turtlebot2_quad_top.jpg b/common/docs/images/setup/Turtlebot2_quad_top.jpg new file mode 100644 index 0000000..8f92e6a Binary files /dev/null and b/common/docs/images/setup/Turtlebot2_quad_top.jpg differ diff --git a/ros_driver/docs/TI_mmWave_ROS_Driver_Release_Notes.html b/ros_driver/docs/TI_mmWave_ROS_Driver_Release_Notes.html index 716ae8b..1ca3262 100644 --- a/ros_driver/docs/TI_mmWave_ROS_Driver_Release_Notes.html +++ b/ros_driver/docs/TI_mmWave_ROS_Driver_Release_Notes.html @@ -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. diff --git a/ros_driver/docs/TI_mmWave_ROS_Driver_Release_Notes.pdf b/ros_driver/docs/TI_mmWave_ROS_Driver_Release_Notes.pdf index e7afc1d..918d476 100644 Binary files a/ros_driver/docs/TI_mmWave_ROS_Driver_Release_Notes.pdf and b/ros_driver/docs/TI_mmWave_ROS_Driver_Release_Notes.pdf differ diff --git a/ros_driver/docs/TI_mmWave_ROS_Driver_Users_Guide.html b/ros_driver/docs/TI_mmWave_ROS_Driver_Users_Guide.html index 7b67864..609eb74 100644 --- a/ros_driver/docs/TI_mmWave_ROS_Driver_Users_Guide.html +++ b/ros_driver/docs/TI_mmWave_ROS_Driver_Users_Guide.html @@ -2,7 +2,7 @@ -TI mmWave ROS Driver User's Guide - Version 2.0 +TI mmWave ROS Driver User's Guide - Version 2.1 @@ -120,85 +120,41 @@ xwr64xxAOP_mmw_demo.bin | IWR6843AOPEVM | `\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 `/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 “``” 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 /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 /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 `/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. - - - 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_`.zip file to open it. (Note that the path may start with `mmwave_training_` as shown or `mmwave_sensors/industrial_toolbox_` depending on package version) - - - f) After opening the `ti_mmave_rospkg_.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 ``/src directory as shown in the right window in the screenshot. Copy the ti_mmwave_rospkg folder to your `/src` directory by dragging it from the source (left) window to the destination (right) window. - - - g) You should now see the ti_mmwave_rospkg folder in your `/src` directory as shown in the following screenshot. - - -4. Build your project: - - In the Terminal/shell, go to your `` directory and build the driver: - ``` - $ cd - ``` - ``` - $ 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 diff --git a/ros_driver/docs/TI_mmWave_ROS_Driver_Users_Guide.pdf b/ros_driver/docs/TI_mmWave_ROS_Driver_Users_Guide.pdf index 26e0f9d..eb0711f 100644 Binary files a/ros_driver/docs/TI_mmWave_ROS_Driver_Users_Guide.pdf and b/ros_driver/docs/TI_mmWave_ROS_Driver_Users_Guide.pdf differ diff --git a/ros_driver/ti_mmwave_rospkg/CMakeLists.txt b/ros_driver/src/ti_mmwave_rospkg/CMakeLists.txt similarity index 100% rename from ros_driver/ti_mmwave_rospkg/CMakeLists.txt rename to ros_driver/src/ti_mmwave_rospkg/CMakeLists.txt diff --git a/ros_driver/ti_mmwave_rospkg/README.md b/ros_driver/src/ti_mmwave_rospkg/README.md similarity index 100% rename from ros_driver/ti_mmwave_rospkg/README.md rename to ros_driver/src/ti_mmwave_rospkg/README.md diff --git a/ros_driver/ti_mmwave_rospkg/cfg/1443_2d.cfg b/ros_driver/src/ti_mmwave_rospkg/cfg/1443_2d.cfg similarity index 98% rename from ros_driver/ti_mmwave_rospkg/cfg/1443_2d.cfg rename to ros_driver/src/ti_mmwave_rospkg/cfg/1443_2d.cfg index 7e492c6..3a433e7 100644 --- a/ros_driver/ti_mmwave_rospkg/cfg/1443_2d.cfg +++ b/ros_driver/src/ti_mmwave_rospkg/cfg/1443_2d.cfg @@ -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 \ No newline at end of file diff --git a/ros_driver/ti_mmwave_rospkg/cfg/1443_3d.cfg b/ros_driver/src/ti_mmwave_rospkg/cfg/1443_3d.cfg similarity index 98% rename from ros_driver/ti_mmwave_rospkg/cfg/1443_3d.cfg rename to ros_driver/src/ti_mmwave_rospkg/cfg/1443_3d.cfg index b60914c..52062ba 100644 --- a/ros_driver/ti_mmwave_rospkg/cfg/1443_3d.cfg +++ b/ros_driver/src/ti_mmwave_rospkg/cfg/1443_3d.cfg @@ -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 \ No newline at end of file diff --git a/ros_driver/ti_mmwave_rospkg/cfg/1642_2d.cfg b/ros_driver/src/ti_mmwave_rospkg/cfg/1642_2d.cfg similarity index 98% rename from ros_driver/ti_mmwave_rospkg/cfg/1642_2d.cfg rename to ros_driver/src/ti_mmwave_rospkg/cfg/1642_2d.cfg index f4c3971..a68d62e 100644 --- a/ros_driver/ti_mmwave_rospkg/cfg/1642_2d.cfg +++ b/ros_driver/src/ti_mmwave_rospkg/cfg/1642_2d.cfg @@ -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 diff --git a/ros_driver/ti_mmwave_rospkg/cfg/1843_2d.cfg b/ros_driver/src/ti_mmwave_rospkg/cfg/1843_2d.cfg similarity index 98% rename from ros_driver/ti_mmwave_rospkg/cfg/1843_2d.cfg rename to ros_driver/src/ti_mmwave_rospkg/cfg/1843_2d.cfg index aecd456..35ed615 100644 --- a/ros_driver/ti_mmwave_rospkg/cfg/1843_2d.cfg +++ b/ros_driver/src/ti_mmwave_rospkg/cfg/1843_2d.cfg @@ -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 diff --git a/ros_driver/ti_mmwave_rospkg/cfg/1843_3d.cfg b/ros_driver/src/ti_mmwave_rospkg/cfg/1843_3d.cfg similarity index 98% rename from ros_driver/ti_mmwave_rospkg/cfg/1843_3d.cfg rename to ros_driver/src/ti_mmwave_rospkg/cfg/1843_3d.cfg index 3fff3db..504fb39 100644 --- a/ros_driver/ti_mmwave_rospkg/cfg/1843_3d.cfg +++ b/ros_driver/src/ti_mmwave_rospkg/cfg/1843_3d.cfg @@ -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 diff --git a/ros_driver/ti_mmwave_rospkg/cfg/6843AOP_2d.cfg b/ros_driver/src/ti_mmwave_rospkg/cfg/6843AOP_2d.cfg similarity index 98% rename from ros_driver/ti_mmwave_rospkg/cfg/6843AOP_2d.cfg rename to ros_driver/src/ti_mmwave_rospkg/cfg/6843AOP_2d.cfg index 974cf19..bdfb0c5 100644 --- a/ros_driver/ti_mmwave_rospkg/cfg/6843AOP_2d.cfg +++ b/ros_driver/src/ti_mmwave_rospkg/cfg/6843AOP_2d.cfg @@ -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 diff --git a/ros_driver/ti_mmwave_rospkg/cfg/6843AOP_3d.cfg b/ros_driver/src/ti_mmwave_rospkg/cfg/6843AOP_3d.cfg similarity index 98% rename from ros_driver/ti_mmwave_rospkg/cfg/6843AOP_3d.cfg rename to ros_driver/src/ti_mmwave_rospkg/cfg/6843AOP_3d.cfg index cb05fb3..ec2957c 100644 --- a/ros_driver/ti_mmwave_rospkg/cfg/6843AOP_3d.cfg +++ b/ros_driver/src/ti_mmwave_rospkg/cfg/6843AOP_3d.cfg @@ -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 diff --git a/ros_driver/src/ti_mmwave_rospkg/cfg/6843ISK_3d.cfg b/ros_driver/src/ti_mmwave_rospkg/cfg/6843ISK_3d.cfg new file mode 100644 index 0000000..e25a30d --- /dev/null +++ b/ros_driver/src/ti_mmwave_rospkg/cfg/6843ISK_3d.cfg @@ -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 + diff --git a/ros_driver/ti_mmwave_rospkg/cfg/6843_2d.cfg b/ros_driver/src/ti_mmwave_rospkg/cfg/6843_2d.cfg similarity index 98% rename from ros_driver/ti_mmwave_rospkg/cfg/6843_2d.cfg rename to ros_driver/src/ti_mmwave_rospkg/cfg/6843_2d.cfg index b7ca968..c214e40 100644 --- a/ros_driver/ti_mmwave_rospkg/cfg/6843_2d.cfg +++ b/ros_driver/src/ti_mmwave_rospkg/cfg/6843_2d.cfg @@ -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 diff --git a/ros_driver/ti_mmwave_rospkg/cfg/6843_3d.cfg b/ros_driver/src/ti_mmwave_rospkg/cfg/6843_3d.cfg similarity index 98% rename from ros_driver/ti_mmwave_rospkg/cfg/6843_3d.cfg rename to ros_driver/src/ti_mmwave_rospkg/cfg/6843_3d.cfg index 410e268..b5df338 100644 --- a/ros_driver/ti_mmwave_rospkg/cfg/6843_3d.cfg +++ b/ros_driver/src/ti_mmwave_rospkg/cfg/6843_3d.cfg @@ -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 diff --git a/ros_driver/ti_mmwave_rospkg/include/DataHandlerClass.h b/ros_driver/src/ti_mmwave_rospkg/include/DataHandlerClass.h similarity index 100% rename from ros_driver/ti_mmwave_rospkg/include/DataHandlerClass.h rename to ros_driver/src/ti_mmwave_rospkg/include/DataHandlerClass.h diff --git a/ros_driver/ti_mmwave_rospkg/include/ParameterParser.h b/ros_driver/src/ti_mmwave_rospkg/include/ParameterParser.h similarity index 100% rename from ros_driver/ti_mmwave_rospkg/include/ParameterParser.h rename to ros_driver/src/ti_mmwave_rospkg/include/ParameterParser.h diff --git a/ros_driver/ti_mmwave_rospkg/include/mmWave.h b/ros_driver/src/ti_mmwave_rospkg/include/mmWave.h similarity index 100% rename from ros_driver/ti_mmwave_rospkg/include/mmWave.h rename to ros_driver/src/ti_mmwave_rospkg/include/mmWave.h diff --git a/ros_driver/ti_mmwave_rospkg/include/mmWaveCommSrv.hpp b/ros_driver/src/ti_mmwave_rospkg/include/mmWaveCommSrv.hpp similarity index 100% rename from ros_driver/ti_mmwave_rospkg/include/mmWaveCommSrv.hpp rename to ros_driver/src/ti_mmwave_rospkg/include/mmWaveCommSrv.hpp diff --git a/ros_driver/ti_mmwave_rospkg/include/mmWaveDataHdl.hpp b/ros_driver/src/ti_mmwave_rospkg/include/mmWaveDataHdl.hpp similarity index 100% rename from ros_driver/ti_mmwave_rospkg/include/mmWaveDataHdl.hpp rename to ros_driver/src/ti_mmwave_rospkg/include/mmWaveDataHdl.hpp diff --git a/ros_driver/ti_mmwave_rospkg/launch/1443_multi_2d_0.launch b/ros_driver/src/ti_mmwave_rospkg/launch/1443_multi_2d_0.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/1443_multi_2d_0.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/1443_multi_2d_0.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/1443_multi_2d_1.launch b/ros_driver/src/ti_mmwave_rospkg/launch/1443_multi_2d_1.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/1443_multi_2d_1.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/1443_multi_2d_1.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/1443_multi_3d_0.launch b/ros_driver/src/ti_mmwave_rospkg/launch/1443_multi_3d_0.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/1443_multi_3d_0.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/1443_multi_3d_0.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/1443_multi_3d_1.launch b/ros_driver/src/ti_mmwave_rospkg/launch/1443_multi_3d_1.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/1443_multi_3d_1.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/1443_multi_3d_1.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/1642_multi_2d_0.launch b/ros_driver/src/ti_mmwave_rospkg/launch/1642_multi_2d_0.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/1642_multi_2d_0.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/1642_multi_2d_0.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/1642_multi_2d_1.launch b/ros_driver/src/ti_mmwave_rospkg/launch/1642_multi_2d_1.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/1642_multi_2d_1.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/1642_multi_2d_1.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/1843_multi_2d_0.launch b/ros_driver/src/ti_mmwave_rospkg/launch/1843_multi_2d_0.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/1843_multi_2d_0.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/1843_multi_2d_0.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/1843_multi_2d_1.launch b/ros_driver/src/ti_mmwave_rospkg/launch/1843_multi_2d_1.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/1843_multi_2d_1.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/1843_multi_2d_1.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/1843_multi_3d_0.launch b/ros_driver/src/ti_mmwave_rospkg/launch/1843_multi_3d_0.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/1843_multi_3d_0.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/1843_multi_3d_0.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/1843_multi_3d_1.launch b/ros_driver/src/ti_mmwave_rospkg/launch/1843_multi_3d_1.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/1843_multi_3d_1.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/1843_multi_3d_1.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/6843AOP_multi_2d_0.launch b/ros_driver/src/ti_mmwave_rospkg/launch/6843AOP_multi_2d_0.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/6843AOP_multi_2d_0.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/6843AOP_multi_2d_0.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/6843AOP_multi_2d_1.launch b/ros_driver/src/ti_mmwave_rospkg/launch/6843AOP_multi_2d_1.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/6843AOP_multi_2d_1.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/6843AOP_multi_2d_1.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/6843AOP_multi_3d_0.launch b/ros_driver/src/ti_mmwave_rospkg/launch/6843AOP_multi_3d_0.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/6843AOP_multi_3d_0.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/6843AOP_multi_3d_0.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/6843AOP_multi_3d_1.launch b/ros_driver/src/ti_mmwave_rospkg/launch/6843AOP_multi_3d_1.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/6843AOP_multi_3d_1.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/6843AOP_multi_3d_1.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/6843_multi_2d_0.launch b/ros_driver/src/ti_mmwave_rospkg/launch/6843_multi_2d_0.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/6843_multi_2d_0.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/6843_multi_2d_0.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/6843_multi_2d_1.launch b/ros_driver/src/ti_mmwave_rospkg/launch/6843_multi_2d_1.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/6843_multi_2d_1.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/6843_multi_2d_1.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/6843_multi_3d_0.launch b/ros_driver/src/ti_mmwave_rospkg/launch/6843_multi_3d_0.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/6843_multi_3d_0.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/6843_multi_3d_0.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/6843_multi_3d_1.launch b/ros_driver/src/ti_mmwave_rospkg/launch/6843_multi_3d_1.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/6843_multi_3d_1.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/6843_multi_3d_1.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/camera_overlay.launch b/ros_driver/src/ti_mmwave_rospkg/launch/camera_overlay.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/camera_overlay.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/camera_overlay.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/rosbag_show.launch b/ros_driver/src/ti_mmwave_rospkg/launch/rosbag_show.launch similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/rosbag_show.launch rename to ros_driver/src/ti_mmwave_rospkg/launch/rosbag_show.launch diff --git a/ros_driver/ti_mmwave_rospkg/launch/rviz/ti_mmwave.rviz b/ros_driver/src/ti_mmwave_rospkg/launch/rviz/ti_mmwave.rviz similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/rviz/ti_mmwave.rviz rename to ros_driver/src/ti_mmwave_rospkg/launch/rviz/ti_mmwave.rviz diff --git a/ros_driver/ti_mmwave_rospkg/launch/rviz/ti_mmwave_3d.rviz b/ros_driver/src/ti_mmwave_rospkg/launch/rviz/ti_mmwave_3d.rviz similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/rviz/ti_mmwave_3d.rviz rename to ros_driver/src/ti_mmwave_rospkg/launch/rviz/ti_mmwave_3d.rviz diff --git a/ros_driver/ti_mmwave_rospkg/launch/rviz/ti_mmwave_camera_overlay.rviz b/ros_driver/src/ti_mmwave_rospkg/launch/rviz/ti_mmwave_camera_overlay.rviz similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/rviz/ti_mmwave_camera_overlay.rviz rename to ros_driver/src/ti_mmwave_rospkg/launch/rviz/ti_mmwave_camera_overlay.rviz diff --git a/ros_driver/ti_mmwave_rospkg/launch/rviz/ti_mmwave_multi.rviz b/ros_driver/src/ti_mmwave_rospkg/launch/rviz/ti_mmwave_multi.rviz similarity index 100% rename from ros_driver/ti_mmwave_rospkg/launch/rviz/ti_mmwave_multi.rviz rename to ros_driver/src/ti_mmwave_rospkg/launch/rviz/ti_mmwave_multi.rviz diff --git a/ros_driver/ti_mmwave_rospkg/mmWave_nodelets.xml b/ros_driver/src/ti_mmwave_rospkg/mmWave_nodelets.xml similarity index 100% rename from ros_driver/ti_mmwave_rospkg/mmWave_nodelets.xml rename to ros_driver/src/ti_mmwave_rospkg/mmWave_nodelets.xml diff --git a/ros_driver/ti_mmwave_rospkg/msg/RadarScan.msg b/ros_driver/src/ti_mmwave_rospkg/msg/RadarScan.msg similarity index 100% rename from ros_driver/ti_mmwave_rospkg/msg/RadarScan.msg rename to ros_driver/src/ti_mmwave_rospkg/msg/RadarScan.msg diff --git a/ros_driver/ti_mmwave_rospkg/package.xml b/ros_driver/src/ti_mmwave_rospkg/package.xml similarity index 100% rename from ros_driver/ti_mmwave_rospkg/package.xml rename to ros_driver/src/ti_mmwave_rospkg/package.xml diff --git a/ros_driver/ti_mmwave_rospkg/src/DataHandlerClass.cpp b/ros_driver/src/ti_mmwave_rospkg/src/DataHandlerClass.cpp similarity index 100% rename from ros_driver/ti_mmwave_rospkg/src/DataHandlerClass.cpp rename to ros_driver/src/ti_mmwave_rospkg/src/DataHandlerClass.cpp diff --git a/ros_driver/ti_mmwave_rospkg/src/ParameterParser.cpp b/ros_driver/src/ti_mmwave_rospkg/src/ParameterParser.cpp similarity index 100% rename from ros_driver/ti_mmwave_rospkg/src/ParameterParser.cpp rename to ros_driver/src/ti_mmwave_rospkg/src/ParameterParser.cpp diff --git a/ros_driver/ti_mmwave_rospkg/src/mmWaveCommSrv.cpp b/ros_driver/src/ti_mmwave_rospkg/src/mmWaveCommSrv.cpp similarity index 100% rename from ros_driver/ti_mmwave_rospkg/src/mmWaveCommSrv.cpp rename to ros_driver/src/ti_mmwave_rospkg/src/mmWaveCommSrv.cpp diff --git a/ros_driver/ti_mmwave_rospkg/src/mmWaveDataHdl.cpp b/ros_driver/src/ti_mmwave_rospkg/src/mmWaveDataHdl.cpp similarity index 100% rename from ros_driver/ti_mmwave_rospkg/src/mmWaveDataHdl.cpp rename to ros_driver/src/ti_mmwave_rospkg/src/mmWaveDataHdl.cpp diff --git a/ros_driver/ti_mmwave_rospkg/src/mmWaveLoader.cpp b/ros_driver/src/ti_mmwave_rospkg/src/mmWaveLoader.cpp similarity index 100% rename from ros_driver/ti_mmwave_rospkg/src/mmWaveLoader.cpp rename to ros_driver/src/ti_mmwave_rospkg/src/mmWaveLoader.cpp diff --git a/ros_driver/ti_mmwave_rospkg/src/mmWaveQuickConfig.cpp b/ros_driver/src/ti_mmwave_rospkg/src/mmWaveQuickConfig.cpp similarity index 100% rename from ros_driver/ti_mmwave_rospkg/src/mmWaveQuickConfig.cpp rename to ros_driver/src/ti_mmwave_rospkg/src/mmWaveQuickConfig.cpp diff --git a/ros_driver/ti_mmwave_rospkg/srv/mmWaveCLI.srv b/ros_driver/src/ti_mmwave_rospkg/srv/mmWaveCLI.srv similarity index 100% rename from ros_driver/ti_mmwave_rospkg/srv/mmWaveCLI.srv rename to ros_driver/src/ti_mmwave_rospkg/srv/mmWaveCLI.srv diff --git a/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_release_notes.html b/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_release_notes.html new file mode 100644 index 0000000..ba4c655 --- /dev/null +++ b/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_release_notes.html @@ -0,0 +1,91 @@ + + + + +Safety Bubble with ROS for mmWave Release Notes - Version 1.1 + + + + + + + + + + + + + + + + + + + + + diff --git a/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_release_notes.pdf b/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_release_notes.pdf new file mode 100644 index 0000000..a8c2bf0 Binary files /dev/null and b/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_release_notes.pdf differ diff --git a/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_user_guide.html b/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_user_guide.html new file mode 100644 index 0000000..101fed8 --- /dev/null +++ b/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_user_guide.html @@ -0,0 +1,158 @@ + + + + +Safety Bubble with ROS for mmWave User's Guide - Version 1.1 + + + + + + + + + + + + + + + + + + + + + diff --git a/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_user_guide.pdf b/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_user_guide.pdf new file mode 100644 index 0000000..246934b Binary files /dev/null and b/safety_bubble/docs/Safety_Bubble_with_ROS_for_mmWave_user_guide.pdf differ diff --git a/safety_bubble/docs/images/DemoDesc.PNG b/safety_bubble/docs/images/DemoDesc.PNG new file mode 100644 index 0000000..4218d29 Binary files /dev/null and b/safety_bubble/docs/images/DemoDesc.PNG differ diff --git a/safety_bubble/docs/images/iwr6843_silicon_revision.png b/safety_bubble/docs/images/iwr6843_silicon_revision.png new file mode 100644 index 0000000..a8f77fe Binary files /dev/null and b/safety_bubble/docs/images/iwr6843_silicon_revision.png differ diff --git a/safety_bubble/docs/images/setup/Turtlebot2_quad_iso.jpg b/safety_bubble/docs/images/setup/Turtlebot2_quad_iso.jpg new file mode 100644 index 0000000..b6eb880 Binary files /dev/null and b/safety_bubble/docs/images/setup/Turtlebot2_quad_iso.jpg differ diff --git a/safety_bubble/docs/images/setup/Turtlebot2_quad_top.jpg b/safety_bubble/docs/images/setup/Turtlebot2_quad_top.jpg new file mode 100644 index 0000000..8f92e6a Binary files /dev/null and b/safety_bubble/docs/images/setup/Turtlebot2_quad_top.jpg differ diff --git a/safety_bubble/docs/images/setup_sw/ros_pkg_dest.png b/safety_bubble/docs/images/setup_sw/ros_pkg_dest.png new file mode 100644 index 0000000..73cc552 Binary files /dev/null and b/safety_bubble/docs/images/setup_sw/ros_pkg_dest.png differ diff --git a/safety_bubble/docs/images/setup_sw/ros_pkg_in_src.png b/safety_bubble/docs/images/setup_sw/ros_pkg_in_src.png new file mode 100644 index 0000000..ada83ef Binary files /dev/null and b/safety_bubble/docs/images/setup_sw/ros_pkg_in_src.png differ diff --git a/safety_bubble/docs/images/setup_sw/ros_pkg_source.png b/safety_bubble/docs/images/setup_sw/ros_pkg_source.png new file mode 100644 index 0000000..a310475 Binary files /dev/null and b/safety_bubble/docs/images/setup_sw/ros_pkg_source.png differ diff --git a/safety_bubble/ti_mmwave_ros_safety_bubble_v1p0.tar.gz b/safety_bubble/ti_mmwave_ros_safety_bubble_v1p0.tar.gz new file mode 100644 index 0000000..33f067b Binary files /dev/null and b/safety_bubble/ti_mmwave_ros_safety_bubble_v1p0.tar.gz differ