Wydarzenia#
Wstęp#
Zdarzenie to sygnał startowy dla zestawu bloków. Bloki zdarzeń w VEXcode umożliwiają różnym zestawom bloków rozpoczęcie pracy w różnym czasie. Na przykład, jeden zestaw bloków może rozpocząć pracę wraz z rozpoczęciem projektu, a inny – wraz z wysłaniem sygnału z innego miejsca w projekcie.
kiedy timer – Uruchamia stos bloków po przekroczeniu przez timer określonego czasu.
po uruchomieniu – Uruchamia dołączony stos bloków po uruchomieniu projektu.
kiedy odbieram zdarzenie – Uruchamia dołączony stos bloków, gdy zostanie nadane określone zdarzenie.
wydarzenie rozgłoszeniowe – Wyzwala zdarzenie bez wstrzymywania innych bloków.
wydarzenie rozgłaszane i oczekiwanie – Wyzwala zdarzenie i wstrzymuje inne bloki do momentu zakończenia zadań związanych ze zdarzeniem.
kiedy timer#
Blok when timer uruchamia dołączony stos bloków po upływie określonego czasu.
gdy timer > [1] sekund
Parametry |
Opis |
|---|---|
czas |
Określa liczbę sekund przed rozpoczęciem dołączania stosu bloków. Akceptowane są zarówno liczby całkowite, jak i dziesiętne. |
Przykład
gdy timer > [2] sekund
[Move the 6-Axis Arm after 2 seconds.]
zwiększ pozycję [ramię v] o x:[100] y:[0] z:[0] [mm v] ▶
kiedy zaczęto#
Blok when started rozpoczyna uruchamianie bloków poniżej w momencie rozpoczęcia projektu. Każdy projekt potrzebuje co najmniej jednego bloku when started — bez niego bloki poniżej nie zostaną uruchomione. Można użyć wielu bloków when started, aby uruchomić różne zestawy bloków jednocześnie.
gdy uruchomiony
Parametry |
Opis |
|---|---|
Ten blok nie ma żadnych parametrów. |
Przykład
gdy uruchomiony
[Move the 6-Axis Arm 100 millimeters along the x-axis.]
zwiększ pozycję [ramię v] o x:[100] y:[0] z:[0] [mm v] ▶
Parametry |
Opis |
|---|---|
Ten blok nie ma żadnych parametrów. |
kiedy odbieram zdarzenie#
Blok gdy odbieram zdarzenie rozpoczyna uruchamianie bloków znajdujących się poniżej, gdy sygnał o tej samej nazwie zdarzenia ma wartość broadcast.
gdy otrzymam [my_event v]
Parametry |
Opis |
|---|---|
wydarzenie |
Zdarzenie, które ma zostać wywołane. Użytkownicy mogą wybrać istniejące zdarzenie, utworzyć nowe, zmienić nazwę wybranego zdarzenia lub je usunąć. |
Przykład
gdy uruchomiony
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
zwiększ pozycję [ramię v] o x:[100] y:[0] z:[0] [mm v] ▶
nadaj [move_y v]
gdy otrzymam [move_y v]
wydrukuj [Received!] w konsoli ◀ i ustaw kursor na następny wiersz
zwiększ pozycję [ramię v] o x:[0] y:[100] z:[0] [mm v] ▶
wydarzenie transmitowane#
Blok stosu zdarzeń rozgłoszeniowych wysyła sygnał, który uruchamia dowolny blok gdy odbieram zdarzenie o tej samej nazwie zdarzenia. Pozostałe bloki w projekcie działają bez oczekiwania na zakończenie działania tych bloków.
nadaj [message1 v]
Parametry |
Opis |
|---|---|
wydarzenie |
Zdarzenie do wyzwolenia. Użytkownicy mogą wybrać istniejące zdarzenie, utworzyć nowe, zmienić nazwę wybranego zdarzenia lub je usunąć. |
Przykład
gdy uruchomiony
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
zwiększ pozycję [ramię v] o x:[100] y:[0] z:[0] [mm v] ▶
nadaj [move_y v]
gdy otrzymam [move_y v]
wydrukuj [Received!] w konsoli ◀ i ustaw kursor na następny wiersz
zwiększ pozycję [ramię v] o x:[0] y:[100] z:[0] [mm v] ▶
wydarzenie nadawane i czekanie#
Blok stosu broadcast event and wait wysyła sygnał, który uruchamia dowolny blok when I receive event o tej samej nazwie zdarzenia. Reszta projektu będzie czekać na zakończenie działania rozgłaszanego zdarzenia.
nadaj [message1 v] i czekaj
Parametry |
Opis |
|---|---|
wydarzenie |
Zdarzenie do wyzwolenia. Użytkownicy mogą wybrać istniejące zdarzenie, utworzyć nowe, zmienić nazwę wybranego zdarzenia lub je usunąć. |
Przykład
gdy uruchomiony
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
zwiększ pozycję [ramię v] o x:[100] y:[0] z:[0] [mm v] ▶
nadaj [move_y v] i czekaj
wydrukuj [Finished moving!] w konsoli ◀ i ustaw kursor na następny wiersz
gdy otrzymam [move_y v]
wydrukuj [Received!] w konsoli ◀ i ustaw kursor na następny wiersz
zwiększ pozycję [ramię v] o x:[0] y:[100] z:[0] [mm v] ▶