欢迎回来!在上一篇文章我们在其中讨论了“ CAN 总线协议”。在这篇文章中,我们将研究 OBD-II,它是车辆诊断的首选选项,以及它如何使车辆的诊断变得更加容易。
我们已经讨论了如何使用车辆数据来提高行驶效率以及如何开发自动驾驶车辆软件,以及 CAN 总线如何帮助平稳运行这些软件,我们还需要有效的诊断支持。
您有没有注意到,当您将车辆开到服务中心时,他们只需插入一个设备即可识别故障,而无需像过去那样拆卸机械部件或手动检查。
好吧,这是通过车载诊断版本 2 简称 OBD-II (SAE J1962) 实现的。OBD-II 是一种诊断系统,用于使用 DTC(诊断故障)代码指示和报告车辆内的问题。简单来说,OBD2 可以诊断您车辆的健康状况并识别故障节点,从而帮助您轻松解决这些问题。
通常,维修人员会连接一个定制的 OBD-II 扫描仪/阅读器来读取 DTC,并解决相应地问题。
OBD-II 历史
OBD 于 1960 年首次进入世界。后来的标准化由加州空气资源委员会 (CARB)、汽车工程师协会 (SAE)、国际标准化组织 (ISO) 和环境保护署 (EPA) 完成。
在标准化之前,原始设备制造商根据型号和公司使用定制工具、连接器和定制诊断代码。
OBD-II 连接器
OBD-II是使用CAN作为通信媒介的上层协议。SAE J1962标准指定了两种类型的16引脚OBD-II连接器工作在12V (A)和24V(B),引脚主要取决于供应商选择的通信协议。但是,最常见的是通过ISO 15765(指定了一种传输协议和网络层服务,以满足ISO 11898 – 1中指定的基于CAN的车辆网络系统在控制器区域网络上的需求)在引脚6(H)和14(L)中的CAN。
OBD-II数据包
标识符:标识符是标准的 11 位,用于区分请求消息和响应消息。OBD-II 请求消息为 7DF,响应标识符范围为 7E8 到 7EF。Length:数据包中剩余数据的字节数。
模式:在 SAE J1979 OBD2 标准中描述的 10 种模式。模式 1 显示当前数据和实时数据,模式为 1,其他模式用于显示或清除存储的 DTC。
PID:每个模式都存在标准 OBD2 PID 列表。在模式 01 中,PID 03 用于获取燃油状态。每个 PID 都有一个描述,有些在标准中有指定的最小值/最大值和转换公式。
A、B、C、D:这些是HEX中的数据字节,在用于PID公式计算之前需要转换为十进制形式。
黑客能通过 OBD-II 对车辆进行逆向工程吗?
使用开源软件和硬件通过 OBD-II 记录 CAN 数据非常简单。但是我们可能无法通过 OBD-II 获得完整的 CAN 数据,而且还需要进行数据库转换以进一步完全解码数据以对车辆进行逆向工程。
我们可以控制动力总成。
关于排放控制系统的 DTC。
用于识别目的的 VIN 号码。
这些成为商业的威胁点,因为它们打击供应链的点非常重要。
有现代化的 OBD-III 吗?
我们生活中已经有了无线技术,OBD-III是一种通过射频传输诊断信息的无线检测技术。例如,在通过污染检查站或收费站时。我们可以从 OBD-II 获取 VIN 编号,因此可以使用 VIN 将 DTC 映射到中央集线器,以远程跟踪和执行诊断。
嗯,有一些 3rd 方服务这样做,但我觉得这又是 1960 年代的情况,这些服务没有标准。
OBD 如何改善商务车队管理?
OBD 可以通过测量汽车的多个方面(例如速度、空闲时间、驾驶行为以及一些用于检测碰撞和停止/启动车辆的远程控制选项)来提供驾驶模式和已部署车辆的健康状况。
以上就是车联网安全入门的全部内容
对于初学者来说,OBD-II在所有汽车中都非常常见,有多种用途。但是应该有一种机制,只允许授权的技术人员收集数据。许多汽车制造商正在过滤流经 OBD-II 的数据,并且首先实施了许多子总线技术。当 OBD-III 变得普遍时,我们必须准备进一步保护车辆。
参考资料
(https://en.wikipedia.org/wiki/On-board_diagnostics)
• END •
微信公众号:IOTsec Zone
官网地址:
www.iotsec-zone.com
原文始发于微信公众号(IOTsec Zone):车联网安全入门 Part4