Bloki specyficzne dla robotów#

Wstęp#

Robot VR Rover zawiera układ napędowy, czujnik odległości i funkcje charakterystyczne dla placu zabaw Rover Rescue.

Wszystkie standardowe bloki VEXcode VR są dostępne do użycia na placu zabaw Rover Rescue.

Poniżej znajduje się lista wszystkich dostępnych bloków specyficznych dla robotów:

Układ napędowy — poruszaj i obracaj łazikiem VR.

Akcje – wchodź w interakcję z zasobami łazika, wrogami i wbudowanymi systemami sztucznej inteligencji.

Czuwanie - wykrywanie pobliskich obiektów za pomocą czujnika odległości łazika.

Przykłady na tej stronie wykorzystują domyślną pozycję startową placu zabaw.

Układ napędowy#

Układ napędowy steruje jazdą i skręcaniem łazika VR. Układ napędowy może poruszać się do przodu lub do tyłu, skręcać w lewo lub w prawo, zmieniać kurs i zgłaszać swój kurs.

Akcje#

prowadzić#

Blok stosu drive porusza robota do przodu lub do tyłu w nieskończoność. Robot będzie się poruszał, dopóki nie otrzyma innej akcji, takiej jak obrót lub zatrzymanie.

jedź [do przodu v]

Parametry

Opis

kierunek

Kierunek, w którym porusza się robot: do przodu lub do tyłu.

Przykład

gdy uruchomiony
[Drive forward, then stop.]
jedź [do przodu v]
czekaj (2) sekund
zatrzymaj jazdę

jechać do#

Blok napędu przesuwa robota do przodu lub do tyłu o określoną odległość. Projekt będzie czekał, aż robot zakończy ruch, zanim zostanie uruchomiony kolejny blok w stosie.

jedź [do przodu v] przez (200) [mm v] ▶

Parametry

Opis

kierunek

Kierunek, w którym porusza się robot: do przodu lub do tyłu.

dystans

Odległość pokonywana przez robota. Może być liczbą całkowitą lub dziesiętną.

jednostka

Jednostka odległości: mm (milimetry) lub cale.

i nie czekaj

Wybierz strzałkę (▶), aby rozwinąć blok i napisać i nie czekaj, dzięki czemu następny blok w stosie zostanie uruchomiony natychmiast.

Przykład

gdy uruchomiony
[Drive forward for 500 mm.]
jedź [do przodu v] przez (500) [mm v] ▶

zakręt#

Blok turn obraca robota w lewo lub w prawo w nieskończoność. Robot będzie się obracał, dopóki nie otrzyma innej akcji, takiej jak jazda lub zatrzymanie.

skręć [w prawo v]

Parametry

Opis

kierunek

Kierunek, w którym robot się obraca: w lewo lub w prawo.

Przykład

gdy uruchomiony
[Turn right, then stop.]
skręć [w prawo v]
czekaj (2) sekund
zatrzymaj jazdę

skręcić na#

Blok obrót w stosie obraca robota w lewo lub w prawo o określoną liczbę stopni. Obrót jest względny do bieżącej pozycji robota. Projekt będzie czekał, aż robot zakończy obrót, zanim zostanie uruchomiony kolejny blok w stosie.

skręć [w prawo v] o (90) stopni ▶

Parametry

Opis

kierunek

Kierunek, w którym robot się obraca: w lewo lub w prawo.

kąt

Liczba stopni, o jaką obróci się robot. Może to być liczba całkowita lub dziesiętna.

i nie czekaj

Wybierz strzałkę (▶), aby rozwinąć blok i napisać i nie czekaj, dzięki czemu następny blok w stosie zostanie uruchomiony natychmiast.

Przykład

gdy uruchomiony
[Turn left, then turn right.]
skręć [w lewo v] o (90) stopni ▶
skręć [w prawo v] o (180) stopni ▶

skręć w stronę kierunku#

Kierunek to kierunek, w którym zwrócony jest robot, mierzony w stopniach. Blok stosu turn to heading obraca robota w określonym kierunku od -359 do 359 stopni. Robot obróci się w najkrótszym kierunku, aby osiągnąć docelowy kierunek.

Początkowy kurs wynosi 0 stopni.

Projekt będzie czekał, aż robot zakończy obrót, zanim zostanie uruchomiony kolejny blok ze stosu.

skręć do kursu (90) stopni ▶

Parametry

Opis

nagłówek

Kierunek, w którym powinien być skierowany robot, od -359 do 359 stopni.

i nie czekaj

Wybierz strzałkę (▶), aby rozwinąć blok i napisać i nie czekaj, dzięki czemu następny blok w stosie zostanie uruchomiony natychmiast.

Przykład

gdy uruchomiony
[Turn to face east.]
skręć do kursu (90) stopni ▶

przejdź do obiektu#

Blok stosu przejdź do obiektu obraca się i kieruje VR Rover do wybranego obiektu.

przejdź do [minerals v] ▶

Parametry

Opis

obiekt

Do którego obiektu uda się łazik VR:

  • minerały
  • wróg
  • baza

i nie czekaj

Wybierz strzałkę (▶), aby rozwinąć blok i napisać i nie czekaj, dzięki czemu następny blok w stosie zostanie uruchomiony natychmiast.

Jeśli VR Rover wykryje kilka minerałów lub kilku wrogów, przesunie się w stronę bliższej opcji.

Jeśli minerały lub wróg nie zostaną wykryte w zasięgu wzroku łazika podczas uruchamiania bloku, robot nie ruszy. Baza zawsze może zostać namierzona.

Przykład

gdy uruchomiony
[Drive to the closest mineral.]
przejdź do [minerals v] ▶

przestań prowadzić#

Blok stosu stop driving zatrzymuje ruch robota.

zatrzymaj jazdę

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
[Drive forward, then stop.]
jedź [do przodu v]
czekaj (4) sekund
zatrzymaj jazdę

Ustawienia#

ustaw prędkość napędu#

Blok stosu ustaw prędkość jazdy informuje robota, jak szybko ma jechać. Wyższy procent sprawia, że ​​robot jedzie szybciej, a niższy – wolniej.

Każdy projekt rozpoczyna się od tego, że robot domyślnie porusza się z prędkością równą 50%.

Uwaga: Większa prędkość sprawia, że ​​robot jedzie szybciej, ale może być mniej precyzyjny. Niższa prędkość sprawia, że ​​robot jedzie wolniej, ale może być bardziej precyzyjny.

ustaw prędkość jazdy na (50) [% v]

Parametry

Opis

prędkość

Prędkość jazdy od 0% do 100%.

jednostka

Jednostka prędkości: %

Przykład

gdy uruchomiony
[Move faster.]
ustaw prędkość jazdy na (100) [% v]
jedź [do przodu v] przez (100) [mm v] ▶

ustaw prędkość skrętu#

Blok stosu ustaw prędkość skrętu informuje robota, jak szybko ma się skręcić. Wyższy procent powoduje, że robot skręca szybciej, a niższy – że skręca wolniej.

Każdy projekt rozpoczyna się od ustawienia robota tak, aby domyślnie obracał się z prędkością równą 50%.

Uwaga: Większa prędkość sprawia, że ​​robot skręca szybciej, ale może być mniej precyzyjny. Niższa prędkość sprawia, że ​​robot skręca wolniej, ale może być bardziej precyzyjny.

ustaw prędkość obrotu na (50) [% v]

Parametry

Opis

prędkość

Prędkość skrętu od 0% do 100%.

jednostka

Jednostka prędkości: %

Przykład

gdy uruchomiony
[Turn faster.]
ustaw prędkość obrotu na (100) [% v]
skręć [w prawo v] o (90) stopni ▶

ustaw kierunek jazdy#

Kierunek to kierunek, w którym zwrócony jest robot, mierzony w stopniach. Blok stosu „ustaw kierunek jazdy” zmienia aktualny kierunek robota na nową wartość kierunku.

Na przykład, jeśli robot obrócił się w prawo, ustawienie kierunku na 0 stopni spowoduje, że ta pozycja skierowana w prawo stanie się nowym 0 stopniem. Następnie robot może obrócić się w inne pozycje w oparciu o ten nowy kierunek.

ustaw kurs jazdy na (0) stopni

Parametry

Opis

nagłówek

Wartość kierunku (w stopniach), którą należy ustawić dla robota.

Przykład

gdy uruchomiony
[Set the heading, then turn to 0 degrees.]
ustaw kurs jazdy na (90) stopni
skręć do kursu (0) stopni ▶

ustaw limit czasu dysku#

Blok stosu set drive timeout ustawia liczbę sekund, przez które robot będzie próbował zakończyć ruch. Jeśli robot nie ukończy ruchu w tym czasie, przerwie próby i przejdzie do następnego bloku w stosie. Zapobiega to zablokowaniu ruchu przez robota.

ustaw limit czasu jazdy na (1) sekund

Parametry

Opis

czas

Liczba sekund, w ciągu których robot może próbować zakończyć ruch. Może to być liczba całkowita lub dziesiętna.

