Вопрос

Рассчитайте запас хода автомобиля, используя данные OBD-II

Можно ли рассчитать текущий запас хода транспортного средства, используя данные, полученные через OBD-II?



Я знаю, что процентное содержание топлива можно узнать с помощью fuelLevelInput, но как узнать, сколько миль это соответствует?



Я использую OBD-систему, которая примерно вычисляет миль на галлон для меня, есть ли способ, которым я могу использовать это в сочетании с fuelLevelInput, чтобы оценить текущий запас хода автомобиля в милях?



Насколько я понимаю, всё, что мне нужно сделать, — это умножить расход топлива на текущий уровень топлива в галлонах. Проблема в том, что fuelLevelInput показывает только процент. Есть ли способ узнать fuelLevelInput в галлонах или литрах?



Спасибо, что уделили нам время, Дэниел.



Перевод вопроса с Mechanics Stack Exchange
Лицензия: CC BY-SA (2.5–4.0)
Оригинальный вопрос: https://mechanics.stackexchange.com/questions/41458/calculate-vehicle-range-using-obd-ii-data

7 Комментариев

  1. Мне удалось решить свою проблему. Ниже приведены шаги, которые я предпринял для расчёта диапазона (на случай, если кому-то ещё будет интересно):



    1) Сохраните fuelLevelInput процентов для дальнейшего использования.



    2) Воспользуйтесь следующим веб-сайтом, чтобы получить подробную информацию об автомобиле (идентификация по VIN-номеру автомобиля). Свойство, которое мне нужно, называется «Запас топлива» — максимальный объем топливного бака автомобиля в галлонах.



    3) Переведите текущий процентный показатель уровня топлива в галлоны, выполнив следующие действия: (fuelLevelInput * max fuel tank capacity) / 100 = current fuel level (in gallons).



    4) Моё устройство/приложение OBD, над которым я работаю, подсчитывает/сохраняет все значения миль на галлон для записанных поездок. Поэтому я складываю все значения миль на галлон и делю на количество поездок, чтобы получить среднее значение миль на галлон.



    5) Теперь просто умножьте среднее значение расхода топлива на галлон на текущий уровень топлива в галлонах, и вы получите приблизительный текущий запас хода.



    Примечание



    Очевидно, что при этом не учитываются другие факторы, такие как:




    • Движущиеся градиенты

    • Запуск / Остановка движения

    • Скорость ускорения

    • Скорость замедления

    • Используемые передачи (и скорость разгона на каждой передаче)

    • Сопротивление ветру



    Так что это будет не самый точный диапазон, но в моём случае сойдёт.


  1. @Nick Интересно, я этого не знал. Сейчас я тестирую две разные машины: Honda CRV и Mercedes C180 (W204).
  1. Какой автомобиль? У многих марок есть нестандартные идентификаторы OBD2, которые уже содержат информацию о запасе хода. Ford, Subaru и т. д.
  1. В конце концов я нашёл подходящую базу данных, в которой указана максимальная вместимость топливного бака в галлонах. Спасибо за помощь.
  1. Возможно, вам придётся создать собственную базу данных, что потребует некоторых исследований. Я думаю, что должны быть более простые способы узнать приблизительный запас хода, но для этого нужно знать, сколько топлива в баке. Я думал, что вы делаете это для одного автомобиля, но вы пытаетесь сделать это универсальным способом, чтобы он работал с любым транспортным средством, поддерживающим OBDII.
  1. @PᴀᴜʟSᴛᴇʀ2 Да, я программирую приложение, которое считывает данные OBD. Единственный способ, который я могу придумать, - это получить доступ к базе данных, которая обеспечивает "максимальный запас топлива" для любого транспортного средства. Затем я могу использовать fuelLevelInput процент, чтобы примерно рассчитать текущий уровень топлива в автомобиле в галлонах, который затем можно умножить на миль на галлон, чтобы определить диапазон. Единственная проблема заключается в том, что я не могу найти подходящую базу данных.
  1. Добро пожаловать на сайт Mechanics.SE! Я потратил почти 30 минут на поиски дубликата этого вопроса и не смог его найти, лол. Я не знаю, какую «систему OBD» вы используете и как получаете информацию от автомобиля. Мне кажется, что немного программирования и данных об уровне топлива в баке помогут вам найти ответ. Нужно просто разделить количество топлива на текущий расход в милях на галлон, и вы получите запас хода. Как это сделать, будет зависеть от системы, которую вы используете для получения информации, и от того, можно ли её дополнительно запрограммировать.
Вы уже ответили на этот вопрос