“天神之眼-D”来了

admin 2026-03-26 12:28:24 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文介绍了一个名为openpilot助手(openpilot-helper)的工具,旨在为比亚迪(BYD)车型用户解决原车车道保持功能限制多、使用场景少的问题。该工具基于开源的先进驾驶辅助系统(ADAS)项目openpilot开发,通过注入代码和提供图形界面,帮助用户在电脑上部署和运行适用于比亚迪车型的增强版车道保持功能,实现全时车道居中、自动辅助变道等更高级的驾驶辅助体验。文中详细说明了其背景、主要功能、使用方法及操作步骤。 综合评分: 65 文章分类: 解决方案,安全开发,AI安全,技术标准,数据安全


cover_image

“天神之眼-D”来了

原创

青春是猫科动物 青春是猫科动物

Septemberend

2026年3月23日 09:31 广东

前言

众所周知,天神之眼(比亚迪的智能驾驶)之前的车型,车道保持功能,有诸多使用限制:车速>=60、双车道线清晰、基本仅限市区/高速使用、即使高速车道清晰也要识别很多次才行,只要车道不清晰、踩一下刹车、车压一下车道线等,立马给你退出,而且退出也不会有任何提示,所以原车的车道保持(智能领航)除了高速开开,其它时候基本没有啥用。

openpilot概述

