Альтернативы SPI из-за EMI

24

В настоящее время я делаю систему, состоящую из пластикового корпуса, который содержит MCU, взаимодействующий с 7 АЦП с использованием SPI 2 МГц по проводам длиной около 5 см.

MCU и АЦП, подключенные через SPI

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

Это может провалиться тестирование EMI? Что я могу сделать по этому поводу?

Я ищу ответы любого типа, в том числе «Используйте другую шину / АЦП», но не включаю ответы, которые включают механические изменения, такие как: «Поместите все АЦП на одну и ту же печатную плату» или «Поместите все это в металлическую коробку». , Меня особенно интересуют альтернативы SPI с низким уровнем электромагнитных помех, включая дифференциальные шины.

Вот некоторая соответствующая информация о приложении. Пожалуйста, дайте мне знать, если вам нужно знать больше вещей:

  • 6 проводов идут на каждую плату АЦП (Power, GND, CS, CLK, MOSI, MISO).
  • АЦП в настоящее время являются MCP3208 (микрочип 8-канальный, 12-битный)
  • Я работаю в отчаянно ограниченном пространстве, поэтому добавление экранирования к проводам на самом деле не вариант.
  • Было бы неплохо использовать некую дифференциальную шину (только одну или две пары), но единственные АЦП с дифференциальной связью, по-видимому, относятся к типу LVDS с несколькими MSPS.
  • CAN, вероятно, слишком медленный, а также довольно громоздкий для такого ограниченного пространства.
  • Частота дискретизации: мне нужно сэмплировать каждый канал с частотой 1 кГц.

Добавлено:

Просто чтобы дать представление о пространственных ограничениях:

Маленькая печатная плата с MCP3202

Здесь вы можете увидеть одну из плат АЦП. Этот на самом деле имеет MCP3202 вместо MCP3208, но он совместим (иш). Это в пакете TSSOP 8. PCB 11 мм х 13 мм. Черный кабель диаметром 2 мм. Как видите, разъема даже нет, а провода припаяны непосредственно к печатной плате, а затем заделаны. Отсутствие разъема связано с ограниченным пространством, а не с пространством на печатной плате.

Rocketmagnet
источник
4
Как экранирование кабелей может считаться непрактичным, но удвоение количества проводов (дифференциальная сигнализация) может считаться практичным?
Timrorr
Извините, мне следовало быть более ясным. Я имел в виду что-то вроде CAN, который является двухпроводным дифференциалом. Очевидно, удвоение количества проводов невозможно. Я отредактировал вопрос.
Ракетный магнит
1
В частности, какой тип тестирования / сертификации вы пытаетесь пройти?
Джоэл Б
1
@JoelB - Извините, я новичок в EMI, поэтому я не совсем уверен. Но в какой-то момент нам придется провести какое-то тестирование EMI. Вероятно, какой-то нормальный / потребительский уровень тестирования EMI, если есть такая вещь.
Ракетный магнит
1
@Rocketmagnet, ооо, не поймите меня неправильно, что вы очень легко делаете антенну. Для этого есть методы проектирования, он углубляется в это, но если у вас в кабеле нет частоты, которую тест на электромагнитные помехи вам устроит, вы должны убедиться, что вы не связываете шум других высоких частот из других мест. вне (что легко, как сказал высокоскоростной цифровой дизайн). Я просто хотел получить лучшее представление о вашей проблеме. Мне очень нравится вопрос, и он уже получил мой +1
Кортук

Ответы:

13

SPI 2 МГц на 5 см кабелей невелик. Я делаю 30 МГц SPI на 10 см кабелях много, проходя FCC класса B и CE эквивалент. Ключ должен убедиться, что у вас есть хороший кабель (контролирующий как можно лучше для области петли), и правильно завершить ваши сигналы.

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

Правильное завершение сигналов будет немного сложным, поскольку у вас нет контролируемого сопротивления на вашем кабеле. Что бы я сделал, это поместил RC-фильтр на печатную плату на обоих концах кабеля. Фильтр RC будет иметь C на стороне кабеля и R на стороне чипа. В драйвере сигнала, я бы начал с R около 75 Ом и C около 1 нФ. В приемнике R будет около 10 Ом, а C все еще 1 нФ. После того, как вы создали прототипы, вы должны попробовать разные значения. По сути, вам нужны более высокие значения для R и C, но не настолько высокие, чтобы устройство перестало работать или уровни сигнала были слишком ослаблены. Края ваших сигналов должны выглядеть очень закругленными, но звонков не должно быть, и тактовые сигналы должны быть хорошими в полосе перехода сигнала (обычно 0,8-2,0 В).

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


источник
Спасибо за Ваш ответ. Да, я уверен, что сопротивление изменяется в нескольких точках при его перемещении от печатной платы к разъему, к кабелю и т. Д. Кроме того, линии CS, CLK и MOSI являются общими для всех АЦП. Это имеет значение?
Ракетный магнит
@Rocketmagnet RC-фильтры, по сути, будут перегружены. Вот почему сигналы будут выглядеть очень округленными. Это будет делать несколько вещей для вас, самое главное, что сопротивление не так критично. Вы должны помешать сигналам CS, CLK и MOSI, чтобы они не распределялись между кабелями. Иногда это невозможно, поэтому вторым (удаленным) лучшим вариантом является использование отдельного оконечного устройства для каждого кабеля, а не общего оконечного устройства.
2

CAN почти наверняка ваш лучший выбор в такого рода приложениях. Это дифференциал, и он на самом деле должен уменьшить количество проводов, идущих к каждой плате. Если вы выбираете семь чипов, восемь каналов на чип, двенадцать бит на канал, это 672 бита данных за время выборки. При выборках 1 кГц, скорости передачи 1 Мбит, это 1000 бит на время выборки. Это не оставляет вам много места для накладных расходов, поэтому вы можете рассмотреть возможность использования микроконтроллера, в который встроены два отдельных контроллера CANbus. Центральный микроконтроллер на обоих, и вы должны иметь много пропускной способности.

С другой стороны, вы можете рассмотреть возможность замены аналого-цифровых преобразователей на микроконтроллеры. dsPIC 30F4013 может быть хорошим выбором там. 13 12-битных A / D каналов плюс шина CAN.

С другой стороны, я думаю, что вы можете конвертировать SPI в / из протоколов дифференциального напряжения, таких как RS-485. Но я не знаю достаточно об этом, чтобы комментировать разумно.

Стивен Коллингс
источник
Спасибо за Ваш ответ. Я рассмотрел CAN, но, в конце концов, я не уверен, что там достаточно места для компонентов. Если бы были крошечные CAN-трансиверы, то это могло бы быть возможно. Самые маленькие, которые я могу найти, кажутся SOIC 8.
Ракетный магнит
2
!! Когда вы говорите, что пространство ограничено, вы имеете в виду это! Вы можете проверить этот ответ: electronics.stackexchange.com/a/30596/7523 По-видимому, вы МОЖЕТЕ обойтись без использования трансивера в этих обстоятельствах. Мне, конечно, было бы интересно узнать, можете ли вы!
Стивен Коллингс
3
Хех. Проверьте имя в ответе, на который вы ссылались.
Ракетный магнит
1
То, что я сказал о себе, недостаточно зная, чтобы комментировать? Да.
Стивен Коллингс