Kodowanie czujnika odległości V5 przy użyciu nierówności matematycznych

Korzystanie z czujnika odległości V5 na robocie podczas meczu VEX Robotics Competition (VRC) może pozwolić Twojemu robotowi zdobyć więcej punktów dzięki autonomicznym ruchom.

Gra użyta jako przykład w tym artykule to gra VRC na lata 2021–2022, Tipping Point. Aby uzyskać więcej informacji na temat gry i zasad rozgrywki, zobacz tę stronę. Definicje gier używane w tym artykule, przegląd zasad gry i punktację znaleźć w Podręczniku gry Tipping Point.


Czujnik odległości V5

Widok pod kątem czujnika odległości V5.

Czujnik odległości V5 to jeden z najnowocześniejszych czujników V5 zaprojektowanych z myślą o pełnej integracji z platformą robotyki V5.

  • Czujnik ten wykorzystuje impuls bezpiecznego światła laserowego do pomiaru odległości od przodu czujnika do obiektu.
  • Czujnik odległości V5 może być używany do wykrywania obiektu i określania jego względnej wielkości. Przybliżony rozmiar obiektu jest podawany jako mały, średni lub duży.
  • Czujnik może być również wykorzystany do obliczenia prędkości zbliżania się robota. Prędkość zbliżania mierzy prędkość robota/czujnika poruszającego się w kierunku obiektu.

Aby uzyskać bardziej szczegółowe informacje na temat czujnika odległości V5, sposobu jego działania i sposobu używania go z programem VEXcode V5, zapoznaj się z tym artykułem w bibliotece VEX


Przykład czujnika odległości V5

Celem tego projektu jest podniesienie i przesunięcie mobilnego celu za pomocą czujnika odległości V5 w celu wykrycia odległości od celu.

VEXcode V5 Blokuje projekt, który porusza się do przodu, aż do wykrycia Mobilnego Celu, podniesie go, a następnie przesunie. Opis projektu brzmi: Po uruchomieniu jedź do przodu, poczekaj, aż odległość od obiektu DistanceCenter w mm będzie mniejsza niż 139, a następnie zatrzymaj jazdę. Następnie obróć ForkMotors o 600 stopni, a potem obróć je w lewo o 90 stopni. Następnie przejedź 600 mm do przodu, obróć ForkMotors o 600 stopni, a następnie przejedź 300 mm do tyłu.

To jest przykład kodu, który zostanie omówiony w tym artykule.

Zostanie omówiony podział zachowań w przykładzie oraz sposób uzyskania parametrów używanych do kodowania czujnika odległości V5.

Możesz utworzyć projekt w kodzie VEXcode V5 , postępując zgodnie z instrukcjami zawartymi w artykule, lub po prostu przeczytać artykuł, aby zainspirować się przykładem, jak uwzględnić czujnik odległości V5 podczas kodowania własnego robota.

Ten film przedstawia wykonanie powyższego kodu oraz podniesienie i przeniesienie bramki mobilnej przez robota.

W tym przykładzie otwiera się menu Urządzenia VEXcode V5, aby pokazać konfigurację urządzenia. W menu najpierw wymieniony jest czujnik odległości o nazwie DistanceCenter w porcie 19. Następnie mamy układ napędowy z silnikami na portach 1 i 10 oraz czujnikiem bezwładnościowym na porcie 3. Na koniec mamy grupę silników o nazwie ForkMotors na portach 2 i 9.

Oto konfiguracja robota zastosowana w VEXcode V5 w celu dodania robota i czujnika odległości do konfiguracji w tym przykładzie, jeśli chcesz samodzielnie wypróbować ten przykład.

Robot użyty w tym przykładzie

Widok robota Moby Hero z góry, z zaznaczonym dodanym czujnikiem odległości V5. Czujnik odległości jest umieszczony za widłami robota, pod nimi, skierowany do przodu.

Robot użyty w tym przykładzie to VRC Hero Bot z lat 2021–2022, Moby. Konstrukcja Moby'ego nie ma żadnych czujników, w tym przykładzie do Moby dodano czujnik odległości V5.

W tym przykładzie czujnik odległości V5 jest zamontowany w pobliżu środka wideł Moby'ego.

Aby uzyskać więcej informacji na temat Moby'ego, ten artykuł z biblioteki VEX.

