Skocz do zawartości

LF z kursu - problem z uruchomieniem.


aixI

Pomocna odpowiedź

Cześć, zrobiłem niedawno LF'a z kursu Nawyka, wgrałem program, podłączam silniki (przerobione serwa), podłączam zasilanie (15V 5A potem idzie do stabilizatora 5V--> zasilanie silników mam tak jak na schemacie, czyli pod 5V) i jak wszystko zrobiłem włączyłem robota i oba silniczki poruszyły się nieznacznie i zauważyłem, że czujników nie mam podpiętych :/ od razu wyłączam robota, podłączam czujniki i znowu włączam i nic, dioda led tylko świeci.

Mogło się coś z mostkiem zrobić jak nie podłączyłem czujników od razu? i włączyłem robota bez nich?

AixI.

[ Dodano: 27-10-2012, 16:57 ]

Granice reagowania na linię mam ustawioną na 350, przynajmniej tak mi się wydaje.

Link do komentarza
Share on other sites

Te silniki z serwa pobierają +/- 1A może mniej przy lekkim obciążeniu. Nic nie wyczułem żeby mostek i stabilizator się grzał (sprawdzałem palcem). Jak chodzi o połączenia to jak lutowałem według zdjęć z kursu to od razu sprawdzałem miernikiem i na koniec jak wszystko złożyłem też sprawdzałem, żadnych zwarć. Diody ir z CNY70 świecą.

[ Dodano: 27-10-2012, 20:56 ]

A zapomniałbym sprawdziłem ile daje mostek na "wyjściu" silników na jednym było ok. 3V a na drugim kanale było też z 3V. (zasilanie obu silników to 5V)

[ Dodano: 27-10-2012, 21:00 ]

Jak chodzi o silniki to dokładnie nie wiem ile pobierają przy lekkim obciążeniu musiałbym sprawdzić. Wiem że bez obciążenia (na biegu jałowym) pobierają może z 0.30A.

Link do komentarza
Share on other sites

A masz świadomość tego, że mostek może obsłużyć tylko do 600mA na kanał(silnik)? Spróbuj odpiąć oba silniki i mierzyć napięcie na złączu, jednocześnie przesuwając czujnikami nad linią.

Jeśli masz jakieś inne silniki, na mniejszy prąd, to możesz spróbować czy ruszą.

No i druga, równie ważna sprawa - stabilizator jest na ile amperów? To wszystko wygląda mi tak, jakby układ się "dławił" - wzrost poboru prądu->spadek napięcia->restart mikrokontrolera->wzrost poboru prądu->spadek napięcia itd. wiele razy na sekundę:]

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

Sprawdzałem silniki ile pobierają prądu:

Bieg jałowy: 10-15mA

Lekkie obciążenie: 25-30mA

Mam stabilizator 5V 1A --> http://electropark.pl/stabilizatory-napiecia-liniowe-jednonapieciowe/489-7805-5v-1a-stabilizator-napiecia-5901000489008.html

No to tak:

Jak zmieniłem silniki (serwa) na silniczki z DVD to po włączeniu robota kręciły się. Przesuwając kartkę z czarnym paskiem pod czujnikami wyszło coś takiego:

-prawy czuj: oba silniki się kręcą.

-środkowy czuj: oba silniki się kręcą.

-lewy czuj: kręci się prawy silnik, lewy stoi.

Stabilizator się grzeje niezależnie od tego, czy silniki są podpięte, czy ich nie ma w ogóle.

Spróbuj odpiąć oba silniki i mierzyć napięcie na złączu, jednocześnie przesuwając czujnikami nad linią.

Lewy silnik:

-lewy czuj. biało: 3V, czarno: 1.6V

-środkowy czuj. biało: 3V, czarno: 3V

-prawy czuj. biało: 3V, czarno 3V

Prawy silnik:

-lewy czuj. biało: 3V, czarno: 3V

-środkowy czuj. biało: 3V, czarno: 3V

-prawy czuj. biało: 3V, czarno: 3V

