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

RS232/Atmega16A/l293D - poprawność schematu elektrycznego

fadex 18 Lis 2012 21:59 3819 17
  • #1 11546182
    fadex
    Poziom 9  
    Witam, chciałbym stworzyć zdalnie sterowanego poprzez kabel RS232 robota mobilnego. Jestem niestety początkujący, przeglądając tematy i czytając udało mi się stworzyć schemat elektryczny, chciałbym jednak opinii na jego temat :)

    Chciałbym się dowiedzieć czy jest całkowicie poprawny, oraz mam kilka pytań:
    1. Czy połączenie RS232 z MAXEM jest poprawne
    2. Czy kabel RS232 może być żeński-żeński
    3. Czy diody sygnalizujące ruch silnika są odpowiednio umiejscowione
    4. Czy liczba i połączenie kondensatorów jest wystarczająca do stabilnej pracy układu
    5. Jakie byłyby ewentualne korzyści z dorzucenia kwarcu 16Mhz i czy jest on konieczny
    6. Co zrobić z niepołączonymi pinami w atmedze (również Xtal1 i 2)
    7. Czy rezystorki 20om na silniku M2 są potrzebne, jest to mały silniczek z zabawki i boje się go spalić, niestety nie znam parametrów tego silniczka
    8. Jak skonfigurować wyjścia w atmedze (PA1-PA4) do sterowania mostkiem H
    9. Czy jakbym miał problem z napisaniem programu sterującego, mam zakładać temat w innym dziale, czy po prostu napisać dodatkowego posta?
    RS232/Atmega16A/l293D - poprawność schematu elektrycznego
  • #3 11546779
    dondu
    Moderator na urlopie...
    Moje uwagi:

    - Chcesz zasilać mikrokontroler i silniki z tego samego źródła? Nieco ryzykowne z powodu możliwych zakłóceń z silników. Nie podajesz także jaki akumulator. Od tego zależy jak rozwiążesz zasilanie całości.

    - Mostek H podłącz tak by wykorzystać wyjścia PWM timera - łatwiej będziesz sterował silnikami.

    - rezystory na silnikach -

    - kwarc? można, ale czy trzeba? Za mało danych o projekcie robota, jego funkcjonalnościach, itp.

    - filtruj zasilanie L293D tak samo jak mikrokontrolera.

    - rezystory na silniku - może pokaż zdjęcia i wymiary silnika, bo może niepotrzebnie się martwisz. To także zależy od źródła rozwiązania zasilania.

    - w jakim celu chcesz mieć LED-y na silnikach? Obserwacja w czasie pracy? Czy do tego potrzeba, aż tak dużego strumienia światła? Jeżeli nie zwiększ rezystory dwukrotnie.

    - nie używaj symbolu kondensatora spolaryzowanego do kondensatorów bez polaryzacji.

    - niepodłączone piny zaprogramuj by nie łapały zakłóceń: http://mikrokontrolery.blogspot.com/2011/04/zakocenia-w-pracy-mikrokontrolerow.html

    Co do pytania o program możesz spokojnie założyć nowy odpowiednio nazwany temat.

    EDIT:
    A na koniec ode mnie 20pkt., bo masz zaledwie 2,5 a mogą Ci się przydać.
  • #4 11547016
    Piotr Piechota
    Poziom 22  
    Z moich doświadczeń przy układach impulsowych warto dołożyć z 100nF na reset
  • #5 11547834
    fadex
    Poziom 9  
    Co masz na myśli że złe filtrowanie procesora, nie wystarczy aby wejścia Vcc zostały podłączone do napięcia i przez kondensator 100nF do masy?? Chyba, że niepoprawnie to zaznaczyłem na schemacie, czy może AREF powinien mieć swój oddzielny kondensator?? Wtedy AREF przez kondensator do masy, czy też podpiąć do zasilania?

    Wiem, że schemat mało profesjonalny :) zapoznam się z poradnikami i poprawie

    Zasilam narazie zwykłą ładowarką telefonową, jako iż nie bardzo chce mi się bawić w baterie, skoro i tak sterowanie odbywa się przez kabel. Może w przyszlości pomyśle o czymś bezprzewodowym. Także nie wiem czy miał by sens dorzucenia drugiej ładowarki do zasilania silników, chyba że lepiej użyć do nich baterii. Nie da się uniknąć zakłóceń silników korzystając z jednego źródła??

    Nie bardzo chciałem korzystać z PWN, ale jeśli będzie to na korzyść to zrobię to :)

    Filtrując l293D to wyjścia Vcc1 i Vcc2 przez kondensator 100nF do masy? Czy jeszcze 1-2EN 3-4EN?

    Jeżeli nie używam kwarcu to dane piny pozostawić wolne?

    Ledy na silniku dla obserwacji i dla oka, mogę zwiększyć rezystory 2x

    Co z połączeniem RS232, jest ono poprawne?

    Silniczek wygląda tak: Miał już w sobie jakies rezystorki, aczkolwiek bałem się że są za małe na 5V, jako iż pracował prawdopodobnie (pewności nie mam) z mniejszym zasilaniem. Wymiary na oko 1x1.5x2.5 (cm).
    RS232/Atmega16A/l293D - poprawność schematu elektrycznego

    Dzięki za odpowiedzi :)
  • #6 11548106
    mirekk36
    Poziom 42  
    fadex napisał:
    Co masz na myśli że złe filtrowanie procesora, nie wystarczy aby wejścia Vcc zostały podłączone do napięcia i przez kondensator 100nF do masy?? Chyba, że niepoprawnie to zaznaczyłem na schemacie, czy może AREF powinien mieć swój oddzielny kondensator?? Wtedy AREF przez kondensator do masy, czy też podpiąć do zasilania?


    No ale widzisz - gdyby starczyło to bym ci nie polecał tego poradnika o prawidłowym filtrowaniu zasilania. Więc wychodzi na to że ja swoje - a ty swoje ;) czyli "od tyłu"


    Jeszcze raz - polecam ci przeczytać dokładnie ten link to wyjaśni ci się także ten błąd z AREF który masz - bo też masz

    http://mirekk36.blogspot.com/2012/04/mikrokontroler-prawidowe-zasilanie.html

    co to za problem kliknąć jak już jesteś w necie i poczytać chwilkę - wszystko bardzo jasno opisane i z fajnymi przykładami.
  • #7 11548269
    dondu
    Moderator na urlopie...
    Mirekk36 ma rację, zwracając Ci uwagę, że dostajesz informacje w postaci zwrócenia uwagi na problem oraz link gdzie możesz się zapoznać z niezbędną wiedzą, a Ty nie czytasz tylko się spieszysz. Pośpiech to zły doradca.

    Przy projektach z elementami indukcyjnymi (silniki, przekaźniki, itp.). w szczególności należy zadbać o odpowiednio zabezpieczenie poprzez filtrowanie zasilania. Dlatego wszystkie piny zasilające, każdego układu scalonego powinny posiadać kondensator 100nF (do masy). Warto także dodać jakieś magazyny energii w ich pobliżu, czyli np. 10uF.

    100nF na Reset, które proponuje Piotr Piechota także warto dodać w takim projekcie z silnikami.

    AREF - tak podłączony AREF jak na Twoim schemacie nie jest błędem, tym bardziej, że ze schematu na razie widać, że nie używasz przetwornika analogowo cyfrowego (ADC). Ale tutaj rodzi się pytanie, czy rozbudowując robota nie zechcesz kiedyś jednak wykorzystać ADC? Dlatego warto odłączyć AREF od AVcc i podłączyć do niego tylko kondensator 100nF (to zaledwie parę groszy). W ten sposób pozostawiasz sobie pole do manewru w przyszłości. Więcej o tym temacie znajdziesz tutaj: http://mikrokontrolery.blogspot.com/2011/03/avr-adc-podlaczenie.html

    Zasilanie
    Nie pisałem o podłączeniu drugiej ładowarki, tylko o rozdzieleniu zasilania mikrokontrolera od zasilania silników. Wykonać to warto, a wystarczy zastosować regulator napięcia dla mikrokontrolera. Co więcej powinieneś to zrobić, bo ładowarka może mieć znacznie wyższe napięcie niż wytrzyma mikrokontroler. Nie podałeś napięcia ładowarki, więc trudno odnieść się do konkretnego przypadku.

    Innymi słowy powinieneś dodać regulator napięcia i rozdzielić zasilanie mikrokontrolera od silników. Regulator i silniki zasilane z ładowarki, a mikrokontroler z regulatora. Jeżeli ładowarka ma w okolicach 5V to niezbędny będzie regulator LDO: http://mikrokontrolery.blogspot.com/2011/04/ldo-regulatory-napiecia-dropout-voltage.html

    PWM - Do sterowania szybkością obrotów silników, będziesz stosował PWM. Warto więc wykorzystać wbudowane timery i wyjścia PWM.

    KWARC - tak możesz zostawić wolne. Ale jeżeli będziesz projektował płytkę PCB, to zastanów się czy nie warto jednak przewidzieć ścieżek dla kwarcu i 2 kondensatorów, by w przyszłości móc je dolutować.

    MAX232
    Zaglądnij do dokumentacji: http://www.datasheetcatalog.org/datasheet/texasinstruments/max232.pdf
    oraz np. tutaj: http://www.mikrocontroller.net/articles/AVR-Tutorial:_UART
  • #8 11548919
    fadex
    Poziom 9  
    Macie racje pospieszyłem się z tym pytaniem, które było bardzo ładnie wyjaśnione :) także wybaczcie :)

    Ładowarka posiada dokładnie 4.9V, zaś atmega 16A wg datasheet pracuje przy napięciu 2.7-5.5V. Tutaj pytanie czy mam stosować przetwornice 5V, czy stabilizator 3.3V, ale czy 3.3V poradzi sobie z resztą układu np. mostkiem H? Bo chyba stabilizator 5V nie poradzi sobie z napięciem 4.9V?? Czy poprostu napięcie 4.9V nie potrzebuje stabilizacji?


    A co myślicie o rezystorkach na tym silniczku?? wywalić?

    PWM - oczywiście literówka

    Może jeszcze dzisiaj postaram się poprawić schemat, uwzględniając tutoriala przesłanego przez kolegę, to pokaże wynik :)
  • #9 11548986
    dondu
    Moderator na urlopie...
    fadex napisał:
    Ładowarka posiada dokładnie 4.9V, zaś atmega 16A wg datasheet pracuje przy napięciu 2.7-5.5V. Tutaj pytanie czy mam stosować przetwornice 5V, czy stabilizator 3.3V, ale czy 3.3V poradzi sobie z resztą układu np. mostkiem H? Bo chyba stabilizator 5V nie poradzi sobie z napięciem 4.9V?? Czy poprostu napięcie 4.9V nie potrzebuje stabilizacji?


    Sprawdź wymagane napięcia w datasheet mostka: http://idmax.free.fr/Aide/Stepper/l293.pdf
    Szukaj minimalnej wartości parametru VCC1.

    Ważna jest także wydajność prądowa ładowarki - sprawdź co pisze na jej obudowie. Jeżeli będzie za mała, to po włączeniu silników może nastąpić spadek napięcia i w konsekwencji problem z pracą mikrokontrolera i/lub mostka.

    Jednak nie rezygnuj z regulatora napięcia części cyfrowej Twojego robota.


    fadex napisał:
    A co myślicie o rezystorkach na tym silniczku?? wywalić?

    Sądzę, że silnik wytrzyma 5V. Zawsze będziesz mógł regulować przez PWM, więc spokojnie go nie uszkodzisz.


    fadex napisał:
    Może jeszcze dzisiaj postaram się poprawić schemat, uwzględniając tutoriala przesłanego przez kolegę, to pokaże wynik :)

    Możesz zaglądnąć także tutaj: http://mikrokontrolery.blogspot.com/2011/04/jak-projektowac-czytelne-schematy.html
    Znajdziesz tam sporo schematów wykonanych czytelnie, w tym także z mostkiem H, więc jest na czym się wzorować.
  • #10 11549151
    fadex
    Poziom 9  
    Zasilanie mostka H jest w granicach 4.5V-36V, natomiast wejścia EN są na schemacie z napięciem 3V, więc teoretycznie 3.3V na atmedze powinno działać, z zewnętrznym zasilaniem samego mostka.

    Co do ładowarki to: 4.9V 450mA, nie wiem czy będzie duży spadek z powodu zasilania silniczków, gdyż nie znam ich parametrów, wydaje mi się, że nie powinno być problemu, aczkolwiek poprawcie mnie jeśli się mylę.
  • #11 11549328
    dondu
    Moderator na urlopie...
    fadex napisał:
    Zasilanie mostka H jest w granicach 4.5V-36V, natomiast wejścia EN są na schemacie z napięciem 3V, więc teoretycznie 3.3V na atmedze powinno działać, z zewnętrznym zasilaniem samego mostka.

    Ten układ ma dwa piny zasilające. Jeden zasila logikę mostka, drugi tranzystory sterujące silnikami. Podałem Ci dokładnie o który parametr chodzi. Ty podałeś pierwszy z brzegu, czyli z pierwszej strony datasheet. Bądź dokładniejszy w tym co robisz i sprawdź jeszcze raz właściwy parametr.


    fadex napisał:
    Co do ładowarki to: 4.9V 450mA, nie wiem czy będzie duży spadek z powodu zasilania silniczków, gdyż nie znam ich parametrów, wydaje mi się, że nie powinno być problemu, aczkolwiek poprawcie mnie jeśli się mylę.

    Masz woltomierz? Podłącz oba silniki i sprawdź napięcie na wyjściu zasilacza.
  • #12 11549697
    fadex
    Poziom 9  
    dondu napisał:

    Ten układ ma dwa piny zasilające. Jeden zasila logikę mostka, drugi tranzystory sterujące silnikami. Podałem Ci dokładnie o który parametr chodzi. Ty podałeś pierwszy z brzegu, czyli z pierwszej strony datasheet. Bądź dokładniejszy w tym co robisz i sprawdź jeszcze raz właściwy parametr.


    Masz racje, Vcc1 ma 4.5-7V, co nie zmienia faktu iż najmniejsza wartość ma tu znaczenie.

    dondu napisał:
    Co do ładowarki to: 4.9V 450mA, nie wiem czy będzie duży ]
    Masz woltomierz? Podłącz oba silniki i sprawdź napięcie na wyjściu zasilacza.


    Z podłączonymi 2 silniczkami bezpośrednio do ładowarki, bez rezystorów Vcc na ładowarce waha się od 4.98-5V, więc nie ma spadku.


    EDIT:
    Poprawiłem schemat, co do RS232 nadal nie jestem pewny, aczkolwiek czytałem, że można zewrzeć piny 4-6, oraz 7-8. Chociaż możliwe, że tak też jest poprawnie.

    RS232/Atmega16A/l293D - poprawność schematu elektrycznego
  • #13 11550550
    dondu
    Moderator na urlopie...
    fadex napisał:
    Masz racje, Vcc1 ma 4.5-7V, co nie zmienia faktu iż najmniejsza wartość ma tu znaczenie.

    Owszem, chciałem jedynie zwrócić Ci uwagę, żebyś dokładnie czytał datasheety.


    fadex napisał:
    dondu napisał:
    Co do ładowarki to: 4.9V 450mA, nie wiem czy będzie duży
    Masz woltomierz? Podłącz oba silniki i sprawdź napięcie na wyjściu zasilacza.


    Z podłączonymi 2 silniczkami bezpośrednio do ładowarki, bez rezystorów Vcc na ładowarce waha się od 4.98-5V, więc nie ma spadku.

    Cytuj proszę dokładnie, bo nie wszystko co cytujesz ja napisałem :)

    Brak znacznego spadku napięcia - to super. W takim układzie mógłbyś zaryzykować inne rozwiązanie zasilania mikrokontrolera i scalaków. Np. rozdzielenie zasilania cyfrowej od silników poprzez wpięcie w szereg z zasilaniem części cyfrowej rezystor 47R + osobne kondensatory elektrolityczne po stronie części cyfrowej i przed nią. Przy takim rozwiązaniu dodaj na wszelki wypadek 470uF blisko pinu VCC2 w L293D, by ograniczyć u źródła ewentualne zakłócenia.

    Ale czy warto skoro można zastosować regulator LDO, tym bardziej, że niechybnie i tak wyposażysz robota w akumulator.


    Schemat
    No teraz to wygląda super i łatwo sprawdzać.

    1. L1 niepotrzebny bo nie używasz przetwornika, ale na przyszłość może się przydać.
    2. Dodaj kondensator do Vcc2, o którym piszę wyżej.
    3. Kondensatory przy MAX232 są niezgodne z datasheet.

    Reszta wygląda OK.
  • #14 11550590
    fadex
    Poziom 9  
    1. ok wywalę w takim razie L1

    2. Hmm ale czy przy Vcc < 5V ten LDO będzie spełniał swoje zadanie? Nie bardzo natomiast rozumiem to 2 rozwiązanie, jest gdzieś może na necie gotowy schemat takiego rozwiązania??

    3. Rzeczywiście w datasheecie są kondensatory 1uF, aczkolwiek większość schematów na forum posiada 10uF, zastosowanie 10uF to jakiś szczególny błąd?
  • #15 11550639
    dondu
    Moderator na urlopie...
    fadex napisał:
    2. Hmm ale czy przy Vcc < 5V ten LDO będzie spełniał swoje zadanie?

    Po to właśnie są LDO (link podałem Ci wcześniej), dla takich sytuacji jak Twoja.

    fadex napisał:
    Nie bardzo natomiast rozumiem to 2 rozwiązanie, jest gdzieś może na necie gotowy schemat takiego rozwiązania??

    Faktycznie może kiepsko opisałem. Od włącznika S1 rozdziel zasilanie na dwa:
    1. zasilanie silników,
    2. zasilanie części cyfrowej.

    Zasilanie silników bezpośrednio do pinu VCC2 w mostku H z kondensatorem o którym pisałem.

    Zasilanie części cyfrowej poprzez szeregowo wpięty rezystor 47R. Po obu stronach rezystora daj kondensatory elektrolityczne np. 220uF + 100nF.

    Jeżeli jak piszesz zasilacz daje radę trzymać napięcie to być może to wystarczy.
    Jedynym newralgicznym momentem jest rozruch silników, gdyż wtedy ciągną spory prąd.

    Najlepszym oczywiście z możliwych rozwiązań, jest zastosowanie zasilacza o nieco większym napięciu (np. o 2V) i regulatora napięcia dla części cyfrowej.

    Po prostu spróbuj bez regulatora i jeżeli nie będzie problemów to tak zostawisz :)


    fadex napisał:
    3. Rzeczywiście w datasheecie są kondensatory 1uF, aczkolwiek większość schematów na forum posiada 10uF, zastosowanie 10uF to jakiś szczególny błąd?

    Zapewne nie, ponieważ także widziałem działające schematy z takimi kondensatorami. Ja jestem zwolennikiem stosowania się do datasheet jeśli wykonuję standardowy układ. Co innego, gdy kombinuję jakieś cuda - wtedy można wszystko :)
  • #16 11550674
    fadex
    Poziom 9  
    Czyli taki regulator np. L7805 poradziłby sobie z napięciem 4.9V? Nawet przejrzałem datasheet (czegoś juz mnie te posty nauczyły :D), aczkolwiek nie znalazłem wartości poniżej 5V.

    Co do drugiego sposobu to wokół rezystora 47ohm mam dać po jednej stronie 220uF a po drugiej 100nF, czy po obu stronach równolegle do siebie 220uF+100nF?? Vcc1 w mostku H traktujemy jako zasilanie części cyfrowej?? Czyli w skrócie, tylko Vcc2 jest zasilana bezpośrednio z kondensatorem, a reszta poprzez rezystor 47R tj(MAX232, oba Vcc Atmegi, oraz Vcc1)??
  • #17 11550693
    dondu
    Moderator na urlopie...
    fadex napisał:
    Czyli taki regulator np. L7805 poradziłby sobie z napięciem 4.9V? Nawet przejrzałem datasheet (czegoś juz mnie te posty nauczyły :D), aczkolwiek nie znalazłem wartości poniżej 5V.

    W drugim moim poście podałem Ci link, ale podam go ponownie: http://mikrokontrolery.blogspot.com/2011/04/ldo-regulatory-napiecia-dropout-voltage.html
    Wszystko jest tam wytłumaczone.


    fadex napisał:
    Co do drugiego sposobu to wokół rezystora 47ohm mam dać po jednej stronie 220uF a po drugiej 100nF, czy po obu stronach równolegle do siebie 220uF+100nF??

    Tak, dwa po każdej ze stron.


    fadex napisał:
    Vcc1 w mostku H traktujemy jako zasilanie części cyfrowej?

    Tak, bo to jest logika mostka.


    fadex napisał:
    Czyli w skrócie, tylko Vcc2 jest zasilana bezpośrednio z kondensatorem, a reszta poprzez rezystor 47R tj(MAX232, oba Vcc Atmegi, oraz Vcc1)??

    Tak.
  • #18 11550725
    fadex
    Poziom 9  
    Dziwne, że dopiero czytając drugi raz załapałem o co chodzi. Czyli biorąc przykładowy regulator MCP1727, który ma przy 450mA Vd=~0,1V, otrzymujemy mniejwiecej Vi=~5,1V. Pytanie czy owy regulator ma jeszcze jakieś przedziały w których pracuje np +/-10%, wtedy 4.9V by było możliwe. Czy możemy pominąć te 0.2V w nadziei, że będzie wszystko OK?

    Jeszcze jedna rzecz, która mnie nurtuje, a nie znalazłem odpowiedzi. Jeśli pomylę polaryzacje kondensatorów elektrolicznych i podłączę zasilanie, to owy kondensator jest dalej sprawny jeśli zmienie bieguny, czy należy go wymienić??


    EDIT:
    mogę opierać się na tym datasheecie???:
    http://html.alldatasheet.com/html-pdf/195353/MICROCHIP/MCP1725/486/1/MCP1725.html

    Input voltage 2.3-6V
    0,2V Vd
    0,5% tolerance Output
    Myślę że przy 4.9V dało by coś bliskiego 5V, chyba że wyjścia sa tylko "fixed"?
REKLAMA