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

ATMEGA i eliminacja zakłóceń

25 Sty 2009 14:02 3038 3
  • Poziom 16  
    Witam

    Temat, był kilka razy, ale nie do końca jeszcze wyjaśniony.
    Projektuję urządzono na ATMEGA 64 (plus kilka sztuk ATMEGA 8 dołączonych przez SPI na jednej płytce), które będzie pracowało w środowisku, gdzie może wystąpić dużo zakłóceń od silników, styczników, itp. Samo urządzenie też będzie miało w sobie pięć przekaźników załączających obciążenia 230V AC do 1kW.
    Poczytałem trochę tematów w archiwum, sopro się dowiedziałem, ale mam jeszcze kilka pytań do bardziej doświadczonych.

    1. W pobliżu każdej pary wyprowadzeń VCC, GND procesora kondensator 100n – standardowo. Zastanawiam się, czy nie dołożyć jeszcze jakiegoś elektrolita o pojemności 2,2 do 4,7uF – jednego na procesor.

    2. Nóżkę RESET procesora mam na razie podłączoną do zasilania przez rezystor 15k, ale przypuszczam, że dobrze byłoby równolegle do rezystora dołożyć kondensator rzędu 100pF.

    3. Mam długie ścieżki (ok. 15 cm) od SPI, którymi łączę ze sobą procesory. Może zasadne byłoby dołożenie do nich układów RC podobnie jak w resecie, tyle że większe R = 22k i mniejsze C = 22p. Nie bardzo wiem, w jaki sposób dobierać wartości R i C – podane tu wartości są dobrane „na wyczucie”, które może zawodzić.

    4. Przewody długości ok. 20 cm do przycisków instalowanych na obudowie też zaopatrzone w układy RC – takie jak w resecie. Przyciski podciągane do VCC wewnętrznym układem podciągającym mikrokontrolera

    5. Cewki przekaźników (prąd cewki 70mA) załączane przez tranzystor p-kanał (używam IRF7304 – dwie sztuki w obudowie SO-8 – bardo fajnie się to sprawuje przy Ugs=-5V). Na stykach cewki dioda 4007 zaporowo, do tego równolegle 100nF i 22uF. Myślę nad dodaniem jeszcze szeregowo dławika 10uH.

    6. Na stykach roboczych przekaźnika gasiki łuku w postaci szeregowego połączenia R=33ohm i C= ok. 50nF – kondensator w wykonaniu na 400V AC.

    7. Nie bardzo mam pomysł na odkłócenie linii interfejsu RS485 na których mam dołączone czujniki, ale nie wiem, czy z tym cokolwiek robić, bo przy transmisii różnicowej na 2400bps przy linii rzędu max 10m, to nie powinno być większych kłopotów.

    8. Do zasilania całości zasilacz Meanwell z serii MDR na przewodzie nie dłuższym niż 10-15cm (więc pewnie bez dodatkowych zabezpieczeń. Zasilacz w katalogu wygląda na przyzwoity.

    9. Płytka zaprojektowana tak, żeby część z przekaźnikami jak najbardziej oddalić od procesorów.

    Takie rozważania chciałbym poddać pod osąd :).
    Jeśli ktoś ma jakieś dodatkowe propozycje, czy zmiany do tego, co napisałem to będę wdzięczny za wszelkie informacje.
    Wszelkie dyskusje też są mile widziane – fajnie byłoby, gdyby w tym wątku udało się zgromadzić całość informacji, jakie są porozrzucane po forum

    Pozdrawiam
  • Pomocny post
    Specjalista - Mikrokontrolery
    1. mozesz tak zrobic, pamietajac o prowadzeniu zasilania w topologii gwiazdy

    2. kondensator jesli juz, to od resetu do masy, ale IMHO zbedny - AVRy maja wewnetrzne uklady resetu.

    3. kiepski pomysl - stracisz ostrosc zboczy, przez co SPI moze w ogole niedzialac. zamiast mniejszych zaklocen bedzie wieksze prawdopodobienstwo bledu

    4. jesli boisz sie zaklocen na liniach przyciskow, to zewnetrzne - mocniejsze - pullupy beda lepsze

    7. RS-485 jest odklocone samo w sobie, nie przesadajmy...

    jesli chcesz jeszcze pewniej i bezpieczniej, to przekazniki i innej bajery zalaczaj przez transoptory, separujac calkowicie zasilanie dwoch czesci ukladu.

    4\/3!!
  • Poziom 16  
    OK, dzięki, jeszcze tylko pytanie o to jakie zewnętrzne pull-upy zastosować - rzędu 15k, czy mniejsze wartości??
  • Specjalista - Mikrokontrolery
    moga byc duzo mniejsze, bylbys tylko nie przekroczyl parametrow AVRa (czyli ok 20mA na pin, pamietajac o wydajnosci calego ukladu i calego portu) oraz wydajnosci swojego zasilacza.

    swoja droga - nie sadze, zeby te zaklocenia byly az tak gigantyczne, aby uklad byl w stanie wykryc ci nacisniecie przycisku, ktory nie zostal nacisniety. zwykla procedura debouncingu nie przepusci takich smieci.

    4\/3!!