Механика работы отчета по топливу

С полным описанием структуры отчета по топливу и его возможностям можно ознакомиться в соответствующей статье. В данной статье рассматривается механизм определения расхода, заправок и сливов.

Часть данных в отчете выводится на основе полученных данных от датчиков уровня топлива и/или датчика расхода топлива. Оставшаяся часть данных рассчитывается по формулам.

ДАННЫЕ О РАСХОДЕ

  1. Уровень топлива на начало и конец в отчете отображаются на основе полученных данных от ДУТ. Соответственно, берутся данные об уровне топлива на начало дня и на конец дня;

  2. Расход топлива на холостой ход и расход топлива на стоянке - эти данные выводятся в отчете на основе следующих вычислений:
    1. За каждый период стоянки/холостого хода, которые входят в период времени запроса отчета, берутся данные об уровне топлива на начало и конец.
    2. Далее по формуле вычисляется расход топлива:
      Расход топлива на стоянке = Уровень топлива на начало стоянки - Уровень топлива на конец стоянки + Общий объем заправок за период стоянки

  3. Общий расход топлива:
    Общий расход топлива = Уровень топлива на начало периода - Уровень топлива на конец периода + Общий объем заправок за указанный период

    Пример по данным со скриншота: 313,4 л - 328,9 л + 29,7 л = 14,2 л

  4. Общий расход позволяет вычислить расход топлива на движение. Формула следующая:
    Расход на движение = общий расход - расход на стоянке

    Пример по данным со скриншота: 14,2 л - 8,4 л= 5,8 л

    Внимание:
    если расход топлива на стоянке превышают общий расход, то в поле расход на движение увидим "0". В этом случае необходимо анализировать данные о расходе топлива в периоды стоянок. [ссылка на статью/статья в разработке].

ЗАПРАВКИ

В определении заправки принимают участие два параметра. Это "минимальный фиксируемый размер заправки" в настройках датчика уровня топлива и "Определять сливы и заправки только на стоянках" на вкладке "Топливо".

Механика определения заправки:

  1. За период запрошенного отчета выявляются периоды роста уровня топлива;
  2. Каждый период роста уровня топлива проверяется на выполнение заданных условий в параметрах "минимальный фиксируемый размер заправки" и "Определять сливы и заправки только на стоянках";
  3. Если все условия выполнены, в отчете фиксируется начало заправки с момента начала роста топлива;
  4. Конец заправки фиксируется по следующим правилам:
    • Если после пакета с данными о повышении уровня топлива пришел пакет с меньшим уровнем топлива – заправка считается завершенной;
    • Если в течении N секунд (по умолчанию 30 сек, для владельцев своего сервера данное значение можно поменять) после окончания роста уровня не приходили данные о повторном повышении уровня (т.е. уровень стабилизировался) – заправка считается завершенной. Если же уровень топлива снова начал расти - заправка продолжается.

СЛИВЫ

Помимо стандартных параметров "Минимальный фиксируемый размер слива/топливораздачи" и "Определять сливы и заправки только на стоянках", в корректном определении слива в отчете принимают участие параметры на вкладке "Топливо": "Расход топлива летом (л/100км)", "Расход на 1 час работы двигателя на х.х. (л)" (если расход считается по норме, а не по реальным показаниям) и "Расход на 1 час работы датчика доп. оборудования (л)" (если у объекта есть датчик доп. оборудования). Эти параметры необходимо ОБЯЗАТЕЛЬНО указать, в противном случае в отчете по топливу высока вероятность получения ложных сливов.

Механика определения сливов в отчете:

  1. Данные об уровне топлива разбиваются на промежутки длительностью в одну минуту;
  2. Для каждого минутного промежутка смотрится: какой был пробег, сколько секунд длился холостой ход и сколько секунд работал датчик доп. оборудования. Исходя из этих данных вычисляется максимально допустимый расход за минуту:
    1. Расход по норме за один минутный промежуток = "Расход топлива летом (л/100км)" / 100км * пробег за минутный промежуток;
    2. Расход по норме за один минутный промежуток на холостой ход = "Расход на 1 час работы двигателя на х.х. (л)" / 3600 сек. * время х.х. за минутный промежуток;
    3. Расход по норме за один минутный промежуток на работу датчика доп. оборудования = "Расход на 1 час работы датчика доп. оборудования (л)" / 3600 сек. * время работы датчика доп.оборудования за минутный промежуток.
    4. Полученные данные суммируются и умножаются на "Допустимый коэффициент превышения расхода при котором фиксируется слив"
    5. В результате получаем максимальную норму расхода топлива для объекта за одну минуту.
  3. За каждую минуту вычисляется расход топлива по реальным данным, полученным от ДУТ.
  4. Реальные данные о расходе топлива и максимально допустимые нормы за один отдельно взятый минутный промежуток сравниваются. Если реальный расход превышает максимально допустимую норму расхода топлива, то данная минута в отчете будет считаться началом слива.
  5. После начала слива фиксируется минутный промежуток в котором реальный расход не превышает максимально допустимую норму расхода топлива. Данный минутный промежуток будет являться завершением слива.
  6. Полученный слив проверяется на выполнение заданных условий "Минимальный фиксируемый размер слива/топливораздачи" и "Определять сливы и заправки только на стоянках"
  7. Если все условия выполнены - в отчете мы увидим слив.