Przykład

gdy uruchomiony
[Drive for at most 1 second.]
ustaw limit czasu jazdy na (1) sekund
jedź [do przodu v] przez (25) [cale v] ▶

Wartości#

jazda zakończona#

Blok logiczny „napęd zakończony” informuje, czy robot zakończył ruch. Można go wykorzystać do sterowania czasem innych zachowań na podstawie ruchu robota.

  • Prawda - Robot zakończył ruch.

  • Fałsz – Robot nadal się porusza.

Blok ten współpracuje z blokami układu napędowego, które mają parametr i nie czekaj.

<jazda zakończona?>

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
[Start turning when the drive is complete.]
jedź [do przodu v] przez (200) [mm v] ◀ i nie czekaj
czekaj dopóki <jazda zakończona?>
skręć [w prawo v] o (360) stopni ▶

napęd się porusza#

Blok logiczny „napęd się porusza” informuje, czy robot się porusza. Można go użyć do sterowania czasem innych zachowań na podstawie ruchu robota.

  • Prawda - Robot się porusza.

  • Fałsz - Robot się nie porusza.

Blok ten współpracuje z blokami układu napędowego, które mają parametr i nie czekaj.

<jazda w toku?>

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
[Print while the rover is moving.]
jedź [do przodu v] przez (200) [mm v] ◀ i nie czekaj
dopóki <jazda w toku?>
wydrukuj [Still Moving...] ▶
czekaj (0.1) sekund
wyczyść wszystkie wiersze
koniec
wydrukuj [Done!] ▶

kierunek jazdy#

Kierunek to kierunek, w którym zwrócony jest robot, mierzony w stopniach. Blok raportujący kierunek jazdy raportuje ten kierunek w zakresie od 0 do 359,99 stopnia.

Początkowy kierunek robota wynosi 0 stopni.

(kurs jazdy w stopniach)

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
[Display the heading after turning.]
skręć [w prawo v] o (90) stopni ▶
wydrukuj (kurs jazdy w stopniach) ▶
ustaw kursor na następny wiersz

Akcje#

Akcje#

działanie minerałów#

minerały [ulec poprawie v]

Parametry

Opis

działanie

Co zrobić z minerałami:

  • podnieś – umieszcza minerały w magazynie VR Rover.
  • upuść – upuszcza niesione minerały.
  • użyj – zużywa minerały na ziemi, aby przywrócić energię.

Zbierane minerały są przechowywane w VR Rover do momentu ich upuszczenia lub wykorzystania.

Użycie minerałów uzupełnia część energii łazika VR. Minerały można wykorzystać tylko wtedy, gdy znajdują się na ziemi.

Łazik VR zdobywa punkty doświadczenia (XP) poprzez wykorzystanie minerałów lub zrzucenie ich na bazę.

Przykład

gdy uruchomiony
[Drive to the closest mineral and pick it up.]
przejdź do [minerals v] ▶
minerały [ulec poprawie v]

absorbować promieniowanie wroga#

Blok absorbuj promieniowanie wroga pochłania promieniowanie wroga na placu zabaw Rover Rescue.

pochłaniać promieniowanie

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
[Drive to the closest enemy and absorb radiation.]
przejdź do [enemy v] ▶
pochłaniać promieniowanie

czuwanie#

Blok standby przełącza VR Rover w tryb czuwania do momentu osiągnięcia określonego progu naładowania baterii.

czuwanie do [50] % baterii

Parametry

Opis

procent

Próg naładowania baterii powodujący wyjście VR Rovera z trybu czuwania, od 0 do 100.

W trybie czuwania VR Rover zużywa baterię wolniej, ale licznik Liczba dni przetrwania zwiększa się szybciej.

Gdy bateria osiągnie wybrany próg, VR Rover wychodzi z trybu czuwania i powraca do normalnego użytkowania baterii i dziennego postępu.

Jeśli wybrany próg jest równy lub wyższy od aktualnego poziomu naładowania baterii, VR Rover nie przejdzie w tryb czuwania.

Przykład

gdy uruchomiony
[Wait in standby until battery reaches 35%.]
czuwanie do [35] % baterii
przejdź do [minerals v] ▶

Wartości#

łazik widzi#

Blok łazik widzi zwraca wartość logiczną wskazującą, czy łazik VR widzi wybrany obiekt, korzystając z wbudowanej technologii sztucznej inteligencji.

  • Prawda – wybrany obiekt znajduje się w odległości nie większej niż 1000 milimetrów od łazika VR i w jego polu widzenia.

  • Fałsz – wybrany obiekt znajduje się w odległości większej niż 1000 milimetrów i/lub poza polem widzenia.