Nie musisz używać Moby do kodowania czujnika odległości V5 ani do startowania w tegorocznych zawodach. Możesz zamontować czujnik na swoim niestandardowym robocie, gdziekolwiek uznasz to za stosowne.

Uwaga: upewnij się, że żadna konstrukcja robota nie znajduje się przed małym okienkiem lasera na powierzchni czujnika. Przed czujnikiem musi być wolna droga pomiędzy celem a czujnikiem.

Podział zachowań do punktacji

Aby podnieść i przenieść bramkę mobilną, korzystając z informacji zwrotnej z czujnika odległości V5, najpierw ustal, w jaki sposób robot powinien się poruszać.

Robot Moby zostaje umieszczony na polu, a kilka stóp przed nim znajduje się Mobilna Bramka.

Najpierw należy ustawić robota przodem do bramki mobilnej.

Pokazany jest robot Moby po tym, jak ruszył do przodu, aby wykryć Mobilną Bramkę. Mobilna bramka znajduje się teraz wewnątrz ramion wideł robota.

Następnie robot powinien jechać do przodu, aż czujnik odległości wykryje, że cel mobilny znajduje się wewnątrz wideł i blisko czujnika.

Robot Moby pokazany jest po wykryciu Mobilnego Celu i podniesieniu ramion, aby go podnieść.

Gdy czujnik wykryje, że bramka mobilna znajduje się wewnątrz wideł lub w pobliżu czujnika, robot przestaje jechać i podnosi widły, aby podnieść bramkę mobilną.

Robot Moby niosący Mobilną Bramkę obrócił się o 90 stopni w lewo.

Po podniesieniu bramki mobilnej robot skręci w lewo o 90 stopni i przejedzie do przodu o 600 milimetrów (mm).

Robot Moby, który opuścił widełki, aby postawić bramkę mobilną, a następnie ruszył do tyłu.

Następnie robot opuści widły, aby odłożyć bramkę mobilną, po czym odjedzie tyłem od bramki mobilnej, tak aby przypadkowo nie przewrócić jej podczas następnego ruchu.


Zrozumienie parametrów

Aby wykonać powyższe zachowania, ważne jest, aby zrozumieć, jak daleko jest Cel mobilny od czujnika odległości V5.

Parametr umożliwiający podniesienie bramki mobilnej za pomocą czujnika odległości V5

Robot Moby na boisku z Mobilną Bramką umieszczoną pomiędzy widłami, dzięki której można określić idealną odległość.

Aby robot jechał do przodu, dopóki czujnik odległości nie wykryje, że cel mobilny znajduje się wewnątrz wideł i blisko czujnika, wartości z czujnika muszą zostać zarejestrowane przez mózg V5.

Umieść bramkę mobilną pomiędzy widłami robota.

Ekran V5 Brain jest wyświetlany w menu głównym z zaznaczoną opcją Urządzenia.Ekran Brain jest wyświetlany w menu Informacje o urządzeniu, gdzie znajduje się lista wszystkich inteligentnych portów Brain i podłączonych urządzeń. Ikona czujnika odległości w menu Informacje o urządzeniu jest podświetlona, ​​aby wskazać, że można wybrać elementy w celu otwarcia menu informacji o nich.

Następnie na ekranie Braina wybierz „Urządzenia”, a następnie ikonę czujnika odległości.

Ekran mózgu jest wyświetlany w menu Czujnik odległości, w którym wyświetlane są dane czujnika. W menu wyświetlane są dane dotyczące rozmiaru obiektu, jego prędkości i odległości. W menu znajduje się również diagram obrazujący odległość i jej zmiany w czasie. Na tym zrzucie ekranu obiekt jest niewielki, jego prędkość wynosi 0 metrów na sekundę, a odległość wynosi 139 mm.

Odległość w milimetrach (mm) od czujnika mobilnego jest wyświetlana na ekranie Brain.

Ten sam projekt VEXcode V5 Blocks, co wcześniej, porusza się do przodu, aż wykryje Cel Mobilny, podniesie go, a następnie przesunie. Wartość, z którą porównywana jest odległość obiektu czujnika odległości w projekcie, wynosi 139 i jest podświetlona.

Jest to wartość, która zostanie wykorzystana w projekcie podczas podnoszenia bramki mobilnej za pomocą czujnika odległości.

