gpt4 book ai didi

安卓 OBD-II : How to get distance traveled in meters?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:56:50 26 4
gpt4 key购买 nike

我正在制作一个通过蓝牙连接到 OBD-II 设备(ELM327 - http://www.dx.com/p/elm327-bluetooth-odb2-v1-5-car-diagnostic-interface-126921#.V86wdih97IU)的安卓应用。

我也在使用 https://github.com/pires/obd-java-api/库从设备中获取数据。

我能够连接到设备并毫无问题地获取数据,但是当我尝试检索距离时,它总是以 KM 为单位返回。有没有办法以米为单位获取旅行的距离?

我尝试使用 Torque Lite 应用程序 (https://play.google.com/store/apps/details?id=org.prowl.torquefree&hl=en),它能够以 KM 为单位返回行程距离,保留一位小数 (0.0 KM)。

想知道它使用什么命令来实际获取值,或者它是从其他东西派生的。

最佳答案

不幸的是,根本不存在表示行驶距离的标准 PID。参见 this获取标准 PID 列表。

您现在使用的代码 DistanceSinceCCCommand 使用标准模式 01 PID 0x31 来检索自上次清除代码命令以来的行驶距离。 PID 的单位是整数千米,因此无法为您提供所需的精度。

I tried using the Torque Lite app (https://play.google.com/store/apps/details?id=org.prowl.torquefree&hl=en) and its able to return Trip distance in KM with one decimal place (0.0 KM).

扭矩应用程序使用来自 Android 设备的位置 (GPS) 信息来记录地理位置。我猜它正在使用该信息来确定行程距离,精度为 0.1 公里。

推荐

如果您需要那种准确性,我建议您效仿他们并使用位置数据来确定行进的距离。

使用来自 google location api 的位置监听器和 Location.distanceTo(location)以确定增量位置变化。

关于增强型 PID 的更多信息

增强型 PID(也称为 DID)是特定于车辆的模式 22 参数。

还有许多其他未公开记录的车辆参数,可能会提供更高的精度。它们是特定于车辆的(但通常是同一制造商的一部分车辆所共有的)。它们是模式 22 增强型 PID。 Here's a list of old Ford DIDs .如果有人能找到更新的 22 模式 DID 列表,请编辑我的帖子并添加它,因为我知道公开可用的列表比我发现的要多得多。

关于安卓 OBD-II : How to get distance traveled in meters?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39348702/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com