Fleetrun
Hecterra
NimBus
Другие приложения
Wialon для Android/iOS
Logistics
Wialon Local
Wialon Hosting
Distance Tag
WiaTag
Configurator
Wialon Hosting
Содержание
Расход топлива по расчету (математический расчет)
  • technical_consulting
  • fuel

Некоторые трекеры не присылают информацию о топливе, либо топливные датчики в принципе не установлены на объект, однако пользователи все равно хотят видеть в отчете информацию о расходе.

В качестве альтернативы топливным датчикам можно использовать Расход по нормам, который настраивается на вкладке Дополнительно. Алгоритм его вычисления прост: пробег за интервал умножается на заданную норму расхода (л/100 км), которая может меняться в зависимости от сезона.

Но в данной статье мы рассмотрим другой вариант вычисления расхода без датчика, который требует большего количества пояснений, – Расход по расчету, также называемый Математическим расчетом. Тем более сфера его применения не ограничивается одним вариантом.

Где используется расход по расчету?

В первую очередь расход по расчету используется в отчетах для компенсацией отсутствия топливных датчиков или сверки их показаний. Для отображения результатов математического расчета добавьте в таблицу столбцы Потрачено по расчету, Ср. расход по расчету или другие, в названии которых фигурирует «по расчету».

Также расход по расчету используется в топливных алгоритмах. Во-первых, для поиска сливов, если включена опция Расчет сливов по времени. Во-вторых, для вычисления расхода на интервалах с ошибочными значениями, если включена опция Заменять ошибочные значения рассчитанными математически. Обе упомянутые опции находятся в дополнительных настройках ДУТ.

Как работает математический расчет?

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

  • датчиков работы двигателя (зажигания или абсолютных/относительных моточасов), в которых указана норма расхода на холостом ходу;
  • датчиков полезной работы двигателя (ДПРД), каждый из которых говорит о влиянии какого-либо фактора на расход топлива (оборотов двигателя, температуры, нагрузки на ось, работы кондиционера, навесного оборудования и так далее).

Расход по расчету за интервал является суммой расходов между всеми сообщениями интервала. Для вычисления расхода по расчету между рассматриваемым и предыдущим сообщениями используется следующая формула:

Δt * ( CХХ 1 + CХХ 2 + ... + CХХ N ) * (KДПРД 1 + (KДПРД 2 - 1) + (KДПРД 3 - 1) + ... + (KДПРД M - 1)),

где Δt – время между сообщениями; CХХ i – норма расхода на холостом ходу из i-го датчика работы двигателя, который был включен в рассматриваемом сообщении; N – количество созданных в объекте датчиков работы двигателя; KДПРД j – значение j-го датчика полезной работы двигателя в рассматриваемом сообщении; M – количество созданных в объекте датчиков полезной работы двигателя.

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

Зачем связывать датчики работы двигателя, ДПРД и ДУТ?

Некоторые объекты имеют сразу несколько двигателей. Чаще всего это касается спецтехники, и хорошим примером здесь является автобетоносмеситель: его основной двигатель заставляет машину перемещаться, а дополнительный автономный двигатель вращает смесительный барабан. Ускорение машины или включение кондиционера может повлиять на расход основного двигателя, но не повлияют на расход дополнительного. Следовательно, некоторые влияющие на расход факторы (их мы учитываем с помощью ДПРД) влияют только на один из двигателей (их мы учитываем с помощью датчиков работы двигателя). При этом у объекта может быть и несколько топливных баков (их мы учитываем с помощью ДУТ), которые тоже нужно связать с определенным двигателем.

Чтобы осуществить связь, необходимой войти в свойства датчика зажигания или датчиков абсолютных/относительных моточасов и выбрать соответствующие ДПРД. Аналогично в свойствах ДУТ настраивается его связь с датчиками работы двигателя.

Как быстро создать математическую модель?

Для создания базовой математической модели воспользуйтесь Мастером расхода по расчету, расположенным на вкладке Датчики в свойствах объекта. В окне Мастера расхода по расчету необходимо ввести информацию о расходе топлива в разных режимах работы, а также сезонный коэффициент и даты начала и окончания сезона. Рассмотрим эти поля подробнее:

  • Расход топлива (л/ч) подразумевает расход на холостом ходу, то есть при включенном двигателе и отсутствии движения. Минимальная скорость движения при этом берется из Детектора поездок.
  • Городской цикл и Загородный цикл (л/100км) являются стандартными характеристиками транспортного средства, которые можно найти в документах, в интернете или вычислить на практике. При этом в разных странах используют различные подходы к тому, как определять эти циклы. В Wialon норма городского цикла соответствует скорости 36 км/ч, а загородного – 80 км/ч.
  • Сезонный коэффициент (%) подразумевает то, на сколько процентов увеличивается расход топлива в течение указанного сезона относительного остального года. Учет сезонного коэффициента можно отключить, если на территории использования транспортного средства не наблюдается значительного изменения температуры в течение года.

Чем больше данных вы внесете, тем точнее будет работать математическая модель, однако минимально необходимо ввести хотя бы расход в городском цикле.

Заполнив Мастер расхода по расчету, вы создадите базовую математическую модель, учитывающую только скорость объекта и влияние сезона. Такая модель является приблизительной, ведь в действительности скорость не влияет на расход – влияют обороты двигателя, также как не влияет и сезон – на самом деле на расход влияет температура. Однако большинство трекеров по умолчанию не присылают информацию об оборотах двигателя и температуре. Поэтому мы выбрали модель, которая подходит для всех трекеров.

Создать более точную модель автоматически не получится, но можно сделать это вручную, добавив ДПРД самостоятельно.

Как работают датчики полезной работы двигателя?

Значение ДПРД в каждом сообщении должно показывать, во сколько раз какой-либо влияющий фактор увеличивает расход на холостом ходу относительно расхода без влияния этого фактора. Для лучшего понимания рассмотрим пример.

Предположим, что расход на холостом ходу равен 2 л/ч, а при включении системы отопления расход возрастает до 2.2 л/ч. Следовательно, отношение этих величин равно: 2.2/2 = 1.1
Также предположим, что параметр in4 однозначно говорит о состоянии системы отопления: если данный параметр равен 0, то отопление выключено, а если равен 1 – включено.
В таком случае для учета влияния системы отопления на расход необходимо создать датчик с типом Датчик полезной работы двигателя, в строке Параметр указать in4, а в Таблицу расчета добавить следующие строки:

x = 0; a = 0; b = 1
x = 1; a = 0; b = 1.1

Получается, что при выключенной системе отопления ДПРД увеличивает расход в 1 раз (то есть никак не меняет его), а при включенной – увеличивает в 1.1 раза. Дополнительно стоит отметить, что нулевое значение ДПРД также не изменило бы расход.

Описанным выше образом можно учесть влияние одного фактора на ожидаемый расход. При наличии нескольких датчиков полезной работы двигателя все их значения учитываются одновременно, формуруя ожидаемый расход на интервале между двумя сообщениями (см. формулу выше).

Как сделать расход по расчету более точным?

Сразу стоит отметить, что если вы активировали опцию Расчет сливов по времени в свойствах датчика уровня топлива, то система будет сравнивать расход по расчету с расходом по ДУТ, а показания последнего, к сожалению, не очень точны. Следовательно, нет необходимости стараться довести математическую модель до идеала, так как в итоге на результат сравнения с ДУТ это может не повлиять.

Но все же вы можете попробовать увеличить точность модели нижеприведенными способами.

Учитывайте больше факторов

Вы можете создать больше ДПРД на основе параметров от трекера, которые описывают влияющие на расход факторы.

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

Увеличьте точность измерения параметров

Данная рекомендация следует из предыдущей. Чтобы улучшить результат, вы можете не только увеличить количество датчиков, но и использовать датчики более высокой точности.

Увеличьте частоту генерации сообщений

Если влияющие на расход факторы часто изменяются, то трекер должен также часто генерировать сообщения, иначе учесть их в полной мере не получится. Например, это касается поездок по городу, в рамках которых автомобиль за 10 минут может постоять на нескольких светофорах, но если за это время в память трекера записывается всего лишь одно сообщение, то математическая модель просто не сможет учесть каждое изменение скорости.

Почему расход по расчету показывает неправильные значения?

Причин у такого поведения может быть несколько.

  1. Используемые в Мастере расхода по расчету нормы могут отличаться от реальных (например, из-за износа транспортного средства). В таком случае вы можете на практике проверить их соответствие реальности.
  2. Это может быть связано с некорректной настройкой расхода по расчету. Проверьте, чтобы в свойствах датчика работы двигателя было указано ненулевое значение в строке Расход, литров в час. Также убедитесь, что датчик работы двигателя и ДПРД связаны.
  3. Частота генерации сообщений трекером может быть слишком низкой.
  4. Это может объясняться поломкой датчика, показания которого используются в математической модели.
  5. В некоторых случаях система может считать, что зажигание было включено все время, пока трекер не присылал сообщений. В таком случае математическая модель покажет, что все это время двигатель должен был тратить топливо. Для исправления ситуации попробуйте установить корректное значение опции Максимальный интервал между сообщениями на вкладке Дополнительно в свойствах объекта. Достичь такого же результата можно и с помощью опции Таймаут в свойствах датчика зажигания.



При возникновении вопросов по конкретным практическим случаям вам стоит обратиться в техподдержку через почту support@gurtam.com. Обязательно указывайте в вашем письме краткое описание ситуации со скриншотами, точное имя объекта, имя шаблона отчета для проверки, минимальный интервал времени для проверки (например, не месяц, а одни сутки), а также прочие важные детали.



