Передающая среда и нижние подуровни протокола CAN
Протокол CAN главным образом предназначен для сетей с шинной топологией и электрическими проводами в качестве канала связи (передающей среды). Могут применяться и другие передающие среды, способные поддерживать состояния высокого/низкого уровней, что необходимо для осуществления побитового арбитража.
Международная организация стандартизации определила стандарт ISO 11519-2 для шин CAN со скоростью обмена до 125 Кбит/сек и ISO 11898 для скорости обмена выше 125 Кбит/сек. Эти стандарты различаются только спецификациями нижних подуровней MD1 и РМА физического уровня протокола САК в вопросах подключения к передающей среде (шине).
Подуровни MD1 и РМА иногда называют блоком MAU — medium access unit (блоком доступа к среде передачи данных). На рис. 5.2 показано подключение к шине CAN в соответствии с этими стандартами.
Скоростной канал связи образован двухпроводной линией (рис. 5.2, я), к обоим концам которой подключены характеристические сопротивления для подавления отражений. Это дифференциальная линия с подавлением синфазных помех. За счет низкого характеристического сопротивления линия имеет хорошую помехоустойчивость, особенно если использована витая пара.
Рисунок 5.2 – Подключение к шине CAN
Медленный канал связи также выполнен двухпроводным (рис. 5.2, б). Концы линии через сопротивления R = 2,2 кОм подключены к источникам напряжения различной величины. Преимущество такой линии заключается в некоторой информационной избыточности, т. к. данные, по сути, дублируются и передаются независимо по двум проводам. В случае повреждения одного провода сетевые адаптеры могут быть реконфигурированы для работы в однопроводной линии, помехозащищенность при этом ухудшится. За счет паразитной связи между проводами линия более чувствительна к искажениям и не может быть использована для высокоскоростного режима.
|
|
► Подуровень РМА (подключение к физической среде) определяет характеристики шинных драйверов и приемников.
При этом линии шины CAN могут находиться в одном из двух состояний: доминирующего уровня (dominant) и недоминирующего уровня (recessive). Если один из узлов устанавливает шину в состояние доминирующего уровня, оно будет установлено, независимо от состояний остальных узлов. Эти состояния
Рисунок 5.3 – Уровни напряжений в шине CAN
определяются дифференциальным напряжением между проводниками шины, называемыми CAN_H и CAN_L (рис. 5.3). Величина дифференциального напряжения для состояния доминирующего уровня составляет 1,5...3 В, для состояния недоминирующего уровня – -0,5...+0,05 В.
Характеристики шинных драйверов задаются стандартом ISO 11898, где указаны все электрические спецификации. Например, максимальное число подключаемых к шине узлов не должно превышать 30.
|
|
На рис. 5.4 схематично показано подключение линейного драйвера к скоростной шине.
Когда логический уровень сигнала на входе Тх равен «1», оба транзистора в выходном каскаде закрыты и выход драйвера находится в высокоимпедансном состоянии. Шина находится в состоянии недоминирующего уровня, дифференциальное напряжение примерно равно нулю, напряжение смещения около 2,5 В.
При подаче сигнала «0» на вход Тх оба транзистора отпираются, дифференциальное напряжение становится равным около 2,5 В, шина переходит в состояние доминирующего уровня.
Наличие цепи смещающего напряжения гарантирует смену полярностей сигналов на входах компаратора «К» при переходе шины от одного состояния к другому.
Рисунок 5.4 – Подключение драйвера к шине
Подуровень PLS
На подуровне PLS реализуются двоичное кодирование и синхронизация, определяется время передачи бита.
► Протокол CAN использует двоичное кодирование (NRZ-код), то есть во время передачи бита не может быть никаких переключений уровня, которые могли бы использоваться для синхронизации (рис. 4.26). Это предъявляет высокие требования к стабильности частоты генераторов (используются кварцевые). Приходится вводить разделительные сигналы в последовательности одноименных битов для облегчения синхронизации.
|
|
► Время передачи одного бита схематично представлено на рис. 5.5. В течение этого времени выполняются функции по управлению шиной, такие как синхронизация ЭБУ, компенсация запаздывания в линии, позиционирование момента опроса (стробирование).
Длительность отдельных сегментов в квантах программируется времязадающей логикой адаптеров CAN. Длительность кванта связана с разрешающей способностью подуровня PLS.
Сегмент SYNC_SEG используется для синхронизации различных ЭБУ, подключенных к шине. Изменение уровня сигнала (например, с «0>> на «1») предполагается в этом сегменте. Его длительность всегда равна одному кванту.
Сегмент PROP_SEG служит для компенсации временных задержек при распространении сигнала в линии и прохождении его через адаптеры.
Сегменты PHASE_SEG1 и PHASESEG2 компенсируют ошибки фазы, они могут быть удлинены или укорочены при ресинхронизации.
Момент опроса — точка времени, когда состояние шины интерпретируется как значение соответствующего бита.
|
|
► Синхронизация производится в момент перехода шины из состояния недоминирующего уровня в состояние доминирующего уровня. Этот переход всегда должен совершаться в течение сегмента SYNC_SEG. Для компенсации различных сбоев или задержки в линии используется сокращение длительности сегмента PHASESEG2 по отношению к номинальному значению или увеличение длительности сегмента PHASESEG1. Изменение длительности сегментов программируется в пределах 1...4 квантов, но не более значения PHASE_SEG1.
Рисунок 5.5 – Время передачи бита
Рисунок 5.6 – Синхронизация передачи бита
На рис. 5.6 номинальные значения длительностей сегментов составляют: PROP_SEG — 6 квантов, PHASE_SEG1 и PHASESEG2 по 7 квантов. При нулевой фазовой ошибке (е = 0) фронт сигнала поступает в течение сегмента SYNCSEG без всякой компенсации длительности.
При отрицательной фазовой ошибке (е < 0), при ее накоплении, фронт сигнала может прийти после стробирования. Для предотвращения этого сокращена длительность сегмента PHASE_SEG2 предыдущего бита с 7 до 6 квантов.
При положительной фазовой ошибке (е > 0) фронт сигнала может пройти до момента стробирования при ее накоплении. Для предотвращения этого увеличена длительность сегмента PHASE SEG1 с 7 до 8 квантов.
Дата добавления: 2018-11-24; просмотров: 346; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!