【EHub_tx1_tx2_E100】Ubuntu18.04 + ROS_ Melodic + NVISTAR VP300 激光雷达 评测

news2024/12/23 0:28:02

 

简介:介绍NVISTAR 的二维DTOF激光雷达 在EHub_tx1_tx2_E100载板,TX1核心模块环境(Ubuntu18.04)下测试ROS驱动,打开使用RVIZ 查看点云数据,本文的前提条件是你的TX1里已经安装了ROS版本:Melodic。

关于测试硬件EHub_tx1_tx2_E100载板请查看:EdgeBox_EHub_tx1_tx2_E100 开发板评测_机器人虎哥的博客-CSDN博客


 

目录

一、参数指标:

二、官方资料获取

三、NVISTAR 点云客户端(windows版本)使用(micro-USB)

3.1 获取工具软件

3.2 雷达接入WIN电脑

3.3 工具软件链接雷达

四、ROS环境显示点云(micro-USB)

4.1 建立工作空间

4.拷贝代码

4.3 编译源码包

4.4 将雷达通过USB 接入系统

4.5 串口配置

4.5 启动驱动

4.6 启动RVIZ查看点云


一、参数指标:

  • 激光波长:905nm,class I

  • 探测范围:0.1m~50m

  • 重复精度:3cm

  • 水平视场角:300°

  • 测量频率:5KHZ~60KHZ

  • 扫描频率:10HZ~30HZ

  • 水平角分辨率:0.18°(10HZ)~0.54°(30HZ)

  • 抗强光:>80000LX

  • 电源供电:5V/500mA

  • 功耗:<2.5w

  • 外形尺寸:50mm * 50mm * 75mm

  • 重量:150g

  • 防护等级:IP65

  • 接口:micro-USB、以太网口、RS232、NPN

  • 工作环境温度:-10℃~55℃

  • 存储环境温度:-30℃~75℃

二、官方资料获取

官网下载中心:下载中心-深圳市不止技术有限公司-深圳市不止技术有限公司

 

 

三、NVISTAR 点云客户端(windows版本)使用(micro-USB)

3.1 获取工具软件

下载解压后,获得文件和使用说明:

软件是免安装版本,直接打开即可:

 

3.2 雷达接入WIN电脑

 

3.3 工具软件链接雷达

 

  

四、ROS环境显示点云(micro-USB)

包获取地址:ROS

4.1 建立工作空间

mkdir -p ~/Nvistar_ws/src
cd ~/Nvistar_ws/
catkin_make
source devel/setup.bash

4.拷贝代码

cd ~/Nvistar_ws/src
#将官网地址的代码包放置到这个目录解压

 #解压包

unzip NVISTAR_ROS.zip 

 官方也提供了git下载的维护,和这步操作作用一致

cd ~/Nvistar_ws/src
git clone https://gitee.com/nvilidar/nvilidar_ros.git

4.3 编译源码包

cd ~/Nvistar_ws
catkin_make --pkg nvilidar_ros

 

编译完成。

4.4 将雷达通过USB 接入系统

lsusb

 

 ls /dev

 

4.5 串口配置

如果你想实现串口重映射名称,则采用如下的步骤:

if you want to use the unchanging device name,Create the name "/dev/nvilidar" to rename serialport