Олег Жарковский,Тренер по Wialon

Различия топливных алгоритмов
  • technical_consulting
  • fuel

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

Какой алгоритм выбрать

Ниже приведен список особенностей алгоритмов, который должен помочь вам определиться с выбором.

Алгоритм по пробегу

  1. Подходит для большинства подвижных объектов.
  2. Относительно прост в настройке.
  3. Используется по умолчанию.

Алгоритм по времени

  1. Подходит
    • для стационарных объектов,
    • для объектов с большими интервалами холостого хода,
    • для объектов с дополнительным оборудованием, увеличивающим расход,
    • при подозрениях на сливы во время движения,
    • если алгоритм по пробегу не дает ожидаемых результатов.
  2. Более сложен в настройке.
  3. Для активации рекомендуется одновременно включить следующие опции в свойствах датчика уровня топлива:
    • Рассчитывать расход топлива по времени,
    • Расчет заправок по времени,
    • Расчет сливов по времени – для обработки сливов также требуется математическая модель расхода, которую можно создать, например, с помощью Мастера расхода по расчету.

В чем разница между алгоритмами

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

Из описанного выше следует, что ключевая разница алгоритмов заключается в том, что алгоритм по времени анализирует все сообщения, а алгоритм по пробегу исключает из анализа часть сообщений, используя упрощение. Оно основано на том, что судить об изменении уровня топлива во время остановки или стоянки (то есть на интервале с низкой скоростью) можно по двум сообщениям до и после рассматриваемой остановки или стоянки. Например, если автомобиль был на парковке с 14:00 до 16:00, а слив был осуществлен в промежутке 15:00-15:10, то узнать о факте слива можно, просто сравнив уровни топлива в 14:00 и 16:00.

Расход

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

Дополнительно отмечу, что объем сливов по умолчанию включен в расход, пока не активирована опция Исключить сливы из расхода топлива в настройках шаблона отчета.

Заправки

Детектирование заправок также происходит одинаково для обоих алгоритмов: система ищет сообщения с последовательным ростом показаний датчика уровня топлива. Однако алгоритм расчета заправок по пробегу вычисляет заправку во время стоянок всего по двум точкам (уровню топлива в конце предыдущего интервала движения и в начале следующего), не анализируя все сообщения за рассматриваемый интервал.

Сливы

Детектирование сливов происходит разным методом:

  • Алгоритм по пробегу вычисляет слив во время стоянки по двум точкам (уровням топлива в конце предыдущего интервала движения и в начале следующего), не анализирую все сообщения за рассматриваемый интервал.
  • Алгоритм по времени сравнивает фактический расход по датчику уровня топлива с ожидаемым расходом, определенным по математической модели.

При возникновении вопросов по конкретным практическим случаям вам стоит обратиться в техподдержку через почту support@gurtam.com. Обязательно указывайте в вашем письме краткое описание ситуации со скриншотами, точное имя объекта, имя шаблона отчета для проверки, минимальный интервал времени для проверки (например, не месяц, а одни сутки), а также прочие важные детали.

Олег Жарковский,Тренер по Wialon

Не детектируется заправка
  • technical_consulting
  • fuel

Заправки отображаются в отчетах, когда поступившие от трекера данные соответствуют всем критериям детектирования заправок. Однако в некоторых случаях таблица Заправки не отображает результаты, хотя вам достоверно известно, что заправка топлива была совершена, и на графике в отчете виден резкий рост линии Уровень топлива. Следуя простым рекомендациям из этой статьи, вы сможете исправить ситуацию, а также разобраться в логике работы некоторых топливных настроек.

Возможные причины и их устранение

Иногда для решения проблемы достаточно будет выполнить лишь одну рекомендацию из списка ниже. Чаще придется следовать сразу нескольким рекомендациям. Но в отдельных случаях не получится избежать детального анализа всех настроек датчика уровня топлива, а также особенностей приходящих сообщений и параметров.

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

1. Заправка игнорируется из-за сглаживания

Попробуйте уменьшить степень фильтрации в свойствах датчика уровня топлива.

 Пояснения

Уровень топлива в баке колеблется из-за работы двигателя, ускорений, торможений, поворотов, неровностей дороги, наклона транспортного средства и так далее.

Чем больше степень фильтрации, тем сильнее сглаживание, применяемое для компенсации колебаний показаний ДУТ. Чем сильнее сглаживание, тем проще анализировать обработанные данные, однако тем сильнее искажена входная информация. Поэтому для получения требуемой точности степень фильтрации стоит установить на минимально необходимую. Если же степень фильтрации слишком велика, то обработанные данные могут уже не содержать перепада уровня топлива, соответствующего заправке. В большинстве случаев не рекомендуется использовать степень фильтрации выше 10.

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

2. Заправка отфильтрована по объему

Попробуйте уменьшить значение опции Минимальный объем заправки в свойствах датчика уровня топлива.

 Пояснения

Данная опция является своего рода грубым фильтром, который разделяет заправку и обычные колебания уровня топлива, которые будут оставаться даже несмотря на применение фильтрации. Следовательно, Минимальный объем заправки стоит выбирать соразмерно значению этих колебаний, которые в некоторых случаях могут достигать даже 20 и более литров.

Если же установить Минимальный объем заправки слишком большим, то из результатов отчета может исчезнуть фактическая заправка.

3. Заправка происходит при наличии скорости

Скорректируйте настройки Детектора поездок, увеличив Минимальную скорость движения, если скорость не связана с фактической поездкой объекта, а связана с погрешностью исходных данных. Однако если скорость в таких сообщениях соизмерима со скоростью при фактических поездках (например, более 10 км/ч), то подобные сообщения, вероятно, можно удалить, а для избежания подобных ситуаций в будущем можно попробовать их отфильтровать. Пожалуйста, учитывайте, что вы не сможете восстановить сообщения, удаленные вручную или вследствие применения фильтрации валидности сообщений, поэтому к данным шагам стоит подходить с особым вниманием.

 Пояснения

Не всегда скорость, определяемая трекером и отображаемая в системе мониторинга, однозначно говорит о том, что объект движется. Это следует из наличия погрешности у спутниковых систем навигации (GPS, ГЛОНАСС и так далее). Для определения факта движения используется Минимальная скорость движения, которая определяет минимальный порог значения скорости, распознаваемый системой как движение.

В редких случаях погрешность в значении скорости достигает больших значений, что может быть связано как с качеством трекера, так и с окружающей обстановкой (рельефом, нахождением в здании, наличием рядом больших металлических конструкций и так далее). Некоторые трекеры могут самостоятельно пометить сообщения с неточной скоростью как невалидные. Однако с помощью фильтрации валидности сообщений вы можете найти и отфильтровать подобные невалидные сообщения уже в Wialon. Данная фильтрация применяется только к сообщениям, которое поступят на сервер после включения соответствующих настроек, а поэтому старые невалидные сообщения придется удалить вручную.

Другим методом решения является включение опции Поиск заправок только при остановке и увеличение Таймаута для определения полного объема заправки в свойствах датчика уровня топлива.

 Пояснения

Датчики уровня топлива могут обладать инерционностью, то есть присылать данные с временны́ми задержками. Для некоторых ДУТ это является следствием встроенной фильтрации, в других случаях задержка прихода данных подразумевает необходимость техобслуживания ДУТ (например, чистку дренажного отверстия).

Ни один из вариантов не подходит

Вероятно, вы столкнулись с более сложной ситуацией, чем рассмотренные выше, и вам стоит обратиться в техподдержку через почту support@gurtam.com. Обязательно указывайте в вашем письме точное имя объекта, имя шаблона отчета для проверки, минимальный интервал времени для проверки (например, не месяц, а несколько суток), а также прочие важные детали.

Олег Жарковский,Тренер по Wialon

Не детектируется слив
  • technical_consulting
  • fuel

Сливы отображаются в отчетах, когда поступившие от трекера данные соответствуют всем критериям детектирования сливов. Однако в некоторых случаях таблица Сливы не отображает результаты, хотя вам достоверно известно, что слив топлива был совершен, и на графике в отчете видно резкое падение линии Уровень топлива. Следуя простым рекомендациям из этой статьи, вы сможете исправить ситуацию, а также разобраться в логике работы некоторых топливных настроек.

Возможные причины и их устранение

Иногда для решения проблемы достаточно будет выполнить лишь одну рекомендацию из списка ниже. Чаще придется следовать сразу нескольким рекомендациям. Но в отдельных случаях не получится избежать детального анализа всех настроек датчика уровня топлива, а также особенностей приходящих сообщений и параметров.

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

1. Слив игнорируется из-за сглаживания

Попробуйте уменьшить степень фильтрации в свойствах датчика уровня топлива.

 Пояснения

Уровень топлива в баке колеблется из-за работы двигателя, ускорений, торможений, поворотов, неровностей дороги, наклона транспортного средства и так далее.

Чем больше степень фильтрации, тем сильнее сглаживание, применяемое для компенсации колебаний показаний ДУТ. Чем сильнее сглаживание, тем проще анализировать обработанные данные, однако тем сильнее искажена входная информация. Поэтому для получения требуемой точности степень фильтрации стоит установить на минимально необходимую. Если же степень фильтрации слишком велика, то обработанные данные могут уже не содержать перепада уровня топлива, соответствующего сливу. В большинстве случаев не рекомендуется использовать степень фильтрации выше 10.

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

2. Слив отфильтрован по объему

Попробуйте уменьшить значение опции Минимальный объем слива в свойствах датчика уровня топлива.

 Пояснения

