С чего начать работу с CAN Сканером? Как находить, извлекать и расшифровывать данные из CAN-шины? Мы собрали 9 полезных советов для тех, кто только осваивает инструмент CAN Сканер и хочет узнать, какие есть лайфхаки при работе с ним.
С чего начать работу с CAN Сканером? Как находить, извлекать и расшифровывать данные из CAN-шины? Мы собрали 9 полезных советов для тех, кто только осваивает инструмент CAN Сканер и хочет узнать, какие есть лайфхаки при работе с ним.
Начните освоение инструмента с поиска простых параметров, таких как данные о поворотниках, положении руля и дверей. Чем элементарнее процесс, в котором задействован тот или иной агрегат, тем проще повлиять на изменение его показаний в системе. А это значит, что вы быстрее сможете идентифицировать нужный показатель среди множества других.
По CAN-шине передаётся более двух тысяч различных сообщений со скоростью до 1 Мбит в секунду. Как найти нужные данные среди такого объёма информации?
Данные об оборотах двигателя, положении педали газа и показатели с датчиков ABS чаще всего отображаются в начале списка параметров, так как они являются основополагающими в работе трансмиссии и систем безопасности. В то время, как информация о стеклоочистителях или крышке багажника не является приоритетной для корректной работы основных систем. Поэтому она отображается в нижних строчках списка параметров.
То есть чем важнее элемент, показания с которого вы пытаетесь найти, тем выше в списке он расположен. Физически влияйте на узел или агрегат и ищите изменения показателей в строчках, соответствующих его важности.
Как увидеть изменяющиеся параметры онлайн и сопоставить показатели секунда в секунду? Выберите более длинный период подсветки показателей, используя бегунок в правом верхнем углу.
По умолчанию он выставлен на моментальное обновление данных. Однако, если вы знаете, что узел, на который вы воздействуете, может менять показания намного реже, то выставьте более длинный период, к примеру 5 или 7 секунд.
Дождитесь, пока все показания станут серыми и начинайте направленное действие на искомый показатель. С высокой вероятностью вы сможете быстро найти изменения среди остальных. Это поможет вам отсеять ненужные показатели и сконцентрироваться на определении необходимого.
К примеру, показания об оборотах двигателя меняются ежесекундно, в отличие от данных об уровне топлива, которые в состоянии покоя почти всегда одинаковые. Поэтому, глядя на список строк идентификаторов, вы вероятнее увидите изменения оборотов, нежели уровень топлива. Поэтому увеличивайте время подсветки и начинайте влиять на показания искомого узла.
В процессе определения идентификаторов вы можете отделить или отсеять те, строки идентификатора, которые содержат ненужную для вас информацию. Просто нажмите на иконку глаза, и эта строка улетит в низ списка. Вы можете вернуть её на место в любой момент повторным нажатием на иконку перечеркнутого глаза.
Бывает и так, что в строке одного идентификатора может быть зашита информация о нескольких элементах. Например, информация о ближнем, дальнем свете или габаритах расположена в соседних байтах.
Далее, если вам нужно переслать или скопировать эти данные, то присвойте тэг этому идентификатору. Для этого нужно скопировать строку идентификатора и разнести нужные байты по разным тэгам. Просто так удобнее.
Представление данных в CAN сканере идёт в шестнадцатеричной системе. Однако при обработке более одного байта возникает проблема чтения данных в разных форматах: от старшего к младшему и наоборот. В CAN сканере есть возможность выбора направления чтения данных до записи в тэг и отправки на сервер. Достаточно в конце строки, после выделения нужных байт, указать направление чтения, а далее указать тэг, в который будут записываться данные.
Если не хватает времени найти все данные на месте, то можно включить запись лога, влиять на показатели, сохранить лог для дальнейшего воспроизведения бесконечное количество раз. Запись лога лучше начинать до начала воздействия на агрегаты автомобиля чтобы в логе отобразился момент начала и конца воздействия, а не кусок лога, вырванный из контекста. А чтобы не запутаться в данных используйте цветовые зоны, о которых мы рассказываем в следующем пункте.
Используйте цветовые маркеры для подкрашивания периода записи лога для поиска в нём нужного идентификатора. К примеру, в записи лога желтым цветом выделите период, когда вы меняли обороты двигателя, красным – когда нажимали на педаль тормоза, зелёным – открывали или закрывали ворота прицепа.
Это поможет при дальнейшей расшифровке. Вам не придётся «искать иголку в стоге сена», а точнее искать один байт среди сотен других. Подкрашенный период позволит сузить масштаб поиска до нескольких десятков байтов.
При записи CAN лога бывает нужно остановить запись, чтобы проверить датчики, перенастроить терминал или внести изменения в показатель (долить топливо или приспустить шины). Для этого вы можете использовать паузы записи. Однако, имейте в виду, что при последующей расшифровке лога вы можете обнаружить пробелы, т.е. пропуски в записи, в которые могли попасть необходимые вам данные.
К примеру, есть показатель, который меняется раз в 7 секунд, а вы поставили паузу на шестой секунде. Значит, что этот показатель не был записан, его потеряли.
Паузы в записи могут допустить потерю нужных данных. При воспроизведении так же будет выдерживаться указанная пауза и поиск может быть осложнен. Поэтому используйте паузы при записи как можно реже. Лучше полный и большой записанный лог, нежели короткий и бесполезный лог.
Мы надеемся, что эти советы помогут вам использовать весь потенциал CAN Сканера и создать комплексное решение для задач разной сложности.
Однако, если ваш проект требует более глубоких знаний, то напоминаем, что изучить возможности CAN Сканера можно на очном практическом курсе GS Skills, который проводится очно в офисе Galileosky каждый месяц.