Проектирование схем CAN-шины: Руководство по разводке печатных плат CAN-шины

Davide Bortolami
|  Создано: 3 Октября, 2020  |  Обновлено: 15 Марта, 2024
Руководящие принципы размещения компонентов на печатной плате для CAN-шины

В узле CAN-шины есть три основных компонента:

  1. Микропроцессор
  2. Контроллер CAN-шины
  3. Трансивер CAN-шины

Контроллер CAN-шины реализует все низкоуровневые функции сетевого протокола ISO 11898–1, в то время как трансивер обеспечивает связь с физическим уровнем. Для разных физических уровней требуются разные трансиверы, например, для высокоскоростной CAN, низкоскоростной отказоустойчивой CAN или высокоскоростной CAN с переменной скоростью передачи данных.

В типичной реализации контроллер CAN-шины и микропроцессор объединяются в микроконтроллер с поддержкой CAN. На рынке доступны внешние контроллеры CAN-шины с интерфейсом SPI, в основном производства Microchip, но они часто могут добавлять ненужные затраты и сложность.

В этой статье мы рассмотрим проектирование схемы от трансивера до разъема CAN-шины. Пришло время засучить рукава и спроектировать нашу схему CAN-шины!

Шаг первый - Выбор правильного интегрального схемы

Все трансиверы CAN-шины работают похожим образом, поскольку они расположены между микроконтроллером (или FPGA), реализующим контроллер CAN-шины, и самой CAN-шиной. Тем не менее, есть несколько различий, которые вам следует тщательно рассмотреть.

Быстрый поиск в соответствующей категории Octopart показывает, что ведущими производителями приемопередатчиков CAN-шины являются, в порядке убывания по количеству предлагаемых ИС, NXP Semiconductors, Microchip, Texas Instruments, Maxim Integrated, Analog Devices и ST Microelectronics.

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

Защита от ЭСР

Первые приемопередатчики CAN-шины на рынке имели очень мало защиты от событий ЭСР (электростатический разряд). Для защиты всех входов/выходов требовалось использование внешних компонентов.

К счастью, сейчас это уже не так. Вот несколько случайных ИС и их устойчивость к ЭСР (модель человеческого тела) на штырьках шины:

Номер детали  

Производитель

Устойчивость к ЭСР HBM

L9616

ST Microelectronics

6кВ

IFX1050G

Infineon

6кВ

TJA1051

NXP Semiconductor

8кВ

LTC2875

Linear Technology

25кВ

MAX14883E

Maxim Integrated

22кВ

 

Более высокая устойчивость к ЭСР может позволить вам сэкономить на внешней защите, но вы должны знать, что несколько дополнительных центов, потраченных на качественные диоды TVS, могут значительно повысить надежность.

Если ваше приложение ограничено по пространству и вам не нужно справляться с большим количеством ЭСР, то все-в-одном - это то, что нужно. В моем случае я выбрал внешний TVS и более доступный трансивер.

Рабочее напряжение

Большинство трансиверов на рынке работают на 5В, но также чрезвычайно популярны ИС, разработанные для 3,3В. Более низкие напряжения питания невозможны без использования преобразователей постоянного тока в постоянный. Некоторые ИС, такие как MAX14883E от Maxim Integrated, включают в себя вход питания логического уровня, позволяющий обеспечить совместимость с устройствами на 1,8В независимо от напряжения питания трансивера.

Simplified Block Diagram
Рисунок 1. Упрощенная блок-схема MAX14883E, предоставлено Maxim Integrated

В моем случае мой МК работает на 3,3В, поэтому я также выберу это напряжение для трансиверов CAN-шины.

Скорость

Все трансиверы CAN-шины высокой скорости могут работать до 1Мбит/с в небольших сетях. Трансиверы CAN-FD могут работать на скорости до 5Мбит/с, но многие из них ограничены более низкими скоростями, такими как 2Мбит/с.

Конечная скорость передачи данных системы будет ограничена ёмкостью шины, распределением идентификаторов CAN-шины и типом передаваемых кадров CAN. В худшем случае обычно эффективная скорость передачи составляет одну треть от максимальной.

Изоляция

