Alternatywy dla SPI z powodu EMI

24

Obecnie tworzę system składający się z plastikowej obudowy, która zawiera MCU rozmawiające z 7 ADC za pomocą SPI 2MHz na drutach o długości około 5 cm.

MCU i ADC połączone przez SPI

Problemem jest to, że martwię się o EMI. Wszystko, co przeczytałem, sugeruje, że każdy sygnał cyfrowy, który nie jest bezpiecznie na płytce drukowanej w uziemionej metalowej obudowie, będzie promieniował zbyt mocno, aby przejść testy EMI. Myślę, że dotyczy to również I2C.

Czy to prawdopodobnie nie powiedzie się w testach EMI? Co mogę z tym zrobić?

Szukam wszelkiego rodzaju odpowiedzi, w tym „Użyj innej magistrali / ADC”, ale bez odpowiedzi, które wymagają zmian mechanicznych, takich jak: „Umieść wszystkie ADC na tej samej płytce drukowanej” lub „Umieść wszystko w metalowym pudełku” . Szczególnie interesują mnie alternatywy o niskim EMI dla SPI, w tym autobusy różnicowe.

Oto kilka istotnych informacji o aplikacji. Daj mi znać, jeśli chcesz dowiedzieć się więcej:

  • 6 przewodów przechodzi na każdą płytkę ADC (Power, GND, CS, CLK, MOSI, MISO).
  • ADC to obecnie MCP3208 (Microchip 8-kanałowy, 12-bitowy)
  • Pracuję w rozpaczliwie ograniczonej przestrzeni aplikacji, więc dodanie ekranowania do przewodów nie jest tak naprawdę opcją.
  • Byłoby miło użyć jakiejś magistrali różnicowej (tylko jedna lub dwie pary), ale jedynymi ADC z komunikacją różnicową wydają się być typy LVDS z wieloma MSPS.
  • CAN jest prawdopodobnie zbyt wolny, a także trochę nieporęczny w przypadku aplikacji o ograniczonej przestrzeni.
  • Częstotliwość próbkowania: muszę próbkować każdy kanał z częstotliwością 1 kHz.

Dodany:

Aby dać wyobrażenie o ograniczeniach przestrzeni:

Mała płytka drukowana z MCP3202

Tutaj możesz zobaczyć jedną z płytek ADC. Ten faktycznie ma MCP3202 zamiast MCP3208, ale jest kompatybilny (ish). Jest w pakiecie TSSOP 8. Płytka ma wymiary 11 mm x 13 mm. Czarny kabel ma średnicę 2 mm. Jak widać, nie ma nawet miejsca na złącze, a przewody są przylutowane bezpośrednio do płytki drukowanej, a następnie wbite w ziemię. Brak złącza wynika raczej z ograniczeń związanych z przestrzenią otaczającą niż z ograniczeniem przestrzennym na płytce drukowanej.

Rocketmagnet
źródło
4
Jak ekranowanie kabli można uznać za niepraktyczne, a podwojenie liczby przewodów (sygnalizacja różnicowa) można uznać za praktyczne?
timrorr
Przepraszam, powinienem był być bardziej jasny. Miałem na myśli coś w rodzaju CAN, czyli 2-przewodowego mechanizmu różnicowego. Oczywiście podwojenie liczby drutów jest niemożliwe. Zredagowałem pytanie.
Rocketmagnet,
1
W szczególności, jaki rodzaj testów / certyfikacji próbujesz zdać?
Joel B,
1
@JoelB - Przepraszam, jestem trochę nowy w EMI, więc nie jestem do końca pewien. Ale w pewnym momencie będziemy musieli przeprowadzić testy EMI. Prawdopodobnie jakiś normalny / konsumencki poziom testów EMI, jeśli coś takiego istnieje.
Rocketmagnet
1
@Rocketmagnet, Ohh, nie zrozum mnie źle, że bardzo łatwo tworzysz antenę. Istnieją na to metody projektowe, on wnika w to bardziej, ale jeśli kabel nie przenosi żadnej częstotliwości, którą sprawdziłby test EMI, będzie w porządku, musisz upewnić się, że nie podłączasz szumu o wyższych częstotliwościach z innych miejsc out (co jest łatwe, jak powiedział szybki projekt cyfrowy). Chciałem tylko lepiej poznać Twój problem. Bardzo podoba mi się to pytanie i już otrzymałem +1
Kortuk

Odpowiedzi:

13

2 MHz SPI na 5 cm kablach nie jest ogromny. Często używam SPI 30 MHz na kablach o długości 10 cm, zdając FCC klasy B i certyfikat CE. Kluczem do sukcesu jest upewnienie się, że masz dobry kabel (najlepiej kontrolujący obszar pętli) i prawidłowe zakończenie sygnałów.