Зачастую заявляемая производителями точность ДУТ в 1% не позволяет в реальных условиях детектировать небольшие сливы из-за наличия уже упомянутых выше колебаний топлива в баке. Поэтому сразу устанавливать Минимальный объем слива, например, в 1 литр будет довольно оптимистично. Данная опция является своего рода грубым фильтром, который разделяет слив и обычные колебания уровня топлива, которые будут оставаться даже несмотря на применение фильтрации. Следовательно, Минимальный объем слива стоит выбирать соразмерно значению этих колебаний, которые в некоторых случаях могут достигать даже 20 и более литров.

Если же установить Минимальный объем слива слишком большим, то из результатов отчета может исчезнуть фактический слив.

3. Слив происходит на коротких остановках

Попробуйте уменьшить значение опции Минимальное время остановки для определения слива в свойствах датчика уровня топлива.

 Пояснения

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

Если же установить Минимальное время остановки для определения слива слишком большим, то длительная остановка или стоянка могут быть исключены из анализа, и слив не будет учтен.

4. Слив происходит при наличии скорости

Активируйте опцию Поиск сливов в движении в свойствах датчика уровня топлива, если в момент слива объект действительно ехал. Обратите внимание, что для вывода корректного результата в таком случае рекомендуется включить опцию Рассчет сливов по времени.

Другим методом решения является увеличение минимальной скорости движения на вкладке Детектор поездок, если скорость не связана с фактической поездкой объекта, а связана с погрешностью исходных данных. Однако если скорость в таких сообщениях соизмерима со скоростью при фактических поездках (например, более 10 км/ч), то подобные сообщения, вероятно, можно удалить, а для избежания подобных ситуаций в будущем можно попробовать их отфильтровать. Пожалуйста, учитывайте, что вы не сможете восстановить сообщения, удаленные вручную или вследствие применения фильтрации валидности сообщений, поэтому к данным шагам стоит подходить с особым вниманием.

 Пояснения

Не всегда скорость, определяемая трекером и отображаемая в системе мониторинга, однозначно говорит о том, что объект движется. Это следует из наличия погрешности у спутниковых систем навигации (GPS, ГЛОНАСС и так далее). Для определения факта движения используется Минимальная скорость движения, которая определяет минимальный порог значения скорости, распознаваемый системой как движение.

В редких случаях погрешность в значении скорости достигает больших значений, что может быть связано как с качеством трекера, так и с окружающей обстановкой (рельефом, нахождением в здании, наличием рядом больших металлических конструкций и так далее). Некоторые трекеры могут самостоятельно пометить сообщения с неточной скоростью как невалидные. Однако с помощью фильтрации валидности сообщений вы можете найти и отфильтровать подобные невалидные сообщения уже в Wialon. Данная фильтрация применяется только к сообщениям, которое поступят на сервер после включения соответствующих настроек, а поэтому старые невалидные сообщения придется удалить вручную.

Ни один из вариантов не подходит

Вероятно, вы столкнулись с более сложной ситуацией, чем рассмотренные выше, и вам стоит обратиться в техподдержку через почту support@gurtam.com. Обязательно указывайте в вашем письме точное имя объекта, имя шаблона отчета для проверки, минимальный интервал времени для проверки (например, не месяц, а несколько суток), а также прочие важные детали.

Олег Жарковский,Тренер по Wialon

Как избавиться от ложных сливов топлива
  • technical_consulting
  • fuel

Если поступившие от трекера данные соответствуют всем критериям детектирования сливов, то в таблице Сливы будут фигурировать записи об этом, даже если фактически слива не было. Подобные сливы называются ложными.

Для корректной настройки детектирования сливов необходимо знать не только технические особенности алгоритмов Wialon, но и принципы работы самого оборудования (трекеров, датчиков и топливной системы объекта). В данной статье изложены простые инструкции, следуя которым вы сможете избавиться от ложных сливов, ориентируясь лишь на график уровня топлива.

Обязательные шаги перед применением инструкций

  • В Wialon создан объект, сообщения от трекера отображаются в системе.
  • Датчик уровня топлива подключен к трекеру, тарировка бака произведена.
  • В объекте создан датчик с типом Датчик уровня топлива (ДУТ).
  • В свойствах ДУТ активирована опция Рассчитывать расход топлива по датчику.
  • Тарировочная таблица (Пары XY) внесена в Таблицу расчета датчика уровня топлива, после чего нажата кнопка Генерировать.
  • Создан шаблон отчета с графиком типа Обычный, который отображает Обработанный уровень топлива.
  • Также график отображает маркеры сливов и фон поездок (по умолчанию он розовый), остановок (голубой) и моточасов (желтый).

Поведение графика в области ложного слива

Выберите один из представленных ниже вариантов в соответствии с тем, что вы наблюдаете на графике в месте, где находится маркер слива.

1. Скачки в процессе движения или работы двигателя

Во время работы двигателя, движения по неровной поверхности или любого движения в принципе происходят колебания топлива, которые считывает ДУТ. В зависимости от объема и формы бака, а также места установки ДУТ эти колебания могут достигать десятков литров, что может привести к детектированию сливов. В общем случае их можно компенсировать с помощью алгоритма сглаживания, настраиваемого через степень фильтрации.

Для этого в свойствах датчика уровня топлива активируйте опцию Фильтровать значения датчиков уровня топлива. Затем установите степень фильтрации (например, 3). Обязательно учитывайте, что высокие степени фильтрации стоит применять только при высокой частоте отправки сообщений (1-5 секунд между сообщениями). После применения фильтрации топливные алгоритмы будут работать не с исходными данными, а со сглаженными.

Для проверки эффективности сглаживания добавьте на график линию Уровень топлива (до сглаживания) и сравните ее с линией Обработанный уровень топлива (после сглаживания). Если колебания линии Обработанный уровень топлива все еще кажутся вам значительными, то можно попробовать увеличить степень фильтрации (рекомендуется делать это с шагом в 1). Однако помните, что сглаживание может начать искажать входные данные, а потому нужно найти золотую середину: колебания линии Обработанный уровень топлива уже не кажутся большими (или их совсем нет), но при этом линии до и после сглаживания все еще не слишком отличаются в характерных местах (например, во время фактических заправок/сливов).

 Как работает фильтрация (сглаживание значений датчика)

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

Степень фильтрацииШирина окнаКоличество сообщений до/после центра окна
031


N

N — нечетное5×N(5×N-1)/2
N — четное5×N+15×N/2

Пример

Степень фильтрации установлена равной 3. Тогда ширина окна будет составлять 5×3=15. Следовательно, для сглаживания значений уровня топлива берутся 7 сообщений до и 7 сообщений после рассматриваемого сообщения.

Например, для вычисления значения в сообщении номер 61 будут использованы сообщения с 54 по 68.

2. Резкий скачок сразу после начала или прекращения движения

Показания ДУТ могут резко измениться в момент начала/прекращения движения, что может привести к детектированию слива. Если выбранная вами степень фильтрации не сглаживает эти скачки, а повышать ее вы не хотите (например, в вашем случае это приводит к большому искажению входных данных на других интервалах), то вы можете использовать один из двух временны́х фильтров в свойствах датчика уровня топлива:

  • Игнорировать сообщения после начала движения — эта опция позволяет исключить из анализа на сливы заданное количество секунд после начала движения.
  • Минимальное время остановки для определения слива — если длительность интервала без движения не превышает указанную, то этот интервал не будет анализироваться на сливы (таким образом можно отсечь колебания уровня топлива, например, во время коротких остановок на светофорах).

3. Плавное падение при работе двигателя и отсутствии движения

В системе Wialon существует 2 алгоритма для анализа топлива: алгоритм по пробегу (он используется по умолчанию) и алгоритм по времени. Для стационарных объектов и для объектов с длительными интервалами холостого хода рекомендуется использовать алгоритм по времени. Для этого активируйте 3 опции в свойствах датчика уровня топлива: Расчет заправок по времени, Расчет сливов по времени и Рассчитывать расход топлива по времени. Стоит пояснить, что в рассматриваемом случае можно было бы обойтись только опцией Расчет сливов по времени, но одновременное включение всех опций позволит достичь лучшей сходимости всех топливных показателей в отчетах.

При использовании алгоритма по времени происходит сравнение расхода по ДУТ с расходом по расчету, то есть со значением, рассчитанным по математической модели. На интервалах холостого хода расход по расчету в общем случае определятся по датчику зажигания или датчикам моточасов. Потому откройте свойства датчика зажигания или моточасов и проверьте, верная ли норма расхода в час установлена в поле Расход.

4. Слив во время движения, хотя график выглядит нормально

Наиболее вероятно, вы используете алгоритм анализа топлива по времени, а также активировали опцию Поиск сливов в движении в свойствах датчика уровня топлива. В таком случае происходит сравнение расхода по ДУТ с математически рассчитанным расходом. Если расход по расчету настроен неправильно, то ложный слив может быть детектирован там, где объект просто совершал поездку, а потому рекомедуется проверить математическую модель расхода по расчету. Она задается через:

  • датчики зажигания или датчики моточасов — в свойствах в поле Расход необходимо указать норму расхода в час на холостом ходу;
  • датчики полезной работы двигателя (ДПРД) — этот датчик может использовать любой параметр, который влияет на расход, и своим значением он определяет коэффициент изменения расхода, который далее перемножается с расходом из предыдущего пункта.