Изолированный приёмопередатчик CAN-шины может потребоваться либо для выполнения требований безопасности. Например, введение гальванической изоляции может защитить низковольтную часть ваших схем в случае, если шина окажется под воздействием опасных напряжений. Та же изоляция также может улучшить коммуникацию, разрывая земляные петли и позволяя более значительные различия в потенциале земли между узлами.

Конечно, изолированные приёмопередатчики CAN-шины потребуют аналогично изолированного источника питания.

Функции экономии энергии

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

Вход выбора режима иногда также служит для управления наклоном сигнала, когда он подтягивается вверх или вниз через резистор минимум в несколько кОм. Снижение наклона сигнала, хотя это и может ограничить полосу пропускания, позволяет приёмопередатчику ограничить количество производимых электромагнитных помех.

Диапазон напряжения шины и общего режима

Все приемопередатчики, соответствующие стандарту ISO 11898–2, должны выдерживать постоянные напряжения на CANH и CANL в диапазоне от -3В до +32В относительно земли без поломки, выдерживать переходные процессы от -150В до 100В и работать при напряжении общего режима шины между -2В и +7В.

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

Вот несколько примеров:

Номер детали

Производитель

Постоянное напряжение на CANH и CANL

L9616

ST Microelectronics

-5В до +36В

IFX1050G

Infineon

-40В до +40В

TJA1051

NXP Semiconductor

-58В до +58В

LTC2875

Linear Technology

+60В до +60В

MAX14883E

Maxim Integrated

+63В до +63В


Напряжения выше 50В теперь стандартны, поскольку многие транспортные средства используют гибридные силовые установки, работающие на 48В, и приемопередатчик должен выдерживать короткое замыкание шины на более высоковольтную шину питания системы.

Входное сопротивление

Нет строгих правил относительно того, сколько узлов можно разместить в сети, но одним из наиболее критических параметров будет входное сопротивление между CANH и CANL на вашем приемопередатчике.

Высокое входное сопротивление будет оказывать незначительное влияние на шину и позволит подключить большее количество узлов.

Умная защита

Некоторые приемопередатчики реализуют обширные функции защиты, такие как:

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

Автобод и режим только прослушивания

Большинство приемопередатчиков CAN-шины включают режим только прослушивания, который передает сигнал TXD на RXD, не управляя при этом шиной. Эта функция часто используется для автоматического определения скорости передачи данных шины.

Мой выбор

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

Используя панель "Поиск по номеру производителя", я сразу нашел модели компонентов, включая печатную плату и 3D, и разместил их на схеме. Модель была автоматически загружена из облачных библиотек Altium 365™.

Manufacturer Part Search panel
Рисунок 2. Панель поиска производственных компонентов в Altium Designer.

Шаг второй - Дополнительные пассивные компоненты

Фильтрация

Не нужно говорить, что нам понадобятся локальные конденсаторы обхода, верно?

Кроме того, несколько дополнительных конденсаторов малых номиналов, обычно от 40 до 100 пФ, на линиях CANH и CANL, подключенных к земле, могут помочь поглотить энергию ЭСР и улучшить устойчивость к ЭМИ. Как всегда, с увеличением емкости шины снижается скорость шины, увеличивается нагрузка на выходную стадию передатчика и увеличивается потребление энергии.

Терминирование

CAN-шину следует терминировать на каждом конце резистором на 120 Ом. Конечно, мы могли бы правильно рассчитать мощность (стандарт 1/4 Вт, 1/2 Вт, если мы параноики), установить наш милый маленький резистор и закончить на этом. Но почему делать все просто?

Более сложная техника, принятая почти во всех проверенных промышленных платах CAN-шины, которые я видел до сих пор, - это разделенное завершение.

При разделенном завершении используются два резистора по 60 Ом, соединенных последовательно, в сумме дающих 120 Ом. Электрический узел между двумя резисторами подключается к земле через конденсатор, обычно на 4.7нФ.

Значение конденсатора было рассчитано для получения частоты среза -3дБ на основной частоте сети.

В моем случае сеть должна иметь скорость передачи данных 1мбит/с. Исходя из худшего сценария, когда сеть передает последовательность чередующихся битов (01010101), сигнал будет квадратной волной частотой 500кГц, или равной половине скорости передачи данных.

Зная сопротивление в 60 Ом, мы можем таким образом рассчитать конденсатор.