cd ~/Nvistar_ws
source devel/setup.bash 
​
roscd nvilidar_ros/startup
sudo chmod 777 ./*
sudo sh initenv.sh

执行完毕后,重新插拔雷达USB口

ls /dev

 

给当前用户放开串口权限:if you use the lidar device name,you must give the permissions to user.

if you use the lidar device name,you must give the permissions to user.
    ---whoami
    get the user name.link ubuntu.
    ---sudo usermod -a -G dialout ubuntu
    ubuntu is the user name.
    ---sudo reboot

我自己的步骤:

sudo usermod -a -G dialout nvidia
sudo reboot

4.5 启动驱动

/home/nvidia/Nvistar_ws/src/nvilidar_ros/launch/lidar.launch 脚本内容

<launch>
  <node name="nvilidar_node"  pkg="nvilidar_ros"  type="nvilidar_node" output="screen" respawn="false" >
    <param name="serialport_name"             type="string" value="/dev/nvilidar"/>
    <param name="serialport_baud"             type="int" value="512000"/>
    <param name="ip_addr"                     type="string" value="192.168.1.200"/>
    <param name="lidar_udp_port"              type="int" value="8100"/>
    <param name="config_udp_port"             type="int" value="8200"/>
    <param name="frame_id"                    type="string" value="laser_frame"/>
    <param name="resolution_fixed"            type="bool"   value="true"/>
    <param name="auto_reconnect"              type="bool"   value="true"/>
    <param name="reversion"                   type="bool"   value="false"/>
    <param name="inverted"                    type="bool"   value="false"/>
    <param name="angle_min"                   type="double" value="-180" />
    <param name="angle_max"                   type="double" value="180" />
    <param name="range_min"                   type="double" value="0.001" />
    <param name="range_max"                   type="double" value="64.0" />
    <param name="aim_speed"                   type="double" value="10.0"/>
    <param name="sampling_rate"               type="int" value="10"/>
    <param name="sensitive"                   type="bool" value="false"/>
    <param name="tailing_level"               type="int" value="6"/>
    <param name="angle_offset_change_flag"    type="bool" value="false"/>
    <param name="angle_offset"                type="double" value="0.0" />
    <param name="apd_change_flag"             type="bool" value="false"/>
    <param name="apd_value"                   type="int"  value="500"/>
    <param name="ignore_array_string"         type="string" value="" />
    <param name="filter_jump_enable"          type="bool"  value="true" />
    <param name="filter_jump_value_min"       type="int"  value="3" />
    <param name="filter_jump_value_max"       type="int"  value="50" />
​
  </node>
  <node pkg="tf" type="static_transform_publisher" name="base_link_to_laser"
    args="0.19 0.0 0.2 0.06 0.0  0.0 /base_footprint /laser_frame 40" />
</launch>

可根据你实际的硬件环境和需要,修改串口,扫描角度等参数。

启动:

cd ~/Nvistar_ws
source devel/setup.bash 
roslaunch nvilidar_ros lidar.launch 

 

4.6 启动RVIZ查看点云

打开终端,启动IMU节点

cd ~/Nvistar_ws
source devel/setup.bash 
roslaunch nvilidar_ros lidar.launch 

打开新终端,启动rviz

rosrun rviz rviz

 

 

 纠错,疑问,交流: 911946883@qq.com

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/138919.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

滴滴前端一面经典手写面试题

实现bind 实现bind要做什么 返回一个函数&#xff0c;绑定this&#xff0c;传递预置参数bind返回的函数可以作为构造函数使用。故作为构造函数时应使得this失效&#xff0c;但是传入的参数依然有效 // mdn的实现 if (!Function.prototype.bind) {Function.prototype.bind f…

Kuberneters(2)- Pod详解

第四章 实战入门 本章节将介绍如何在kubernetes集群中部署一个nginx服务&#xff0c;并且能够对其进行访问。 Namespace ​ Namespace是kubernetes系统中的一种非常重要资源&#xff0c;它的主要作用是用来实现多套环境的资源隔离或者多租户的资源隔离。 ​ 默认情况下&…

路由跳转同一个界面,但是params不同。页面不刷新?(路由的key)

文章目录引入知识点&#xff1a;路由的key值思路&#xff1a;结论&#xff1a;解决方法&#xff1a;效果&#xff1a;应用场景:引入知识点&#xff1a;路由的key值 如果不设置路由的key值&#xff0c;默认情况下是根据路径判断的&#xff0c;就是不包括params值 例子&#xff…

MySQL5-数据类型

目录 1.数值类型&#xff08;分为整型和浮点型&#xff09; 2.字符串类型 3.日期类型 MySQL和Java编程一样&#xff0c;创建表时要考虑数据类型。 MySQL表组成&#xff1a;列名/列数据类型&#xff1b;数据。 1.数值类型&#xff08;分为整型和浮点型&#xff09; 数据类型…

天工开物 #4 构建一个受保护的网站

前段时间&#xff0c;我出于兴趣试着做了一个需要登录鉴权才能访问的个人网站&#xff0c;最终以 Docusaurus[1] 为内容框架&#xff0c;Next.js[2] 做中间件&#xff0c;Vercel[3] 托管网站&#xff0c;再加上 Auth0[4] 作为鉴权解决方案&#xff0c;实现了一个基本免费的方案…

数位DP入门笔记(1)HUD-2089

题目&#xff1a; 题目理解和思路&#xff1a; 1.此题是给一个6位车牌号&#xff0c;正着不能含有连着的62&#xff0c;不能有4。 2.判断车牌号可能会采用dfs&#xff0c;因为每增加一位数就包含带4&#xff0c;或者形成62两种不合法情况&#xff08;事实上没有用到&#xf…

java学习day67(乐友商城)商品详情及静态化

1.商品详情 当用户搜索到商品&#xff0c;肯定会点击查看&#xff0c;就会进入商品详情页&#xff0c;接下来我们完成商品详情页的展示&#xff0c; 1.1.Thymeleaf 在商品详情页中&#xff0c;我们会使用到Thymeleaf来渲染页面&#xff0c;所以需要先了解Thymeleaf的语法。 …

带你深度剖析《数据在内存中的存储》——C语言

文章目录 一、数据类型介绍 二、整型在内存中的存储方式 2、1 原码、反码、补码的讲解 2、2 大小端介绍 2、2、1 大小端的概念 2、2、2 为什么要区分大小端存储呢&#xff1f; 2、2、3 大小端判断练习 三、浮点数在内存中的存储方式 3、1 浮点数在内存中的存储例题 3、2 浮点数…

TensorFlow2.0实战:Cats vs Dogs

数据集准备 在本文中&#xff0c;我们使用“Cats vs Dogs”的数据集。这个数据集包含了23,262张猫和狗的图像 你可能注意到了&#xff0c;这些照片没有归一化&#xff0c;它们的大小是不一样的 但是非常棒的一点是&#xff0c;你可以在Tensorflow Datasets中获取这个数据集 …

梦在远方路在脚下,社科院与杜兰大学金融管理硕士项目与你一路相伴

梦想是指引我们飞翔的翅膀&#xff0c;梦想是远方的灯塔指引着我们前进的方向。梦想距离我们很远&#xff0c;但路在脚下&#xff0c;只要朝着梦想前进&#xff0c;终有一天梦想会照进现实。就像拥有读研梦想的我们&#xff0c;在社科院杜兰金融管理硕士项目汲取能量&#xff0…

【Android OpenGL开发】OpenGL ES与EGL介绍

什么是OpenGL ES OpenGL&#xff08;Open Graphics Library&#xff09;是一个跨编程语言、跨平台的编程图形程序接口&#xff0c;主要用于图像的渲染。 Android提供了简化版的OpenGL接口&#xff0c;即OpenGL ES。 早先定义 OpenGL ES 是 OpenGL 的嵌入式设备版本&#xff…

Mac上超实用的6款软件,老用户都知道!

今天为大家带来的是6款超实用的Mac软件&#xff0c;让你不再走弯路。第一款&#xff1a;Amphetamine 防休眠的利器Amphetamine for mac是应用在Mac上的一款防休眠工具&#xff0c;可以自定义哪些程序运行时不休眠&#xff0c;做到自定义Mac睡眠时间&#xff0c;可以通过超级简单…

【数据结构】链式存储:链表(无头双向链表实现)

目录 &#x1f947;一&#xff1a;无头双向链表 &#x1f392;二、无头双向链表的实现 &#x1f4d8;1.创建节点类 &#x1f4d2;2.创建链表 &#x1f4d7;3.打印链表 &#x1f4d5;4.查找是否包含关键字key是否在单链表当中 &#x1f4d9;5.得到单链表的长度 &#x1…

PCL中常用的高级采样方法

0. 简介 我们在使用PCL时候&#xff0c;常常不满足于常用的降采样方法&#xff0c;这个时候我们就想要借鉴一些比较经典的高级采样方法。这一讲我们将对常用的高级采样方法进行汇总&#xff0c;并进行整理&#xff0c;来方便读者完成使用 1. 基础下采样 1.1 点云随机下采样 …

代码随想录拓展day6 N皇后

代码随想录拓展day6 N皇后 只有这一个内容。一刷的时候也没弄太明白&#xff0c;二刷的时候补上。还有部分内容来自牛客网左老师的算法课程。 总体思路不容易想明白&#xff0c;优化也有很大难度。这要是面试能碰上基本就是故意不给过了吧。 思路 首先来看一下皇后们的约束…

Flink 容错恢复 2.0 2022 最新进展

摘要&#xff1a;本文整理自阿里云 Flink 存储引擎团队负责人&#xff0c;Apache Flink 引擎架构师 & PMC 梅源在 FFA 核心技术专场的分享。主要介绍在 2022 年度&#xff0c;Flink 容错 2.0 这个项目在社区和阿里云产品的进展&#xff0c;内容包括&#xff1a;Flink 容错恢…

基于ssm的个人健康管理系统

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据疫情当下&#xff0c;你想解决的问…

简单理解光会产生折射的原因及折射定律的推导

已知 1、光是一种波&#xff1b; 2、光在不同介质中传播速度不同。 构建模型 如下图所示&#xff0c;光是中电磁波&#xff0c;以余弦波为例&#xff0c;取余弦波的极大值点为参考&#xff0c;建立一个平面波&#xff08;波前为一个平面&#xff09;。能明显的看出光的传播方…

树形结构——二叉树

前言 前面的章节我们介绍了两种重要的数据结构&#xff0c;数组和链表&#xff0c;由于他们各自的特性使得他们的优缺点非常分明&#xff0c;在查询速度和插入速度上顾此失彼&#xff0c;不能兼顾&#xff0c;那么有没有一种数据结构可以同时高效的完成插入和查询操作呢&#x…

专访 | 刘嘉松:开源,互惠且共赢

本文整理自对 2022 开源之夏 OpenMLDB 社区贡献者刘嘉松同学的采访&#xff0c;欢迎大家关注~ OpenMLDB&#xff1a;可以先请你介绍一下你自己吗? 刘嘉松&#xff1a;我叫刘嘉松&#xff0c;是中南大学计科专业的一名本科生&#xff0c;目前大四&#xff0c;未来将继续在中南…