Базовую математическую модель расхода можно создать с помощью Мастера расхода по расчету на вкладке Датчики в свойствах объекта. Далее ее можно дополнить с учетом прочих влияющих на расход факторов (веса груза, температуры, работы навесного оборудования и так далее).

5. Значительные скачки до минимума/максимума

Если на графике видны скачки линии Обработанный уровень топлива до 0 или до максимального значения (зачастую это 2¹⁶-1=65535) и обратно к актуальному значению, то даже после применения сглаживания эти скачки могут приводить к детектированию ложных сливов. Такие скачки показаний могут быть связаны с некорректной конфигурацией или подключением датчика уровня топлива к трекеру.

Рекомендуется исправлять данную проблему со стороны оборудования, однако и со стороны Wialon вы можете попробовать отсечь эти показания с помощью Таблицы расчета. Для этого войдите в свойства ДУТ, перейдите во вкладку Таблица расчета и установите значения Нижней границы и/или Верхней границы, соответствующие пустому и полному баку. Однако в нижней границе лучше прописать не 0, а значение близкое к нулю (например, 0.1), чтобы отсечь ложные скачки показаний до 0.

6. Значительные скачки не до минимума/максимума

Если показания ДУТ изменяются на значительные величины (но не до 0 или до максимального значения), а затем возвращаются обратно к актуальному значению, то даже после применения сглаживания эти скачки могут приводить к детектированию ложных сливов. Подобное поведение может быть связано со скачками напряжения, которые можно заметить на графике с помощью линии Напряжение, если у вас создан Датчик напряжения.

Рекомендуется исправить подобные ситуации со стороны оборудования, однако и со стороны Wialon вы можете попробовать компенсировать это влияние через Валидацию. Для этого необходимо применить следующую инструкцию:

  1. Откройте вкладку Сообщения и запросите сообщения с исходными данными за интервал, который включает исследуемый скачок уровня топлива.
  2. Вручную или с помощью фильтра найдите другой параметр, который меняется одновременно с показаниями ДУТ.
    Предположим, это параметр pwr_ext, который для большинства трекеров соответствует внешнему напряжению.
  3. Определите, при преодолении какого значения найденного параметра показания ДУТ изменяются.
    Предположим, что если pwr_ext меньше 12, то ДУТ начинает присылать неправильные показания.
  4. Войдите в свойства объекта и создайте датчик с типом Произвольный цифровой датчик, используя параметр из пункта 3, а затем задайте для него Таблицу расчета со следующими строками:
    X = 0; a = 0; b = 0
    X = 12; a = 0; b = 1
  5. Сохраните созданный датчик и изменения свойств объекта, два раза нажав кнопку ОК.
  6. Снова войдите в свойства объекта, а затем в свойства ДУТ. Укажите датчик из пункта 4 в качестве валидатора с типом Проверка на неравенство нулю.

В примере выше рассматривается реальный случай, так как низкое напряжение действительно зачастую приводит к искажению показаний разных датчиков. То есть между передаваемыми параметрами напряжения и уровня топлива существует прямая связь. Однако вы можете использовать и непрямую связь, если заметите одновременное изменение показаний ДУТ и любого другого параметра. Возможно, трекер не присылает значение напряжения, однако присылает значение температуры, а датчик температуры тоже сбоит и присылает, например, 451 °F в момент скачка напряжения. В таком случае с помощью валидации попробуйте связать ДУТ и значение температуры, что тоже должно исправить ситуацию.

7. Плавное падение после заправки при наличии нескольких соединенных баков с ДУТ в каждом

Подобное изменение показаний ДУТ может быть связано с тем, что у объекта имеется несколько соединенных баков, между которыми происходит перетекание топлива. После заправки в один из баков выравнивание уровней между несколькими баками может занять некоторое время, и если вы создали датчики уровня топлива в Wialon отдельно, то сразу после заправки система может детектировать ложный слив по одному из баков.

При работе с несколькими соединенными баками мы рекомендуем для каждого из ДУТ создавать Произвольный датчик (например, с именами «ДУТ 1» и «ДУТ 2») и вносить в них свою тарировочную таблицу. После этого создайте отдельный датчик с типом Датчик уровня топлива, не вносите в него тарировочную таблицу, а вместо этого просто используйте следующую формулу: [ДУТ 1]+[ДУТ 2]

8. Резкое падение при достижении определенного уровня

Данная ситуация может наблюдаться для баков специфичной формы в момент перехода от широкой части к узкой (например, для баков в форме буквы «Г»). Это особенно вероятно, если тарировка была произведена по слишком малому количеству точек, а зачастую ее делают всего по 2 точкам (при пустом и полном баке). Потому имеет смысл перетарировать бак, используя небольшие порции.

9. Плавное изменение в одно и то же время

Иногда уровень топлива падает/растет в определенные моменты времени, а в некоторых случаях позже даже возвращается к актуальному значению. Происходить это может ночью, или во время поездки (особенно под нагрузкой), или спустя примерно одно и то же время после завершения поездки — то есть выделить общее правило затруднительно.

Предположительные причины:

  • изменение температуры, влияющее на объем топлива, а также на деформацию бака (особенно это касается гибких пластиковых баков);
  • образование «вакуума» из-за разницы давлений (активного забора топлива в двигатель);
  • оседание примесей в топливе или грязи в баке, которая происходит после завершения поездки (тряски).

Решение в большинстве случаев связано с оборудованием: установка крышки с клапаном для выравнивания давления, удаление грязи/осадка в баке или на ДУТ. Однако если ситуация связана только с изменением температуры, то вам помочь может использование датчика с типом Коэффициент температуры (пример его настройки можно найти в документации).

Ни один из вариантов не подходит

В данной статье рассматриваются только ложные сливы, поэтому если с помощью предложенных инструкций вам не удалось избавиться от сливов, то это может означать один из трех вариантов:

  1. Точность ДУТ недостаточна для бака данной формы, данного типа ТС, данного характера движения ТС, для данной местности и т.д. Тогда помочь сможет только увеличение настройки Минимальный объем слива в свойствах датчика уровня топлива. По сути это не исправление ситуации, а просто признание низкой точности ДУТ и настройка объекта в соответствии с этой точностью.
  2. Вы столкнулись с более сложной ситуацией, чем описано в выше, и вам стоит обратиться в техподдержку через почту support@gurtam.com. Обязательно указывайте в вашем письме краткое описание ситуации со скриншотами, точное имя объекта, имя шаблона отчета для проверки, минимальный интервал времени для проверки (например, не месяц, а одни сутки), а также прочие важные детали.
  3. Вероятно, слив действительно имел место.

Олег Жарковский,Тренер по Wialon

Не срабатывает команда
  • technical_consulting
  • commands
  • sms

Wialon не только принимает данные от трекеров, но также может отправлять на них команды. В данной статье вы найдете условия для выполнения команд, описание особенностей разных каналов отправки команд, а также возможные проблемы и варианты их решения.

Условия для выполнения команд

Для выполнения команд необходимо учитывать сразу нескольких условий, которые касаются сервиса, учетной записи, пользователя и объекта. Рассмотрим эти условия по порядку.

  1. В учетной записи включена услуга Команды.

  2. Пользователь обладает специальным правом Отправка команд в отношении объекта.

  3. Команда создана на одноименной вкладке Команды в свойствах объекта.


    Для создания команд пользователь обладать специальным правом Создание, редактирование и удаление команд в отношении объекта.
  4. Для выполнения команд по каналу SMS существует еще несколько дополнительных условий:
    • В учетной записи включена услуга SMS-сообщения.

    • В сервисе должны быть доступны SMS, то есть счетчик на верхней панели должен быть больше нуля.

      Данный счетчик не отображается, если в сервисе для отправки SMS используется персональный модем.

    • На вкладке Основное свойства объекта должен быть указан Телефонный номер в международном формате, на который трекер будет получать SMS.

Особенности каналов отправки команд

Канал (тип связи) для отправки команды выбирается в ее свойствах. В зависимости от выбранного канала при выполнении команды необходимо учитывать состояние соединения объекта с сервером.

Объект поддерживает интернет соединение с сервером, если от него приходят сообщения с данными или keep alive/heart beat пакеты. Для проверки нынешнего статуса соединения можно использовать столбец Состояние соединения на панели Мониторинг.

GPRS (TCP/UDP)

Объект обязательно должен поддерживать интернет соединение с сервером.

Virtual

Данный канал аналогичен по принципу отправки с TCP/UDP, однако виртуальная команда может быть выполнена, даже когда объект не подключен к серверу. В момент выполнения команда становится в очередь, а ее фактическая отправка будет произведена в момент выхода объекта на связь.

Для каждого типа устройства в Wialon предусмотрено ограничение количества виртуальных команд в очереди, а при переполнении очереди новая виртуальная команда вытеснит из очереди самую старую команду (она не будет отправлена). 
SMSОбъект может не поддерживать интернет соединение с сервером.
АвтоПри отправке программа сама выберет ту связь, которая доступна в данный момент. Если доступно несколько типов, то использован будет тот канал, который находится выше в данной таблице.

Если выбранный для команд канал связи в данный момент доступен, то кнопка выполнения команды напротив объекта в панели Мониторинг станет активной.

Проверка отправки команды со стороны Wialon

Факт выполнения команды фиксируется в Журнале объекта. Также эта информация доступна для просмотра:

  • на вкладке Сообщения при запросе Отправленных команд;
  • на вкладке Сообщения при запросе SMS-сообщений;
  • в отчете с таблицей Отправленные команды.

Запись о выполнении команды в журнале означает, что команда была выполнена со стороны Wialon. Далее она отправляется по TCP/UDP каналу или передается модему/SMPP шлюзу на отправку.

