Skocz do zawartości

[Bascom] Nagrywanie ruchu serw


matq1

Pomocna odpowiedź

Witam. Chciałbym dowiedzieć się czy jest możliwe dodanie jeszcze dwóch serwomechanizmów do tego kodu.

$regfile = "m32def.dat" 
$crystal = 16000000 
Config Adc = Single , Prescaler = Auto 
Start Adc 
S1a Alias Portb.0 
S1b Alias Portb.3 
Dim Pomiar As Integer 
Dim Zadana As Integer 
Dim Maksymalna As Integer 
Dim Minimalna As Integer 
Dim Tablica(310) As Integer 'tablica, w której będą przechowywane próbki 
Dim I As Integer 
Dim J As Integer 
Const Czas = 100 'czas pomiędzy kolejnymi próbkami w milisekudnach 
Config Portb = Output 
Reset Portb 
Zadana = 100 
Do 
'Nagrywanie 
  For I = 1 To 310 
     Pomiar = Getadc(0) 
     Tablica(i) = Pomiar 
     Waitms Czas 
  Next 
Wait 5 
'Odtwarzanie 
  For I = 1 To 310 
     Zadana = Tablica(i) 
     For J = 0 To Czas 
        Gosub Serwo 'funkcja ustawiająca serwo w zadanej pozycji w ciągu trwania jednego okresu próbkowania 
     Next 
  Next 
Wait 10 
Loop 
End 
Serwo: 
Maksymalna = Zadana + 5 
Minimalna = Zadana - 5 'maksymalne dopuszczalne przesunięcia względem zadanej pozycji (w celu ograniczenia drgań) 
Pomiar = Getadc(0) 
If Pomiar > Maksymalna Then 
  Set S1a 
  Reset S1b 'serwo obraca się w jedną stronę 
Elseif Pomiar < Minimalna Then 
  Reset S1a 
  Set S1b 'serwo obraca się w drugą stronę 
Else 
  Reset S1a 
  Reset S1b 'serwo zatrzymane 
End If 
Waitms 1 
Return 
Link do komentarza
Share on other sites

Jak to "jeszcze dwóch"? Mimo bzdurnych komentarzy, tu nie ma żadnych serwomechanizmów zewnętrznych. Są co najwyżej dwa mostki H sterujące dwoma silnikami. Rozumiesz co robi ten kod i jak działa? Co miałoby robić to co chcesz dodać?

Link do komentarza
Share on other sites

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • 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.