2026/10/29 5:03:03

Hurys毫米波雷达调试软件与CAN分析仪驱动联调指南

Hurys毫米波雷达调试软件与CAN分析仪驱动联调指南 简介面向毫米波雷达调试工程师与汽车电子学习者的Hurys雷达调试软件及CAN分析仪驱动合集可用于雷达参数配置、目标数据可视化、故障诊断与固件更新也覆盖南京来可与创芯科技分析仪的驱动安装、总线仿真、数据捕获及波形查看等环节。压缩包共19个文件、约5.6MB内含可执行程序、系统驱动与配置文件、说明文档、演示文稿及嵌套压缩包借助exe和sys文件可完成软件运行与驱动部署配合inf、cat、dll等组件及文档资料便于排查兼容性问题。已有1720人学习下载。借助其中的配置说明、操作演示和驱动文件读者可搭建雷达与分析仪联调环境理解不同分析仪版本的配套选择并积累从参数设置到通信排错的实践思路适合作为ADAS毫米波雷达调试的入门与查阅资料。1. Hurys 毫米波雷达调试包先认清软件、驱动和 CAN 链路各管哪一段台架上摆着一块 Hurys 毫米波雷达裸板手边是一台 CAN 分析仪和一台 Windows 主机设备管理器里已经冒出未知设备调试软件点开却扫不到通道——这是毫米波雷达联调现场最常见的开场。这个压缩包解决的不是雷达算法问题而是把「调试软件」和「CAN 分析仪驱动」配成一套能说话的链路调试软件负责发配置帧、收目标帧和状态帧分析仪驱动负责把 USB 设备映射成可被软件和脚本访问的 CAN 通道雷达本体只认 CAN 电平、波特率和报文协议。适合做雷达台架联调、CAN 报文抓取、配置回读和出厂前功能验证的工程师新手可以跟着步骤装一遍熟手重点看后面的通道映射、终端电阻和 ID 过滤边界。2. 解压与环境验收把运行库、驱动签名和文件清单先钉死拿到压缩包先别双击里面的可执行文件。血泪经验是这类工具包最常见的翻车不是雷达坏了而是解压到中文路径、缺运行库、驱动没签名导致调试软件秒退最后把问题误判成雷达通信失败。先把包展开到一个短英文路径列出文件类型再决定安装顺序。下面这条 PowerShell 只做只读展开和清单输出不改系统设置。# 以只读方式展开压缩包避免覆盖原包7z 路径按本机安装位置替换 $pkg .\Hurys雷达调试软件和CAN分析仪驱动.rar $dst .\_radar_toolchain New-Item -ItemType Directory -Force -Path $dst | Out-Null C:\Program Files\7-Zip\7z.exe x $pkg -o$dst -y # 先看文件类型、修改时间和大小判断哪个目录是软件、哪个是驱动 Get-ChildItem $dst -Recurse -File | Select-Object FullName,Length,LastWriteTime | Format-Table -AutoSize # 记录原包哈希后续换机器复现时先比对避免拿到半截包 Get-FileHash $pkg -Algorithm SHA256-o指定输出目录-y表示自动确认适合脚本化展开Get-FileHash的 SHA256 值建议记在实验记录里换机器或重新下载后先比对。清单里一般会看到三类东西调试软件的可执行文件与依赖 DLL、CAN 分析仪的驱动目录INF/SYS/CAT 等、以及可能的示例配置或说明文件。不要把所有文件混在一个目录里直接运行驱动目录和软件目录分开后面卸载和回滚会省很多事。2.1 文件类型决定安装顺序先装驱动还是先装软件取决于包内结构。常见做法是先确认分析仪驱动目录完整再装调试软件最后插硬件。原因很直接——调试软件启动时会枚举 CAN 通道如果驱动没装好软件可能直接报「未找到设备」而这个报错和雷达无关。文件类型与处理顺序可以按下面这张表核对。文件类型典型作用处理顺序失败表现INF/SYS/CATCAN 分析仪驱动先装管理员权限设备管理器未知设备软件无通道EXE/DLL雷达调试软件及依赖驱动后装双击秒退、缺 DLL、界面空白配置文件通道、波特率、DBC 路径软件首次启动后核对能连通道但收不到目标帧说明/示例报文 ID、配置步骤装前粗读参数填错误判雷达故障2.2 运行库和签名先查一遍调试软件打不开先看事件查看器和依赖 DLL不要一上来就重装雷达。用下面的命令检查可执行文件和驱动的签名状态只输出状态不展开签名主体避免把无关信息带进实验记录。# 检查软件和驱动文件的签名状态NotSigned 的驱动不要在 64 位系统上硬装 Get-ChildItem $dst -Recurse -Include *.exe,*.dll,*.sys | ForEach-Object { $sig Get-AuthenticodeSignature $_.FullName [pscustomobject]{ File $_.FullName; Status $sig.Status } } | Format-Table -AutoSizeStatus为Valid只说明签名链完整不代表可以跳过来源核对NotSigned的驱动文件要先停下来确认是不是解压不完整或拿错了目录。调试软件依赖的运行库常见是 VC 运行库和 .NET 运行时缺了会表现为「应用程序无法正常启动 0xc000007b」或界面一闪而过。不要从不明来源补 DLL优先用系统已有运行库或包内自带的依赖目录。2.3 路径、权限和杀软拦截解压路径尽量用D:\radar_tool这种短英文目录避免中文和空格。中文路径本身不一定出错但某些老工具在拼接配置文件路径时会翻车表现出来就是「配置保存失败」或「DBC 加载为空」。另外第一次运行调试软件时用管理员权限试一次确认不是权限问题如果管理员能开、普通用户不能开再回头查安装目录写权限和杀软拦截记录。驱动安装阶段如果杀软弹拦截先看拦截的是哪个文件不要直接放行整个目录。配置备份就是后悔药第 6 章会给一个备份脚本装完软件先跑一遍。3. CAN 分析仪驱动落地从设备识别到 500 kbit/s 链路打通驱动这层最容易出玄学问题设备管理器看起来认到了调试软件却扫不到通道或者通道能打开总线一收就报错误帧。处理顺序应该是「先让系统认到硬件再让驱动绑定正确设备最后用最小脚本验证收发」。不要先打开雷达调试软件点连接那样一旦失败你分不清是驱动、通道、波特率还是雷达供电的问题。3.1 驱动安装顺序与设备识别先不要插分析仪把驱动目录展开确认 INF 文件和它对应的硬件 ID。然后用管理员 PowerShell 安装驱动如果本机已经装过旧版驱动先卸载旧设备再装避免同一设备绑定到两个驱动包。# 管理员 PowerShell 中执行.\driver 换成压缩包内驱动目录 pnputil /add-driver .\driver\*.inf /install # 只读查看当前存在的 USB/串口/CAN 相关设备确认系统认到了哪一层 Get-PnpDevice -PresentOnly | Where-Object { $_.FriendlyName -match CAN|USB|Serial|串口 } | Select-Object Status,Class,FriendlyName,InstanceId | Format-Table -AutoSizepnputil /add-driver把驱动包加入驱动库/install尝试安装到匹配设备如果提示需要重启先重启再插硬件。Get-PnpDevice里重点看Status是否为OK以及FriendlyName是否出现分析仪对应的通道设备。若设备管理器里是黄色感叹号先看设备属性里的错误代码代码 28 通常是驱动未安装代码 52 通常是签名或完整性校验没过代码 10 通常是设备启动失败。不要用「强制安装不匹配驱动」去赌通道能打开但收不到帧后面排查成本更高。3.2 通道号不是插口号多通道分析仪常见一个盒子两个 CAN 口软件里通道号从 0 开始但物理插口可能标的是 CAN1、CAN2。第一次接线建议只接一个口脚本里固定--channel 0确认能收到雷达帧后再换口验证通道映射。如果调试软件里通道列表和物理丝印对不上用最小接收脚本逐个通道试不要同时开两个通道抓同一路总线否则容易把回环帧和真实帧混在一起。CAN_H/CAN_L 不要接反屏蔽层和地线按分析仪说明处理台架上雷达和分析仪共地电源地和 CAN 地不要悬空。3.3 用 python-can 做最小接收验证驱动装好后先用脚本验证「能不能收到任意帧」再打开调试软件。下面这段 Python 只做接收和打印不依赖雷达配置适合确认通道、波特率和 ID 过滤。import argparse import time import can def main(): ap argparse.ArgumentParser() ap.add_argument(--interface, requiredTrue, helppython-can 后端名按分析仪驱动文档填写) ap.add_argument(--channel, default0, help通道号多通道设备从 0 开始) ap.add_argument(--bitrate, typeint, default500000, helpCAN 波特率和雷达侧一致) ap.add_argument(--id, typelambda s: int(s, 0), default0x100, help只打印这个 ID示例值按 DBC 替换) ap.add_argument(--seconds, typefloat, default5.0, help接收时长) args ap.parse_args() bus can.Bus(interfaceargs.interface, channelargs.channel, bitrateargs.bitrate) t0 time.time() total 0 hit 0 try: while time.time() - t0 args.seconds: msg bus.recv(timeout1.0) if msg is None: continue total 1 if msg.arbitration_id args.id: hit 1 print(fid0x{msg.arbitration_id:X} ext{msg.is_extended_id} fdata{msg.data.hex( )} ts{msg.timestamp:.6f}) finally: bus.shutdown() print(ftotal{total} hit0x{args.id:X}:{hit}) if __name__ __main__: main()--interface必须填分析仪驱动对应的 python-can 后端名具体名称以驱动文档或python-can支持列表为准--channel是逻辑通道不是 USB 插口编号--bitrate默认 500 kbit/s必须和雷达侧一致--id只是示例过滤值实际按 DBC 或报文表替换。脚本先打印total再看hittotal为 0 说明通道没打开、波特率不对或物理层没通total有值但hit为 0多半是 ID 或标准帧/扩展帧过滤问题。bus.shutdown()一定要放在finally里否则脚本异常退出后通道可能被占用。4. 雷达调试软件连接通道映射、报文周期与配置回读驱动和最小接收都过了再开调试软件。连接顺序建议是先给雷达上电确认分析仪通道能收到总线活动再打开调试软件选通道、设波特率、加载 DBC最后点连接或扫描。这个顺序能把「软件连不上」拆成「总线有没有帧」和「软件有没有认到通道」两段排查时不会一锅粥。4.1 连接前的四个硬参数毫米波雷达调试最常见的参数就四个通道、波特率、终端电阻、报文 ID。通道错了软件列表里看不到设备波特率错了总线错误帧飙升终端电阻少了短距离可能能通稍长一点就偶发丢帧报文 ID 错了表现为「能连上但读不到目标」。参数表如下具体值以雷达手册和 DBC 为准。参数常见设置检查方法填错后的表现CAN 通道0 或 1按物理口映射用最小脚本逐通道收帧软件无通道、打开失败波特率500 kbit/s分析仪和雷达侧一致错误帧多、收不到帧采样点80% 左右分析仪可设则与雷达一致偶发错误帧、误码终端电阻总线两端各 120 Ω断电测 CAN_H/CAN_L 约 60 Ω短距能通长距丢帧报文 ID按 DBC/报文表全接收后再过滤能连上但无目标数据4.2 配置回读比「点成功」可靠调试软件提示连接成功后不要只看界面上的绿灯。找配置回读或参数读取功能把关键参数读一遍雷达工作模式、报文周期、目标输出格式、安装角度或坐标系参数。改完参数后等一个周期再读回确认写入生效。配置类报文往往不是单帧可能涉及多帧传输如果回读失败先用分析仪看是否有首帧、连续帧和流控帧不要只盯着一条 ID。回读成功后立刻备份配置目录第 6 章会给脚本。4.3 用周期统计确认雷达在发界面能连上不代表雷达在稳定输出。用下面这段脚本统计各 ID 的到达周期判断目标帧和状态帧是否按预期在发。import argparse import collections import time import can def main(): ap argparse.ArgumentParser() ap.add_argument(--interface, requiredTrue) ap.add_argument(--channel, default0) ap.add_argument(--bitrate, typeint, default500000) ap.add_argument(--seconds, typefloat, default10.0) args ap.parse_args() bus can.Bus(interfaceargs.interface, channelargs.channel, bitrateargs.bitrate) last {} periods collections.defaultdict(list) total 0 end time.time() args.seconds try: while time.time() end: msg bus.recv(timeout1.0) if msg is None: continue now time.time() total 1 cid msg.arbitration_id if cid in last: periods[cid].append((now - last[cid]) * 1000.0) last[cid] now finally: bus.shutdown() print(ftotal{total}) for cid, vals in sorted(periods.items()): if len(vals) 3: continue avg sum(vals) / len(vals) print(fid0x{cid:X} n{len(vals)} avg{avg:.2f}ms fmin{min(vals):.2f}ms max{max(vals):.2f}ms) if __name__ __main__: main()--seconds是统计窗口台架验证建议 10 秒起步n是样本数少于 3 的 ID 不打印避免把偶发帧当周期帧。avg明显偏离 DBC 里的周期值先查总线负载和终端电阻max比avg大很多常见原因是分析仪 USB 缓冲、主机负载或总线错误重传。这个脚本只统计到达时间不解析信号适合在打开调试软件之前做一次「黑匣子」式确认。5. 避坑与排查驱动签名、终端电阻、波特率和 ID 过滤的四次翻车这一章按「现象 → 原因 → 解决」记录四类高频翻车。每一项都建议在台架上复现一次知道失败长什么样现场才不会把驱动问题误判成雷达故障。5.1 现象设备管理器有串口调试软件扫不到通道现象是插上分析仪后设备管理器出现串口或 USB 设备状态显示正常但调试软件通道列表为空点扫描也没有反应。原因通常不是硬件坏而是只装了串口部分没有装 CAN 后端驱动或者驱动绑定到了旧版设备实例软件枚举的是另一套接口。另一种情况是通道被上一个脚本占用软件打开失败但不一定有明确提示。解决顺序先在设备管理器卸载该设备并勾选删除驱动包拔掉分析仪重启再按第 3 章用pnputil安装包内驱动然后用最小 Python 脚本确认通道能打开。如果脚本能打开、软件不能查软件安装目录下的通道配置文件和运行权限必要时用管理员权限启动一次。还不行就看软件日志目录确认它枚举的是哪个后端名称。不要反复插拔赌识别通道映射问题靠日志和脚本定位更快。5.2 现象总线错误帧多偶发丢帧现象是能收到帧但分析仪错误计数上涨周期统计里max明显偏大调试软件偶尔提示通信超时。原因常见是终端电阻不对总线两端没有各接 120 Ω或者中间节点多接了终端等效阻值偏离 60 Ω也可能是 CAN_H/CAN_L 接反、屏蔽层处理不当、雷达和分析仪不共地。短距离台架有时不接终端也能通一换长线就翻车。解决断电后用万用表测 CAN_H 与 CAN_L 之间阻值两端各 120 Ω 并联应接近 60 Ω如果只有 120 Ω说明另一端没接终端如果接近 40 Ω 或更低说明多接了终端。台架上把总线改成菊花链不要星形分叉分析仪和雷达共地电源地先接好再上电。测完电阻再上电看错误帧计数不要带电插拔 CAN 线。5.3 现象波特率一致但收不到目标帧现象是总线有帧最小脚本total大于 0但调试软件或过滤脚本收不到目标 ID界面一直显示无目标。原因可能是 ID 过滤掩码设错、把扩展帧当标准帧、或 DBC 里的 ID 是十六进制而软件里填了十进制。还有一种情况是只开了接收过滤没有开全接收配置帧能过但目标帧被挡掉。解决先把过滤全部关掉用全接收模式看总线上到底有哪些 ID确认目标帧是 11 位标准帧还是 29 位扩展帧脚本里看is_extended_id再把 DBC 里的 ID、起始位、长度、字节序和缩放偏移逐项核对。调试软件里如果支持掩码过滤先把掩码设为全通过确认能收到后再逐步收紧。不要用「波特率对了就一定能收」的思路过滤和帧格式同样会让人白忙半天。5.4 现象调试软件打开秒退或点连接无响应现象是双击调试软件一闪而过或者界面能开但点连接后无响应、进程卡住。原因常见是缺 VC 运行库或 .NET 运行时、安装路径含特殊字符、配置文件损坏、杀软拦截了驱动通信 DLL。也有可能是软件启动时自动打开上一次的通道配置而那个通道已经被拔出导致枚举超时。解决先看 Windows 事件查看器里的应用程序错误确认是缺 DLL 还是异常代码把软件放到短英文路径删掉或重命名用户目录下的配置文件再启动用管理员权限运行一次排除权限问题驱动通信 DLL 被拦截时把软件目录加入杀软排除项前先核对文件哈希。点连接无响应时先用最小脚本确认通道没被占用再关掉其他 CAN 工具。配置备份仍然要做改坏配置后能快速回滚。6. 进阶验证DBC 解码、配置备份和 30 分钟周期压测台架能通之后我一般会做三件事再交付备份配置、用 DBC 做信号级抽检、跑 30 分钟周期统计。配置备份是后悔药改参数前先执行下面这段 PowerShell路径按软件实际配置目录替换。# 改雷达参数前先按时间戳备份配置目录避免回读失败后找不到原值 $ts Get-Date -Format yyyyMMdd_HHmmss $src .\config $dst .\radar_backup_$ts New-Item -ItemType Directory -Force -Path $dst | Out-Null Copy-Item $src\* $dst -Recurse -Force Get-ChildItem $dst -Recurse -File | Measure-Object -Property Length -Sum | Select-Object Count,Sum$src换成调试软件实际读写配置的目录Copy-Item的通配符会把子目录一起复制Measure-Object只用于确认备份不是空目录。备份完成后把目录设为只读避免误覆盖。DBC 抽检不要只看一条信号挑目标距离、速度、角度各一条用已知物理量反算原始值确认起始位、字节序和缩放偏移没搞反。30 分钟周期压测重点看max和丢帧计数通过标准可以按下面这张表卡。验证项通过标准失败动作配置备份文件数和总字节与源目录一致重新备份检查写权限DBC 解码三条信号物理量在合理范围核对起始位、字节序、缩放偏移周期统计目标帧周期波动小于 20%查终端电阻、总线负载、USB 缓冲长时压测30 分钟无错误帧上涨、无通道掉线换 USB 口、缩短线束、复测终端从那以后我每次上雷达都强制走一遍「备份配置 → 测终端电阻 → 全接收看 ID → 周期统计」这个顺序救过我好几次也避免把驱动问题误判成雷达故障。需要这个 Hurys 毫米波雷达调试软件和 CAN 分析仪驱动压缩包的同行从文末入口取拿到后先按第 2 章列清单、第 3 章验通道别一上来就点连接。希望帮到你。本文还有配套的精品资源点击获取