Если команда не была выполнена при нажатии соответствующей кнопки, то следует проверить соблюдение вышеуказанных требований. Ели все требования были соблюдены и объект не терял связь в момент выполнения команды, то вы можете отправить на support@gurtam.com подробное описание проблемы (имя пользователя, объект, имя команды и время выполнения) для анализа специалистами технической поддержки Wialon.

Возможные проблемы и методы их решения

Если по журналу Wialon команда выполнена, но реакции от трекера нет, то с высокой вероятностью проблема связана с работой сторонних систем. Возможно, трекер не получил команду, трекер не выполнил запрограммированные действия по команде или не прислала в Wialon ответ/файл на команду. Наиболее часто встречаемые проблемы такого рода и возможные действия для их исправления приведены ниже.

ПроблемаВозможные причиныВарианты действий
SMS-команда не доставлена на объект

Проблемы с доставкой SMS-сообщений и TCP/UDP команд обычно связана с проблемами на уровне сетей операторов связи/интернет провайдеров. Следует совместно с провайдером проверять маршрут доставки сообщения, устранять неполадки сети или искать другие маршруты доставки.

Если вы используете пакет «500 SMS», напишите техподдержке Wialon на support@gurtam.com.
Если вы используете собственный SMPP шлюз или модем, обратитесь к вашему SMPP провайдеру или GSM оператору для анализа ситуации.

Команда доставлена, но с некорректным текстом

Обычно такая проблема связана с кодировкой оператора связи и актуальна в основном для SMS-сообщений. В Wialon используется стандартный протокол шифрования A5 (CCITT T.50)/ASCII (ANSI X3.4). Оператор связи получателя может использовать другой протокол и в результате не верно декодировать сообщение.

Пользователь должен связаться с оператором связи получателя для исправления ситуации.

Альтернативой является использование собственного SMPP шлюза с требуемой кодировкой.
Команда доставлена с корректным текстом, но трекер не выполнил/отклонил команду

В SMS задан неверный формат команды. Необходимо перепроверить синтаксис согласно руководству по прибору или обратиться к производителю оборудования.

Если используется стандартные команды Wialon (кроме "Произвольное сообщение"), убедитесь, что в команде переданы корректные параметры (например, номер входа трекера для активации). Также вы можете обратиться в техподдержку Wialon по адресу support@gurtam.com, предоставив подробное описание проблемы.

SMS команда получена от номера отправителя, который не внесен в список разрешенных.

Внесите разрешенный номер в настройках трекера.

Команда получена с неразрешенного трекеру IP.

Внеситиеразрешенный IP в настройках трекера. IP в Wialon Hosting зависит от дата-центра сервиса, и его можно видеть во вкладке Основное в свойствах любого объекта.

В настройках объекта не введен Пароль для выполнения команд (или он не совпадает с паролем в трекере).

Перепроверьте пароль для выполнения команд. Для пароля рекомендуется использовать латиницу, т.к. другие языки могут декодироваться трекером некорректно.

Трекер не исправен.

Аппаратный или программный сбой на уровне трекера следует проанализировать с инженером, обслуживающим данный трекер.

Команда доставлена, выполнена трекером, но не получен ответ в системе Wialon

Для некоторых типов устройств существует дополнительная настройка протокола оборудования, где следует активировать соответствующий флаг или ввести настройки для приема и отображения сообщений от трекера.

Найдите и активируйте соответствующую опцию при конфигурации устройства на вкладке Основное. Кнопка конфигурации находится справа от поля ввода типа устройства и является активной, если возможность конфигурации предусмотрена самим устройством.

Команда поступила c виртуального номера, который не может может выступать в качестве получателя SMS.

В Wialon Hosting используется виртуальный номер 79037676122. Вы можете обратиться в техподдержку Wialon по адресу support@gurtam.com и уточнить возможность переключения вашего сервиса на другой доступный телефонный номер отправителя, чтобы получать SMS ответы трекеров на этот номе.
Если из-за особенностей маршрутов доставки SMS в определенную страну вы не можете задать другой номер номер отправителя для отправки SMS, то наиболее удобным решением будет подключить для своего сервиса Hosting собственный SMPP шлюз с возможностью приема SMS от трекеров. По вопросу подключения своего SMPP шлюза к сервису Hosting обратитесь к вашему менеджеру (или к техподдержке Wilon за техническими консультациями).


Сергей Новиков,Инженер отдела технического консалтинга

Как выбрать параметр датчика
  • technical_consulting
  • sensor_parameters
  • sensor_types

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

Общие рекомендации

  1. Список параметров и их описание можно найти на странице конкретного устройства на сайте gurtam.com в разделе Оборудование. Для этого введите в строку Поиск оборудования нужную модель устройства. Также можно выбрать одну из категорий типов оборудования и найти нужную модель в списке. После на странице оборудования перейдите на вкладку Параметры (пример такой страницы для WiaTag).

    Если на странице оборудования отсутствует описание параметров, обратитесь к специалистам по оборудованию через почту hw@gurtam.com.
  2. В большинстве случаев понять содержание параметра можно по его английскому наименованию. Например, в параметре fuel_lvl наиболее вероятно будет отображаться значение уровня топлива, в параметре total_mileage — значения датчика пробега, и т.д. Наименования параметров, полученных из CAN-шины, обычно начинаются с префикса can

  3. Параметры, которые передает устройство, могут быть описаны в документации к оборудованию. Документация, как правило, представлена на сайте производителя.

  4. Существует список виртуальных параметров, которые определены в системе по умолчанию и подходят практически для любого типа оборудования:
    • speed — скорость движения;
    • altitude — высота над уровнем моря;
    • sats — количество спутников;
    • course — курс (направление движения);
    • lat — географическая широта;
    • lon — географическая долгота;
    • time — UNIX-время сообщения;
    • regtime — время регистрации сообщения на сервере.

Метод поиска и проверки выбранного параметра зависит от типа датчика, в котором он используется. Ниже мы рассмотрим несколько примеров для наиболее часто используемых типов датчиков.

Датчик зажигания

Датчик зажигания — это цифровой датчик, который показывает, запущен двигатель или нет. Когда значение цифрового датчика принимает нулевое значение, он считается выключенным, а когда значение принимает ненулевое значение, датчик считается включенным.

Датчик зажигания не отображает положение ключа зажигания «ACC», при котором двигатель не заведен, но дополнительное оборудование уже доступно для использования.

В качестве параметра для Датчик зажигания может подойти один из цифровых входов (в конце сообщений параметр формата I/O). Он описывает состояние всех цифровых входов и выходов одновременно, и по нему можно определить состояние конкретного цифрового входа inN (логика выбора номера входа N описана в другой статье).

Также можно попробовать создать датчик зажигания на основе параметра, отображающего внешнее напряжение (обычно он называется pwr_ext). В таком случае в свойствах датчика необходимо создать Таблицу расчета. В руководстве пользователя приведен пример такой таблицы. При использовании данного примера нужно лишь изменить пороговое значение напряжения, при достижении которого зажигание будет считаться включенным.

Практический метод выбора и проверки параметра

  1. Выключите двигатель и дождитесь получения нескольких сообщений от трекера.
  2. Включите двигатель и дождитесь поступления еще нескольких сообщений.
  3. Сравните сообщения, полученные в пункте 1 и 2. Если скачкообразно изменился только один параметр, то наиболее вероятно, что он и будет показывать состояние зажигания. Если изменилось несколько параметров, то выбрать нужный можно с помощью дополнительной проверки, описанной в следующем пункте.
  4. Изучите сообщения с ненулевой скоростью. Предполагается, что зажигание включено при наличии скорости, а также в нескольких сообщениях до и после наличия скорости. При этом рекомендуется рассматривать интервалы длительностью хотя бы от пяти минут, так как некоторые трекеры могут менять режим отправки сообщений после начала и завершения движения.
 Пример

От объекта поступили сообщения со следующими параметрами:


Скоростьparam1param2param3
15526.00301000
25626.00401020
35726.00511015
4026.00611004
5026.0071476
6026.0080489
71026.00901001
81126.01011004

Предположим, что зажигание у объекта было выключено в 5-м и 6-м сообщении (выделены красным цветом). В остальных сообщениях зажигание включено (выделены зеленым цветом).

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

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

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

Датчики для учета пробега

На данный момент в Wialon существует два датчика для учета пробега:

  • Датчик пробега отображает весь пробег объекта с момента установки датчика.
  • Относительный одометр отображает пробег между рассматриваемым и предыдущим сообщениями.

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

Оба датчика для учета пробега используют в качестве единиц измерения километры (или мили). Если приходящий параметр имеет другие единицы измерения, то необходимо применить коэффициент для перевода в километры (или мили). Например, если параметр can_odo отображает значение в метрах, то в строку Параметр в свойствах датчика необходимо будет записать следующую формулу для перехода к километрам: can_odo/const1000

Практический метод выбора и проверки параметра

Чтобы проверить, правильно ли выбран параметр для Датчика пробега или Относительного одометра, можно использовать инструмент Расстояние. Значения параметров и измеренное между двумя сообщениями расстояние чаще всего не совпадает полностью, но являются соизмеримыми. Это связано с тем, что инструмент Расстояние математически рассчитывает расстояние между двумя точками с выбранными координатами, а датчики как правило считают пройденные километры, исходя из количества вращений колеса и его диаметра.

Параметр можно использовать в Датчике пробега, если

  • его значение не изменяется, когда объект стоит;
  • его значение увеличивается при движении объекта;
  • разница его значений в двух соседних сообщениях соизмерима со значением, полученным при использовании инструмента Расстояние.

