【问题标题】:OBDII - determine gear given speed and RPMOBDII - 确定齿轮给定速度和 RPM
【发布时间】:2015-05-03 17:48:36
【问题描述】:

我正在开发一个使用 OBDII 读取汽车发动机参数的 Android 应用程序。目前,我们在驾驶汽车时实时获取速度 (kmh)、发动机的 RPM 和质量气流。 我们现在必须找到一种方法,如何使用我们能够从 OBDII 获得的这些参数来确定当前设置的档位。 我想只是指定例如给定 RPM 水平和给定汽车在特定档位上行驶的速度,但我认为它不会起作用。

也许你们中的一些人在这个领域有一些经验 - 我会非常有帮助的!

【问题讨论】:

  • 这个问题在android类别中是做什么的?你的问题根本不是关于 android 的
  • 其实你是对的:)。 Android 标记已移除。
  • 你的问题也不是关于编程的......最好在汽车论坛上提问。

标签: physics obd-ii


【解决方案1】:

没有任何物理知识(即知道是否有任何公式可以根据一组输入参数计算齿轮),您可以利用数据挖掘领域。

您只需计算大量数据(包括齿轮!),然后检查是否有可能找到一个公式,其中包括您认为可能相关的渠道,从而足够频繁地为您提供正确的齿轮(您的选择频率, 可能是 90% 或 99%)。

除此之外,我想说很难找到一个适用于每辆车的公式以及您的输入参数(发动机转速、空气质量流量、以公里/小时为单位的速度)。问题是,以公里/小时为单位的实际速度也取决于车轮尺寸等。而且我不知道是否所有的变速器都使用相同的传动比(可能不是,因为我们有 5 个齿轮的变速器,等等 6 个齿轮)。因此,在发动机上测量您的转速可能会导致车轮上的转速完全不同,而每辆车的直径可能完全不同。

【讨论】:

  • 我发现了一件有趣的事情 - 只需将当前速度除以当前 RPM,您就可以得到特定档位的恒定值(加/减一些错误值)。例如,对于 3 档的给定汽车,您得到的速度/RPM 常数为 0,02 +- 0.003,它允许检测您当前驾驶的档位。我在车上测试过,效果很好!现在唯一要做的就是为使用我们应用程序的用户考虑一些校准机制:)。我们甚至可以让用户通过驾驶一段时间来校准应用程序并计算所有齿轮的常数。
  • 是的,我在上班的路上想到了这个。对于给定的汽车,不需要空气质量流量。想想从发动机到车轮的动力系统,发动机和齿轮的 RPM -> 车轮的 rpm,我会说。即使您开车上坡或下坡(负载完全不同)。
【解决方案2】:

所以对于未来处理同样问题的用户: 实际上,将当前速度除以当前 RPM 就足够了。通过这样做,在特定档位上行驶,您将获得一个恒定值(+- 一些小错误值)。

这意味着如果您的汽车有 5 个档位,您可以要求用户在每个档位上校准设备,这意味着当用户在特定档位上行驶时(与哪个 RPM/速度级别无关)潜水当前 RPM 的当前速度将为您提供一个恒定值。如果您在特定齿轮上使用不同“级别”的 RPM 和速度来计算这个常数,它会给您一些小的错误值(假设错误为 0,001)。例如,在 2 档,您将得到常数 = 0,02 +- 0,001。在每个齿轮上定义这样一个恒定值,您几乎可以肯定地通过简单地将当前速度除以当前 RPM 并检查该值适合哪个齿轮的恒定值(+-错误值)来分类您当前正在驾驶的齿轮。

我测试了它——它工作得非常好;)。

【讨论】:

  • 这仅适用于手动 - 如果是汽车,您需要考虑变矩器在做什么,因为变速箱中有“打滑”。
猜你喜欢
  • 2018-04-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多