大陆4D毫米波雷达ARS548调试

本文介绍了大陆ARS548毫米波雷达的调试与测试流程,主要包括以下内容:

设备参数:最大检测距离301m(可调93-1514m),支持gPTP时间同步。

接线调试
Windows需使用USB-RJ45转换器 Linux可直接连接网线
上位机测试
需注意Windows Intel网卡不兼容点云数据显示。
Wireshark配置
需加载对应固件版本的Lua插件 当前实验室使用5.48.4版本
VLAN配置
提供临时和永久两种修改方式 需将VLAN ID设为19以接收组播数据
时间同步
使用linuxptp工具实现gPTP同步 需配置主从时钟关系
ROS集成
需将解析包放入ROS工作空间编译 运行前需确保网络配置正确 文末提供了详细的操作命令和配置示例,并强调测试过程中的注意事项。

1、大陆ARS548手册

输出点云数

电源:

最大检测距离: 301m 93~1514m可调

时间同步:gPTP

2. 接线调试

windows - 需要加一个Hub

Linux - 直接连网线就行

根据测试的实际结果,建议Windows 下测试时 加一个 RJ45 - USB的 hub 修改 hub 上的网卡 , linux 直接连接电脑修改eno1的网卡就行。

注:windows下 intel的网卡不支持点云数据的查看,需要使用绿联的以太转USB的hub,接到电脑上,设置相应的 VLAN ID 和 IP,防火墙可以不禁用。

3. 上位机软件测试

2

4. Wireshark加载lua插件

不同固件版本的雷达,需要加载不同固件对应的 lua 脚本;

帮助 >> 关于wireshark >> 文件夹 >> lua插件文件夹加载 >> 重启wireshark

实验室 目前 ARS548的毫米波雷达 需要加载 《5.ARS548_v5.48.4_20221214》 lua

加载后

5. 设备VLAN ID 19 修改

设备:ubuntu系统

(1) 设备 VLAN ID 19修改

由于ARS548雷达本身是组播模式传输数据,提供的上位机软件没有单播模式可修改。

因此,需要将电脑本身的IP添加到组播组中,修改VLAN ID为19.

提供了两种修改方式,建议采用第二种方式修改。

方式1 - 临时修改:

在 Ubuntu 系统下,可以使用 ip 命令来配置以太网卡的 VLAN。以下是配置以太网卡 VLAN ID 为

19 的步骤:

确认网络接口名称: 打开终端并运行以下命令,找到你要配置的网络接口的名称。

ip link

  1. 添加 VLAN: 使用以下命令将 VLAN 19 添加到你的以太网接口, 以太网接口名称为eno1 :

sudo ip link add link eno1 name eno1.19 type vlan id 19

这将创建一个名为 eth0.19 的虚拟接口,并将其与 VLAN 19 关联。

  1. 启用 VLAN 接口: 使用以下命令启用新创建的 VLAN 接口:

sudo ip link set dev eno1.19 up

up是开启,down是关闭。

  1. 验证配置: 运行以下命令验证 VLAN 配置:

ip link show

你应该能够看到 eth0 和 eth0.19 这两个接口,其中 eth0.19 是 VLAN 19 的子接口。

这样,以太网卡就配置了 VLAN ID 19。

方式2 - 永久修改:

上述更改在系统重启后将被重置。如果想要使其永久生效,需要将配置信息添加到网络配置文件中。

网络配置文件通常位于: /etc/network/interfaces 或 /etc/netplan/

目录下,具体取决于你的系统和网络管理器。如果使 用 Netplan 进行网络配置,可以编辑 Netplan 配置文件,例如 /etc/netplan/01-netcfg.yaml,

修改前需要备份一下:

并在接口的 vlans 部分添加以下内容:

最后执行:

sudo netplan apply

这样配置将在系统重启后保持。

6. 时间同步测试