Параметр можно использовать в Относительном одометре, если

  • он равен нулю, когда объект стоит;
  • он имеет положительное значение, когда объект движется;
  • он имеет приблизительно равные значения, когда объект движется с одинаковой скоростью;
  • его значение соизмеримо со значением, полученным при использовании инструмента Расстояние.
 Пример

От объекта поступили сообщения со следующими параметрами:

Создайте Датчик пробега на основе параметра mileage, так как он постоянно растет в движении и не падает до нуля во время остановки.

Создайте Относительный одометр на основе параметра odo, так как он имеет разные значения в движении и падает до нуля во время остановки. Однако его значение кажется слишком большим, поэтому попробуйте применить формулу odo/const1000.

Измерьте пробег объекта между несколькими парами сообщений при помощи инструмента Расстояние, расположив измеряемые отрезки поверх трека.

Сравните полученные значения:

Датчик пробегаРазница с предыдущим по датчику пробегаОтносительный одометрИнструмент Расстояние
16801.54 км1.00 км
26802.52 км6802.52 - 6801.54 = 0.98 км1.00 км1.000 км
36803.51 км6803.51 - 6802.52 = 0.99 км1.00 км1.020 км
46804.00 км6804.00 - 6803.51 = 0.49 км0.50 км0.500 км
56804.20 км6804.20 - 6804.00 = 0.20 км0.50 км0.160 км
66804.20 км6804.20 - 6804.20 = 0.00 км0.00 км-

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

Топливные датчики

На данный момент в Wialon существует несколько типов топливных датчиков:

  • Датчик абсолютного расхода топлива (ДАРТ) показывает расход топлива за весь период эксплуатации объекта. Следовательно, для получения данных о расходе за конкретный период используется следующий алогритм: вычисляется разница показаний датчика в конце и в начале рассматриваемого интервала.
  • Датчик мгновенного расхода топлива (ДМРТ) показывает количество израсходованного топлива с момента предыдущего измерения (сообщения). Следовательно, для получения данных о расходе за конкретный период используется следующий алогритм: вычисляется сумма показаний датчика во всех сообщениях на рассматриваемом интервале.
  • Импульсный датчик расхода топлива (ДИРТ) — принцип работы этого датчика аналогичен ДМРТ.
  • Датчик уровня топлива (ДУТ) предназначен для расчета количества топлива в баке. По нему можно считать расход, а также контролировать сливы и заправки
  • Импульсный датчик уровня топлива (ИДУТ), как и предыдущий датчик, предназначен для расчета количества топлива в баке. По нему можно считать расход, а также контролировать сливы и заправки. Отличие от ДУТ заключается в том, что при расчете используются данные из предыдущего сообщения, и разница значений импульсов двух соседних сообщений делится на разницу времени между ними. Данный тип датчика почти не применяется на практике — вместо него большинство пользователей предпочитают обычный ДУТ.

Если устройство присылает параметры сразу для нескольких упомянутых типов датчиков, то их показания, а также результаты вычисления по ним могут различаться. Это связано с разницей методов измерения, а также особенностями работы с топливом. Для демонстрации пользователю рекомендуется выбирать тот датчик, который показывает более достоверные результаты.


Информация о топливе может содержаться в параметрах со следующими именами: fuel_lvlfuel_usedcons_totalcan_fuelrs485_llsadc1adc2 и т.п.


Выбирать тип датчика необходимо, исходя из того, как меняется значение параметра. Рассмотрим различное поведение параметров ниже.

ДАРТ

Параметр можно использовать в Датчике абсолютного расхода топлива, если

  • его значение не изменяется, когда двигатель не работает;
  • его значение увеличивается во время работы двигателя;
  • его значение растет быстрее при движении или работе под нагрузкой, чем при остановке или отсутствии нагрузки.

ДМРТ и ДИРТ

Параметр можно использовать в Датчике мгновенного расхода топлива или Датчике импульсного расхода топлива, если

  • он равен нулю, когда двигатель не работает;
  • он имеет положительное значение, когда двигатель работает;
  • он имеет приблизительно равные значения, когда объект движется с одинаковой скоростью или работает под одинаковой нагрузкой.

ДУТ

Параметр можно использовать в Датчике уровня топлива, если

  • его значение не меняется, когда двигатель не работает;
  • его значение постепенно уменьшается, когда двигатель работает;
  • его значение падает быстрее при движении или работе под нагрузкой, чем при остановке или отсутствии нагрузки;
  • его значение колеблется вокруг фактического значения при работе двигателя и движении;
  • его значение резко растет во время заправки.

В отличие от датчиков расхода топлива параметр от ДУТ может вести себя не так, как описано выше, потому что во время остановки или движения может осуществляться слив топлива, объект может двигаться под наклоном, температура может значительно меняться в течение дня, в топливе могут содержаться примеси и т.д. Подробнее о проблемах при контроле топлива и методах их решения можно почитать в разделе Другие материалы → Топливо.

Ниже приведен пример графика изменения параметра ДУТ, который захватывает интервалы поездки и заправки.

В некоторых случаях параметр ДУТ ведет себя противоположным образом: при работе двигателя его значение растет, а при заправке — падает. Это отличие будет нивелировано после проведения тарировки бака и внесения ее результатов в Таблицу расчета.

Екатерина Гриб,Инженер отдела технического консалтинга

Как выбрать номер цифрового входа/выхода (I/O)
  • technical_consulting
  • sensor_parameters

Цифровой вход и цифровой выход являются контактами (пинами разъема), на которые подается напряжение только двух уровней: один из них соответствует включенному состоянию (1, или Вкл), а второй – выключенному (0, или Выкл). Исходя из этого, цифровые входы и выходы используют для подключения к трекеру устройств или схем, которые передают только два возможных состояния. Например, к цифровому входу трекера можно подключить датчик состояния двери, чтобы трекер мог определить, открыта она или нет. А к цифровому выходу трекера можно подключить противоугонное устройство, который будет управляться трекером и блокировать зажигание.

Отмечу, что если клиенту требуется точное числовое значение, то нужен аналоговый разъем. Потому что если, например, для ДУТ использовать цифровой вход, то вы лишь сможете узнать, есть ли в баке топливо или нет.

Количество цифровых входов и выходов на трекере может быть довольно большим (например, у Galileosky 7-го поколения в зависимости от модификации и конфигурации может быть от 6 до 10 цифровых входов). Поэтому у пользователей часто возникает вопрос: к какому цифровому входу или выходу монтажник подключил интересующее клиента устройство? С помощью инструкции ниже вы сможете получить требуемый ответ.

Отображение цифровых входов/выходов

Вначале стоит отметить, что состояние цифровых входов и выходов в Wialon представлено в виде двух шестнадцатеричных чисел (HEX), получаемых из двоичных чисел (BIN), в которых каждому биту соответствует вход/выход с таким же номером. Параметр с этими значениями имеет имя I/O (сокращение от Inputs/Outputs) и содержит в себе два числа, разделенных косой чертой: слева от нее располагается значение, соответствующее состоянию всех входов, а справа – состоянию выходов.

Почему выбрана такая реализация? Давайте разберемся на примере.

Предположим, что к цифровым входам 1, 3, 4 и 7, а также выходам 1, 3, 6 и 8 подключено оборудование. Также предположим, что в рассматриваемом сообщении все упомянутые входы и выходы активированы. Если бы для каждого из них использовался отдельный параметр в сообщении, то вы бы увидели следующее:

in1=1, in2=0, in3=1, in4=1, in5=0, in6=0, in7=1, in8=0, out1=1, out2=0, out3=1, out4=0, out5=0, out6=1, out7=0, out8=1

А в нынешней реализации в Wialon вы увидите следующую запись:

I/O=4D/A5

И очевидная краткость записи в данном случае является ключевым преимуществом.

Определение номера активированного цифрового входа/выхода

Если номер N входа или выхода известен, то соответствующий ему параметр будет иметь вид inN, а параметр выхода – outN. Например, четвертый вход – это in4, а выход – out4.

Однако если вам не известен номер входа или выхода, к которому подключено оборудование, то вы можете использовать один из двух методов: подбор или математический подход.

Подбор

При подключении оборудования монтажники чаще всего используют первые входы/выходы. То есть если речь идет про устройство или схему, которые передают информацию трекеру, то проверять стоит in1-in4, а если про устройство или схему, которыми управляет трекер, – out1-out4.

Для поиска нужно входа вы можете создать 4 датчика с типом Произвольный цифровой датчик на основе этих параметров (например, в первом датчике в строке Параметр будет in1, во втором – in2 и так далее). Затем перейдите в панель Сообщения, выберите тип сообщений Сообщения с данными и в меню ниже укажите Значения датчиков. После этого запросите сообщения за интервал, когда оборудование было сперва выключено, а потом включено, чтобы найти момент перехода из состояния Выкл в состояние Вкл в одном из столбцов, каждый из которых соответствует созданному датчику.

Это самый быстрый практический метод нахождения нужного входа (аналогично можно работать с выходами, но использовать в таком случае нужно параметры out1, out2 и так далее). Если он не сработал, то вы можете прибегнуть к математическому подходу.

Математический подход

Если вам неизвестен номер входа/выхода, к которому подключено оборудование, то вы можете воспользоваться следующей инструкцией:

1. Перейдите в панель Сообщения, выберите тип сообщений Сообщения с данными и в меню ниже укажите Исходные данные.
2. Запросите сообщения за интервал, когда оборудование было сперва выключено, а потом включено.
3. После отображения таблицы с сообщениями от трекера обратите внимание на колонку Параметры и найдите там параметр I/O (он расположен в самом конце строки).