Napięcie na czujnikach wynosi 3.6V (?) a powinno być 5V.

Dodam też filmik. U mnie dioda nie mruga tak jak inny mieli (jak czytałem inne posty z kursu)

https://www.youtube.com/watch?v=RdqQhNk5eJQ

Link do komentarza
Share on other sites

Sprawdź dobrze, czy to złącze między płytką główną i płytką z czujnikami dobrze styka, dwie osoby z forum mi kiedyś wysłały roboty "bo nie działał" i okazało się, że wszystkiemu jest winne to właśnie złącze, choć podobno sprawdzały. Próbowałeś z domyślnymi ustawieniami granicy w programie?

Link do komentarza
Share on other sites

Prawy czujnik (patrząc na robota stojąc za nim) nie reaguje na linię. Jeśli czujniki "świecą", to podejrzewałbym sygnał biegnący od czujnika do przetwornika ADC, co dodatkowo wskazywałoby na złącze, jako najbardziej prawdopodobną przyczynę problemów...

Link do komentarza
Share on other sites

Akurat miałem okazję połączyć ze sobą płytkę z czujnikami do płytki z uC (połączyłem je ze sobą stykając goldpiny ze sobą) i nadal tak samo.

Stabilizator strasznie się grzeje.

*Na złączu czujników jest nadal 3.6V

*Na pinach mostka:

-pin 16: 3.5V

-pin 8: 3.5V

*Na pinach uC:

-pin 7: 3,5V (VCC)

-pin 20 / 21: 5V (AVCC / AREF)

*Na wyjściu stabilizatora jest 5V.

[ Dodano: 28-10-2012, 19:35 ]

Dodam jeszcze, że zamieniłem miejscami CNY70 i było bez zmian, czyli można wykluczyć, że czujnik może nie działać.

Link do komentarza
Share on other sites

Nic dziwnego, że się grzeje - obniżasz napięcie z 15V do 5V, do tego zasilasz z niego napęd... Dlaczego nie zbudowałeś robota po prostu tak, jak było to opisane w artykule i eksperymentowałeś na własną rękę po udanym uruchomieniu? Szczerze mówiąc brakuje mi już pomysłów, co może być źródłem problemów w tym wszystkim.

Może spróbuj zasilić robota niższym napięciem (w okolicach 8V), a jeszcze lepiej gdybyś silniki, czyt. nóżkę 8 mostka, zasilił bezpośrednio z tego napięcia (z pominięciem stabilizatora).

Co do badania sygnału, to zamiast tego stykania goldpinów, chodziło mi o pomiar ciągłości multimetrem - od nóżki transoptora, do nóżki uC (tej z ADC) przy normalnie złożonym robocie.

Link do komentarza
Share on other sites

Okej, naprawiłem ten błąd dziwnego napięcia na silnikach i płytce z czujnikami. Musiałem przylutować VCC (7) do AVCC i AREF (20 i 21) + GND (8) z GND (22). Niestety jakimś cudem zapomniałem to połączyć ze sobą 🙁 (i tak w nawiasie mówiąc, czy mogło się coś z uC stać jak wcześniej tego nie połączyłem i włączyłem robota myśląc, że wszystko jest ok?)

Teraz na silnikach jest 4.42V a na płytce z czujnikami 5V więc jest ok.

Jak na razie został tylko niedziałający prawy czujnik.

Dodam filmik z teraźniejszym działaniem robota.

https://www.youtube.com/watch?v=pepgFyXBwAg&list=WLq-z84ZMmoEqCV1vCCrpWLjiLG7FAEUxq&feature=mh_lolz

Link do komentarza
Share on other sites

Mam takie pytanie, w tym wycinku z kodu źródłowego jest napisane "W = Getadc(3)", czyli odpowiada na ADC 3?

Wczytaj_stany_przetwornikow:
Start Adc
W = Getadc(5)
W = Getadc(5)
Stop Adc
Czujnik_lewy = W
Start Adc
W = Getadc(4)
W = Getadc(4)
Stop Adc
Czujnik_srodkowy = W
Start Adc
W = Getadc(3)
W = Getadc(3)
Stop Adc
Czujnik_prawy = W
Return

