Как работает индикатор расхода топлива в реальном времени?
Помимо прочего, я преподаю информатику. Я думаю о том, чтобы написать программу для имитации дисплея с расходом топлива, который есть во многих современных автомобилях. Это кажется довольно простым: отслеживать данные о топливной магистрали и одометре и через определённые промежутки времени после запуска выводить на экран пройденное расстояние, разделённое на общее количество использованного топлива.
- Пока все правильно?
Если я правильно понял, у меня возник вопрос по теме: интервал отправки данных зависит от времени (например, каждые пять секунд) или от расстояния (например, каждые 700 пройденных футов)? Я спрашиваю об этом, потому что первый вариант будет немного сложнее в реализации (хотя и не невозможен), чем второй. Я не знаю, какой вариант выбрать, но мне бы хотелось, чтобы симуляция была как можно ближе к реальности.
Перевод вопроса с Mechanics Stack Exchange
Лицензия: CC BY-SA (2.5–4.0)
Оригинальный вопрос: https://mechanics.stackexchange.com/questions/36285/how-does-a-real-time-mpg-display-work
Эй! Я тоже!
Если вы просто задаёте вопрос для домашнего задания, то всё в порядке. Если вы хотите создать коммерческий продукт, то задача может быть немного сложнее.
Все дисплеи, которые я когда-либо видел, были привязаны ко времени. На самом деле всё немного сложнее:
Однако, если вы просто хотите познакомить студентов с основами программирования систем и пользовательских интерфейсов, вычисление среднего значения за определённый промежуток времени не составит труда. Например, предположим, что вы получаете данные о расходе топлива и пройденном расстоянии примерно раз в 1/10 секунды. Создайте ограниченную по времени очередь, которая будет собирать эти данные и вычислять расход топлива на 1 галлон в час.