Elektroda.pl
Elektroda.pl
X
Relpol
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Podatność AVR na zakłócenia elektromagnetyczne.

INTOUCH 22 Cze 2012 22:40 5929 45
  • #1 22 Cze 2012 22:40
    INTOUCH
    Poziom 30  

    Temat założyłem ponieważ chciałem się dowiedzieć czy to prawda, że AVR-y są najbardziej narażone na działanie zakłóceń w stosunku do innych mikrokontrolerów?
    Czy to jest tylko takie polskie gadanie?
    W końcu gdyby AVR-y były aż tak niedoskonałe to firma które je produkuje powinna dawno zbankrutować.
    Proszę też w tej dyskusji zamieszczać także informacje z zagranicznych źródeł potwierdzające, lub przeczące temu, że AVR-y nie nadają się do stosowania w środowisku, w którym występują silne zakłócenia elektromagnetyczne.

    Osobiście próbowałem szukać na zagranicznych stronach informacji wyrażających się krytycznie lub pozytywnie na temat AVR i zakłóceń elektromagnetycznych.
    Niestety nie doszukałem się żadnych informacji które mógłbym uznać za rzetelne. Może źle szukałem?

    0 29
  • Relpol
  • #2 22 Cze 2012 23:23
    94075
    Użytkownik usunął konto  
  • #3 23 Cze 2012 01:11
    tplewa
    Poziom 37  

    Generalnie AVR-y to chyba jedne z czesciej uzywanych uC, a niestety dosc czesto zly projekt plytki itp. powoduje takie zjawiska i z tad moze taka opinia. Osobiscie cos gdzies kiedys czytalem ze pierwsze AVR-y mialy z tym jakis problem. Choc osobiscie uzywam ich odkad weszly na rynek (wtedy najczesciej AT90S1200, S2313, S8515) i czegos takiego nie stwierdzilem. Dodam ze przykladowo AT90S2313 byl uzywany w telefonach firmy URMET ktore stosowala kiedys TPSA (chodzi o te niebieskie), wiec spokojnie sobie pracowaly w niezbyt latwych warunkach.

    0
  • #4 23 Cze 2012 08:11
    63404
    Użytkownik usunął konto  
  • #5 23 Cze 2012 08:53
    INTOUCH
    Poziom 30  

    Cytat:
    Prosty test: poprawnie zaprojektowaną płytkę z AVR, owiń kablem i zacznij przez niego przełączać "ręcznie" stycznik. Niestety AVR sobie z tym nie poradzi ;)

    Testowałeś w ten sposób tylko AVR-y, czy także inne mikrokontrolery?

    0
  • Relpol
  • #6 23 Cze 2012 09:11
    LordBlick
    VIP Zasłużony dla elektroda

    Hmm... Testowałem ATmega8515 +ATtiny2313(pilot po RS232D ATmegi) jako sterowanie suwnicy (2 silniki po 7kW, klient poszukiwał alternatywy dla falownika zamiast rezystorów wirnika silnika asynchronicznego 3-faz.) w jednej szafce i akurat z tym nie miałem problemu. W docelowych układach wystarczy linię RESET zblokować kondensatorkiem 100nF (są takie ładne SMD...) i wszystkie inne wyprowadzenia, co mogłyby udawać antenki...

    0
  • #7 23 Cze 2012 09:11
    tmf
    Moderator Mikrokontrolery Projektowanie

    Weź pod uwagę, że AVRy w Polsce to najpopularniejsza rodzina MCU, ludzie od nich zaczynają. A skoro zaczynają to nie mają zwykle wielkiego pojęcia o prawidłowym projektowaniu układów i pojawiają się różne błędy, które zwalają na MCU. Na ARMach siedzą zwykle już wyjadacze i głupich błędów nie robią, więc pewnie taka a nie inna opinia powstaje. Jak przejrzysz posty nawet na elektrodzie to się okaże, że połowa nie daje żadnego filtrowania, projektują na dziko, a jak się na to im zwróci uwagę to zaraz się ktoś znajdzie, kto powie że przecież jemu tak działa i zawsze działało. Chyba się nie dziwisz, że przy takim podejściu AVR "to badziewie".
    Przy takim podejściu avr-gcc to najgorszy kompilator świata - połowa początkujących już po paru godzinach znajduje co najmniej kilka "błędów kompilatora".

    0
  • #8 23 Cze 2012 11:43
    63404
    Użytkownik usunął konto  
  • #9 23 Cze 2012 11:52
    INTOUCH
    Poziom 30  

    napisał:
    INTOUCH napisał:
    Testowałeś w ten sposób tylko AVR-y, czy także inne mikrokontrolery?


    Kolega lemos z elektrody testował także PIC i one sobie dawały radę w takich warunkach.
    A nie sądzę by ów osobnik miał problemy z czytaniem not katalogowych ;)

    Co do początkujących to jest to całkiem inny temat do rozważań...

    Skoro nie testowałeś różnych mikrokontrolerów pracujących w tych samych aplikacjiach i tych samych warunkach pracy to czemu się wypowiadasz?
    Każdy może zasłaniać się kolegą. Ciekawe co kolega lemos z elektrody napisze.
    Ów osobnik może nie mieć problemów z czytaniem not katalogowych, ale ów osobnik nie jest tobą.

    0
  • #10 23 Cze 2012 12:14
    dondu
    Moderator Mikrokontrolery Projektowanie

    Nawet najlepszy samochód F1 w rękach słabego kierowcy, nie osiągnie maksymalnych parametrów do jakich został zaprojektowany.

    Poza tym uC to nie wszystko. Są jeszcze przewody, odległości, pozostałe elementy na PCB, .... pokaż jak zaprojektowałeś swój układ, to znajdą się uwagi lub nie, bo porównanie jednego uC do drugiego, można zrobić tylko w bezpośrednim porównaniu ich pracy w takim samym układzie i środowisku, a nie na podstawie zasłyszanych czy przeczytanych opinii o różnych przypadkach.

    Innymi słowy, bez bezpośredniego praktycznego porównania, wyciągnięte wnioski z różnych opinii będą błędne.

    Ale to jest proste - weź PICa i AVRa, zrób podstawowe doświadczenia i opisz.
    A może w przyszłości wyjdzie z tego niezła praca magisterska lub doktorska :)

    0
  • #11 23 Cze 2012 12:23
    INTOUCH
    Poziom 30  

    dondu napisał:
    Innymi słowy, bez bezpośredniego praktycznego porównania, wyciągnięte wnioski z różnych opinii będą błędne.

    Wobec tego pasuje doprowadzić do bezpośredniej konfrontacji.
    Przetestować 3 różne mikrokontrolery zgodne pin to pin w tej samej poprawnie zrobionej aplikacji i przy takich samych, lub bardzo zbliżonych niekorzystnych warunkach pracy.

    Robił ktoś już podobny eksperyment?

    0
  • #12 23 Cze 2012 12:28
    mirekk36
    Poziom 42  

    Weź AVR'a i owiń go kablem
    Weź AVR'a i pstrykaj mu tranformatorówką przy nogach
    Weź AVR'a i przyłóż do niego tel. komórkowy
    Weź AVR'a i uruchom obok silnik 3-fazowy
    Weź AVR'a i dotknij go śrubokrętem
    Weź AVR'a i pomiziaj go palcami

    każdy AVR się zawiesi a za to mikrokontroler firmy XXX albo YYY się nie zawiesi przy tak skrajnie ciężkich testach. ;)

    Przy czym nie zawsze wszyscy psioczą akurat na AVR'y, jak przejrzeć elektrodę to znajdziesz i posty w których ktoś psioczy na PIC'e bo te też są niby BEEE jeśli chodzi o zakłócenia ale za to niby SMY'y są dobre bo u wujka w garażu się nie zawiesza a na PIC'u się zawiesza. Innym razem odwrotnie - to zależy akurat co u wujka w garażu się działo albo u kolegi w piwnicy.

    ------------------

    Do sedna sprawy - jeśli się oprzeć na takich cudownych testach .... to chyba można samemu wywnioskować jakie one mają znaczenie ;) Raczej nigdzie nie znajdziesz żadnych opracowań, które by w konkretny i laboratoryjny sposób porównywały pod tym względem procki. Co najwyżej jeśli zależałoby komuś na bardziej wyżyłowanych wymaganiach to sięgnie po wersje Automotive albo wojskowe ;) ... tylko cena ...

    A pozostałe forumowe opowieści o owijaniu procków kablami czy poduszkami do podgrzewania albo strzelania do nich z tranformatorówki - można sobie odłożyć na półkę z bajkami.

    Poza tym co ci da taki test przeprowadzony przez Heńka, Zenka czy Mirka, jeśli np podobny test przeprowadzi, Rysiek, Krzysiek i Paweł i okaże się że wyniki są całkiem inne ? ;)

    rzeczywiście masz rację - przy takim podejściu do testów to będzie kolejny temat rzeka.

    0
  • #13 23 Cze 2012 12:33
    gaskoin
    Poziom 38  

    INTOUCH napisał:
    Temat założyłem ponieważ chciałem się dowiedzieć czy to prawda, że AVR-y są najbardziej narażone na działanie zakłóceń w stosunku do innych mikrokontrolerów?


    Żeby powiedzieć z całkowitą pewnością "TAK, AVR to największy shit pod słońcem jeśli chodzi o EMC" to trzeba by zaprojektować x identycznych płytek i wkładać tam różne układy. AVR, PIC, MSP, STM, LPC, EFM, Cxxxx, Kxx, H4, H8 i w pierony innych, zrobić im test i wtedy dopiero stwierdzić. Jeśli dobrze zaprojektujesz płytkę i obudowę (bo to też ważna część w przypadku zakłóceń) to nawet jeśli AVR wypadnie najgorzej w testach, to i tak będzie działał doskonale. Z resztą koledzy już dali przykłady, że ten układ działa w różnych warunkach i jakoś dalej się go stosuje.

    Warto uwagę zwrócić też na to, że odporność/emisja może zależeć od samego programu jaki jest wgrany w układ i kilka innych czynników które są niezależne od pcb.

    Ja akurat psioczę na AVRy, ale jestem uczulony na błędy kompilatora i budowy krzemu :)

    0
  • #14 23 Cze 2012 18:18
    63404
    Użytkownik usunął konto  
  • #15 23 Cze 2012 18:51
    tplewa
    Poziom 37  

    Widzisz ja mam znowu przeciwne doswiadczenia tak jak i koledzy. Do tego uzywam roznych prockow i z AVR-ami jak wspominalem nie mialem problemow, a pracowaly naprawde w trudnych warunkach.

    Natomiast to co opisujesz ze na stole dziala, a w praktyce juz nie to jest wlasnie problem z blednym projektowaniem ukladu. Jesli wiesz ze ma pracowac w trudnych warunkach to uwzgledniasz to od poczatku (a generalnie kazdy uklad powinienes starac sie zabezpieczyc przynajmniej w minimalny sposob), kiedys ktos sie dziwil (na jakims forum) ze daje PCB cztery warstwy do ukladu ktory spokojnie mozna bylo zrobic na dwoch warstwach - zgadnij dlaczego ?

    Do tego tak samo nie zgadzam sie ze przy nauce mozna takie sprawy olewac... dlaczgo nie ? Bo nabiera sie od poczatku zlych nawykow...

    0
  • #16 23 Cze 2012 20:45
    63404
    Użytkownik usunął konto  
  • #17 23 Cze 2012 22:40
    gaskoin
    Poziom 38  

    tplewa napisał:
    daje PCB cztery warstwy do ukladu ktory spokojnie mozna bylo zrobic na dwoch warstwach - zgadnij dlaczego ?

    Do tego tak samo nie zgadzam sie ze przy nauce mozna takie sprawy olewac... dlaczgo nie ? Bo nabiera sie od poczatku zlych nawykow...


    Dobra, ja się nie dziwię 4 warstwom, ale jako hobbysta żal mi 2 dodatkowych warstw na power plainy :) A tanie płytki nie są.

    0
  • #18 23 Cze 2012 22:52
    LordBlick
    VIP Zasłużony dla elektroda

    gaskoin napisał:
    A tanie płytki nie są.
    Dlatego jak się coś robi porządnego, to nie sprzedaje się tanio... ;)

    0
  • #19 24 Cze 2012 10:34
    tplewa
    Poziom 37  

    gaskoin napisał:
    tplewa napisał:
    daje PCB cztery warstwy do ukladu ktory spokojnie mozna bylo zrobic na dwoch warstwach - zgadnij dlaczego ?

    Do tego tak samo nie zgadzam sie ze przy nauce mozna takie sprawy olewac... dlaczgo nie ? Bo nabiera sie od poczatku zlych nawykow...


    Dobra, ja się nie dziwię 4 warstwom, ale jako hobbysta żal mi 2 dodatkowych warstw na power plainy :) A tanie płytki nie są.


    Tanie nie sa wiadomo ze szkoda i czasem mozna troche kasy utopic bo czlowiek tez czasem sie myli. Ale problem w tym ze czasem nie ma innego wyjscia i to w zastosowaniach hobbystycznych (wystarczy ARM i chcec podpiecia do niego szybkiej pamieci).

    Ale pomijajac juz to ludzie czasami zapominaja o glupich 100nF na plytce nie wspominajac juz o poprawnym ich umieszczeniu na PCB co nie raz zostalo powiedziane.

    Temat w.cz. to juz inna bajka, obwody paskowe na 10GHz nie sa az takie straszne - grunt to dobry laminat teflonowy i troche teorii itp. Cyfrowka tam gdzie masz na szynach 100MHz i wiecej jest bardziej upierdliwa... Wystarczy sobie przeczytac "High Speed Digital Design: A Handbook of Black Magic" aby wiedziec w co czlowiek sie czasem pakuje (zreszta tytul mowi sam za siebie) :)

    0
  • #20 24 Cze 2012 20:09
    INTOUCH
    Poziom 30  

    mirekk36 napisał:
    Weź AVR'a i owiń go kablem
    Weź AVR'a i pstrykaj mu tranformatorówką przy nogach
    Weź AVR'a i przyłóż do niego tel. komórkowy
    Weź AVR'a i uruchom obok silnik 3-fazowy
    Weź AVR'a i dotknij go śrubokrętem
    Weź AVR'a i pomiziaj go palcami

    każdy AVR się zawiesi a za to mikrokontroler firmy XXX albo YYY się nie zawiesi przy tak skrajnie ciężkich testach. :wink:

    Muszę przyznać, że AVR-y są bardzo czułe na warunki środowiskowe, gdy piny są ustawione jako wejście i wiszą w powietrzu.

    0
  • #22 24 Cze 2012 20:13
    mirekk36
    Poziom 42  

    INTOUCH napisał:

    Muszę przyznać, że AVR-y są bardzo czułe na warunki środowiskowe, gdy piny są ustawione jako wejście i wiszą w powietrzu.


    Dlatego wystarczy po resecie zrobić kilka poleceń typu:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    albo jeśli to nie zasilanie bateryjne to:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Zamiast pisać, że są czułe na coś tam ;) nie wspomnę o prawidłowym zasilaniu Link i przede wszystkim filtrowaniu zasilania, które zapewnia ich poprawne działanie nawet bez tego powyższego zabiegu w wielu podstawowych aplikacjach. Nie wspomnę też, że każdy mikrokontroler, który ma wejście w stanie Hi-Z będzie się zachowywał podobnie.

    O ile jednak łatwo początkującemu pokazać ten mały zabieg programowy wyżej, to już nie jest prosto pokazać co to znaczy prawidłowe zasilanie w kilku zdaniach na forum. Stąd bardzo często znajdziesz tu posty o tym jak to ludzie miziają palcem mikrokontroler i z przerażeniem piszą , że im się od tego miziania resetuje i czy tak powinno być ? ;)

    ..... tymczasem wystarczy liznąć chociaż troszkę podstaw odnośnie projektowania schematów i PCB Link i już wiele z tych strasznych objawów mija.

    0
  • #23 24 Cze 2012 20:28
    INTOUCH
    Poziom 30  

    Tym mizianiem to mi się udawało także 8051 resetować.
    Kolega raz mi chciał pokazać jak w ten sposób można zresetować ARM-a.
    Tylko, że nieszczęśnik wtedy miał na sobie flanelową koszulę ... i mikrokontroler po resecie nie wstał.

    0
  • #24 24 Cze 2012 20:48
    tymon_x
    Poziom 30  

    INTOUCH napisał:
    Tylko, że nieszczęśnik wtedy miał na sobie flanelową koszulę ... i mikrokontroler po resecie nie wstał.

    ESD to dopiero wredne zjawisko co potrafi uprzykrzyć życie. ATXMegi potrafiły mi się tak uwalać/wariować co non stop. Szczególnie DAC i wejście na PLL, czyli piny 'analogowe'. Ciężko odtworzyć warunki, ale inne scalaki jakie mi się przewiniły przez łapki nie miały podobnego problemu.

    Ale jak już zamknie się w obudowie, to zostaje EMC i też to wychodzi w praniu. Bo w jakim polu pracuje urządzenie, silniejsze jest elektryczne czy magnetyczne i tak dalej, determinuje to ekranowanie i obudowę. To jest ciężkie zagadnienie, a sprzęt do wizualizacji natężenie zjawiska w 3D do tanich nie należy :)

    Cena i zabezpieczenia IC też Swoje robią. Przykładowo Actel jest jedną z najmniejszych udziałowo na rynku FPGA. Ale produkują scalaki odporne na różne zakłócenia, promieniowania, że jako jedyne mają patent między innymi latania w kosmos i przez to mają najbardziej kasowych klientów. Przez jakieś triple zabezpieczenia.

    dondu napisał:
    A może w przyszłości wyjdzie z tego niezła praca magisterska lub doktorska

    Z chęcią bym taką pracę przejrzał. Bo czasem to strach jak przyjdą testy niezawodnościowe, i najlepiej zaficzerowany, zabezpieczony soft z milionami sposobami sprawdzania warunków i watchdogami nie pomoże :) I nie mówię tylko tylko o uC, bo każdy IC, który się jakoś komunikuje z naszym uC też może nagle się zwiesić.

    0
  • #25 25 Cze 2012 07:59
    Krauser
    Poziom 26  

    tymon_x napisał:
    Z chęcią bym taką pracę przejrzał. Bo czasem to strach jak przyjdą testy niezawodnościowe, i najlepiej zaficzerowany, zabezpieczony soft z milionami sposobami sprawdzania warunków i watchdogami nie pomoże

    A ja myślałem że po to właśnie jest watchdog, by zresetować procesor, który na skutek zakłóceń źle funkcjonuje. Można również dodać watchdog zewnętrzny.

    0
  • #26 25 Cze 2012 08:52
    tymon_x
    Poziom 30  

    Krauser napisał:
    tymon_x napisał:
    Z chęcią bym taką pracę przejrzał. Bo czasem to strach jak przyjdą testy niezawodnościowe, i najlepiej zaficzerowany, zabezpieczony soft z milionami sposobami sprawdzania warunków i watchdogami nie pomoże

    A ja myślałem że po to właśnie jest watchdog, by zresetować procesor, który na skutek zakłóceń źle funkcjonuje. Można również dodać watchdog zewnętrzny.

    Chodzi też (między innymi) o inną stronę medalu, co jak uC działa dobrze, a inny element źle funkcjonuje wskutek zakłóceń ? Uciąłeś mi dalszy kontekst wypowiedzi :P

    0
  • #27 25 Cze 2012 09:34
    Krauser
    Poziom 26  

    Po to w układach cyfrowych wymyślono obszar zabroniony, aby były odporne na zakłócenia, ale jeśli ktoś stosuje długie ścieżki to niech się później nie dziwi, że mu jakaś szpilka wyskoczy. Nie mniej jednak układ cyfrowy moim zdaniem nie może się zawiesić, a co najwyżej źle zinterpretować sygnały.

    0
  • #28 25 Cze 2012 09:40
    tmf
    Moderator Mikrokontrolery Projektowanie

    Gdyby oddzielić teorię od praktyki to miałbyś zapewne rację. Niestety teoretyczne działanie układów logicznych jest osadzone w fizycznym środowisku, a tam występują także pozalogiczne efekty, ot chociażby taki latch up. Jest jeszcze druga kwestia - czy napewno program MCU jest w stanie poprawnie zareagować na wszystkie kombinacje sygnałów wejściowych? Często pisze się programy tak, że nie obsługują zdarzeń wg programisty niemożliwych do wystąpienia. No i w przypadku zakłóceń robi się problem. Z drugiej strony napisanie nawet prostego programu tak, aby był odporny na wszystko wcale nie jest zadaniem łatwym.

    0
  • #29 25 Cze 2012 11:52
    drzasiek
    Specjalista - Mikrokontrolery

    Z tą opinią to jest tak, jak z opinią o awaryjności samochodów. Popytajcie znajomych, komu się Porsche czy lamborghini zepsuło a popytajcie komu Fiat, Opel, WV itd.
    Wyjdzie na to, że te pierwsze są całkowicie bezawaryjne a te drugie to szajs, który bez przerwy się psuje. Może i coś prawdy w tym by było, ale opinia jest przekłamana głównie ze względu popularności użytkowania oraz tego kto i do czego je używa. Na podobnej zasadzie można by wyciągnąć wniosek, że AVR bez przerwy się resetują, nie chcą się zaprogramować albo działają z inną częstotliwością niż zadana.

    0
  • #30 25 Cze 2012 15:47
    lukasz_l
    Poziom 10  

    Witam.

    Wszystko będzie zależne od tego w jakim "środowisku" będzie pracował układ. Pamiętam, jak kiedyś robiłem sterownik , który pracował w dosyć "ciężkich" warunkach (zapylenie, drgania), nic mu się specjalnie dziwnego nie działo. Może gdyby procek pracował przy trafo, ale to trzeba sprawdzić :)

    Pozdrawiam.

    0