Если нам нужно приблизительно определить значение нашего конденсатора, немного меньшее значение будет меньше мешать нашему ценному сигналу. Следовательно, 4.7нФ, что является наиболее широко принятым значением.

Если вам нужна библиотека пассивных компонентов, я всем сердцем рекомендую Celestial Library от Марка Харриса. Она бесплатная, обширная и тщательно отобранная.

Диоды TVS

Если ваша система не подвержена сильным электростатическим разрядам (ESD), встроенной защиты в микросхеме приемопередатчика может быть вполне достаточно.

Диоды TVS (Transient Voltage Suppressor) являются популярным выбором из-за их низкой эквивалентной параллельной емкости.

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

На рынке доступно несколько диодов TVS, специально разработанных для CAN-шины, например, NUP2105L от ON Semiconductor, который я решил использовать в этом проекте.

Что касается приемопередатчика, я разместил модель одним кликом из библиотек Altium 365, используя панель поиска производителей, без необходимости рисовать символ схемы и посадочное место.

Placement of the NUP2105L TVS diode using the Manufacturer Part Search panel
Рисунок 3. Размещение NUP2105L TVS diode using the Manufacturer Part Search panel.

Шаг третий - Разработка печатной платы

Держите все компактно (В отличие от этой статьи)

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

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

Естественно, невозможно уместить все в непосредственной близости к разъему, поэтому мы должны определить приоритеты. Общее правило - размещать компонент, который должен справляться с «худшим» источником ЭМИ в первую очередь.

В нашем случае диоды TVS должны справляться с событиями высокой скорости и высокого тока. Поскольку быстрые импульсы богаты компонентами высокой частоты, если не контролировать их проникновение на наши платы, они будут связываться с каждым доступным проводником и нарушать работу.

Поэтому TVS устанавливается первым.

Если бы у нас не было терминационных резисторов посередине, общий дроссель помех установили бы на втором месте.

Example routing
Рисунок 4. Пример трассировки.

На нашей примерной печатной плате все еще есть место для улучшения. Диод TVS можно было бы повернуть на 180 градусов, чтобы еще больше уменьшить площадь петли ЭСР. Конденсаторы C5 и C6 также можно было бы повернуть на 180 градусов и немного сдвинуть вправо.

Используйте плоскости

В каждом руководстве по разводке печатных плат написано что-то вроде "земляные плоскости это" или "земляные плоскости то", и если вы хотите держать электромагнитные помехи подальше от уязвимых мест ваших плат, от этого не уйти.

Под любым сигналом, который вы заземляете, должна быть земляная плоскость, чтобы путь с наименьшим импедансом был как можно короче. Ваши диоды TVS должны разряжать импульсы непосредственно на земляную плоскость, соединенную с экраном кабеля (если таковой имеется) через соединение с низкой индуктивностью.

Используйте техники виас с низким импедансом

Не имеет большого смысла тратить все наши кровно заработанные деньги на конденсаторы, если их эффект будет нивелирован индуктивностью земляных дорожек.

Examples of low-inductance and high-inductance via design. In red the return path
Рисунок 5. Примеры дизайна переходных отверстий с низкой и высокой индуктивностью. Красным обозначен путь возврата.

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

Документацию по свойствам виас в Altium Designer можно найти здесь.

Detail view of low-inductance via design
Рисунок 6. Детализированный вид дизайна переходного отверстия с низкой индуктивностью.

Шаг пятый - Поделиться (Чистосердечное торговое предложение)

Допустим, мы теперь потратили часы на чтение статей, написанных сомнительными личностями, изучение трансиверов, тестирование и подтверждение нашей идеальной подсхемы CAN-шины. Что теперь?

Первый шаг - это проектирование вашей схемы в одном схематическом документе, используя порты для входов и выходов, аналогично тому, как вы бы делали это для иерархического проектирования.

Complete circuit with input and output ports
Рисунок 7. Полная схема с входными и выходными портами.

Используя панель обозревателя, создайте новую папку «Управляемые схематические листы».

Add folder window inside the Explorer panel
Рисунок 8. Окно добавления папки в панели Explorer.

После создания вашей папки, все пользователи в вашей организации получат к ней доступ, и вы можете приступить к загрузке схематического листа.