Parametr podnoszenia i opuszczania wideł

Robot Moby na polu z Mobilną Bramką umieszczoną pomiędzy widłami.

Ponownie umieść bramkę mobilną w widłach.

Ekran Brain jest wyświetlany w menu Informacje o urządzeniu, gdzie znajduje się lista wszystkich inteligentnych portów Brain i podłączonych urządzeń. Ikona silnika w menu Informacje o urządzeniu jest podświetlona, ​​aby wskazać, że można wybrać elementy w celu otwarcia menu informacji o nich.

Następnie na ekranie Braina wybierz „Urządzenia”, a następnie ikonę Silnika 2. Silnik 2 steruje lewym widelcem.

Robot Moby na polu z Mobilną Bramką umieszczoną pomiędzy podniesionymi widłami, aby ją podnieść.

Ręcznie podnoś widły, aż dolna część bramki mobilnej nie będzie blokować widoku czujnika odległości.

Podczas ręcznego podnoszenia wideł pamiętaj o jednoczesnym podniesieniu każdego widelca po lewej i prawej stronie Moby, ponieważ każdy z nich jest sterowany własnym silnikiem.

Uwaga: Unikaj punktów przytrzaśnięcia podczas ręcznego podnoszenia wideł.

Ekran mózgu jest wyświetlany w menu Smart Motor, w którym wyświetlane są dane urządzenia. W menu znajdują się odczyty i wykresy przedstawiające dane urządzenia. Na tym zrzucie ekranu wartość stopnia silnika jest podświetlona i wynosi 604.

Liczba stopni, o jaką podniesiono Widły, jest wyświetlana na ekranie Mózgu.

Ten sam projekt VEXcode V5 Blocks, co wcześniej, porusza się do przodu, aż wykryje Cel Mobilny, podniesie go, a następnie przesunie. Liczba stopni, o jaką obraca się grupa silników widełkowych w projekcie, wynosi 600 i jest podświetlona.

Jest to wartość, która będzie używana w projekcie podczas podnoszenia i opuszczania wideł w celu podniesienia i umieszczenia bramki mobilnej.

Korzystanie z bloków operatorskich

W kodzie VEX V5 pokazano blok operatora mniejszy niż. Blok ten służy do porównywania dwóch wartości i raportowania, czy pierwsza wartość jest niższa od drugiej.

W tym projekcie blok operatora <Less than> służy do kodowania czujnika odległości.

Ekran mózgu jest wyświetlany w menu Czujnik odległości, w którym wyświetlane są dane czujnika. W menu wyświetlane są dane dotyczące rozmiaru obiektu, jego prędkości i odległości. W menu znajduje się również diagram obrazujący odległość i jej zmiany w czasie. Na tym zrzucie ekranu obiekt jest niewielki, jego prędkość wynosi 0 metrów na sekundę, a odległość wynosi 139 mm.

Dzieje się tak, ponieważ w miarę jak czujnik odległości zbliża się do obiektu, odległość w milimetrach między czujnikiem a tym obiektem maleje.

Ten sam projekt VEXcode V5 Blocks, co wcześniej, porusza się do przodu, aż wykryje Cel Mobilny, podniesie go, a następnie przesunie. Wartość, z którą porównywana jest odległość obiektu czujnika odległości w projekcie, wynosi 139 i jest podświetlona.

Można wybrać wartości progowe, aby wywołać zachowanie robota, gdy odległość jest mniejsza niż z góry określona wartość.

Na przykład, gdy robot jedzie w stronę bramki mobilnej, użyj bloku operatora <Less than> , aby wywołać zachowanie robota zatrzymującego się, gdy odległość będzie o mniejsza niż , czyli około 139 milimetrów (mm).

Robot Moby na polu z Mobilną Bramką w środku wideł. Odległość od czujnika odległości do mobilnego celu jest zaznaczona czerwoną strzałką.

Jeśli wartość ta zmieni się na przykład na 10 milimetrów (mm), robot w rzeczywistości wpadnie na bramkę mobilną i potencjalnie uszkodzi się, ponieważ odległość 10 milimetrów (mm) od czujnika nie jest wystarczająca, aby zapobiec zetknięciu się wideł robota Cel mobilny.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: