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

Jak naprawić błąd serwa PowerHD 1235 MG z UART na ATtiny2313?

bestek87 19 Kwi 2020 22:16 477 6
REKLAMA
  • #1 18631841
    bestek87
    Poziom 9  
    Witam.

    Może ktoś mi podpowie.
    Mam podpięte servo (PowerHD 1235 MG) do płytki stykowej.
    Wciskając przyciski S1 lub S2 serwo płynie ustawia się wg. aktualnego parametru.
    Problem pojawia się gdy wysyłam wartość przez UART (dane dochodzą, widzę odebraną wartość na LCD), ale servo tylko burczy i nie chce zmienić położenia.

    Jakieś pomysły?
    Dodam że testowałem z innym serwem i z modelem MS995 problem nie występuje.
    Pomysły?
    Jak naprawić błąd serwa PowerHD 1235 MG z UART na ATtiny2313?
    Jak naprawić błąd serwa PowerHD 1235 MG z UART na ATtiny2313?

    Kod: VB.net
    Zaloguj się, aby zobaczyć kod
  • REKLAMA
  • #2 18634112
    mycodename47
    Poziom 15  
    Wydaje mi się, że zamiast if I>0 then powinno być if I2>0 then, a żeby to I2=0 miało sens powinno być za CLS:LCD I2
  • REKLAMA
  • #3 18634297
    bestek87
    Poziom 9  
    Tak masz rację moja wina szybko pisałem. I przepraszam za mój błąd bo poświęciłeś czas dla z góry źle przedstawionego kodu.
    W kodzie wgranym do procka jest prawidłowo czyli I2>0
    Nie tu tkwi przyczyna.
  • #4 18634384
    mycodename47
    Poziom 15  
    Teraz pewnie na LCD nie widzisz wartości I2, bo zanim ją wyświetlisz to ja zerujesz. Jak wyglądają dane, które wysyłasz po UART?
  • REKLAMA
  • #5 18634641
    bestek87
    Poziom 9  
    Ok poprawione.
    Tak jak pisałem z serwa
    MG995: zasilane z zewnętrzne (4,8V) działa S1/S2 oraz inkey
    Power HD1235MG: zasilane z zewnętrzne (7,4V) działa S1/S2, inkey(nie działa)

    Na wyświetlaczu otrzymuję to co wysyłam z RealTerm czyli 1,2,3,4,5,6
  • REKLAMA
  • Pomocny post
    #6 18636017
    bart-projects
    Poziom 29  
    Po pierwsze i bardzo ważne. Kiedy używasz w uC portu UART to port TX jest skonfigurowany jako wyjście i jest tam stan wysoki oprócz momentów kiedy nadaje. TX jest na PORTD.1
    Kiedy więc wciskasz przycisk podłączony do PIND.1 to robisz procesorowi kuku w postaci zwarcia.
    Lepiej przenieś przyciski na inne piny. Nad konstrukcją tej płyty spuśćmy w tym temacie zasłonę milczenia ;)

    Te servo w momencie zablokowania potrafi wziąć 9A (nota producenta) dlatego wnioskuję, że przy normalnej pracy też wcale mało nie bierze.

    Może kiedy zwiększasz pomału przyciskami to się wszystko prądowo wyrabia, ale jest problem kiedy komenda przesłana przez UART każe mu nagle skoczyć w inne położenie.
    Wybróbuj mój kawałek kodu. Z wymienionych wcześniej względów nie dodałem obsługi przycisków.
    Wartości będą się płynnie zmieniać.

    Kod: VB.net
    Zaloguj się, aby zobaczyć kod


    Jak naprawić błąd serwa PowerHD 1235 MG z UART na ATtiny2313?
  • #7 18637176
    bestek87
    Poziom 9  
    Co fachowiec to fachowiec :D
    Programowy Incr i Decr rozwiązał problem.

    Dziękuję.

    [PROBLEM ROZWIĄZANY]
REKLAMA