Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 30 sty 2025, o 18:18


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
Autor Wiadomość
PostNapisane: 12 sty 2014, o 15:14 
Offline
Nowy

Dołączył(a): 12 sty 2014
Posty: 3
Pomógł: 0

Witam!
Problem polega na tym, że po połączeniu całego schematu :
Obrazek
silnik niestety po wciśnięciu guzików stoi w miejscu i drży.
Zasilanie mikroprocesora oraz L293 VCC jest z USB ASP a zasilanie silnika doprowadzone na V+ jest z baterii 9V obniżone przez rezystor 27 Ω aby było koło 7,4 V.
Specyfikacja silnika krokowego bipolarnego:

Liczba kroków: 200
Napięcie znamionowe: 7,4 V
Pobór prądu na cewkę: 280 mA
Rezystancja cewki 26 Ω
Indukcyjność uzwojenia: 19,2 mH
Moment trzymający 650g*cm (0,0637 Nm)
Średnica wału: 5 mm
Masa: 130 g
Wymiary: 35 x 35 x 26 mm (bez wału) - NEMA 14

Tranzystory BS170

Niestety jestem początkującym w mikrokontrolerach i nie wiem jak sobie poradzić z tym problemem. Poniżej zamieszczam kod programu :
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Silnik powinien po wciśnięciu 1 guzika zrobić 50 kroków w prawo, drugi guzik 50 kroków w lewo, 3 guzik 1 krok w prawo, 4 guzik 1 krok w lewo, ale niestety tylko drży.
Silnik wpinam na L293
1Y - czarny przewód
2Y - zielony przewód
3Y - czerwony przewód
4Y - niebieski przewód
Próbowałem różnych kombinacji ale niestety jest tak samo.
Mikroprocesor jest na kwarcu 16 MHz.

Bardzo proszę o pomoc i wyrozumiałość.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 sty 2014, o 16:06 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sie 2013
Posty: 119
Lokalizacja: Cinisi
Pomógł: 12

Na początek polecam obejrzeć Kurs EAGLE http://mirekk36.blogspot.com/p/spis-tresci.html :) to ułatwi życie nam wszystkim :) Nie jestem specjalistą ale wczoraj też się bawiłem trochę silniczkiem krokowym bipolarnym i zauważyłem że musi być odpowiednio dobrana częstotliwość pracy tegoż silnika inaczej nie będzie się kręcił tylko drżał... metodą prób i błędów powinieneś dojść do tego :) i pytanie czy posiadasz bluebooka ?

_________________
sig off :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 sty 2014, o 18:36 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 29 sty 2012
Posty: 777
Lokalizacja: Karpicko k. Wolsztyna
Pomógł: 197

Kodu nie analizowałem ale więc na jego temat się nie będę wypowiadał. Ale do dwóch rzeczy mam wątpliwości.

Po pierwsze to podłączenie tranzystorów. Wnioskuję, że chciałeś za ich pomocą odwrócić sygnały wychodzące z PC0 i PC1. Jeśli na PC1 będzie stan wysoki to na wejściu 1A też będzie stan wysoki. Tranzystor się otworzy i ściągnie wejście 2A do masy. Czyli wszystko dobrze. Ale jeśli na PC1 będzie stan niski to oczywiście na wejściu 1A również będzie stan niski. Tranzystor zostanie zatkany.I teraz jaki stan będzie panował na wejściu 2A? Dla pewności podciągnął bym to wejście to VCC rezystorem 10k. A mosfeta zmienił na jakiś tranzystor bipolarny NPN np. BC547.

Po drugie to zasilanie silnika z baterii. Nie wiem jaką masz baterię ale jeśli masz popularna baterię 9V 6f22 to ona ma za małą wydajność aby służyć jako zasilanie takiego silnika. Najlepiej tu sprawdził by się zasilacz o odpowiedniej wydajności np. 1A.
No i jeszcze ten rezystor na zasilaniu. Przecież na nim będzie powstawał dodatkowy spadek napięcia. Poza tym na samym układzie L293 powstaje spadek napięcia. Z tego co pamiętam to jest to około 1,4V. Więc może się okazać, że rezystor będzie zbędny bo napięcie na silniku będzie mniejsze od napięcia zasilania o ten spadek napięcia na L293.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 sty 2014, o 18:46 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

Spadek wychodzi 27R * 280mA = 27 * 0,28 = 7,56V, więc dla cewki silnika zostaje 1,5V ale lepiej wstaw 2 diody na 1A np. 1N4007 połączone szeregowo zamiast tego rezystora. 9V - 2*0,7V = 7,6V
Co do programu to może lepiej naskrobać coś prostszego w stylu ustaw port, czekaj, ustaw port i jak to zadziała to wiadomo, że sprzęt jest dobry i można lecieć dalej.
Zamiast pisać:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

i marnować cenną pamięć RAM zrób tak:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Myślę też że lepiej używać typy zmiennych w postaci uint8_t, int8_t, uint16_t,.. uint32_t,... int64_t. To jest to samo co chary, inty i longi, a od razu widać jaki rozmiar ma zmienna. Taka konstrukcja:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

też utrudnia analizę kodu. Czytelniej jest:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

Od razu wiadomo, które bity w rejestrze zostały ustawione. Jak się nie chce to można jeszcze tak:
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

ale dla timera taki sposób też będzie nieczytelny

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 12 sty 2014, o 19:15 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

Jest jeszcze jeden malutki problemik.
Jeśli wykonasz płytkę według tego schematu, albo zmontujesz na stykówce...
Ten układ nigdy Ci nie zadziała. Cokolwiek wgrasz do procka będzie on w stanie
permanentnego RESETU.

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO