Надежная проводка CAN-шины — это дисциплина физического уровня, регулируемая тремя строгими ограничениями: топологией, длиной ответвления и размещением терминаторов:
Ключевые выводы
- CAN использует только линейную шину (последовательное соединение) — каждый узел подключается к одному магистральному кабелю последовательно, а звездообразные, древовидные или кольцевые топологии запрещены, поскольку отражения от ответвлений искажают выборку битов.
- При 1 Мбит/с длина отдельного ответвления должна быть менее 0,3 м, а общая длина шины — примерно 40 м; оба лимита снижаются по мере падения скорости передачи данных.
- ISO 11898-2 требует установки 120 Ом резистора терминатора на каждом физическом конце шины — всего два терминатора, никогда один и никогда три.
- Измерение ~60 Ом между CAN_H и CAN_L при отключенном питании подтверждает правильное двойное терминирование; ~120 Ом сигнализирует об отсутствующем терминаторе, а ~40 Ом — о лишнем.
- Изготовленные на заказ жгуты CAN для SAE J1939 и CANopen контролируют длину ответвлений на разветвителях разъемов, сохраняя короткие отводы для обеспечения целостности сигнала на скорости 500 кбит/с и выше.
Инженерное эмпирическое правило: установите ровно два 120 Ом терминатора на двух самых дальних концах магистрали, держите каждое ответвление менее 0,3 м при 1 Мбит/с и удлиняйте магистраль для достижения узла, а не ответвляйтесь от нее.
Почему CAN допускает только линейную топологию «последовательного соединения»
CAN — это дифференциальная многоточечная шина, определенная стандартом ISO 11898-2 как единая линейная магистраль. Каждый узел подключается к этой магистрали через короткое ответвление (drop), а не через собственную ветвь. Шина полагается на то, что каждый трансивер получает чистую дифференциальную форму сигнала в пределах одного битового времени, в том числе во время неразрушающей арбитрации, когда доминирующие и рецессивные состояния должны установиться по всей длине кабеля.
Звездообразные, древовидные и кольцевые топологии нарушают это. Каждое соединение является неоднородностью импеданса, которая запускает отражения обратно по магистрали, и эти отражения достигают точек выборки в виде перерегулирования, звона или ложных фронтов. Поэтому производственный сегмент CAN строится как единый изготовленный на заказ жгут с короткими, контролируемыми ответвлениями к каждому разъему узла, а не как концентратор с расходящимися лучами. Когда звезда неизбежна, требуется активный CAN-повторитель или концентратор для повторного терминирования каждого сегмента.
Ограничения длины ответвлений и скорость передачи данных
Заглушка (stub) — это незавершенный участок кабеля между магистралью и узлом. Поскольку номинальное волновое сопротивление кабеля 120 Ω прерывается на конце открытой заглушки, заглушка ведет себя как неоднородность линии передачи: часть сигнала отражается, возвращается к магистрали и накладывается на рабочий сигнал. Когда время прохождения сигнала туда и обратно по заглушке приближается к значительной доле времени нарастания сигнала, это отражение попадает в окно выборки и искажает бит. Чем выше скорость передачи данных, тем короче время бита и тем короче допустимая длина заглушки. При скорости 1 Мбит/с предельное значение составляет примерно 0,3 м на заглушку, при этом также ограничивается суммарная длина заглушек по всему интерфейсу. Причины выбора значения 120 Ом и его отличия от кабеля Ethernet 100 Ом рассматриваются в нашем руководстве по характеристическому сопротивлению кабеля CAN шины. Таблица ниже обобщает рекомендации ISO 11898-2 / CiA для распространенных скоростей передачи данных.
| Скорость передачи данных | Макс. длина шины (типичная) | Макс. длина отдельной заглушки | Макс. суммарная длина заглушек |
|---|---|---|---|
| 1 Мбит/с | 40 м | 0,3 м | ~0,6 м |
| 500 кбит/с | 100 м | 0,6 м | ~1,5 м |
| 250 кбит/с | 250 м | 1,0 м | ~3 м |
| 125 кбит/с | 500 м | 1,5 м | ~6 м |
| 50 кбит/с | 1 000 м | 3 м | ~12 м |
Значения длины шины ограничены временем распространения сигнала и хорошо установлены; допустимые значения для заглушек при более низких скоростях являются типичными для отрасли и представляют собой масштабирование, а не фиксированные стандартные значения, поэтому рассматривайте их как предельные значения проектирования и при разработке с учетом ЭМС оставайтесь в пределах этих значений.
Need a CAN Bus Harness Built to Spec?
Размещение терминаторов — Два резистора по 120 Ом, не более
Стандарт ISO 11898-2 предписывает установку терминатора сопротивлением 120 Ом на каждом физическом конце магистрали для согласования волнового сопротивления кабеля и поглощения сигнала, чтобы избежать отражений. Два резистора по 120 Ом, соединенные параллельно, создают сопротивление 60 Ом для шины, поэтому при отключенном питании правильно терминированный сегмент показывает сопротивление примерно 60 Ом между CAN_H и CAN_L. Показание около 120 Ом означает отсутствие одного терминатора; показание около 40 Ом означает, что на шину добавлен третий резистор.
Существует две распространенные схемы. Стандартное терминирование предполагает установку одного резистора 120 Ом на каждом конце. Раздельное терминирование делит каждый терминатор на два последовательно соединенных резистора по 60 Ом с конденсатором — обычно 4,7 нФ — на землю в средней точке, что подавляет синфазные помехи и снижает излучение на длинных промышленных линиях.
| Схема терминирования | Конфигурация | Когда использовать | Поведение синфазного сигнала |
|---|---|---|---|
| Стандартное | Один резистор 120 Ом на каждом конце шины | Автомобильная промышленность и короткие промышленные линии | Отсутствие фильтрации синфазного сигнала |
| Раздельное | Два резистора по 60 Ом последовательно на каждом конце, 4,7 нФ на землю в средней точке | Длинные линии и узлы, чувствительные к ЭМС | Фильтрует синфазные помехи, снижает излучение |
Практика подключения CAN: автомобильная, тяжелая техника и промышленность
В легковых автомобилях трансмиссия и диагностические сети OBD-II используют CAN со скоростью 500 кбит/с по витой паре, а вся сеть ЭБУ построена как последовательно соединенная автомобильная жгутовая проводка с терминаторами, интегрированными в два конечных модуля. Стандарт SAE J1939 регулирует сети тяжелой и коммерческой техники, исторически со скоростью 250 кбит/с и 500 кбит/с согласно J1939-14.
Внедорожная и сельскохозяйственная техника предъявляет дополнительные требования к герметизации, поэтому магистрали J1939 обычно заканчиваются разъемами Deutsch DT и DTM, рассчитанными на вибрацию и проникновение влаги; герметичный жгут проводов Deutsch поддерживает непрерывность магистрали, отводя короткие ответвления к каждому контроллеру.
На заводе CANopen (согласно CiA 301) и DeviceNet используют один и тот же физический уровень через 5-контактные разъемы M12 или DB9 согласно назначениям контактов CiA 303, часто в кабелях для непрерывного гибкого использования в цепях перемещения. Промышленный жгут проводов, рассчитанный на цепи перемещения, должен обеспечивать стабильность ответвлений в изгибаемой секции, где длинное или смещающееся ответвление ухудшит целостность сигнала быстрее, чем статическая установка.
Частые вопросы о подключении CAN-шины
Какова максимальная длина ответвления для CAN на скорости 500 кбит/с?
При скорости 500 кбит/с длина каждого незавершенного ответвления должна быть не более примерно 0,6 м, а общая длина ответвлений — не более примерно 1,5 м. Это проектные пределы, основанные на длительности бита и времени нарастания сигнала, а не жесткие стандартные ограничения, поэтому на зашумленных или длинных шинах короче всегда безопаснее.
Можно ли разместить согласующий резистор CAN в середине шины?
Нет — два согласующих резистора по 120 Ом должны располагаться на двух физических концах магистрали, а не посередине. Согласующий резистор в середине шины разделяет кабель на два незавершенных сегмента, открытые концы которых отражают сигналы, и добавляет третье параллельное сопротивление, которое снижает импеданс шины ниже согласованного значения.
Что произойдет, если на шине CAN будет три согласующих резистора?
Три параллельных резистора по 120 Ом снижают эффективный импеданс шины примерно до 40 Ом, что перегружает трансиверы и ослабляет разностное напряжение. Шина может работать на низких скоростях передачи данных, но будет показывать увеличение количества ошибок по мере увеличения скорости или температуры.
Поддерживает ли CAN топологию «звезда» или разветвленную топологию?
CAN специфицирован только для линейной топологии «цепочка»; нативные топологии «звезда» и «кольцо» не допускаются. Топология «звезда» возможна только через активный CAN-хаб или повторитель, который пересогласовывает и переизлучает каждый сегмент как независимый согласованный сегмент.
Как заказать изготовление заказного CAN-жгута с контролируемой длиной ответвлений?
Заказной CAN-жгут контролирует длину ответвлений на разветвителях разъемов и интегрирует два согласующих резистора по 120 Ом в конечные узлы или конечные разъемы. Укажите скорость передачи данных, общую длину шины, количество узлов и расстояние между ними, семейство разъемов (Deutsch, M12 или DB9) и требуется ли раздельное согласование, и сборка может быть проверена на соответствие бюджету длины ответвлений и общей длины перед производством.
Надежность CAN определяется жгутом, а не прошивкой: одна линейная магистраль, ответвления, удерживаемые в пределах допустимой длины для скорости передачи данных, и ровно два согласующих резистора по 120 Ом на физических концах. Правильно укажите эти три параметра, и шина будет устойчива к шуму, вибрации и расстоянию; допустите ошибку в любом из них, и сбои проявятся как прерывистые, трудноотслеживаемые битовые ошибки при нагрузке.