Kontrolujesz obszar pętli, umieszczając sygnały zasilania / GND gdzieś pośrodku kabla: Zarówno środek złącza, ale również w środku wiązki przewodów. Zwykle miałbyś moc lub GND na sygnał, ale ponieważ rzadko jest to praktyczne rozwiązanie, musisz zrobić najlepiej z tym, co masz. Upewnij się również, że umieściłeś jedną lub dwie zaślepki na płytkach drukowanych na obu końcach kabla.

Właściwe zakończenie sygnałów będzie nieco trudne, ponieważ nie masz kontrolowanej impedancji na kablu. Chciałbym umieścić filtr RC na płytce drukowanej na obu końcach kabla. Filtr RC miałby C po stronie kabla i R po stronie układu. Przy sterowniku sygnału zacznę od R około 75 omów i C około 1 nF. W odbiorniku R będzie wynosić około 10 omów, a C nadal będzie wynosić 1 nF. Po zbudowaniu prototypów powinieneś wypróbować różne wartości. Zasadniczo chcesz wyższych wartości dla R i C, ale nie tak wysokich, aby rzecz przestała działać lub poziomy sygnału były zbyt osłabione. Krawędzie sygnałów powinny wyglądać na bardzo zaokrąglone, ale nie powinno być żadnych dzwonków, a zegary powinny być przyjemne w paśmie przejścia sygnału (zwykle 0,8 do 2,0 woltów).

Wartość ograniczenia co najmniej 3 nF jest idealna do ochrony przed wyładowaniami elektrostatycznymi, ale nie może to stanowić problemu w Twojej aplikacji.


źródło
Dzięki za odpowiedź. Tak, jestem całkiem pewien, że impedancja zmienia się w kilku punktach, gdy przesuwa się z płytki drukowanej na złącze do kabla itp. Również linie CS, CLK i MOSI są wspólne dla wszystkich ADC. Czy to robi różnicę ?
Rocketmagnet
@Rocketmagnet Filtry RC będą w zasadzie nadmiernie obciążane. Dlatego sygnały będą wyglądały na bardzo zaokrąglone. To zrobi dla ciebie kilka rzeczy, najważniejsze jest sprawienie, aby impedancja nie była tak krytyczna. Powinieneś ponownie buforować sygnały CS, CLK i MOSI, aby nie były dzielone między kablami. Czasami nie jest to możliwe, więc drugim (odległym) najlepszym rozwiązaniem jest użycie osobnego zakończenia dla każdego kabla, a nie dzielenie zakończenia.
2

CAN jest prawie na pewno najlepszym wyborem w tego rodzaju aplikacjach. Różni się i powinien faktycznie zmniejszyć liczbę przewodów prowadzących do każdej płytki. Jeśli próbujesz siedem chipów, osiem kanałów na chip, dwanaście bitów na kanał, to 672 bity danych na czas próbkowania. Przy próbkach 1 kHz, szybkości transferu 1 Mbit, to 1000 bitów na czas próbki. To nie pozostawia wiele miejsca do narzutu, więc możesz rozważyć użycie mikrokontrolera, który ma wbudowane dwa oddzielne kontrolery CANbus. (Microchip tworzy kilka, używam dsPIC 30F6012a.) Podziel swoje A / D na dwie magistrale, z twoim centralny mikrokontroler na obu, a powinieneś mieć dużo przepustowości.

Z drugiej strony możesz rozważyć zamianę przetworników A / D na mikrokontrolery. dsPIC 30F4013 może być dobrym wyborem. 13 12-bitowych kanałów A / D plus CANbus.

Alternatywnie, myślę, że możesz konwertować SPI do / z protokołów różnicowych napięcia, takich jak RS-485. Ale nie wiedziałbym o tym wystarczająco dużo, aby inteligentnie komentować.

Stephen Collings
źródło
Dzięki za odpowiedź. Rozważyłem CAN, ale ostatecznie nie jestem pewien, czy jest wystarczająco dużo miejsca na komponenty. Jeśli dostępne są jakieś małe transceiver CAN, może to być możliwe. Najmniejsze, jakie mogę znaleźć, wydają się być SOIC 8.
Rocketmagnet
2
!! Kiedy mówisz o ograniczonej przestrzeni, masz na myśli! Możesz sprawdzić tę odpowiedź: electronics.stackexchange.com/a/30596/7523 Najwyraźniej MOŻESZ uciec od nieużywania transiwera w takich okolicznościach. Z pewnością chciałbym wiedzieć, czy możesz!
Stephen Collings,
3
Heh Sprawdź nazwę w odpowiedzi, do której linkujesz.
Rocketmagnet
1
Więc to, co powiedziałem o mnie, że nie wiem wystarczająco dużo, aby inteligentnie komentować? Tak.
Stephen Collings,