Skocz do zawartości

Rnd() i ruch robota


kubaser

Pomocna odpowiedź

Z tematu (którego już niema) dowiedziałem się o funkcji Rnd() .

Teraz nie wiem jak zrobić żeby co np.2 sekundy zmieniałby się kurs jazdy(silniki w inne strony się kręcą).

Jedyne co znalazłem to to

Przeznaczenie: 

Zwraca pseudo losową liczbę z określonego zakresu.

Składnia: 

zmienna =  RND( zakres ) 

gdzie

zmienna	dowolna zmienna numeryczna, w której znajdzie się wygenerowana liczba pseudo losowa,
zakres	liczba określająca górną granicę generowanych liczb.
Opis: 

Funkcja RND zwraca liczbę typu Integer/Word. Każde wywołanie funkcji RND powoduje wygenerowanie nowej pseudo losowej liczby.

Uwaga! Liczby są generowane przez odpowiedni kod programu. Każdy restart systemu, powoduje, że sekwencja tych liczb będzie taka sama.
Instrukcja używa dwóch bajtów pamięci RAM na własne potrzeby.

Przykład: 


'---------------------------------------------------------
'                (c) 2000 MCS Electronics
'                         RND.BAS
'---------------------------------------------------------
Dim W As Word

Do
 W = Rnd(100)                       'zwraca liczbę pseudo losową z zakresu 0-99
 Print W
Loop

End

na google nic niema (tylko coś o c a mi chodzi o Basom)

Link do komentarza
Share on other sites

nie wiem co w tym trudnego, zliczasz czas 2 sekundy na timerze lub na wait'cie. Nastepnie jak odliczy ten czas startujesz rnd z zakresem 2 liczb i w zaleznosci czy jest 1 lub 0 (albo 2 nie wiem czy od 0 liczy) to jest odpowiedni kierunek jazdy (np. gdy 1 to w lewo, gdy 2 to w prawo).

Pamietaj, ze zmienna przy rnd jest po kazdym restarcie taka sama. Chyba, ze bedziesz zmieniac zmienna ___RSEED np. zapisujac ja do eepromu, pokazdym restarcie by ja dodawal i odczytywal lub mozesz wykorzystac adc.

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

ot

ostatnio jak czytam to forum to mam chęć na

harakiri-poster.jpg

ote

może jakiś listing programu w ogóle, nawet jak jedzie prosto??

nikt nie wie, co gdzie masz po podpinane i jak jest skonstruowany Twój program...

Link do komentarza
Share on other sites

GruX, popieram.

Niski poziom jest na diodze, przez uzytkownikow.

Pomysl troche, widac po tym, ze nie rozumiesz totalnie jak dzialaja procesory i ta funkcja.

Juz dam ci kod, w nadziei, ze zamkniesz ten temat.

do
s=rnd(1) 

if s=0 then
'jedz w lewo
elseif s=1 then
'jedz w prawo

end if

loop
end

gdy sie gdzies pomylilem to sorry, pisalem z glowy. To powinno ci pomoc. A jak nie pomoze to kiepsko.

Link do komentarza
Share on other sites

P.S. Jakby coś to jestem początkujący.

każdy chyba kiedyś był, ale jakoś większość potrafiła dojść do czegoś samemu, poczytać...

Link do komentarza
Share on other sites

Gość
Ten temat został zamknięty.
×
×
  • 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.