Explorer panel with newly added managed schematic sheet
Рисунок 9. Панель Explorer с недавно добавленным управляемым схематическим листом.

Теперь вы можете разместить ваш управляемый схематический лист в любом проекте.

Place managed schematic sheet command
Рисунок 10. Команда размещения управляемого схематического листа.

Ваш новый управляемый схематический лист будет отличаться зеленым символом «повторного использования».

Managed schematic sheet placed on a SchDoc
Рисунок 11. Managed schematic sheet placed on a SchDoc.

Если вы хотите знать, почему все синее вместо желтого и красного, проверьте мою предыдущую статью о стилизации дизайна.

Советы и хитрости

Добавьте дополнительное завершение для ответвлений

Необязательное «слабое» завершение, например, 1.3 кОм, может помочь улучшить устойчивость к ЭМИ узлов с длинным расстоянием ответвления. Однако то же сопротивление способствует нагрузке на сеть, сокращая количество узлов, уменьшая окончательное номинальное сопротивление шины и снижая максимальную скорость.

Больше - это лучше. Или нет?

Если вам не ограничены средства и защита входов для вас превыше всего, стоит рассмотреть добавление второго уровня защиты:

MOV (варистор на основе оксида металла) или GDT (газоразрядная трубка), чтобы "поглотить" большее количество энергии, чем может справиться TVS.
Некоторое устройство ограничения тока между MOV/GDT и приемопередатчиком, такое как резистор с высоким импульсным сопротивлением, варистор или TBU® (особый полупроводниковый варистор, продаваемый компанией Bourns).

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

Дроссели общего режима замечательны, но опасны

Стандартные дроссели - самый распространенный тип фильтра, используемый на CAN-шине, и они отлично работают, но у них есть некоторые недостатки, которые вам следует учитывать.

Дроссели общего режима могут создавать резонансы с паразитной емкостью шины CAN-bus, что приводит к увеличению шума в нескольких конкретных частотных диапазонах. Этот эффект может сделать ЭМП характеристики устройств CAN-bus непредсказуемыми, поскольку индуктивность в дросселях общего режима редко указывается точно, а паразитная емкость может сильно варьироваться в зависимости от длины кабеля. Если используется незащищенный кабель, емкость может варьироваться в зависимости от близости кабеля к заземленным металлическим поверхностям.

Как мы все знаем, дроссели общего режима ведут себя как индуктивности в общем режиме. Ну да. Некоторые условия неисправности, такие как короткое замыкание на питание или землю, могут вызвать высокие переходные токи общего режима. В некоторых случаях перенапряжение, создаваемое индуктивностью дросселя общего режима, может повредить передатчики CAN-bus. Эти перенапряжения могут быть довольно неприятными для диагностики, поскольку они создаются после защиты от перенапряжения, которая обычно размещается на краю платы.

Третий недостаток дросселей… они могут быть дорогими. Высокоскоростные дифференциальные сигналы требуют очень низкой утечки тока.

Некоторые производители интегральных схем, в частности Texas Instruments, продвигают изолированные и высокоустойчивые к ЭМП устройства для сетей CAN-bus без дросселей.

Мне они очень нравятся, поэтому я решил выбрать дроссель общего режима, специально разработанный для приложений CAN-шины.

Заключение

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

С Altium Concord Pro вы можете без проблем делиться своими схематическими листами внутри организации, что позволяет повторно использовать дизайн и минимизировать инженерные усилия для запуска новых продуктов.

Остались вопросы? Звоните эксперту из Altium.

Об авторе

Об авторе

Дэвид Бортолами (David Bortolami) — инженер-электронщик с обширными знаниями в области разработки и конструирования печатных плат. В настоящее время он возглавляет Fermium — небольшое британское предприятие, которое производит одни из самых передовых в мире научных средств для обучения и исследований.

«Каждый продукт можно сделать вдвое лучше за половину стоимости. Для этого нужно глубоко погрузиться в то, для чего он нужен, и отмести остальное».

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

Вы можете связаться с Дэвидом напрямую по адресу: d@fermium.ltd.uk

Связанные ресурсы

Связанная техническая документация

Вернуться на главную
Thank you, you are now subscribed to updates.