Для чего подключать CAN-шину к системе мониторинга
CAN шина в автомобиле, это та линия связи по которой «мозг» машины получает информацию о всех подключенных умных устройствах. Попробуем настроить учет расхода газа ГЛОНАСС-трекером через CAN шину.
Так почему бы не использовать эти данные, раз уж они уже существуют в электронном виде в системе мониторинга? Разумеется, в зависимости от автомобиля, набор параметров может быть довольно ограничен.
Это вторая статья по подключению дополнительного оборудования к трекеру Локарус в цикле. В первой мы рассказывали про контроль топлива автомобиля с газовым оборудованием.
Статья дополняют друг друга, на Газели мы пошли дальше и кроме ГБО подключили ещё и CAN шину.
Трекер который мы используем в этой статье: Locarus 702x
Программное обеспечение: Locarus Informer
Подключение спутникового трекера и его настройка
Первым делом подключаем ГБО, так как было описано в предыдущей статье. Для полноты картинки напомним настройки подключения.
Нам нужны — напряжение бортовой сети, факт включения газового оборудования, и уровень газа.
Теперь подключаемся к CAN шине. Само подключение простое, тем более что Газель работает по стандарту FMS. Базовый набор параметров на следующей картинке.
Раскидываем имеющиеся параметры по свободным виртуальным входам для того чтобы обработать их в диспетчерской программе.
Галочками отмечены стандартные пакеты данных которые есть в шине конкретного автомобиля. Для Газели у нас есть обороты двигателя, скорость, температура двигателя, круиз-контроль, текущий расход топлива.
Текущий расход топлива, не уровень. Но это то что поможет настроить нас учет расхода газа или бензина ГЛОНАСС-трекером через CAN шину.
Настройка нестандартных пакетов CAN шины для расхода газа
Теперь маленькое отступление — как определяются эти пакеты. Если просто понаставить галочки в конфигураторе — то половина этих данных окажется пустыми. Поэтому перед настройкой с автомобиля снимается «дамп», образец данных которые есть в его CAN шине, которые потом разбираются в офисе специалистами. В любом случае все эти данные это всего-лишь биты и байты в огромном потоке данных который непрерывно передается внутри автомобиля.
Какие-то из этих байтов могут соответствовать стандарту, а какие-то нет. На первой странице настройки трекера перечислены значения которые задаются стандартом FMS. Мы изучили заранее снятый дамп, нашли там значения которые есть именно в этой машине, и передаём только то, что реально есть в шине.
Но при изучении дампа мы увидели ещё одно значение, которое не прописано в стандарте, но тем не менее передается в шине. Было предположение, что это уровень топлива. Предположение не подтвердилось, но для своих коллег и полноты изложения, я покажу как мы его настраивали.
В дампе мы нашли отдельный PGN с десятичным номером 64962 у которого в седьмом байте передаётся какое-то значение, остальные байты заполнены заполнителями #FF. Возможно он связан с уровнем топлива. Для проверки гипотезы настраиваем его на отдельный вход Локаруса и передаем в диспетчерскую программу.
Прибор настроен. Для упрощения экспериментов коллег прикладываем образец настроек трекера. Настройки сделаны для следующих физических входов:
A_IN1: клапан ГБО
A_IN3: уровень газа в баллоне с оптического датчика
Настройка подключения газового оборудования в диспетчерской программе
Переходим к настройке Locarus Informer. Посмотрите сколько данных мы получим в результате подключения всего лишь двух дополнительных проводов!
Для начала пробежимся про теме прошлой статьи, быстренько настроим подключение ГБО.
Напомним что для надежности работы мы подключаем клапан на аналоговый вход, а затем программно преобразуем его в дискретный. Это нужно чтобы было меньше ложных срабатываний. И затем на этот дискретный датчик вешаем контроль работы двигателя, газ или бензин.
Подключаем уровень газа в баллоне с оптического датчика. Подробнее про сами датчики и принцип их работы мы писали в статье «Подключаем уровень газа к ГЛОНАСС». На этой машине установлен оптический, который показывает уровень «ступеньками», дальше мы покажем график который получается.
Не забывайте перевернуть график калибровки, сигнал с датчика идет инвертированный. Делается вписыванием простой калибровки:
0 — 1024
1024 — 0
Вписывается в раздел «Калибровка», в калибровочную таблицу
Ну и разумеется на забываем про бортовое напряжение, которое пригодится для формирования отчетов.
Разумеется уровень напряжения отсечки для каждой машины проверяется индивидуально, не забывайте про это.
Настройка CAN для контроля расхода газа в программе
Переходим к самому интересному. Для начала просто добавляем все имеющиеся входы с данными.
Обращаем внимание что это не скорость с системы мониторинга, а скорость с CAN шины. То есть та скорость которая будет показываться на спидометре. Можно например посмотреть как различается приборная и реальная скорость на 100 км/ч.
На всех автомобилях с CAN есть показания температуры двигателя.
А вот гораздо более интересные данные — показания оборотов двигателя. Можно смотреть как эксплуатируется машина, сколько она работает на холостых оборотах, насколько экономично ездит по трассе.
Обратите внимания что все эти параметры задаются сразу же в настройках датчика и появляются в интерфейсе сразу после его добавления. Ставим значения холостого хода — и получаем время работы на холостых за каждый рейс или день.
Теперь переходим к более интересному и сложному датчику — потребленное топливо. Как оказалось в данном автомобиле нет данных в шине по уровню топлива. Тем не менее мы получаем данных по моментальному расходу. То есть не зная что творится в баке, мы можем посчитать сколько топлива автомобиль реально потребил за нужный отрезок пути. Добавляем датчик расхода топлива.
Разумеется датчик требует первоначальной калибровки, но это не сложно и мы сделаем это в дальнейшем. Суть в том, что по данным получаемым из CAN шины мы можем определить сколько топлива реально поступило в двигатель.
Учет расхода газа и бензина ГЛОНАСС-трекером через CAN шину
Но у нас же автомобиль работает на двух видах топлива, вспомнит тут внимательный читатель! Да, для этого мы и подключали клапан газового оборудования, ведь благодаря ему мы знаем на чём именно сейчас работает автомобиль. И можем подключить другой, чуть более сложный расчёт.
Смотрите что в итоге получается! Благодаря клапану мы знаем на каком виде топлива работает автомобиль, поэтому всего-лишь два хронометража для замера норм, и мы будем знать сколько и какого топлива реально потребил автомобиль. И это достигается простым подключением всего трёх проводов.
Итоги подключения ГЛОНАСС трекера для работы с CAN
Ну и покажем итоговую картинку. Часть входных данных мы получаем с аналоговых входов, часть с CAN.
Маленькое пояснение. Мы не использовали для отчетов или виртуальных датчиков уровень газа с баллона, потому что он идет с ощутимыми дискретными уровнями. Это светлая кривая на графике. Но как вы видите по нему можно определять моменты заправки автомобиля и то, насколько был заправлен бак. С большими погрешностями, но тем не менее это работает. Это единственный недостаток.
Все остальное пригодно для целей автоматического учета. В результате подключения CAN шины к трекеру ГЛОНАСС мы получили большое количество параметров, которые можно использовать для дальнейшей автоматизации и построения интересных отчетов. Учет расхода газа ГЛОНАСС-трекером через CAN шину реален и вполне работает.
Для коллег выкладываем файл шаблона настроек подобного автомобиля для диспетчерской программы Locarus Informer.