Показать сообщение отдельно
Старый 20.01.2015, 12:55   #100 (permalink)
Участник тусовки
 
Регистрация: 05.01.2014
Сообщений: 111
Вы сказали Спасибо: 1
Поблагодарили 62 раз(а) в 20 сообщениях
Сказал(а) Фууу!: 0
Сказали Фууу! 0 раз(а) в 0 сообщениях
Откуда: Земля
По умолчанию

Один из участников любезно предоставил протокол обмена так называемого замедлителя, который применяется в грузовых и автобусах для регулирования крутящего момента на колесах в зависимости от многих факторов. Если он разрешит, то я выложу и сам протокол в дальнейшем. А пока- для конкретного примера этого замедлителя (ZF, насколько я понимаю):
Допустим, нам необходимо насколько возможно протестить замедлитель, протокол обмена по КАН с которым у нас имеется. В протоколе вначале идет описание распиновки разъема замедлителя. Относительно CAN интересны пины 21-24 и 48-51. При этом, для анализатора (допустим, Marathon – стоимость которого на сайте производителя вместе с ПО около 6500 руб. всего-то) нужны пины 22 и 49 (или 23 и 50 – как они обозначены в описании, - «redundant» или «дополнительные», так как скорее всего к ним ничего не подключается и они нужны как раз для подключения подобного анализатору оборудования). Возможно, надо будет подключить и массовый провод (24 или 51) и установить терминатор (резистор на 120 Ом) между (21 или 48 и земля). Можно и «вычислить» шину CAN идущую от разъема этого замедлителя где-то в другом, доступном месте и там к ней подключиться зачистив каждый из двух проводов для подключения. А есть и КАН-крокодилы, которые позволяют подключаться к проводам без гальванического контакта.
Ну, допустим, подключились, и, запустив ПО CANwise на ноуте, выбираем скорость. Тут надо пояснить – имеющийся протокол не описывает скорость обмена, так как он представляет из себя только лишь часть большого описания, касающаяся только замедлителя (это видно из того, что написано, например, «page 19 from 54», то есть, это было описание не только одного конкретного замедлителя, но, возможно всей системы, в рамках которой он работает). Видимо, где-то в общих описаниях и было конкретное значение скоростей обмена. Ну, да не беда – стандартизированных скоростей всего-то с десяток, а с такими системами как двигатель, ходовая и проч. вообще скорее всего скорость 500 кбит/сек. Так что скорость, хоть она и не описана – не проблема. Хорошо, вычислили скорость – т.е., просто установили очередную стандартную из предлагаемого списка и запустили прогу «стартом». Как только со скоростью «угадаем» и связь установится, - сразу в поле Receive появится куча данных. Далее удобнее использовать режим проги Tracer, в котором сообщения не «бегут» а «стоят» на месте, а в них данные меняются.
Теперь непосредственно описание сообщений и данных – в принципе все понятно из описания – кто (какой прибор) и с какой периодичностью посылает данные (например, скорость замедлитель получает во 2-м и 3-м байте сообщения от системы круиз контроля, сам замедлитель шлет в 1-ых четырех битах 1-го байта одного из своих сообщений информацию о том включен он или отключен, если включен, то по какой причине (что инициировало его включение в работу – ABS, ASR, transmission control, acceleration pedal и т.д.).) Всего по этому протоколу обмена с десяток различных сообщений, в которых приводится и управляющая и диагностическая иформация.
Теперь, что можно сделать дополнительно, кроме непосредственно диагностики.
А можно очень просто «откинуть» «подозрительный» прибор, с которым происходит общение по КАН у замедлителя, и вместо него посылать свои данные с помощью той же проги CANwise. Тут, конечно, надо знать что посылать, но процентов 90 описано в самом протоколе, а можно снять логи с заведомо испраного и т.д. – поле деятельности необъятное.
Просто хотел сказать на этом примере для авто, оборудованных CAN – прибор за 100 баксов + протоколы обмена > любого самого крутого дилерского сканера
Alexo вне форума   Ответить с цитированием
Эти 5 пользователя(ей) сказали Спасибо Alexo за сообщение:
aduard (20.02.2020), DavidBejenari (02.09.2018), DmDantonovich (11.09.2018), RS880M (13.07.2017), ruyha (04.07.2017)