<widzi [minerals v]?>

Parametry

Opis

obiekt

Który obiekt należy sprawdzić:

  • minerały
  • wróg
  • podstawa
  • przeszkody
  • zagrożenia

Pole widzenia łazika VR wynosi 40 stopni, co na minimapie przedstawiono jako szary, półprzezroczysty stożek rozciągający się od przodu łazika.

Przykład

gdy uruchomiony
zawsze
jeśli <widzi [minerals v]?> to
przejdź do [minerals v] ▶
koniec
koniec

łazik wykrywa#

Blok łazik wykrywa zwraca wartość logiczną wskazującą, czy VR Rover wykrywa minerały lub wrogów, wykorzystując wbudowaną technologię sztucznej inteligencji.

  • Prawda – wybrany obiekt znajduje się w promieniu wykrywania łazika.

  • Fałsz – wybrany obiekt nie znajduje się w promieniu wykrywania łazika.

<wykrywa [minerals v]?>

Parametry

Opis

obiekt

Który obiekt wykryć:

  • minerały
  • wróg

Promień wykrywania łazika VR wynosi 800 milimetrów, co na minimapie pokazano jako żółty okrąg wokół łazika.

Przykład

gdy uruchomiony
zawsze
jeśli <wykrywa [minerals v]?> to
przejdź do [minerals v] ▶
koniec
koniec

minerały w magazynie#

Blok minerały w magazynie zwraca aktualną ilość minerałów, jaką VR Rover ma w swoim magazynie.

(minerały w magazynie)

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
wydrukuj (minerały w magazynie) ▶
ustaw kursor na następny wiersz

pojemność magazynowa#

Blok pojemność pamięci masowej zwraca pojemność pamięci masowej VR Rover.

(pojemność magazynowa)

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
wydrukuj (pojemność magazynowa) ▶
ustaw kursor na następny wiersz

kierunek łazika#

Blok kierunek łazika zwraca kierunek od łazika VR do wybranego obiektu w stopniach.

([minerals v] kierunek w stopniach)

Parametry

Opis

obiekt

Który kierunek obiektu zgłosić:

  • minerały
  • wróg
  • baza

W przypadku minerałów i wrogów blok ten raportuje wartości tylko wtedy, gdy wybrany obiekt znajduje się w odległości do 1000 milimetrów i w 40-stopniowym polu widzenia łazika.

Jeśli wybrano opcję baza, kierunek jest wyświetlany nawet wtedy, gdy baza nie znajduje się w polu widzenia. Dla bazy ten blok wyświetla wartość od -180 do 180 stopni.

Przykład

gdy uruchomiony
wydrukuj ([minerals v] kierunek w stopniach) ▶
ustaw kursor na następny wiersz

odległość łazika#

Blok odległość łazika zwraca odległość od łazika VR do wybranego obiektu.

(odległość [minerals v] w [mm v] :: custom-actions)

Parametry

Opis

obiekt

Odległość, do której obiektu należy zgłosić:

  • minerały
  • wróg
  • przeszkody
  • zagrożenia
  • podstawa

jednostka

Jednostka używana do podawania odległości: mm lub cale

W przypadku minerałów i wrogów blok ten raportuje wartości tylko wtedy, gdy wybrany obiekt znajduje się w odległości do 1000 milimetrów i w 40-stopniowym polu widzenia łazika.

Jeżeli wybrano opcję baza, odległość jest wyświetlana nawet wtedy, gdy baza nie znajduje się w polu widzenia.

Przykład

gdy uruchomiony
wydrukuj (odległość [minerals v] w [mm v] :: custom-actions) ▶
ustaw kursor na następny wiersz

lokalizacja łazika#

Blok lokalizacji łazika zwraca współrzędne X lub Y wybranego obiektu, wykorzystując wbudowaną technologię sztucznej inteligencji łazika.

([minerals v] lokalizacji [X v] w [mm v])

Parametry

Opis

obiekt

Które położenie obiektu zgłosić:

  • minerały
  • wróg
  • przeszkody
  • zagrożenia
  • podstawa

oś

Które współrzędne zwrócić:

  • X
  • Y

jednostka

Jednostka używana do raportowania współrzędnych: mm lub cale

W przypadku minerałów i wrogów blok ten raportuje wartości tylko wtedy, gdy wybrany obiekt znajduje się w odległości do 1000 milimetrów i w 40-stopniowym polu widzenia łazika.

