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

Atmel Atmega328P - Zmiana zasilania powoduje uszkodzenie mikrokontrolera.

Ataman 22 Sty 2016 22:32 2175 34
  • #1 22 Sty 2016 22:32
    Ataman
    Poziom 8  

    Witam

    Zbudowałem układ do sterowania dwoma silnikami DC przez moduł bluetooth HC-05 z wykorzystaniem mikrokontrolera Atmega328P oraz mostka H L298N. Silniki, które używam to FA 130RA 18100 (kartę katalogową załączam poniżej). Silniki te w momencie obciążenia pobierają do 2A prądu, dlatego też zdecydowałem się na wybranie mostka H L298N oraz diód zabezpieczających wytrzymujących natężenie do 3A.

    Układ jest sprawny, ponieważ sprawdziłem go zasilając napięciem z dwóch baterii 9V połączonych równolegle (chciałem zwiększyć pojemność użytego źródła zasilania). Jednak to zasilanie nie jest wystarczające do poruszenia mojego robota z miejsca, dlatego dzisiaj podłączyłem zasilanie z akumulatora modelarskiego o napięciu 11,1V oraz pojemności 2200 mAh. Połączenie się z układem BT nie nastręczyło problemów, jednak po wysłaniu komendy mikrokontroler został "spalony" i nie wiem dlaczego się tak stało.

    Część logiczna mostka H została podłączona linię zasilania wychodzącą ze stabilizatora L1085-5.0 3A, tak samo jak mikrokontroler. Natomiast napięcie, które ma być podane na silniki ma pochodzić prosto z źródła zasilania (jest ono podłączone pod 4 wyprowadzenie mostka). Spadek napięcia na mostku to jakieś 2V, co na silnikach powinno dać około 9V.

    Co może być przyczyną uszkodzenia mikrokontrolera?
    Bardzo bym prosił o pomoc, jestem początkującym elektronikiem :)

    Pozdrawiam

    EDIT: Wrzuciłem nowszy schemat.

    0 29
  • Deimic One - Szkolenia
  • #2 22 Sty 2016 22:52
    Drake160
    Poziom 16  

    Jeśli mnie wzrok nie myli to na Twoim schemacie pin 4 układu L298 jest podłączony do wyjścia stabilizatora a nie bezpośrednio do źródła tak jak napisałeś.

    0
  • #4 22 Sty 2016 23:57
    Ataman
    Poziom 8  

    Na filmik, który podlinkowałeś trafiłem już jakiś czas temu. Przed dodaniem tematu na forum przejrzałem bardzo dużą ilość stron dotyczących mostka H i nie tylko. Swój schemat oraz płytkę drukowaną przejrzałem dokładnie i nie mogę znaleźć żadnego błędu.

    Może osoby bardziej doświadczone mogły by sprawdzić moją płytkę i schemat.

    Nadmienię, że testy układu prowadziłem na zasilaniu z baterii 9V oraz na silniczkach 5V, a aktualnie używam silników na napięcie 3V, które były dołączone do zestawu z przekładnią.

    0
  • #5 23 Sty 2016 05:03
    excray
    Poziom 39  

    Płytka jest źle wykonana po całości. Prowadzenie masy to jakiś horror. LM1005??? Co to jest? Skąd wziąłeś taki układ. uC i HC-05 jest zasilany z tego samego napięcia co mostek więc jeśli zasilasz mostek z 12V to uC i HC również. Prąd przepływa przez (?!) LM1005 w jakiś bliżej nieokreślony sposób bo na pewno nie jest to 7805 a jeśli jest to już dawno się zapewne usmażył.

    0
  • #6 23 Sty 2016 07:57
    dondu
    Moderator Mikrokontrolery Projektowanie

    excray napisał:
    LM1005??? Co to jest? Skąd wziąłeś taki układ.

    Oj lupa by się przydała :D :D :D
    To jest LM1085 o czym także autor napisał w pierwszym poście.


    @Ataman

    Zobacz co jest napisane od strony bottom modułu HC-05 w okolicach pinów RxD i zastanów się nad tym.

    Jeśli możesz wrzuć oba pliki Eagle i pokaż zdjęcia PCB z obu stron.

    Dlaczego L298 jest podłączony do baterii przed włącznikiem, a nie za nim? To zbędne ryzyko. Należało zastosować odpowiedni (prądowo) włącznik.

    A swoją drogą po co Ci taki potwór jak LM1085 na 3A?

    0
  • #7 23 Sty 2016 11:30
    excray
    Poziom 39  

    dondu napisał:

    Oj lupa by się przydała :D :D :D
    To jest LM1085 o czym także autor napisał w pierwszym poście.

    Rzeczywiście. To też jest źle podłączony. Wejście jest zwarte z masą a na ADJ podane zasilanie.
    dondu napisał:
    Dlaczego L298 jest podłączony do baterii przed włącznikiem, a nie za nim? To zbędne ryzyko. Należało zastosować odpowiedni (prądowo) włącznik.

    L298 jest podłączony już za przełącznikiem.

    0
  • #8 23 Sty 2016 14:43
    dondu
    Moderator Mikrokontrolery Projektowanie

    excray napisał:
    dondu napisał:
    Dlaczego L298 jest podłączony do baterii przed włącznikiem, a nie za nim? To zbędne ryzyko. Należało zastosować odpowiedni (prądowo) włącznik.

    L298 jest podłączony już za przełącznikiem.

    Przyglądnij się dokładnie :)

    0
  • Deimic One - Szkolenia
  • Pomocny post
    #9 23 Sty 2016 14:59
    excray
    Poziom 39  

    Właśnie przyglądam się uważnie. Schemat jest zupełnie odrealniony względem tego co jest na płytce drukowanej a na płytce drukowanej zasilanie idzie na przełącznik, później przez diodę na stabilizator a ze stabilizatora dopiero na L298 i uC

    0
  • Pomocny post
    #10 23 Sty 2016 15:55
    dondu
    Moderator Mikrokontrolery Projektowanie

    excray napisał:
    Właśnie przyglądam się uważnie. Schemat jest zupełnie odrealniony względem tego co jest na płytce drukowanej ...

    To wszystko wyjaśnia - patrzyłem tylko na schemat.

    @Ataman
    Dlaczego tak jest?

    0
  • #11 24 Sty 2016 00:45
    Ataman
    Poziom 8  

    Witam ponownie

    Przepraszam, że nie odpisałem od razu, ale przygotowuję się do sesji, a w przerwach od nauki próbuję poprawić płytkę.

    Po Waszych uwagach stwierdziłem, że przeprojektuję płytkę ponieważ zauważyłem błędy.

    Schemat według, którego planuję wykonać poprawioną płytkę zamieszczę w załączniku.
    Bardzo bym prosił o sprawdzenie schematu i o ewentualne uwagi.

    Bardzo dziękuję za zainteresowanie moim problemem :)

    0
  • #12 25 Sty 2016 18:35
    Ataman
    Poziom 8  

    Witam
    Czy ktoś mógłby sprawdzić mój schemat - bardzo proszę bo nie wiem czy jakiegoś błędu nie zrobiłem. Nie wiem czy dobrze założyłem, aby zasilać z 2 niezależnych źródeł: na silniki akumulator 7,4V + bateria R9 na ATmegę poprzez stabilizator.
    Proszę również o radę, czy prąd na silniki z aku nie załatwi mi moich silniczków (3,3V 1,2-2A)
    Bedę zobowiązany za wszelką pomoc :)

    0
  • #13 25 Sty 2016 20:38
    emarcus
    Poziom 35  

    Ataman napisał:
    Witam

    ..... czy prąd na silniki z aku nie załatwi mi moich silniczków (3,3V 1,2-2A)



    Zacznij od tego miejsca, czyli niemal od poczatku...
    Jeżeli dla tych silników nominalne napięcie zasilania wynosi 3.3V, należy to rozumiec ze spokojnie mozesz zasilac je w zakresie: +/- do 50% tej wartosci bez szkody dla silnika. Naturalnie wpłynie to na parametry pracy obroty, wydajnośc. Taki silnik nie obciązony nie weźmie więcej niż 0.2A, W miarę obciążenia bedzie wzrastał prąd aż do zahamowania silnika, gdzie możesz spodziewac się przepływu pradu nieco powyżej 2A. Wtedy silnik staje sie grzejnikiem. Zatem podana wartośc 1.2A wydaje się byc pobieranym prądem przy nominalnym obciążeniu.
    Analiza ta dotyczy zastosowania w pracy ciągłej.
    Jeżeli silnik będzie sterowany sygnałem PWM o podwyższonym napięciu to średnie napięcie będzie zależało od wypełnienia cyklu. Musisz to brac pod uwagę.

    Z jakiego powodu zdecydowałeś sterowac te silniki układem L298 (?), który jest 2 x większy niż sam silnik i nie ma na nim żadnych zabezpieczeń.
    Rozważ zastosowanie (może nieco droższych, za to nieporównywalnie lepszych) gotowych driverów z pełnym zabezpieczeniem (cyt: 'protection against reverse-voltage, under-voltage, over-current, and over-temperature'), zbudowanych na:

    DRV8838 – pojedynczy układ mostka-H (dla jednego silnika)
    Oraz/albo: DRV8835 – podwójny driver
    DRV8833 - dwukanałowy sterownik silników - moduł
    Możesz je zasilac napięciem w zakresie do 11V
    Dostaniesz je u krajowych dostawców.
    Szczegóły ich podłączenia będą dostępne u dostawcy albo tu:
    https://www.pololu.com/product/2990

    https://www.pololu.com/product/2135/pictures

    e marcus

    0
  • #15 25 Sty 2016 22:14
    Ataman
    Poziom 8  

    Witam Panowie

    @dondu
    Domyślam się, że chodzi o dopuszczalne napięcie zasilania modułu. Z tego co widzę to mój adapter BT posiada regulator napięcia (POWER:3,6-6V)

    Atmel Atmega328P - Zmiana zasilania powoduje uszkodzenie mikrokontrolera.

    Nie wiem, czy dobrze myślę, ale wykorzystując napięcie 5V ze stabilizatora (7805) wszystko powinno być OK. Jeśli się mylę to proszę o wskazówkę.

    @emarcus
    Niestety nie mogę w swoim projekcie korzystać z "gotowców".
    Projekt do którego robię płytkę jest na zaliczenie przedmiotu na Politechnice.
    Płytkę wykorzystuję do sterowania podwoziem gąsienicowym stanowiącym potencjalną bazę do dalszej rozbudowy - oczywiście tylko w teorii bo wszystko jest z PCV :)
    Samo podwozie już wykonałem.

    Atmel Atmega328P - Zmiana zasilania powoduje uszkodzenie mikrokontrolera.

    Płytkę też i o dziwo wszystko działało przy podłączeniu malutkich silniczków (5V) od drona. Niestety nie nadawały się do napędu pojazdu. W ostateczności zakupiłem gotową przekładnię taką jak tu:
    http://www.rcniko.pl/przekladnia-podwojna-tamiya-70168,812,38846.html
    ...i zaczęły się problemy.
    Początkowo silniczki przy zasilaniu z baterii R9 działały, ale "nie miały mocy". Sterowanie przy pomocy BT za pom ocą aplikacji napisanej pod Arduino na Androida też. Po analizie doszedłem do tego, że błędnie poprowadziłem zasilanie do pinu 4 mostka L298 ze stabilizatora (5V). Poprawiłem to i ...spaliłem ATmegę x 2 szt.
    Stąd też moje "wołanie o pomoc" na forum

    Panowie pomóżcie

    0
  • Pomocny post
    #16 25 Sty 2016 22:17
    dondu
    Moderator Mikrokontrolery Projektowanie

    Ataman napisał:
    @dondu
    Domyślam się, że chodzi o dopuszczalne napięcie zasilania modułu. Z tego co widzę to mój adapter BT posiada regulator napięcia (POWER:3,6-6V)

    Nie domyślaj się, tylko czytaj co piszę:

    dondu napisał:
    Zobacz co jest napisane od strony bottom modułu HC-05 w okolicach pinów RxD i zastanów się nad tym.

    i czytaj linki, które Ci podsyłam lub chociaż dokumentację modułu HC-05.


    Ataman napisał:
    Początkowo silniczki przy zasilaniu z baterii R9 działały, ale "nie miały mocy". Sterowanie przy pomocy BT za pom ocą aplikacji napisanej pod Arduino na Androida też. Po analizie doszedłem do tego, że błędnie poprowadziłem zasilanie do pinu 4 mostka L298 ze stabilizatora (5V). Poprawiłem to i ...spaliłem ATmegę x 2 szt.
    Stąd też moje "wołanie o pomoc" na forum ... Panowie pomóżcie

    Schemat jest ok z wyjątkiem powyższej uwagi. Połączeń nie sprawdzimy.

    Sprawdzanie płytki to koszmar tym bardziej, że nie współgra ze schematem.

    0
  • Pomocny post
    #18 25 Sty 2016 22:29
    dondu
    Moderator Mikrokontrolery Projektowanie

    1. Znowu dajesz akumulator przed włącznikiem S1 łącząc pin Vs (L298) z akumulatorem na stałe.
    2. Dodaj kondensator elektrolityczny oraz 100nF przy pinie Vs L298.
    3. Popraw problem z HC05 (!). Przeczytasz wreszcie co jest na nim napisane w okolicy pinów RxD i TxD?

    0
  • #19 26 Sty 2016 00:00
    Ataman
    Poziom 8  

    Witam ponownie !
    Trochę poczytałem. Aż się boję spytać czy chodziło o konieczność zastosowania dwukierunkowego konwertera poziomów celem obniżenia napięcia sygnałów TXT/RXD do 3,3V ?

    Jeśli tak, to czy mógłbyś mi pomóc w poprawnej interpretacji schematu z twojego bloga:
    http://1.bp.blogspot.com/-HvTIf-vrEUc/UnjKKmB...EJo/s320/Konwerter-poziomow-Level-Shifter.gif

    Podobny znalazłem tutaj:
    https://www.elektroda.pl/rtvforum/viewtopic.php?p=13967482#13967482

    Nie wiem jak zastosować to rozwiązanie na schemacie
    Może to przez zmęczenie... sesja trwa :-(

    Załączam poprawiony schemat PCB

    Dziękuję za dotychczasową pomoc :-)

    0
  • #20 26 Sty 2016 10:57
    dondu
    Moderator Mikrokontrolery Projektowanie

    Ataman napisał:
    Trochę poczytałem. Aż się boję spytać czy chodziło o konieczność zastosowania dwukierunkowego konwertera poziomów celem obniżenia napięcia sygnałów TXT/RXD do 3,3V ?

    Jeśli tak, to czy mógłbyś mi pomóc w poprawnej interpretacji schematu z twojego bloga:
    http://1.bp.blogspot.com/-HvTIf-vrEUc/UnjKKmB...EJo/s320/Konwerter-poziomow-Level-Shifter.gif

    Podobny znalazłem tutaj:
    https://www.elektroda.pl/rtvforum/viewtopic.php?p=13967482#13967482

    Nie wiem jak zastosować to rozwiązanie na schemacie
    Może to przez zmęczenie... sesja trwa :-(

    No nareszcie :)
    Możesz zastosować taki jakie wskazałeś lub zwykły dzielnik rezystorowy. Taki konwerter jest potrzebny tylko na pinie TxD mikrokontrolera, by nie przekraczać 3,3V na pinie RxD HC-05.

    1
  • #21 26 Sty 2016 15:34
    Ataman
    Poziom 8  

    Witaj @dondu
    Uff, nareszcie coś mi się "udało"
    Idąc za twoimi wskazówkami postanowiłem zastosować dzielnik rezystorowy.
    Załączam poprawiony schemat, który robiłem w przerwie między egzaminami :-(
    Czy mógłbyś go sprawdzić, bo chciałbym popracować nad PCB.
    A może mógłbym liczyć na jakiś przykład dobrze zrobionej płytki lub wskazówki na co zwrócić uwagę?
    Niestety mam pewne ograniczenia:
    - złącze BT musi pozostać nie ruszone (jak na foto wyżej)
    - zasilanie i wyprowadzenia na silniki też powinny pozostać w tych samych okolicach (choć niekoniecznie - kwestia poprowadzenia przewodów)
    Dziękuję za cierpliwość i duuuuuużą pomoc :)

    0
  • #22 26 Sty 2016 20:08
    dondu
    Moderator Mikrokontrolery Projektowanie

    1. Dzielnik OK.
    2. W kilku miejscach nie ma na szhemacie symbolu połączenia (junction) - wprawdzie połączenia są prawidłowe (sprawdzałem) ale by być pewnym junction dodawaj.
    3. Kondensator c13 dałbym znacznie większy bo Twoje silniki jednak sporo prądu będą pobierały.
    4. C13 ma zły kierunek.
    5. Złącza programatora nie dodajesz?

    0
  • #23 26 Sty 2016 21:48
    Ataman
    Poziom 8  

    Witaj @dondu

    Ad. 1 - :-)
    Ad. 2 - poprawiłem
    Ad. 3 - "znacznie większy" - czy np. 470 uF może być?
    Ad. 4 - w tym projekcie nie planuję (mało czasu). ATmegę zamontuje na PCB w podstawce i będę programował z wykorzystaniem Arduino. Nie dorobiłem się jeszcze USBasp :-(

    Proszę o podpowiedź z C13

    0
  • #25 27 Sty 2016 14:13
    Ataman
    Poziom 8  

    Witam
    Wczoraj w nocy zacząłem projektować płytkę. Prawie skończyłem.
    Czy ktoś mógłby mi sprawdzić czy nie ma błędów.
    Będę zobowiązany, za wszelkie wskazówki.
    Nie chcę popełnić błędu bo mam tylko jedno podejście.
    Aha, PCB będę wykonywał metodą termotransferu.
    Proszę zwrócić uwagę na poprowadzenie GND między padami L298 - będzie dobrze?

    Do @dondu
    Dziękuję Ci za pomoc...
    Załączam pliki Eagle'a do sprawdzenia.

    0
  • Pomocny post
    #26 27 Sty 2016 23:11
    emarcus
    Poziom 35  

    Ataman napisał:
    Witam
    Wczoraj w nocy zacząłem projektować płytkę. Prawie skończyłem.
    Czy ktoś mógłby mi sprawdzić czy nie ma błędów.
    Będę zobowiązany, za wszelkie wskazówki.
    Nie chcę popełnić błędu bo mam tylko jedno podejście.
    Aha, PCB będę wykonywał metodą termotransferu.
    Proszę zwrócić uwagę na poprowadzenie GND między padami L298 - będzie dobrze?


    Wydaje się że na PCB masz zbyt wąskie ścieżki prądowe zasilania silników, a także GND.
    Borąc pod uwagę że stosujesz popularny laminat 35 mikronów, to ścieżki te są z grubsza o połowę za wąskie.
    poniżej przykład z calculatora:
    Atmel Atmega328P - Zmiana zasilania powoduje uszkodzenie mikrokontrolera.

    e marcus

    0
  • #27 28 Sty 2016 13:13
    dondu
    Moderator Mikrokontrolery Projektowanie

    Ataman napisał:
    Do @dondu
    Dziękuję Ci za pomoc...

    Nie ma za co :)


    Ataman napisał:
    Załączam pliki Eagle'a do sprawdzenia.

    Schemat OK, ale PCB (oprócz uwagi emarcus):

    1. Jaką metodą chcesz wykonać? Pytanie istotne, bo niektóre ścieżki są bardzo blisko siebie.

    2. Rozlej masę GND (polygon) na obu stronach płytki (obrysowując całą płytkę) kasując wcześniej wszystkie ścieżki GND na płytce (ale nie na schemacie):


    Link

    0
  • #28 28 Sty 2016 20:55
    Ataman
    Poziom 8  

    Witajcie Panowie

    Dzięki za cenne uwagi i spostrzeżenia.
    Trochę się nie odzywałem, ale w tym czasie przeprojektowałem całą płytkę.
    Załączam pliki Eagle'a - proszę o sprawdzenie :-)
    Czas już mnie strasznie goni :-(

    Po zastosowaniu tzw. polygon'u na obu warstwach bardzo ładnie znalazło mi prawie wszędzie masę (dla pewności dodałem kilka przelotek). Jednak poszczególne obszary GND na warstwie bottom fizycznie nie są połączone z masą. Rozumiem, że program założył z automatu, że nóżki elementów przewlekanych (rezystory, diody, kondensatory ceramiczne) będą robić za przelotki...?
    Jeśli tak, to trzeba samemu pokombinować w których miejscach lutować obustronnie czy jest jakaś funkcja Eagle'a która to "pokazuje"?

    Do @dondu
    Płytka będzie robiona metodą termotransferu o czym wspomniałem we wcześniejszym poście.

    Jak uważacie - można włączać żelazko ? :-)

    0
  • #29 28 Sty 2016 21:07
    dondu
    Moderator Mikrokontrolery Projektowanie

    Ataman napisał:
    Jednak poszczególne obszary GND na warstwie bottom fizycznie nie są połączone z masą. Rozumiem, że program założył z automatu, że nóżki elementów przewlekanych (rezystory, diody, kondensatory ceramiczne) będą robić za przelotki...?

    Dobrze rozumiesz.

    Ataman napisał:
    Jeśli tak, to trzeba samemu pokombinować w których miejscach lutować obustronnie czy jest jakaś funkcja Eagle'a która to "pokazuje"?

    Nie ma bo otwory z zasady są metalizowane.

    Ataman napisał:
    Jak uważacie - można włączać żelazko ? :-)

    Moim zdaniem można :)

    0
  • #30 28 Sty 2016 22:01
    Ataman
    Poziom 8  

    Dzięki za szybką odpowiedź.
    Jeśli uważasz, że projekt jest OK to jutro biorę się do roboty ;-)
    Jak skończę i uruchomię (mam nadzieję że będzie działać) to się odezwę.

    Jeszcze jedno. Czy po zakończeniu lutowania (bez cynowania i soldermaski) trzeba/warto zmywać kalafonię? Mam tylko spirytus "spożywczy" - może być jakby co?
    Pozdrawiam

    0