logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak wyeliminować zakłócenia w układzie z ATMEGA162-16PU i silnikiem 24V?

smithpl 01 Gru 2008 14:47 6290 25
  • #1 5804761
    smithpl
    Poziom 15  
    Posty: 186
    Witam,

    mam prośbę do elektroników,

    Aktualnie mój testowy układ steruje silniczkiem za pomocą przekaźników poprzez zamykanie obwodu.
    Silniczek zasilany jest 24V prądem stałym i pobiera wg. opisu 250mA

    Problem polega na tym iż układ działa bez restartów do momentu kiedy nie podłącze właśnie w/w silniczka.

    Prawdopodobnie silnik wprowadza zakłócenia na układ mikro kontrolera.

    Dowiedziałem się że można to rozwiązać sterując załączanie się silniczka
    tranzystorem, tyle ze nie wiem jakim i jak :-)

    Czy ktoś mógłby mi przedstawić jakich schemat takiego rozwiązania od strony pinów OUT mikro kontrolera?

    Układ będzie docelowo oparty o ATMEGA162-16PU i będzie sterował kilkoma silniczkami.

    dzięki za pomoc

    PS. udało mi się zrobić jeden schemat - czy to ma sens?
    Załączniki:
    • Jak wyeliminować zakłócenia w układzie z ATMEGA162-16PU i silnikiem 24V? zal-silnika.jpg (25.19 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #2 5805755
    jozefg
    VIP Zasłużony dla elektroda
    Posty: 5949
    Pomógł: 197
    Ocena: 740
    Podaj parametry silnika
  • #3 5805756
    Konto nie istnieje
    Konto nie istnieje  
  • #4 5805962
    smithpl
    Poziom 15  
    Posty: 186
    Aktualnie testuje to na płytce testowej/uruchomieniowej NESTOR'a
    ( sprzedaje je na allegro ) dla Atmega8

    Łatwiej było mi pisać soft do mikro kontrolera na gotowym układzie.
    Teraz soft jest OK więc planuje projekt swojej płytki którą będę bazował na płytce Nestora - stad pytanie
    Potrzebuje na niej zaprojektować parę wyjść sterujących silniczkami.
    Mój układ jednak będzie bazował na sprzętowym RTC i zewn. pamięci oraz module podtrzymania zasilania aby zegarek się nie resetował po stracie zasilania i nadal liczył przez X czasu :-)

    Tu schemat płytki uruchomieniowej.
    Pk1, Pk2, Pk3 zamykają kolejne obwody zasilania z silniczków.
    Aktualnie układ zasilania uC to oddzielny zasilacz 9V.
    Układ zasilający silnik to oddzielny obwód z zasilaczem 24V i silnikiem, obwód zamyka przekaźnik z płytki sterującej.

    Co do silnika.
    Jakie dane podać? Zwykły silniczek 24V DC ( lub drugi 12V ) pobiera 0,15 Ampera (ale wg. pomiaru raczej 0,20 ampera )

    Jak wyeliminować zakłócenia w układzie z ATMEGA162-16PU i silnikiem 24V?
    Jeszcze dodam jaki jest problem, jak program załącza przekaźnikiem obwód faktycznego silniczka to po 1, 2 lub 3 załączeniach układ się resetuje i startuje od nowa.

    Jak odpalam układ na w/w płytce, który nie ma nic podpięte do styków przekaźnika to chodzi bez restartu aż do wyłączenia.... i co chwile załącza stycznik i wyłącza cyklicznie ( czyli OK )
  • #5 5807064
    Konto nie istnieje
    Konto nie istnieje  
  • #6 5807794
    smithpl
    Poziom 15  
    Posty: 186
    bosko, dzieki za odpowiedz - biore sie za lutowanie

    czyli, bo w sumie nie dowiedzialem sie, w moim schemacie uklad wykonawczy sterowania silniczkami zrobic za pomoza tranzystora czy pozostac przy metodzie przekaznikowej?
    Zalezy mi na szybkiej reakcji zal/wyl i niezawodnosci...
  • Pomocny post
    #7 5807978
    marek_Łódź
    Poziom 36  
    Posty: 3103
    Pomógł: 208
    Ocena: 66
    Jak dla mnie, Twój schemat tranzystorowy jest dziwny, a w szczególności fakt, ze masy cyfrówki i silnika względem siebie się zmieniają.

    Zostawiając sterowanie w bazie takie, jak na schemacie silnik połącz w układzie:

    +24V zasilania .... silnik ... kolektor tranzystora i dalej emiter do masy wspólnej dla 24V i 5V. Równolegle z silnikiem dioda podłączona katodą do plusa. Inaczej mówiąc rozetnij obwód kolektora i przerzuć tam silnik, a -24V dołącz do masy komputera.

    Gdyby układ się zakłócał, w obwodzie bazy można dać transoptor i rozdzielić galwanicznie obwody komputera i silnika (najlepiej od razu tak zrobić).
  • Pomocny post
    #8 5809062
    Konto nie istnieje
    Konto nie istnieje  
  • Pomocny post
    #9 5809154
    shadow0013
    Poziom 34  
    Posty: 2135
    Pomógł: 243
    Ocena: 312
    Nie zapomnij o kondensatorze np. 100nF na zasilaniu ATmegi (jak najbliżej niej) i kondensatorach blokujących na nóżkach stabilizatora - wg. producenta na wejściu 0,33uF na wyjściu 0,1uF (przy 2x0,1uF też dobrze działa).
    A tak w ogóle o zasadzie że zasilanie każdego układu cyfrowego powinno być blokowane pojemnością około 47-100nF umieszczoną jak najbliżej układu scalonego zobacz na płytce testowej na pewno zastosowali.
  • #10 5809290
    smithpl
    Poziom 15  
    Posty: 186
    WojcikW - dzięki za info, załączeń będzie jakieś do 40 dziennie na okres od 1 do 60 sek.

    Czyli dac taki sam optoizolator jak na płytce uruchomieniowej dodając
    1. kondensator na pinach wyjściowych z kontrolera
    2. na wyjsciu optoizolatora dać diody prostownicze zgodnie z twoim schematem ( taki jak na schemacie ULN2803AG czy inny model) ?
    3. Dodać kondensatory na zasilani uC i silniczkach...
    4. Wspólna masa ( to juz tak będzie bo silniczki w końcu będą tez na 12V czyli pójdą z jednego zasilacza + 7805 dla uC
    5. Sterowanie załączaniem za pomocą przekaźników czy jednak tranzystory - a jak tranzystory to tak jak narysowałem, jaki model tranzystora pod takie obciążenie? Mi to bez różnicy bo to i tak w fazie projektu a chce aby było niezawodnie
    6. Jak polecacie dodać podtrzymanie zasilania ? Dać na zasilaniu równolegle akumulatorek?

    Uff... o czymś jeszcze zapomniałem?

    Moderowany przez zumek:

    Proszę poprawić pisownię, we wszystkich swoich wiadomościach, w tym temacie - regulamin p.15

  • #11 5810536
    marek_Łódź
    Poziom 36  
    Posty: 3103
    Pomógł: 208
    Ocena: 66
    Bez zbędnych kombinacji:

    1. Z portów mikrokontrolera wychodzisz przez rezystor np. 470 Ω na anody wejść optoizolatora. Katody do masy komputera.

    2. Drugi obwód (silnikowy) galwanicznie odseparowany od komputera (żadnego łączenia mas). Kolektory wyjść optoizolatora przez rezystor do +24V, emitery na wejścia ULN. W sumie przy 250 mA na silnik można kanały ULN połączyć równolegle parami, trójkami, czy czwórkami (sprawdzić jak się grzeją) i to powinno wystarczyć. Żadnych dodatkowych diod nie trzeba, bo są one wewnątrz ULN.

    Oczywiście oba obwody zasilane z niezależnych źródeł.
  • Pomocny post
    #12 5811463
    ktrot
    Poziom 20  
    Posty: 166
    Pomógł: 47
    Ocena: 3
    Przykładowe rozwiązanie:
    Jak wyeliminować zakłócenia w układzie z ATMEGA162-16PU i silnikiem 24V?

    BUZ11 wydaje się za duży dla silniczka 250mA ale nawet taki mały silniczek potrafi pobrać ponad 1A przy większym obciążeniu. Mozesz użyć innego, mniejszego mosfeta lub tranzystora NPN ale o prądzie Icemax (lub Idsmax) >1A

    Nie polecam ULN2803 - to są darlingtony ze spadkiem 1,2V na CE co moze się odbić na pracy silniczka.

    Zamiast 12V może być 24V bez zmiany elementów. Wartości R1 i R3 możesz zmniejszyć jezeli wystąpią jakieś zakłócenia (nie powinny). Ponadto możesz dodać jakiś kondensator na samym silniku.

    R2 łaczysz bezpośrednio do uC pomijając oczywiście SW1. Z port AVR można bez problemu wyciągnąć 10-20mA jeżeli jednak miałbyś więcej takich obciążeń to dobrzy byłoby dać dodatkowy tranzystor między uC a R2.
  • #13 5812226
    smithpl
    Poziom 15  
    Posty: 186
    ktrot , dzięki za pomoc.

    uC będzie obsługiwał docelowo 6-9 takich wyjść.

    W związku z tym sugerujesz podpieranie wszystkich wyjść tranzystorem ?


    Jaki optoizolator byś polecał? ( chodzi mi o symbol )
    oraz jaki inny mosfet zamiast Buz11? z tego co czytałem BUZ11 może i jest popularny ale trudno go czasami dostać więc układ wolę oprzeć o bardziej typowe elementy ( ogólnodostępne )

    Na koniec pytanie dodatkowe - w czym robiłeś schemacik ? :-)
  • #14 5812359
    marek_Łódź
    Poziom 36  
    Posty: 3103
    Pomógł: 208
    Ocena: 66
    Jeśli ma być zrobione porządnie i bez rozbudowy sprzętowej, to proponuję na wyjściu czterokanałowe drivery BTS711 (jedna kość na cztery silniki).

    Optoizolator najlepiej Darlington, np. LTV845 (czterokanałowy) itp.
    Tak więc przy pomocy dwóch kości (optox4+driverx4) załatwiamy 4 kanały (jest to znacznie prostsze od budowy układów z elementów dyskretnych). Oprócz oporników na wejściach i wyjściach optoizolatorów (mogą być drabinki), nie potrzeba żadnych dodatkowych elementów.

    Idąc kroczek dalej i używając izolator cyfrowy (np.ADUM) pozbywamy się jeszcze oporników, czyli zostają nam TYLKO 2 scalaki na 4 kanały i mamy zrobiony układ naprawdę porządnie. No ale to kwestia skalkulowania kosztów (w tym również kosztów montażu i uruchomienia ;) ).

    BTS711 datasheet
    ADUM1400 datasheet

    Jak wyeliminować zakłócenia w układzie z ATMEGA162-16PU i silnikiem 24V?
  • #15 5812833
    ktrot
    Poziom 20  
    Posty: 166
    Pomógł: 47
    Ocena: 3
    Poprawiony schemat
    Jak wyeliminować zakłócenia w układzie z ATMEGA162-16PU i silnikiem 24V?
    W poprzednim poście napisałem, że schemat można zastosować bez przeróbek dla 24V. To nie do końca prawda - napięcie na bramce mosfeta Vgs nie powinno być większe niż 20V. Dzielnik R3,R4 zapewnia tutaj napięcie ok 10V, które otwiera całkowicie większość mosfetów.

    Większa wartość R2 ograniczy prąd portu uC poniżej 2mA co oznacza, że można pominąć dodatkowy tranzystor.

    Co do wyboru mosfeta - dowolny z RDSon<0,1ohma. Napięcie max Uds<100V bo te na większe napięcia mają zazwyczaj większy Rds.

    Transoptor 4n35 i rodzina (36,37..), cny17 przy czym raczej te z większym numerkiem czyli cny17-3 lub cny17-4. Dobry bedzie też cny75, chodzi o to, aby CTR było jak największe przy If=1mA. (przynajmniej 30%)

    Schemat rysowany w Proteus - Isis (wersja demo).
  • #16 5812971
    marek_Łódź
    Poziom 36  
    Posty: 3103
    Pomógł: 208
    Ocena: 66
    Dając zamiast R3, dwunastowoltowego Zenera, zapewniamy zawsze te same warunki wysterowania MOSFETA. Licząc prąd diody transoptora, należy uwzględnić spadek na niej, który jest rzędu powiedzmy 2-2,5V.

    Sterowanie silnika przez BTS711
    Jak wyeliminować zakłócenia w układzie z ATMEGA162-16PU i silnikiem 24V?

    P1...P4 wejścia z portów procesora lub z transoptora

    Wyjścia ST1/2, ST3/4 służą do sygnalizowania stanów awaryjnych (np zwarcie wyjścia) i można je podać na dodatkowe dwa wejścia procesora.
  • #17 5815135
    smithpl
    Poziom 15  
    Posty: 186
    dziękuje za info , jutro narysuje schemat i podeśle do oceny :-)

    pozdrawiam
  • #18 5816273
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 423
    Witam
    Ktrot , ten schemat ma istotny błąd, zaraz po włączeniu optron się spali, chyba że wcześniej padnie tranzystor PNP którym sterujesz.
    W ten sposób przez złącze baza emiter i tranzystor z optrona zwierasz zasilanie.
    Druga rzecz to oporniki w bramce MOSFETa, MOSFETY mają dużą rezystancję ale i dużą pojemność na bramce, jeśli silnik ma być sterowany często lub co gorsze PWMem to MOSFET będzie się grzał.
    Jeśli silnik ma pobierać koło 250mA to można go sterować wprost z ULN2004, jeśli prądy większe to polecam MOSFETy z literką L na końcu sterowane poziomem logicznym wprost z procesora.
  • #19 5816878
    smithpl
    Poziom 15  
    Posty: 186
    a co myślicie jeszcze o takim sposobie uruchamiania silniczka ?

    Jak wyeliminować zakłócenia w układzie z ATMEGA162-16PU i silnikiem 24V?
  • #20 5817148
    ktrot
    Poziom 20  
    Posty: 166
    Pomógł: 47
    Ocena: 3
    Cytat:
    ten schemat ma istotny błąd, zaraz po włączeniu optron się spali, chyba że wcześniej padnie tranzystor PNP którym sterujesz.

    Nie ma błędu. Spójrz do noty katalogowej typowego transoptora:
    Figure 6 i figure 7: http://measure.feld.cvut.cz/groups/edu/osv/4N35.pdf
    lub
    Figure 12 i figure 13: http://www.farnell.com/datasheets/13579.pdf
    Oczywiście w naszym przypadku If zawiera się gdzieś w 1..2mA
    Sądzisz, że 2,5mA wypływające z bazy tranzystora to problem?
    Można dać rezystor np 47k miedzy bazę tranzystora a kolektor tranzystora w transoptorze (co ograniczy prad bazy do 0,5mA) ale celem układu jest eliminacja w jak największym stopniu zakłóceń a te 47k to dodatkowa impedancja zmniejszająca odporność na zakłócenia.

    Cytat:
    Druga rzecz to oporniki w bramce MOSFETa, MOSFETY mają dużą rezystancję ale i dużą pojemność na bramce, jeśli silnik ma być sterowany często lub co gorsze PWMem to MOSFET będzie się grzał.

    To na pewno nie jest układ do PWM i bynajmniej nie ze względu na rezystancje w obwodzie bramki, które łatwo zmniejszyć. Lepsze 10k na bramce niz megaom diody zenera, którą ktoś wyżej zaproponował. Co to znaczy często właczany? 10/s ? Nie bedzie się grzał.

    Co do bezpośredniego sterowania mosfeta to zwróć uwagę na temat postu. Tutaj chodzi o separację galwaniczną zasilania silnika i uC w celu eliminacji zakłóceń.
  • #21 5818545
    Konto nie istnieje
    Konto nie istnieje  
  • #22 5820268
    PiotrPitucha
    Poziom 34  
    Posty: 2658
    Pomógł: 201
    Ocena: 423
    Witam
    Krtot masz rację, w tych konkretnych warunkach i przy tych elementach prąd nie zostanie przekroczony, ale jak ktoś wsadzi tam opto z Darlingtonem to może być kłopot, dla czystości rozwiązań proponuję by zawsze w układach z tranzystorami ograniczać prąd rezystorem, tak się poprostu powinno robić.
    Rezystor może być nawet 1K.
    Co do drugiej sprawy, to dobrze zaprojektowana płytka jest podstawą, jeśli po masie będą krążyć prądy które będą skutkować szpilkami napięć na wejściach procesora to nie pomoże nawet optoizolacja. Sam robiłem układy w których nie było optoizolacji a były stabilne, najlepszym przykładem są sterowniki silników modelarskich, dziesiątki A bez optoizolatora, myślę że spoglądnięcie na płytkę takiego regulatora może pomóc w zaprojektowaniu własnej.
  • Pomocny post
    #23 5820650
    Konto nie istnieje
    Konto nie istnieje  
  • #24 5824336
    smithpl
    Poziom 15  
    Posty: 186
    WojcikW, rozumiem że to rozwiązanie pomijające wykorzystania przekaźnika? dzięki :-)

    Czy przy docelowym wykonaniu kiedy będą silniczki 12V,
    mam zachować galwaniczną izolacje zasilania procesora i silnika ( nie łączymy mas ) oraz podane wartości elementów pozostaną bez zmian?
    I na koniec ( już przed zakupami elementów do układu testowego ), jaki symbol/model U1 z twojego schematu polecasz? Może być np. wersja z 3-4 w jednej obudowie DIP.


    I jeszcze pytanie o BD646, model firmy Siemens posiada wbudowana diodę prostownicza + 2 oporniki.
    http://www.datasheetcatalog.org/datasheet/siemens/BD650.pdf

    Czy ma to wpływ na wykorzystanie Siemens'owego BD646 w tym układzie ?

    dzięki, Marcin
  • #25 5826355
    Konto nie istnieje
    Konto nie istnieje  
  • #26 5865450
    smithpl
    Poziom 15  
    Posty: 186
    Podsumowując:

    Pierwszy schemat z rozwiązaniem WojcikW był rozwiązaniem problemu. Po zastosowaniu diod problem ustal, jednak w wyniku uzyskania tylu ciekawych informacji postanowiłem wykorzystać parę w moim projekcie :-)
    Triaki będą załączać 220V, BD silniczki a przekaźniki dodatkowe urządzenia :-)

    Teraz czekam na dostawę części i uruchamiam projekt testowy.

Podsumowanie tematu

✨ Dyskusja dotyczy eliminacji zakłóceń w układzie sterowania silnikiem 24V DC o prądzie około 0,2-0,25A za pomocą mikrokontrolera ATMEGA162-16PU. Problemem są zakłócenia generowane przez silnik, które powodują resetowanie mikrokontrolera. Proponowane rozwiązania obejmują zastąpienie przekaźników tranzystorami MOSFET lub tranzystorami bipolarno-skalarnymi z galwaniczną separacją obwodów silnika i mikrokontrolera, np. przez zastosowanie optoizolatorów (np. LTV845, 4N35, CNY17-3/4) oraz driverów tranzystorowych BTS711. Zalecane jest stosowanie diod zabezpieczających (diod prostowniczych) równolegle do cewek silników i przekaźników, kondensatorów filtrujących (np. 100nF blisko mikrokontrolera, 0,47µF na zaciskach silnika) oraz odpowiedniego zasilania z separacją mas. Wskazano, że sterowanie tranzystorami MOSFET o niskim Rds(on) (
Wygenerowane przez model językowy.
REKLAMA