Предположим, что в сообщении, где оборудование было выключено, параметр I/O=102/0, то есть цифровые выходы деактивированы (или даже не подключены), а некоторые цифровые входы активированы.

4. Откройте приложение Калькулятор (оно предустановлено на каждом компьютере, либо его аналоги можно найти в интернете) и переключите его в режим Программист (или аналогичный, который позволяет переводить значения из одной системы счисления в другую).
5. Переключите калькулятор на шестнадцатеричную систему счисления (HEX).
6. Введите найденное ранее значение 102.
7. Приложение автоматически (либо по нажатию клавиши ввода) представит вам данное число в разных системах счисления. Нас интересует запись в двоичном виде (BIN), которая состоит только из нулей и единиц.

8. Изучите полученное двоичное число. Учтите, что отсчет номера бита идет справа налево (как и в десятичной системе, где единицы находятся справа, слева от них находятся десятки, потом сотни, тысячи и так далее): 0001 0000 0010
9. Определите номера битов для данного числа (нумерация битов в Wialon начинается с 1):

Номер121110987654321
Значение000100000010

10. Из этой записи можно сделать вывод, что в данном сообщении активированы входы 2 и 9 (то есть in2=1, in9=1), а все остальные входы деактивированы (то есть их значение равно нулю).
11. Теперь найдите сообщение, в котором оборудование было включено. Предположим, что оно содержит параметр I/O=10A/0.
12. Повторите шаги 4-8 для значения 10A.

13. Определите номера битов для данного числа:

Номер121110987654321
Значение000100001010

14. В данном сообщении активированы входы 2, 4 и 9 (то есть in2=1, in4=1 и in9=1).

15. Сравните результаты шагов 10 и 14. Как несложно заметить, они отличаются лишь состоянием параметра in4, то есть в приведенном примере оборудование было подключено ко входу 4.

Использование цифровых входов/выходов

Параметр цифрового входа или выхода можно использовать так же, как и любой другой параметр.

При создании датчиков для цифровых входов/выходов больше всего подходят типы из группы Цифровые, так как они подразумевают только два состояния (Вкл и Выкл).

Уникальным методом использования, который доступен только для цифровых входов, является уведомление с типом Цифровой вход, для которого даже не нужно создавать датчик.

Олег Жарковский,Тренер по Wialon

Некорректный пробег
  • technical_consulting
  • trips

Некорректный пробег может влиять на расчет средней скорости, средний расход топлива на километр, интервалы техобслуживания и, конечно же, на показатель пройденного расстояния. Поэтому очень важно отслеживать и устранять возникшие проблемы как на стороне оборудования, так и на стороне ПО.

Если вы столкнулись с проблемой некорректного определения пробега в отчете, на треке или в сообщениях, то в первую очередь проверьте, какой тип счетчика пробега выбран у вас на вкладке Основное в свойствах объекта:

  • GPS
  • GPS + датчик зажигания
  • Датчик пробега
  • Относительный одометр

Узнав, какой счетчик используется в вашем объекте, выберите соответствующий раздел статьи.

1. GPS

На корректность пробега при использованнии данного типа счетчика может влиять неустойчивая связь со спутниками, сбои в передаче данных, а также использование дополнительных датчиков. Рассмотрим эти варианты подробнее.

a. Выбросы координат и неправильная хронология сообщений

Выбросы координат могут появляться из-за плохой связи со спутниками Глобальной Навигационной Спутниковой Системы (ГНСС). Чтобы определить, что выбросы имели место, перейдите на вкладку Сообщения и выгрузите данные для нужного объекта за проблемный период. На карте вы увидите трек, по которому можно будет определить наличие выбросов: координаты сообщений значительно отстоят от фактического местаположения объекта.


В данном примере явным признаком проблем с определение местоположения объекта является параметр HDOP – он имеет значения >1

Wialon имеет ограничение: не более 1 сообщения должно приходить от объекта за 1 секунду. Если терминал передает более 1 сообщения в 1 секунду, хронология сообщений может нарушится и трек будет выглядеть аналогичным образом. Причина - некорректная расстановка сообщений с позиционными данными (координатами) в базе данных Wialon. В таких случаях, в настройках терминала следует снизить частоту отправки сообщений с данными.

Возможные варианты решения:

  • Использовать Фильтрацию валидности сообщений
  • Изменить настройки Детектора поездок

В примере выше при помощи датчика зажигания в детекторе поездок, удалось избавиться от выбросов, т. к. они фиксируются на интервале без включенного зажигания:



b. Использование датчика пробега

В некоторых случаях счетчик (вкладка Основное в свойствах объекта) работает на основе GPS-координат, но при этом также создан отдельный датчик пробега (вкладка Датчики в свойствах объекта). В отчетах, например, с таблицей Поездки колонка Пробег будет выводить значение по GPS (суммарное расстояние между координатами), но значение колонок Начальный/Конечный пробег будет рассчитано следующими методами:

  • Если значение датчика пробега имеется в первом/последнем сообщении интервала, то система использует эти значения.
 Пояснения

Условимся, что фактически объект проехал 2 км, а сообщения приходили в следующем порядке:

  1. 10 км
  2. -- км
  3. -- км
  4. 15 км

В колонке Пробег получим 2 км (суммарное растояние между координатами без учета датчика пробега), в колонке Начальный пробег получим 10 км (как в сообщении), в колонке Конечный пробег получим 15 км (как в сообщении).

Аналогичный пример, но значение датчика пробега доступно только в последнем сообщении:

  1. -- км
  2. -- км
  3. -- км
  4. 15 км

В колонке Пробег получим 2 км (суммарное растояние между координатами без учета датчика пробега), в колонке Конечный пробег получим 15 км (как в сообщении).

И еще один пример, где значение датчика пробега доступно только в первом сообщении:

  1. 10 км
  2. -- км
  3. -- км
  4. -- км

В колонке Пробег получим 2 км (суммарное растояние между координатами без учета датчика пробега), в колонке Начальный пробег получим 10 км (как в сообщении).

  • Если в первом сообщении интервала нет значения датчика пробега, то система ищет первое доступное сообщение со значением датчика пробега на этом интервале, а потом из него вычитается пробег до начала поездки, рассчитанный по GPS-координатам.
 Пояснения

Условимся, что фактически объект проехал 2 км, а сообщения приходили в следующем порядке:

  1. -- км
  2. -- км
  3. -- км
  4. 15 км

В колонке Пробег получим 2 км (суммарное растояние между координатами без учета датчика пробега), в колонке Начальный пробег получим 15 км - расчитаное по GPS-координатам значение или 15 км - 2 км = 13 км, в колонке Конечный пробег получим 15 км (как в сообщении).

  • Если в последнем сообщении интервала нет значения датчика пробега, то система ищет последнее доступное сообщение со значением пробега на этом интервале, а потом к нему прибавляется пробег до конца поездки, рассчитанный по GPS-координатам.
 Пояснения

Условимся, что фактически объект проехал 2 км, а сообщения приходили в следующем порядке:

  1. 10 км
  2. -- км
  3. -- км
  4. -- км

В колонке Пробег получим 2 км (суммарное растояние между координатами без учета датчика пробега), в колонке Начальный пробег получим 10 км (как в сообщении), в колонке Конечный пробег получим 10 км + расчитаное по GPS-координатам значение или 10 км + 2 км = 12 км.

  • Если в первом и последнем сообщении нет значения датчика пробега, то система ищет первое доступное значение датчика, а потом из него вычетает пробег расчитаный по GPS-координатам чтобы получить начальное значение, а чтобы получить конечное значение наоборот прибавляет к значению датчика пробег расчитаный по GPS-координатам.
 Пояснения

Условимся, что фактически объект проехал 2 км, а сообщения приходили в следующем порядке:

  1. -- км
  2. 10 км
  3. 15 км
  4. -- км

В колонке Пробег получим 2 км (суммарное растояние между координатами без учета датчика пробега), в колонке Начальный пробег получим 10 км - расчитаное по GPS-координатам значение до первого сообщения интервала, в колонке Конечный пробег получим 10 км + расчитаное по GPS-координатам значение до последнего сообщения интервала.

В такой ситуации если из-за каких-то сбоев датчик пробега не работал и присылал 0 км, возможно возникновение отрицательных значений пробега:


В данном примере для объекта создан датчик пробега на основе параметра can_mileage, который отсутствует в сообщениях вплоть до 18.12.2019 16:38:54:


После 16:38 и далее параметр всегда имеет значение 0, а датчик, соответственно, – значение 0 км.

Возможные варианты решения:

  • Удалить датчик пробега и полностью перейти на пробег по GPS-координатам;
  • Устранить проблему на стороне оборудования или переключиться на параметр с корректными значениями.

В примере выше решением стало удаление датчика и переход только на GPS пробег, т. к. значения параметра не считывались с CAN-шины.

2. GPS + датчик зажигания

На корректность пробега при использованнии данного типа счетчика может оказывать влияние неустойчивая связь со спотуниками, сбои в передаче данных, а также использование дополнительных датчиков. Однако существенным отличием от типа GPS и довольно частой причиной проблем в данном типе счетчика будет использование датчика зажигания, который работает некорректно. Рассмотрим этот вариант подробнее.

Некорректное значение датчика зажигания

В качестве счетчика пробега выбрана опция GPS + датчик зажигания. При построении трека (через вкладку Сообщения, Треки или Отчеты) пробег равен 0 км, при этом сам трек на карте виден:



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

