Giter Club home page Giter Club logo

iwr6843aop_pub's Introduction

IWR6843AOPEVM simple ROS2 package

mmw_pcl_gif

Python ROS2 pointcloud retriever for IWR6843AOPEVM mmWave device

Derived from: https://github.com/mywrong/IWR6843_TLVS

Another example: https://github.com/chopin1998/mmwave

Prerequisites

  • ROS2 (Ubuntu 18.04.5 & dashing tested // Ubuntu 20.04.3 & foxy tested)
  • Python3 (3.6.9 & 3.8.10 tested)
  • IWR6843AOPEVM (ES2) mmWave radar device flashed with out-of-box firmware (either from this repo or inside downloaded mmwave_industrial_toolbox_x_x_x/labs/Out_Of_Box_Demo/prebuilt_binaries/ folder. Use uniflash to flash EVM (https://training.ti.com/hardware-setup-iwr6843isk-and-iwr6843isk-ods)). Set up switches as seen here:

Installation

  1. Clone the repo to workspace
    cd ~/ros2_ws/src/
    git clone https://github.com/nhma20/iwr6843aop_pub.git
  2. Colcon build package
    cd ~/ros2_ws/
    colcon build --packages-select iwr6843aop_pub

Usage

  1. Plug in IWR6843AOPEVM, make sure CLI and data ports match (default /dev/ttyUSB0 and /dev/ttyUSB1)

  2. Run ros package (make sure /opt/ros/dashing/setup.bash and <ros2_workspace>/install/setup.bash are sourced)

    ros2 run iwr6843aop_pub pcl_pub

    example with ROS2 parameters:

    ros2 run iwr6843aop_pub pcl_pub --ros-args -p cli_port:=/dev/ttyUSB0 -p data_port:=/dev/ttyUSB1 -p cfg_path:=/home/nm/ros2_ws/src/iwr6843aop_pub/cfg_files/90deg_noGroup_18m_30Hz.cfg

    Launch example with default parameters:

    ros2 launch iwr6843aop_pub default_parameters.launch.py

    When loading a cfg with a different antenna configuration than the previous, IWR6843AOP device must be power cycled - can be done easily by pressing the RST_SW switch, or simply unplugging and replugging the USB cable.

  3. Visualize with rviz

    rviz2
  4. 'Add' a new display (lower left corner)

  5. Select 'By topic' ribbon

  6. Find 'iwr6843_pcl PointCloud2' and add it

  7. Edit 'Fixed Frame' to 'iwr6843_frame'. (use a 'static_transform_publisher' to transform to another frame)

  8. (Optional) Set point size at PointCloud2 -> Size (m) to 0.1 for better clarity

Modify

All functional code (for the purpose of this ROS package) is located at

/iwr6843aop_pub/iwr6843aop_pub/publisher_member_function.py

A number of .cfg files are provided which dictate the functionality of the mmWave device. More profiles can be made with the mmWave Demo Visualizer tool: https://dev.ti.com/gallery/view/mmwave/mmWave_Demo_Visualizer/ver/3.5.0/

iwr6843aop_pub's People

Contributors

nhma20 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.