Skocz do zawartości

L293DNE-nie dziala


klimek4765

Pomocna odpowiedź

Witam wszystkich,

Mam ostatnio problem z obsluga mostka H (L293DNE- datasheet praktycznie nie rozni sie od L293D)

Chce sterowac jednym silnikiem DC (TowerPro SG-90 na 5V) - powyzszym mostkiem za pomoca ATmega8,

problem w tym ze silnik kompletnie nie reaguje.

Gdy podlaczam zamiast silnika zwyklego LEDa, to swieci sie zgodnie z wysterowaniem, ale na 50% jasnosci (to raczej kwestia strat napiecia w mostku).

Uklad jest zasilany stabilizowanym napieciem 5V.

Polaczone jest wszystko jak na schemaie:

Ogolnie przyszlo mi do glowy, ze skoro w mostku sa zastosowane tranzystory bipolarne, to moze prad sterujacy wychodzacy z ATmegi8 jest za maly, a w zwiazku z tym tranzystory sa tak wysterowane ze dla Diody wystarczylo ale dla silnika juz nie.

Generalnie jezeli do wyjsc sterujacych A i B mostka podlaczam zamiast do wyjsc Atmegi zwykle przyciski pociagniete do Vcc 5V przez rezystor 2.2K to wszystko dziala.

Jest to dziwne bo przeciez na nozkach Atmegi8 w stanie wysokim powinno pojawic sie wlasnie napiecie 5V...

Czy spotkal sie ktos z podobnym problemem? Macie jakies rady o co tu chodzi?

Link do komentarza
Share on other sites

Jeśli podłączyłeś przyciski przez rezystor 2.2K, to prąd który mógł popłynąć był dużo mniejszy niż dostępny na wyprowadzeniach Atmegi8. Musisz poszukać problemu gdzieś indziej. Do czego podłączyłeś wejście ENABLE L293? Na schemacie "wisi" w powietrzu, co raczej nie jest dobrym rozwiązaniem.

Kolejna sprawa to program - na pewno dobrze sterujesz wyprowadzeniami? Podłącz multimetr albo chociaż diody LED i sprawdź, czy na pewno Atmega8 steruje wyjściami tak jak tego oczekujesz.

Link do komentarza
Share on other sites

Wybaczcie niedoprecyzowanie, robilem proby z wejsciem enable podlaczonym i wylaczonym, wiec to nie to(nawet dioda podczas tych prob swiecila niezmiennie).

Co do wysterowania z ATmegi8 - wszystko dziala, podlaczalem ledy i wszystko jest w porzadku, w sumie to mostek tez dziala, ale tylko dla LEDa a dla silnika juz nie:/

Co do rezystorow 2,2K to wlasnie sie biore za testowanie coraz mniejszych-moze to zadziala, zrobie pare prob i napisze co wyszlo

EDIT:

zmiana rezystora na mniejszy nic nie dala. Ciekawostka jest to ze LED swiecil nawet gdy sygnal sterujacy z ATmegi8 przechodzil przez rezystor kolo 50K.

Sam juz nie wiem moze ten uklad L293DNE jest jakis trefny i wprowadza az tak duze straty.

Nie jest to kwestia silnika - sprawdzalem juz 2 i zachowuja sie identycznie, sa sprawne na 100%

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Chce sterowac jednym silnikiem DC (TowerPro SG-90 na 5V)

Zacznijmy od tego: czy chcesz sterować silnikiem wymontowanym z tego serwa czy serwem w stanie fabrycznym? L293DNE tylko do pierwszego przypadku w drugim sterujesz czasem trwania impulsu http://www.leksykon.forbot.pl/Serwo_modelarskie,47.htm

Pokaż schemat całego układu, do tego z pierwszego posta dodaj filtrację zasilania.

Link do komentarza
Share on other sites

Tak, ATmega8 jest zasilana osobno, silniki osobno, probowalem juz nawet innego zasilania, wyzszego, niestabilizowanego, nic nie robi roznicy. Oczywiscie GND sa polaczone razem.

Niezaleznie od konfiguracji silnik nie dziala, a dioda podlaczona zamiast silnika swieci tak samo (mniej wiecej na 40%).

Link do komentarza
Share on other sites

Dziwna sprawa z tą diodą. Na pewno nie powinna świecić na 40% - jak ma pracować silnik skoro dioda ma problemy? Z czego zasilasz silniki?

Kiedyś miałem podobny problem i okazało się, że jak startuje silnik to powstaje skok napięcia, który resetuje procesor. Ale przy oddzielnym zasilaniu nie powinno to wystąpić.

Link do komentarza
Share on other sites

OK problem rozwiazany, faktycznie w kodzie byl blad:

if(!(PIND &_BV(PD1)))   //sprawdza czy PD1 wcisniety
	{
		PORTB &=0x00;
		PORTB |=_BV(PB1);
		PORTB &=0x00;

Nie wiem skad mi sie tam wziely te zerowania PORTB, po usunieciu ich i zostawieniu samej linijki

PORTB |=_BV(PB1);

Wszystko gra, jak na moje wyczucie powodowalo to bardzo szybkie przelaczanie miedzy stanami 0 oraz 1, co obnizylo wartosc srednia pradu sterujacego z wyjscia ATmegi8, prad sterujacy tranzystorami mostka byl mniejszy, dla LEDa starczylo, ale dla silnika juz nie.

Dziekuje wszystkim za podpowiedzi i pozdrawiam.

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.