openpilot[https://github.com/commaai/openpilot]是一款开源的先进驾驶辅助系统,支持丰田、现代、本田等众多品牌的325多款车型,主要功能:

  1. 自动车道居中;
  2. 自适应巡航控制;
  3. 自动辅助变道;
  4. 地图领航[社区支持]。

主要有不同的分支:sunnypilot、dragonpilot、frogpilot、carrotpilot…等。

官方硬件:comma2(C2)、comma3(C3)、comma3x(C3x)、comma4(C4,最新)。

comma2是可通过手机刷机运行[一加3T,乐视手机]。

国内也有很多仿版硬件,但硬件价格普遍都比较贵,特别是支持比byd车型的。

简单来说,openpilot是个增加版的车道保持功能【增强版L2】,起步即车道保持,能够极大增加驾驶舒适感。

背景

作为没有天神之眼的老刺猬,早就想研究一下如何改善现状,去年六七月份开始关注openpilot项目,但是官方支持的车型里并没有byd的车,而且硬件也比较贵,后面就没下文了。

之后在经过连续几个月,每个月开1000KM+长途之后,又重新看向了openpilot,甚至想在淘宝买现成C3,无奈价格实在感人,最终没有下手。

后来了解到openpilot也可以部署在电脑上,于是自己也手搓了一台,测试了一下,解锁了增强版的车道保持,即:全时车道保持,随开随用,即使是车道线不清晰、没有车道线、甚至乡村道路也能自己识别居中,比原车提升了不止一点点,甚至支持打灯变道、地图领航、自动避障等功能。

openpilot-helper灵感来源

对于byd车型,在用的openpilot版本大多是carrotpilot分支,即carrotpilot V8,或carrotpilot-胜达V9版本,胜达V9版本需要自己增加byd相关的代码,并适配车型。

同时有很多常用的操作、命令等,不是很方便执行,特别是对新手不友好。

基于此,我花了点时间,写了个可以方便操作,并能够快速注入byd车型的工具,暂且称作“openpilot助手”【openpilot-helper】。

主要实现了以下功能

  1. byd车型基础代码注入;
  2. 设置摄像头分辨率、焦距;
  3. 设置jy62陀螺仪串口和小蓝灯串口;
  4. 启用和关闭小蓝灯模块【需要额外配置硬件】;
  5. 图形界面全屏补丁;
  6. 支持启动时自动配置摄像头参数:分辨率、焦距。

openpilot-helper使用方式

所有命令都可以-h或者–help查看,详细帮助信息可拉到文章最后查看,这里贴一下根据指定车辆配置运行。

openpilot-helper会自动同比焦距,检查jy62是否启用,并判断用户是否在dialout组中,并刷新usb权限。

./openpilot-helper run BYD_TANG_DMI_23

适配byd车型操作步骤

前提

byd开源支持的车型可以查看这个链接:https://github.com/yysnet/opendbc/blob/master/opendbc/car/byd/fingerprints.py 也可能需要自己适配,不确定。

安装教程:https://gitee.com/huheas/pilotosinit/blob/master/README.md

V8:https://github.com/huheas/carrotpilot,已适配byd车型,基本即插即用【用不了就得自己调试了】。

V9【胜达版】:git clone -b cpv9-pc-dev https://jihulab.com/fishop/openpilot.git【无byd车型,需要注入,可使用openpilot-helper注入】。

必须先安装好Ubuntu24,配置好驱动,环境,且能正常运行carrotpilot。

如果已经有正常控车的carrotpilot,以下步骤基本都能正常执行;如果未控车,可能需要花费更多的调试时间,建议先从v8开始测试验证。

提示

./openpilot-helper init byd 目前仅能在V9【胜达版】使用,其它版本未测试;run xxx命令,所有pc版本都可用。

注意:只是注入byd车型的相关代码,并不代表注入后你的车就能控车,需要根据实际情况进行调试。

byd车型注入操作步骤

  1. 下载胜达V9版:git clone -b cpv9-pc-dev https://jihulab.com/fishop/openpilot.git
  2. 按照文档设置,编译,确保能够正常启动;
  3. 解压openpilot-helper.zip或openpilot-helper.tar.gz,可以放在任意路径,不需要跟op同目录;
  4. 根据实际,修改config/config.env中的OPENPILOT_ROOT,【op的绝对路径】;
  5. 【车型添加或修改,必须在执行init byd前修改!如果init之后,再改BYD_MODELS,改动的车型将无法正常启动!】
  6. 根据实际,修改config/config.env中的BYD_MODELS车型;
  7. 打开终端,在openpilot-helper目录执行 chmod -x openpilot-helper,增加执行权限;
  8. 打开终端,在openpilot-helper目录执行 ./openpilot-helper init byd 进行byd车型代码注入;
  9. 完成后,根据提示重新编译即可。

启动步骤

  1. 修改车型及环境配置:根据实际,修改config/cars中对应车型的启动环境变量命令,也可以新增对应车型的.env文件,注意文件命名规范:需要与BYD_MODELS中保持一致;
  2. 修改摄像头分辨率、焦距:修改config/cars中对应车型的摄像头参数,启动时会自动同步摄像头参数,无需手动修改代码;
  3. 启动:./openpilot-helper run xxx,xxx是config/config.env对应车型的配置;
  4. 后续启动,只需要./openpilot-helper run xxx即可。

高级操作

可以根据实际情况,先调整config/setup目录中的代码:byd目录、dbc文件等,再进行init操作。

Q/A

Q1:启动时出现SelectedCar = BYD_TANG_DMI_23 的错误

A1:请确保修改config/config.env中的BYD_MODELS车型之后,再init,init后再修改是没有用的,切记!

详细使用帮助

1./config/cars/中的配置文件可以参考default.env

# 井号注释则不启用# 所有参数都会导出到环境变量
# 车型指纹FINGERPRINT="BYD_TANG_DMI_23"
# 雷达# BYD_RADAR=1
# QT_QPA_PLATFORM=xcb
# 使用usbcamUSE_WEBCAM=1
# 道路摄像头ROAD_CAM=0# 焦距ROAD_FOCAL=2320.0# 分辨率ROAD_WIDTH=1920ROAD_HEIGHT=1080
# 广角摄像头#WIDE_CAM=2# 焦距WIDE_FOCAL=605.0# 分辨率WIDE_WIDTH=1920WIDE_HEIGHT=1080
# 关闭驾驶监控,仅用于测试!NO_DM=1
# 使用locationd_jy62#JY62=2
# 使用sensor_jy62#JY62=1

2.查看帮助信息

./openpilot-helper./openpilot-helper -h./openpilot-helper --help

3.禁用某个功能:全屏补丁、小蓝灯模块

./openpilot-helper disable# 禁用全屏补丁./openpilot-helper disable full_screen# 禁用小蓝灯模块./openpilot-helper disable light_control

4.启用某个功能:全屏补丁、小蓝灯模块

./openpilot-helper enable# 启用全屏补丁./openpilot-helper enable full_screen# 启用小蓝灯模块./openpilot-helper enable light_control

5.注入byd车型代码

./openpilot-helper init byd

6.回滚byd车型代码修改

./openpilot-helper rollback

7.根据指定车型配置,运行

./openpilot-helper run BYD_TANG_DMI_23

8.设置摄像头分辨率、焦距:支持长焦和广角摄像头;设置jy62陀螺仪串口、小蓝灯串口

./openpilot-helper set# 同时设置指定摄像头分辨率、焦距【一般不需要手动设置,可以在车型配置中指定,启动时会自动同步】./openpilot-helper set cam_all示例:  ./openpilot-helper set cam_all road 1920 1080 2520.0  ./openpilot-helper set cam_all wide 1920 1080 605.0
# 设置指定摄像头焦距【一般不需要手动设置,可以在车型配置中指定,启动时会自动同步】./openpilot-helper set cam_focal示例:  ./openpilot-helper set cam_focal road 2600.0  ./openpilot-helper set cam_focal wide 700.0
# 设置指定摄像头分辨率【一般不需要手动设置,可以在车型配置中指定,启动时会自动同步】./openpilot-helper set cam_res示例:  ./openpilot-helper set cam_res road 1920 1080  ./openpilot-helper set cam_res wide 2688 1520
# 设置jy62串口为指定路径【一般不需要手动设置,除非jy62和小蓝灯同时启用】./openpilot-helper set jy62
# 设置小蓝灯串口为指定路径【默认是/dev/ttyUSB1,如果只有小蓝灯模块,需要修改成/dev/ttyUSB0】./openpilot-helper set light_port

设置的图太多,这里就不全部贴出来了

9.仅设置指定摄像头焦距【旧命令,未来移除】

/openpilot-helper set-cam行为说明:  • 无参数        → 显示本帮助信息(不再自动设置默认值)  • default       → 设置默认焦距(road=2520.0, wide=605.0)  • 一个参数      → 仅设置主摄(road)焦距  • 两个参数      → 同时设置主摄和广角焦距
Usage:  openpilot-helper set-cam [road_focal] [wide_focal] [flags]
Examples:  openpilot-helper set-cam default  openpilot-helper set-cam 2520.0  openpilot-helper set-cam 2520.0 605.0

其它

  1. openpilot-helper免费下载使用,同时已创建QQ群,如有需要下载使用,可在公众号发送:openpilot-helper,会有人邀请进QQ群;
  2. 小蓝灯模块目前已有现成产品,有需求但不想动手的可以在后台私信。

免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:Septemberend 青春是猫科动物 青春是猫科动物《“天神之眼-D”来了》

评论:0   参与:  0