В данном примере для объекта не создан датчик с типом Зажигание, поэтому система игнорирует все сообщения и выводит 0 км пробега:


Возможные варианты решения:

  • Переключить счетчик пробега на GPS;
  • Добавить корректно работающий датчик зажигания.


В примере выше объект не присылает параметр, на основе которого можно определить состояние зажигания, потому проблема решена переключением на тип счетчика GPS.

3. Датчик пробега

Показания любых датчиков, в том числе пробега, могут быть подвержены таким внешним факторам, как отключение питания, наводки, неисправности в датчиках, ошибки калибровки и конфигураций датчиков/терминалов. Рассмотрим подробнее несколько примеров ошибок.

a. Сброс значений параметра пробега

Некоторые терминалы перестают передавать показания датчика пробега на короткий интервал времени (например, из-за отключения питания, наводок по цепи питания, иных проблем с оборудованием). В таких случаях накопленный суммарный пробег по объекту может отличаться от последнего доступного значения датчика:





В примере суммарный пробег по счетчику пробега составляет 26943 км, а по датчику пробега – всего 7069 км.

Причина  сброс параметра датчика пробега.


В такой ситуации происходит сброс до 0 км и далее снова рост до 6452 км (в примере такие сбросы повторялись неоднократно).

Возможные варианты решения:

  • Использовать Нижнюю границу в настройках датчика;
  • Использовать Валидацию, если сброс происходит при определенных обстоятельствах и удается выявить зависимость с другими параметрами (датчиками).

В примере выше достаточно применить нижнюю границу (0.01), т. к. сброс происходит произвольно и нет зависимости от других датчиков.





Таким образом посредством нижней границы удалось исключить нулевые значения (сброс до 0 км) и избежать некорректного расчета пробега.

b. Сообщения с одинаковой временной меткой (опция С переполнением включена)

Терминалы могут присылать сообщения слишком часто. Wialon имеет ограничение: не более 1 сообщения должно приходить от объекта за 1 секунду. При получении данных с большей частотой их хронология может быть нарушена и меньшее значение пробега может попасть в базу после сообщения с бо́льшим значением, пример на картинке ниже:


В таких ситуациях происходит переполнение счетчика до моксимально возможного значения  2147483648.

Возможные варианты решения:

  • Отключить опцию С переполнением в настройках датчика (если была активирована).

В примере выше опция С переполнением была включена. Отключив ее, мы получили более корректное значение пробега:


с. Сообщения с одинаковой временной меткой (опция С переполнением выключена)

Сообщения могут приходить с одинаоквой временной меткой, нарушая хронологию, например:

В целом, на картинке выше, пробег выглядит корректным  25.01 км, в отличаи от предыдущего примера, где ошибка была очевидна. Однако, если взять из сообщений начальное значение датчика пробега на интервале   9917.81 км и конечное  9942.44 км, вычесть разницу, то получим пробег  24.63 км.

Разница составляет 0.38 км на относительно небольшом отрезке трека. Погрешность будет расти с увеличением объема данных (количеством поездок). Причина ошибки - это конечно же нарушение хронологии сообщений. Система ожидает, что значение датчика будут расти. В примере видим падение с 9931.03 км до 9930.85 км и последующий рост до 9931.29 км. Происходит повторный расчет пробега между сообщениями зо значением датчика 9930.85 км и 9931.29 км, т.е. добавляются лишние 0.44 км.

Возможные варианты решения:

  • Переключить счетчик пробега на GPS;
  • Устранить проблему на стороне оборудования;
  • Переключить датчик пробега на тип Относительный одометр и применить валидацию.

В примере выше удалось получить более корректные значения пробега с помощью перевода датчика пробега на тип Относительный одометр с добавлением валидации. Датчика относительного одометра основан на параметре в виде выражения: mileage-#mileage. Валидатор основан на параметре в виде выражения: time-#time. Нижняя граница для валидатора  0, a тип валидации  Проверка на неравенство нулю. Счетчик пробега во вкладке Основное переключен на  Относительный одометр.

После применения валидации, пробег составил  24.65 км. Сообщения, в которых временная метка совпадает, исключаются из расчета.

При возникновении вопросов по конкретным практическим случаям вы можете обратиться в техподдержку через почту support@gurtam.com. Обязательно указывайте в вашем письме краткое описание ситуации со скриншотами, точное имя объекта, имя шаблона отчета для проверки, минимальный интервал времени для проверки (например, не месяц, а одни сутки), а также прочие важные детали.

Павел Чеботарёв,Тренер по Wialon

Проблемы при изменении прав доступа на объекты
  • technical_consulting
  • access_rights

Пользователи могут иметь права доступа по отношению к разным элементам: объектам, группам объектов, ресурсам и учетным записям, маршрутам и другим пользователям. В зависимости от имеющих прав пользователь может видеть и предпринимать какие-то действия в отношении определенного элемента.

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

Наблюдаемая проблема и метод ее решения

При повседневной работе права на объект зафиксированы в нужном виде и не меняются. Однако при изменении прав могут возникнуть трудности, или иногда права могут меняться без вашего участия, и в итоге имеющиеся настройки могут отличаться от ожидаемых. В данной статье будут рассмотрены стандартные проблемы такого рода. Выберите один из представленных ниже вариантов в соответствии с тем, какую ситуацию вы наблюдаете.

1. После сокращения прав пользователь все равно имеет более широкие права

Объект может входить в группу, в отношении которой у пользователя также имеется права. В таком случае пользователь будет обладать более широким переченем прав из двух возможных.

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

Объект может входить сразу в несколько групп, и в таком случае рекомендуется проверить права пользователя на все эти группы. Список групп, в которые входит объект, отображается на вкладке Группы в свойствах этого объекта.

2. При снятии всех прав на объект отображается ошибка и изменения не применяются

Наиболее вероятно, данный пользователь является создателем объекта. На данный момент забрать у создателя все права на созданный им элемент невозможно. При попытке сделать это будет отображаться ошибка с текстом «Нельзя забрать права доступа у создателя элемента».

Для исправления ситуации необходимо изменить создателя этого объекта. Для этого можно перенести объект в другую учетную запись. Объект должен находиться в учетной записи пользователя, который непосредствено использует этот объект.

Мы создали видео о применении инструмента Сменить учетную запись из интерфейса управления (CMS):

3. При расширении прав изменения не сохраняются

В Wialon используется следующий принцип иерархии: невозможно дать какому-либо пользователю больше прав на некий элемент, чем имеет создатель этого пользователя на тот же самый элемент. Если вы расширяете список прав, но изменения не сохраняются, это может означать, что у создателя пользователя недостаточно прав на объект.

Для исправления ситуации предоставьте более широкий список прав на объект пользователям, выше по иерархии. После – самому пользователю, которому было необходимо расширить права (то есть пройдите по всей ветке иерархии учетных записей сверху вниз).

Проверить стурктуру сервиса можно с помощью инструмента Иерархия сервиса в интерфейсе управления (CMS).

4. Права меняются, хотя вы не вносите изменений

Для изменения прав доступа к объекту пользователь должен обладать правом Управление доступом к элементу в отношении этого объекта. Доступ к объекту может быть сразу у нескольких пользователей. Соответственно, несколько пользователей могут вносить изменения. Отследить изменения можно с помощью Журнала, который можно просмотреть на вкладке Сообщения или в отчете с помощью одноименной таблицы.

Для исправления ситуации проанализируйте Журнал и отключите возможность менять права доступа для тех пользователей, которые не должны этого делать.

5. Права меняются, хотя никто из пользователей не вносит изменений

Чаще всего такие изменения могут происходить с определенным равным периодом или при определенных условиях. В таком случае причиной является работа Заданий с типом Изменить доступ к объектам или Уведомлений со способом действия Изменить доступ к объектам или Изменить состав групп объектов.

Для исправления проверьте правильность настройки заданий и уведомлений (при необходимости их можно удалить или остановить).

6. Права меняются, хотя пользователи, задания и уведомления не делают этого

В Wialon реализована возможность изменять настройки элементов (в том числе менять права) посредством API-запросов. Такие запросы все равно выполняются от имени конкретного пользователя, при этом вход и выход из системы при помощи API-запроса в некоторое стороннее приложение логируется. Эту информацию можно отследить в свойствах пользователя на вкладке Журнал или в интерфейсе управления (CMS) на вкладке Пользователи в колонке Последний вход.

Для исправления ситуации проанализируйте логику работы стороннего приложения. Если в приложении используется токен пользователя, созданного специально для работы со сторонним приложением, то данному пользователю можно изменить список прав и отключить право Управление доступом к элементу, либо можно изменить флаги его токена. Если в приложении используется токен того же пользователя, что и для входа в интерфейс мониторинга, то нужно пересмотреть логику работы приложения, избавившись от изменения прав пользователей относительно объектов.

Изменения прав на объект логируются в Журнале (на вкладке Сообщения или в отчете с помощью одноименной таблицы). В колонке Хост будет написано имя пользователя, если изменения внесены вручную или через API-запрос, либо «задание» или «уведомление», если изменения внесены с помощью этого функционала.

Записи из Журнала можно удалять. В таком случае информация об изменении прав отображаться не будет. Если вы предполагаете, что столкнулись с такой ситуацией, пожалуйста, свяжитесь с технической поддержкой Wialon по почте support@gurtam.com.

Екатерина Гриб,Инженер отдела технического консалтинга

10
  • 10
  • 25
  • 30
Спасибо за ваш отзыв!