To gdybym zmienił to --> "W = Getadc(3)" na, np. to --> W = Getadc(2) i teraz ten wycinek kodu wyglądałby tak:

Wczytaj_stany_przetwornikow:
Start Adc
W = Getadc(5)
W = Getadc(5)
Stop Adc
Czujnik_lewy = W
Start Adc
W = Getadc(4)
W = Getadc(4)
Stop Adc
Czujnik_srodkowy = W
Start Adc
W = Getadc(2)
W = Getadc(2)
Stop Adc
Czujnik_prawy = W
Return

To zamiast ADC 3 działałby ADC 2?

Link do komentarza
Share on other sites

Cześć, mając trochę wolnego czasu wziąłem się za robota. Zmieniłem połączenie wyjść czujników do ADC. W oryginale jest: ADC 5,4,3, a ja ustawiłem na ADC 2,1,0 i zmieniłem połączenia kablami oczywiście. Włączyłem robota i nadal tak samo. Prawy nie reaguje na czarną linię. Nie wiem czego może to być przyczyna. Sprawdziłem połączenia prawy czuj. --> ADC --> połączenia na płytce z uC i płytce z czujnikami i wszystko wydaje mi się, że jest ok. Tam gdzie widziałem jakieś podejrzane luty, zaraz poprawiłem. Macie jakieś pomysły?

Pozdro, AixI.

Link do komentarza
Share on other sites

Może spróbuj napisać program, który zareaguje tylko na dane z niedziałającego czujnika - niech zapali diodę albo ruszy silnikiem. Jeśli dalej nie będzie działać, a czujnik faktycznie jest sprawny, to pozostaje tylko błąd w połączeniach

Link do komentarza
Share on other sites

Cześć, spróbowałem napisać taki kod. Jak czujnik prawy jest na białym to silniki się kręcą, a jak czujnik prawy jest na czarnym to jeden z silników się wyłącza. Kompilator nie pokazuje błędów. Jak masz czas to zobacz, czy kod jest ok.

Kod:

$regfile = "m8def.dat"
$crystal = 1000000
'Konfiguracja przetwornika analog-cyfra (ADC)
Config Adc = Single , Prescaler = Auto
'Konfiguracja sterowania sprzętowym PWM
Config Timer1 = Pwm , Pwm = 8 , Prescale = 1 , Compare A Pwm = Clear Down , Compare B Pwm = Clear Down
'Konfiguracja portów
Config Portd = Output
Config Portb = Output
'Opis portów
'Enable1 - Silnik lewy - Portb.1 (PWM1A)
'Enable2 - Silnik prawy - portb.2 (PWM1B)
'Input1 - Silnik lewy A - Portd.3
'Input2 - Silnik lewy B - Portd.2
'Input4 - Silnik prawy A - Portd.0
'Input3 - Silnik prawy B - Portd.1
'Czujnik prawy - ADC0 (pin 23)


Silnik_lewy_a Alias Portd.3
Silnik_lewy_b Alias Portd.2
Silnik_prawy_b Alias Portd.0
Silnik_prawy_a Alias Portd.1

'Granica reagowania na linię - należy dobrać doświadczalnie
Const Granica = 500

'Deklaracje zmiennych
Dim Czujnik_prawy As Single
Dim W As Word

'Blok instrukcji
Set Silnik_lewy_a
Reset Silnik_lewy_b
Set Silnik_prawy_a
Reset Silnik_prawy_b

Do
  Gosub Wczytaj_stany_przetwornikow
  If  Czujnik_prawy > Granica Then
     Pwm1a = 255
     Pwm1b = 0
  Else
     Pwm1a = 255
     Pwm1b = 255
  End If
Loop
End

Wczytaj_stany_przetwornikow:
Start Adc
W = Getadc(0)
W = Getadc(0)
Stop Adc
Czujnik_prawy = W
Return
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • 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.