Почему в шине CAN в качестве согласующего резистора используется резистор 120 Ом, а не какое-либо другое значение?

Я знаю причины использования согласующих резисторов на шине CAN и насколько это важно.

Но почему 120 Ом? Как появилось это значение? Есть ли какая-то конкретная причина использовать 120 Ом?

В римских цифрах CXX равно 120, поэтому это имеет смысл, A и N не определены в этой схеме, поэтому они заменены на X, который часто используется для обозначения неизвестного (X отмечает место и т. д.).
@PeterJ -- весело =)

Ответы (4)

Вы должны быть знакомы с теорией линий электропередач , чтобы понять более глубокую физику. Тем не менее, вот общий обзор:

Насколько важна терминация для вашей системы, почти исключительно определяется длиной шинных проводов. Здесь длина определяется в терминах длин волн. Если ваша шина короче, чем на одну длину волны больше 10, оконечная нагрузка не имеет значения (практически), поскольку есть достаточно времени, чтобы отражения, вызванные несоответствием импеданса, исчезли.

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

Частота немного интереснее. Для цифровых сигналов (например, в CAN) вас интересует максимальная частота цифрового сигнала. Это хорошо аппроксимируется выражением f,max = 1/(2*Tr), где Tr — время нарастания (определяемое как 30–60 % конечного уровня напряжения, условно).

Почему это 120, это просто функция дизайна, ограниченная физическим размером. Особо не важно, какое значение они выбрали в широком диапазоне (например, они могли выбрать 300 Ом). Однако все устройства в сети должны соответствовать импедансу шины, поэтому после публикации стандарта CAN больше не может быть никаких споров.

Вот ссылка на публикацию (спасибо @MartinThompson).

Более подробное рассмотрение того, что определяет импеданс линии (в данном случае 120 Ом) для параллельных или витых проводов , содержится в ответе на вопрос Custom USB Impedance .

Этот тип шины CAN предназначен для реализации витой парой проводов. Импеданс линии передачи неуказанной витой пары не является точным, но 120 Ом в большинстве случаев будет близко к относительно большим проводам, обычно используемым для CAN.

Резисторы также выполняют другую функцию в CAN. Вы можете думать о CAN как о шине с открытым коллектором, реализованной в виде дифференциальной пары. Всего 60 Ом — это пассивное соединение шины CAN. Когда шина ничем не управляется, две линии находятся под одинаковым напряжением из-за 60 Ом между ними. Чтобы перевести шину в доминирующее состояние, узел раздвигает линии примерно на 900 мВ каждая, что в сумме дает дифференциальный сигнал 1,8 В. Автобус никогда активно не загоняют в рецессивное состояние, просто отпускают. Это означает, что сопротивление между линиями должно быть достаточно низким, чтобы линии возвращались в состояние ожидания за доли битового времени.

Обратите внимание, что фактический стандарт CAN ничего не говорит о физическом уровне, кроме того, что он должен иметь эти доминантное и рецессивное состояния. Например, вы можете реализовать шину CAN в виде односторонней линии с открытым коллектором. Дифференциальная шина, о которой вы думаете, очень часто используется с CAN и воплощена в микросхемах драйверов шины от разных производителей, таких как обычный Microchip MCP2551.

Педантный режим - ISO11898 (который, безусловно , является стандартом CAN :), имеет части 2, 3 и 5, которые описывают физические уровни. часть 1 (как вы говорите) ограничена «доминантным и рецессивным» - так же, как и исходная спецификация Bosch. en.wikipedia.org/wiki/ISO_11898
Кроме того, часть 3 ISO11898 (низкая скорость, отказоустойчивость) указывает, что шина может вернуться к однопроводному режиму в случае обнаружения короткого замыкания на одной из парных линий.

Шина CAN является дифференциальной шиной. Каждая дифференциальная пара проводов представляет собой линию передачи. В основном, согласующий резистор должен соответствовать волновому сопротивлению линии передачи, чтобы избежать отражения. Шина CAN имеет номинальное волновое сопротивление линии 120 Ом. В связи с этим мы используем типовое значение согласующего резистора 120 Ом на каждом конце шины.

ПРЕКРАЩЕНИЕ ДЛЯ МАКАНОВ

Когда вы отправляете простой сигнал по проводу, скажем, выход микроконтроллера изменяется от 0 до 5 В или 3,3 В, по более длинному проводу форма волны будет искажаться. Таким образом, край станет слабее. В результате вам придется подождать, пока все стабилизируется, прежде чем читать бит данных в месте назначения, прежде чем вы сможете начать со следующего бита.

Для высоких скоростей это нежелательно.

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

Один из критериев... как вы уже догадались, окончание в конце автобуса. Геометрия задействованных проводов определяет точное значение согласующих резисторов. Для коаксиальных оконечных резисторов обычно используются сопротивления 50 и 75 Ом. Для CAT5 это официально 100 Ом. Для CAN и RS485 спецификация официально составляет 120 Ом, но если вы не собираетесь использовать скорость 100 Мбит/с+, разница достаточно мала, чтобы вы могли использовать CAT5 для CAN с согласующими резисторами на 120 Ом.

Мне никогда не приходилось проектировать сами кабели. поэтому я не исследовал, что нужно изменить, чтобы получить другое значение согласующего резистора.