Witam Mam problem z wysterowaniem serwa modelarskiego Tower Pro SG90. Napisałem taki program jak poniżej, serwo powinno się samo obracać ale niestety tak się nie dzieje :( po włączeniu zasilania obróci się o pewien kąt i nic nie reaguję. Jak sprawdzić czy w ogóle to serwo nie jest uszkodzone? Oraz dlaczego serwo nie chce się obracać? Z góry dziękuję za wszelkie odpowiedzi. Pozdrawiam. '$sim $regfile = "m8def.dat" $crystal = 8000000 '******************************************************************************* Config Lcd = 16 * 2 Config Lcdpin = Pin , Rs = Portc.5 , E = Portc.4 , Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 , Db7 = Portc.0 '******************************************************************************* Config Servos = 1 , Servo1 = Portd.0 , Reload = 10 Config Portd.0 = Output '******************************************************************************* Dim I As Byte Enable Interrupts '******************************************************************************* Cls Cursor Off Lcd " Test serwa " Lowerline Lcd " d(-_-)b " Wait 1 Cls Do '****************** Program sterownika ***************************************** For I = 0 To 100 Servo(1) = I Cls Upperline Lcd "Dzien dobry!" Lowerline Lcd "Pozycja: " ; I Waitms 200 Next For I = 100 To 0 Step -1 Servo(1) = I Cls Upperline Lcd " Dzien dobry!" Lowerline Lcd "Pozycja: " ; I 'pokazuje pozycje serwa Waitms 200 Next Loop End '*******************************************************************************
|
|||
Re: Sterowanie serwem
Zmień reload na 8 i najpierw eksperymentalnie dobierz początkową wartość zminnej sterującej kątem serwa. Jeśli będzie za mała lub za duża wartość to tak będziesz miał. Serwo nie startuje od 0.Jak ja bawiłem się serwem to startowało od 45.
Moja strona w powijakach
Serwo
W jaki sposób mogę sterować prędkością serwa. Zakładając że mam graniczne wartości serwa i pomiędzy jedną a drugą wartością serwo ma powoli się poruszać po naciśnięciu przycisku. Czy zwiększając reload serwo wolniej będzie się poruszać?
Program poglądowy:
Pozdrawiam :)
Re: Prędkość serwa
Napisz sobie pętlę FOR...NEXT. Najprościej użyć wait. Pobaw się a jak zajarzysz o co chodzi to użyjesz timera.
A, nie testowałem tego więc nie wiem jak będzie działać.
Moja strona w powijakach