Jeżeli wybrano opcję baza, lokalizacja jest zgłaszana nawet wtedy, gdy baza nie znajduje się w polu widzenia.

Przykład

gdy uruchomiony
wydrukuj ([base v] lokalizacji [X v] w [mm v]) ▶
ustaw kursor na następny wiersz
wydrukuj ([base v] lokalizacji [Y v] w [mm v]) ▶
ustaw kursor na następny wiersz

pod atakiem#

Blok pod atakiem zwraca wartość logiczną wskazującą, czy VR Rover jest aktualnie atakowany przez wroga.

  • Prawda - VR Rover jest atakowany.

  • Fałsz - VR Rover nie jest atakowany.

<zaatakowany?>

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
zawsze
jeśli <zaatakowany?> to
jedź [wstecz v] przez [500] [mm v] ▶
koniec
koniec

poziom wroga#

Blok poziom wroga zwraca poziom najbliższego wroga wykrytego przez VR Rover.

(poziom wroga)

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Jeśli w promieniu wykrywania VR Rovera nie zostanie wykryty żaden wróg, ten blok zwraca 0.

Przykład

gdy uruchomiony
zawsze
jeśli <(poziom wroga) [math_equal v] [1]> to
przejdź do [enemy v] ▶
w przeciwnym razie
jedź [wstecz v] przez [500] [mm v] ▶
koniec
koniec

promieniowanie wroga#

Blok promieniowania wroga zwraca promieniowanie najbliższego wroga wykrytego przez VR Rover.

(promieniowanie wroga)

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Jeśli w promieniu wykrywania VR Rovera nie zostanie wykryty żaden wróg, ten blok zwraca 0.

Przykład

gdy uruchomiony
wydrukuj (promieniowanie wroga) ▶
ustaw kursor na następny wiersz

poziom naładowania baterii#

Blok poziomu baterii zwraca aktualny poziom naładowania baterii VR Rovera jako wartość procentową.

(poziom baterii w % :: custom-actions)

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
wydrukuj (poziom baterii w % :: custom-actions) ▶
ustaw kursor na następny wiersz

poziom#

Blok level zwraca aktualny poziom łazika VR.

(poziom)

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
wydrukuj (poziom) ▶
ustaw kursor na następny wiersz

PD#

Blok XP zwraca aktualną liczbę punktów doświadczenia, jakie posiada VR Rover.

(PD)

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy uruchomiony
wydrukuj (PD) ▶
ustaw kursor na następny wiersz

gdy jest atakowany#

Blok gdy atakowany uruchamia dołączony do niego stos za każdym razem, gdy VR Rover zostanie zaatakowany przez wroga.

gdy jest się atakowanym

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

gdy jest się atakowanym
pochłaniać promieniowanie

kiedy poziom wyżej#

Blok kiedy awansujesz uruchamia dołączony do niego stos za każdym razem, gdy VR Rover przemieszcza się z jednego poziomu na następny.

kiedy poziom wyżej

Parametry

Opis

Ten blok nie ma żadnych parametrów.

Przykład

kiedy poziom wyżej
wydrukuj [The VR Rover has leveled up!] ▶
ustaw kursor na następny wiersz

Wyczuwanie#

Dystans#

Odległość znaleziona dla obiektu#

Blok Odległość odnaleziona przez obiekt zwraca wartość logiczną wskazującą, czy czujnik odległości wykrył obiekt znajdujący się w odległości mniejszej niż 2000 mm.

  • Prawda - czujnik odległości wykrył obiekt.

  • Fałsz – czujnik odległości nie wykrył obiektu.

<[distance v] znalazł obiekt?>

Parametry

Opis

czujnik odległości

Którego czujnika odległości użyć? Na tym placu zabaw dostępny jest czujnik o odległości distance.

Przykład

gdy uruchomiony
[Turn until the Distance Sensor detects an object.]
skręć [w prawo v]
czekaj dopóki <[distance v] znalazł obiekt?>
zatrzymaj jazdę

odległość obiektu#

Blok odległości obiektu zwraca odległość najbliższego obiektu od czujnika odległości.

([distance v] in [mm v])

Parametry

Opis

czujnik odległości

Którego czujnika odległości użyć? Na tym placu zabaw dostępny jest czujnik o odległości distance.

jednostka

Jednostka odległości: mm lub cale

Przykład

gdy uruchomiony
[Wait until the Distance Sensor detects an object, then print the distance.]
skręć [w prawo v]
czekaj dopóki <[distance v] znalazł obiekt?>
zatrzymaj jazdę
wydrukuj ([distance v] in [mm v]) ▶