如何与 OBD-II 设备通信
How to communicate with OBD-II device
有 OBD-II
个设备像 http://www.rczd.com/c/2015/Car_Diagnostic_Tools_0223/41193.html
该设备提供商没有其网页或文档来源。我们在盒子里有短 "quick start",并保证它支持 OBD-II PIDs
。
最近经常关注https://en.wikipedia.org/wiki/OBD-II_PIDs#Mode_1_PID_41
问题是,如果有任何通用模式如何与这个 icar 设备通信。
在我使用 (freematics)dongle
连接之前,它发送了我动态解析的数据流。
当前一个我们发送一个请求后只发送一个值(它是同步的,一次不能处理多个请求)。
我想获取最新的 OBD-II
参数以(经常)显示它们。
有什么想法吗?
如果您的设备与 ELM327 兼容,您可以使用多个 PID 请求,但前提是适配器通过 CAN 协议连接到车辆。所以它只适用于一部分车辆,因为并非所有车辆都支持 CAN。
流行的扫描工具只是发送顺序请求。使用此方法可以获得的最大吞吐量约为 30-40 rps。
我不知道 freematics dongle 是如何工作的,但我可以看到它安装了一些 SD 卡 - 也许它只提供并行性仿真并且在内部每个请求都是按顺序发送的?
如果您正在寻找可靠的 Java 库来连接到 OBD II 设备,我会推荐您 https://github.com/pires/obd-java-api . You can also take a look at my library - https://github.com/devesion/java-obd-adapter
有 OBD-II
个设备像 http://www.rczd.com/c/2015/Car_Diagnostic_Tools_0223/41193.html
该设备提供商没有其网页或文档来源。我们在盒子里有短 "quick start",并保证它支持 OBD-II PIDs
。
最近经常关注https://en.wikipedia.org/wiki/OBD-II_PIDs#Mode_1_PID_41
问题是,如果有任何通用模式如何与这个 icar 设备通信。
在我使用 (freematics)dongle
连接之前,它发送了我动态解析的数据流。
当前一个我们发送一个请求后只发送一个值(它是同步的,一次不能处理多个请求)。
我想获取最新的 OBD-II
参数以(经常)显示它们。
有什么想法吗?
如果您的设备与 ELM327 兼容,您可以使用多个 PID 请求,但前提是适配器通过 CAN 协议连接到车辆。所以它只适用于一部分车辆,因为并非所有车辆都支持 CAN。
流行的扫描工具只是发送顺序请求。使用此方法可以获得的最大吞吐量约为 30-40 rps。
我不知道 freematics dongle 是如何工作的,但我可以看到它安装了一些 SD 卡 - 也许它只提供并行性仿真并且在内部每个请求都是按顺序发送的?
如果您正在寻找可靠的 Java 库来连接到 OBD II 设备,我会推荐您 https://github.com/pires/obd-java-api . You can also take a look at my library - https://github.com/devesion/java-obd-adapter