参考介绍博文:

  • https://getiot.tech/zh/linux-command/ Linux命令大全 有 ptp4l + phc2sys的使用介绍

ARS548支持gPTP协议,采用 linuxptp 开源工具进行时间同步,PC机或者域控制器是主时钟,雷达是从时钟;

(1)安装linuxptp工具

linuxptp-4.2.tgz

1

一般直接sudo apt-get install linuxptp就行,但是在使用过程中发现报错:

unknown option BMCA at line 26 in global section

查资料发现,直接apt-get安装,不支持BMCA

2

随后从github上下载 git clone git://git.code.sf.net/p/linuxptp/code linuxptp

执行 sudo make | sudo make install 安装, 依旧报错

3

更换了一个安装包,

https://sourceforge.net/projects/linuxptp/

执行 cd linuxptp | sudo make | sudo make install 安装

(2) 安装完成之后,修改auto-Master.cfg 配置文件

将 ptp_dst_mac 修改为 ARS548 雷达的 mac 地址。

然后 开一个终端 执行:

sudo ptp4l -i eno1 -m -H -f automotive_Master.cfg

结果如下:

再开一个终端 执行:

sudo phc2sys -m -s CLOCK_REALTIME -c eno1 -w

结果如下:

然后打开终端执行:

sudo wireshark

ARS548会以20HZ的速度发数据报文,三种类型,detectionlist、sensorstatus、objectlist。

主要查看其中的sensorsStatus : Sync Status 状态位为1 则表示 时间同步成功,此时同步正常。

注意:

  1. 测试过程中使用转接盒的话,ARS548发的包,其MAC 地址 是 转接盒的 MAC地址;

  2. 以上两条核心命令测试执行后,下次还需要再次输入,因此可以将其以服务的方式启动,每次系统自启,作为后台进程;

7. ROS 点云查看

需要将供应商提供的 parse 包放到ROS 的catkin_ws 的src下面

按照如下步骤,编译ros node节点

CATKIN_MAKE:

将parse文件夹拷贝至“${ROS_WORKSPACE}/src/”下

切换至WORKSPACE目录: cd ${ROS_WORKSPACE}

执行命令:catkin_make

若catkin_make忽略了parse项目,执行: catkin_make --only-pkg-with-deps parse

运行DEMO前确认以下步骤:

配置网卡IP与雷达IP在相同网段,配置网卡VLAN ID

parse/script/udp_receiver.py, line 75 配置host_ip与radar_ip

host_ip : 192.168.1.102

radar_ip : 192.168.1.205

