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

Silnik DC nie obraca się w przeciwnym kierunku z mostkiem H TB6612FNG

Natalia02bx 15 Lut 2016 20:36 1212 3
REKLAMA
  • #1 15439139
    Natalia02bx
    Poziom 7  
    Cześć. Buduję robota i jako platformę mobilną wykorzystuję starą zabawkę ze (samochód, koła, podwodzie i silnik) nie wiem jaki mam silnik podejrzewam że zwykły DC. Już jestem praktycznie w końcowej fazie budowy, mam program który jako tako działa ALE! Dopiero teraz zauważyłam że programowo ustawiając silnik w tryb obrotów w kierunku przeciwnym do ruchu wskazówek zegara silnik nie reaguje, ani nie drgnie. Jak zamieniłam przewody i dałam ruch do przodu to obraca się w przeciwnym kierunku, ale programowo nie działa. Korzystam z mostka H - układu scalonego TB6612FNG, programuje wejścia podłączone do pinów mikrokontrolera i sama definicja kierunków wygląda tak:

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Przód i Zatrzymanie działa a Tył nie. Ktoś może mi pomóc? Pliiiiis :)
  • REKLAMA
  • #2 15439165
    grko
    Poziom 33  
    Pokaż trochę więcej kodu. Użycie powyższych makr może być niebezpieczne w niektórych przypadkach. Np:

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    Jeżeli zamiast makr użyjesz funkcji zdefiniowanych jako static inline nie stracisz nic na wydajności.
  • REKLAMA
  • #3 15440961
    Natalia02bx
    Poziom 7  
    Dobra naprawiłam, miałam malutki błąd w programie i podczas 'suchego' testu bez żadnych warunków czy funkcji silnik kręci sie w obie strony i zatrzymuje się. Ale wewnątrz pętli lub warunku pojazd nie jedzie do tyłu. Stoi w miejscu. Gdy w programie wprowadzam komendę jazdy do przodu (obroty w kierunku zgodnym z ruchem wskazówek zegara) albo zatrzymania, to nie ma z tym problemu, z kolei jazda do tyłu (obroty przeciwnie do ruchu wskazówek zegara) nie wykonuje się, robot w ogóle nie wykonuje tej czynności. Czy to może być wina makr #define PRZOD... itd? Powinnam stworzyć takie funkcje static inline? To się definiuje w pliku nagłówkowym tak?
REKLAMA