1

Обновление пробега

(07/05/2020 12:29:57 отредактировано Any0ne)

Тема: Обновление пробега

Помогите разобраться. Есть несколько ТС с маяками м66 старлайна. Иногда по can-шине прилетает очень большой пробег. Соответственно у ТС становится данный пробег.
Что сделал:
1) Уведомление о превышении пробега более чем 1000000, с UID ТС, предыдущем значением пробега, новым значением пробега. С отправкой на свой сервер
2) На своём сервере создал php скрипт для обработки данных, который сверял увеличилось ли значение или уменьшилось(чтобы в цикл не загнать), если увеличилось то установить значение пробега предыдущим значением датчика.

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

Внизу по порядку:
1) Данные которые пришли
2) Решение будет ли обновлен счетчик пробега
3) Обновление пробега и ответ на обновление
4)  Запрос всех данных по ТС после обновления

2020.05.07 8:57:42
Request
Array
(
    [name] => 760 ОАМ 196 Рапид
    [sensorname] => 'Пробег CAN'
    [sensor_old] => 8829.00 км
    [sensor_new] => 1048574.00 км
    [uid] => 20656361
)

------------------------

------------------------
2020.05.07 8:57:43
DEBUG
На тс с номером: 760 ОАМ 196 Рапид будет изменено: 104857400 на 8829
------------------------

------------------------
2020.05.07 8:57:43
DEBUG
{"cnm":8829}

------------------------

------------------------
2020.05.07 8:57:43
DEBUG
{"item":{"nm":"760 ОАМ 196 Рапид","cls":2,"id":20656361,"mu":0,"pos":{"t":1588841804,"f":1073741825,"lc":0,"y":44.938035,"x":34.254985,"c":266,"z":426,"s":0,"sc":8},"lmsg":{"t":1588841804,"f":1073741825,"tp":"ud","pos":{"y":44.938035,"x":34.254985,"c":266,"z":426,"s":0,"sc":8},"lc":0,"rt":1588841861,"p":{"glonass":7,"partial_distance":1,"mileage":1048574000,"mileage_type":0,"ing":0,"received":1588841830}},"cfl":1297,"cnm":8829,"cneh":0,"cnkb":0,"cnm_km":8829,"uacl":842656662385},"flags":9217}

Обновление пробега

2

Обновление пробега

Re: Обновление пробега

Добрый день!

Счетчик пробега в системе учитывает все валидные значение,  и разница между ними берется по дельте.
Для вашего объекта получается так :
приходит большое значение пробега : например, 1048574.00 км  , предыдущее значение было - 8812.00 , 1039762 км плюс в счетчик
Далее вы скриптом меняется значение на валидное, но приходит сообщение со значением 8812, а т.к предыдущее значение  1048574, то опять же разница между ними добавляется в счетчик.

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

Либо скрипт на изменение счетчика  выполнять  не сразу тут же на приход значения большого, а например, спустя 1 минуту или даже 20-30 сек, чтобы еще пару валидных значений получить.
Но лучше валидировать сразу в датчике, потому что в отчете учитываются все сообщения с валидными значениями датчика пробега, и тоже будет большой пробег

Diana Cheley
Wialon Hosting Expert
Gurtam
3

Обновление пробега

(12/05/2020 11:03:50 отредактировано anzi1331)

Re: Обновление пробега

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

Если хочешь чтобы мир изменился - стань сам этим изменением.
4

Обновление пробега

Re: Обновление пробега

Спасибо, попробуем добавить задержку в скрипт. Потом уже валидацию значений настроить. Как сделаю отпишусь.

5

Обновление пробега

Re: Обновление пробега

Any0ne пишет:

Спасибо, попробуем добавить задержку в скрипт. Потом уже валидацию значений настроить. Как сделаю отпишусь.

Добрый день!

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

Diana Cheley
Wialon Hosting Expert
Gurtam