添加python脚本执行权限: chmod +x ${ROS_WORKSPACE}/src/parse/script/*

运行DEMO:

roslaunch parse single_radar_viz.launch

**核心有两种类型的 Topic : ** detection模式: /det_viz_pub | obj_viz_pub

可以选择显示某种类型的数据。

8. ROS点云数据采集

类似菜鸟教程的网站:https://getiot.tech/zh/

1. rosbag 使用说明:

https://blog.csdn.net/QLeelq/article/details/123201294

2. rosbag 播放数据, rviz查看数据

https://blog.csdn.net/qq_42585108/article/details/104853192

  1. 启动launch文件

roslaunch parse single_radar_viz.launch

  1. 记录所有的话题数据 (文件名会自动保存为日期)

rosbag record -a

  1. 播放bag文件

rosbag play xx.bag

  1. 打开rviz查看数据

rosrun rviz rviz

  1. 在rviz中订阅相关的topic即可查看

附录

1. VLAN + 组播 (云驰适配问题)

二层交换机和三层交换机的区别: https://zhuanlan.zhihu.com/p/379870366

VLAN介绍: https://zhuanlan.zhihu.com/p/385949949

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

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

相关文章

TDengine 的 AI 应用实战——运维异常检测

作者: derekchen Demo数据集准备 我们使用公开的 NAB数据集 里亚马逊 AWS 东海岸数据中心一次 API 网关故障中,某个服务器上的 CPU 使用率数据。数据的频率为 5min,单位为占用率。由于 API 网关的故障,会导致服务器上的相关应用…

并发编程 - go版

1.并发编程基础概念 进程和线程 A. 进程是程序在操作系统中的一次执行过程,系统进行资源分配和调度的一个独立单位。B. 线程是进程的一个执行实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。C.一个进程可以创建和撤销多个线程;同一个进程中…

《一生一芯》数字实验三:加法器与ALU

1. 实验目标 设计一个能实现如下功能的4位带符号位的 补码 ALU&#xff1a; Table 4 ALU 功能列表  功能选择 功能 操作 000 加法 AB 001 减法 A-B 010 取反 Not A 011 与 A and B 100 或 A or B 101 异或 A xor B 110 比较大小 If A<B then out1…

解读《网络安全法》最新修订,把握网络安全新趋势

《网络安全法》自2017年施行以来&#xff0c;在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂&#xff0c;网络攻击、数据泄露等事件频发&#xff0c;现行法律已难以完全适应新的风险挑战。 2025年3月28日&#xff0c;国家网信办会同相关部门起草了《网络安全…

Java并发编程实战 Day 10:原子操作类详解

【Java并发编程实战 Day 10】原子操作类详解 开篇 这是“Java并发编程实战”系列的第10天&#xff0c;我们将深入探讨原子操作类的核心技术——CAS原理、ABA问题以及原子类的实现机制。通过理论结合代码实践的方式&#xff0c;帮助读者理解并掌握如何在实际工作中高效使用原子…

瀚文机械键盘固件开发详解:HWKeyboard.h文件解析与应用

【手把手教程】从零开始的机械键盘固件开发&#xff1a;HWKeyboard.h详解 前言 大家好&#xff0c;我是键盘DIY爱好者Despacito0o&#xff01;今天想和大家分享我开发的机械键盘固件核心头文件HWKeyboard.h的设计思路和技术要点。这个项目是我多年来对键盘固件研究的心血结晶…

2048游戏的技术实现分析-完全Java和Processing版

目录 简介Processing库基础项目构建指南项目结构核心数据结构游戏核心机制图形界面实现性能优化代码详解设计模式分析测试策略总结与展望简介 2048是一款由Gabriele Cirulli开发的经典益智游戏。本文将深入分析其Java实现版本的技术细节。该实现使用了Processing库来创建图形界…

Spring Boot + Elasticsearch + HBase 构建海量数据搜索系统

Spring Boot Elasticsearch HBase 构建海量数据搜索系统 &#x1f4d6; 目录 1. 系统需求分析2. 系统架构设计3. Elasticsearch 与 HBase 集成方案4. Spring Boot 项目实现5. 大规模搜索系统最佳实践 项目概述 本文档提供了基于 Spring Boot、Elasticsearch 和 HBase 构建…

【iOS】YYModel源码解析

YYModel源码解析 文章目录 YYModel源码解析前言YYModel性能优势YYModel简介YYClassInfo解析YYClassIvarInfo && objc_ivarYYClassMethodInfo && objc_methodYYClassPropertyInfo && property_tYYClassInfo && objc_class YYClassInfo的初始化细…

宇树科技更名“股份有限公司”深度解析:机器人企业IPO前奏与资本化路径

从技术落地到资本跃迁&#xff0c;拆解股改背后的上市逻辑与行业启示 核心事件&#xff1a;股改释放的上市信号 2025年5月28日&#xff0c;杭州宇树科技有限公司正式更名“杭州宇树科技股份有限公司”&#xff0c;市场主体类型变更为“股份有限公司”。尽管官方称为常规运营调…

Android Native 内存泄漏检测全解析:从原理到工具的深度实践

引言 Android应用的内存泄漏不仅发生在Java/Kotlin层&#xff0c;Native&#xff08;C/C&#xff09;层的泄漏同样普遍且隐蔽。由于Native内存不受Java虚拟机&#xff08;JVM&#xff09;管理&#xff0c;泄漏的内存无法通过GC自动回收&#xff0c;长期积累会导致应用内存占用…

Vortex GPGPU的github流程跑通与功能模块波形探索(四)

文章目录 前言一、demo的输入文件二、trace_csv三、2个值得注意的点3.1 csv指令表格里面的tmask&#xff1f;3.2 rtlsim和simx的log文件&#xff1f; 总结 前言 跟着前面那篇最后留下的几个问题接着把输出波形文件和csv文件的输入、输出搞明白&#xff01; 一、demo的输入文件…

UnityPSD文件转UI插件Psd2UnityuGUIPro3.4.0u2017.4.2介绍:Unity UI设计的高效助手

UnityPSD文件转UI插件Psd2UnityuGUIPro3.4.0u2017.4.2介绍&#xff1a;Unity UI设计的高效助手 【下载地址】UnityPSD文件转UI插件Psd2UnityuGUIPro3.4.0u2017.4.2介绍 这款开源插件将PSD文件无缝转换为Unity的UI元素&#xff0c;极大提升开发效率。它支持一键转换&#xff0c;…

力扣100题之128. 最长连续序列

方法1 使用了hash 方法思路 使用哈希集合&#xff1a;首先将数组中的所有数字存入一个哈希集合中&#xff0c;这样可以在 O(1) 时间内检查某个数字是否存在。 寻找连续序列&#xff1a;遍历数组中的每一个数字&#xff0c;对于每一个数字&#xff0c; 检查它是否是某个连续序列…

Java爬虫技术详解:原理、实现与优势

一、什么是网络爬虫&#xff1f; 网络爬虫&#xff08;Web Crawler&#xff09;&#xff0c;又称网络蜘蛛或网络机器人&#xff0c;是一种自动化程序&#xff0c;能够按照一定的规则自动浏览和抓取互联网上的信息。爬虫技术是大数据时代获取网络数据的重要手段&#xff0c;广泛…

神经网络与深度学习 网络优化与正则化

1.网络优化存在的难点 &#xff08;1&#xff09;结构差异大&#xff1a;没有通用的优化算法&#xff1b;超参数多 &#xff08;2&#xff09;非凸优化问题&#xff1a;参数初始化&#xff0c;逃离局部最优 &#xff08;3&#xff09;梯度消失&#xff08;爆炸&#xff09; …

【汇编逆向系列】二、函数调用包含单个参数之整型-ECX寄存器,LEA指令

目录 一. 汇编源码 二. 汇编分析 1. ECX寄存器 2. 栈位置计算​ 3. 特殊指令深度解析 三、 汇编转化 一. 汇编源码 single_int_param:0000000000000040: 89 4C 24 08 mov dword ptr [rsp8],ecx0000000000000044: 57 push rdi0000…

Linux进程替换以及exec六大函数运用

文章目录 1.进程替换2.替换过程3.替换函数exec3.1命名解释 4.细说6个exe函数execl函数execvexeclp、execvpexecle、execve 1.进程替换 fork&#xff08;&#xff09;函数在创建子进程后&#xff0c;子进程如果想要执行一个新的程序&#xff0c;就可以使用进程的程序替换来完成…

Selenium操作指南(全)

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 大家好&#xff0c;今天带大家一起系统的学习下模拟浏览器运行库Selenium&#xff0c;它是一个用于Web自动化测试及爬虫应用的重要工具。 Selenium测试直接运行在…

结构性设计模式之Facade(外观)设计模式

结构性设计模式之Facade&#xff08;外观&#xff09;设计模式 前言&#xff1a; 外观模式&#xff1a;用自己的话理解就是用户看到是一个总体页面&#xff0c;比如xx报名系统页面。里面有历年真题模块、报名模块、教程模块、首页模块… 做了一个各个模块的合并&#xff0c;对…