Opis
Czujnik ten raportuje odległość pomiędzy nim a najbliższym obiektem stałym (zakres 50mm - 1m). Oblicza odległość na podstawie czasu potrzebnego falom ultradźwiękowym na odbicie się od obiektu i powrót do czujnika.
Jak działa czujnik odległości: słuchanie odległości
Czujnik odległości wykorzystuje do pomiaru dźwięku te same zasady, co urządzenia sonarowe. Wysyła niewielki impuls ultradźwiękowy z emiterem po jednej stronie czujnika, a następnie mnoży czas potrzebny do odbicia dźwięku do odbiornika po drugiej stronie czujnika. Czujnik oblicza odległość na podstawie czasu, jaki potrzebował impuls dźwiękowy na przebycie podróży w obie strony. Czujnik odległości dokonuje następnie obliczeń na podstawie prędkości dźwięku, aby poinformować mózg robota, jak daleko znajduje się najbliższy obiekt.
Jeśli powierzchnia nie jest płaska jak zakrzywiona ściana lub kula, fala ultradźwiękowa nie odbija się jednakowo i jednocześnie od wszystkich części. Najbliższa powierzchnia wystarczająco duża, aby odbić wykrywalną ilość fali, określa wykrytą odległość obiektu.
Typowe zastosowania czujnika odległości:
Czujnik ten potrafi wykryć, czy przed nim znajduje się jakiś obiekt.
Czujnik ten może mierzyć odległość pomiędzy nim a obiektem.
- Robot może wykorzystać ten czujnik do odjechania na określoną odległość od obiektu.
- Robot może wykorzystać ten czujnik do podjechania do obiektu bez dotykania go.
- Wartości dostarczane przez ten czujnik można wykorzystać do dostosowania prędkości robota w zależności od tego, czy znajduje się on blisko, czy daleko od obiektu lub powierzchni.
Zastosowania czujnika odległości w robocie wyczynowym
- Robot może wykorzystać czujnik odległości do zainicjowania sekwencji zachowań, jeśli znajdzie się w odpowiednim miejscu. Na przykład robot może jechać do przodu, aż wykryje, że znajduje się 150 mm od ściany, a następnie obrócić się o 90 stopni i wypuścić obiekt w strefę punktacji.
- Czujnika odległości można używać do wyzwalania działań robota, takich jak podnoszenie elementu gry, gdy obiekt zostanie wykryty w jego zasięgu.
- Robot może wykorzystać czujnik odległości, aby podjechać do obiektu lub powierzchni, aż znajdzie się na określoną odległość, bez dotykania go. Można to wykorzystać, aby mieć pewność, że robot nie przewróci elementów gry.
- Robot może użyć czujnika odległości, aby odjechać od obiektu lub powierzchni, aż osiągnie określoną odległość. Można to wykorzystać, aby uniknąć kolizji z innymi robotami na polu.
Korzystanie z czujnika odległości w VEXcode IQ
Dodawanie czujnika odległości jako urządzenia w VEXcode IQ
Aby zakodować czujnik odległości w VEXcode IQ, należy najpierw skonfigurować czujnik odległości. Zobacz ten artykuł, aby dowiedzieć się więcej o konfigurowaniu czujnika w VEXcode IQ.
Po skonfigurowaniu czujnika w Toolboxie pojawią się polecenia, które możesz wykorzystać w swoim projekcie.
Kodowanie czujnika odległości w blokach
Blok <Object found> to logiczny blok reportera, który zgłasza warunek jako prawdziwy lub fałszywy. Bloki logiczne, takie jak blok <Object found> , mieszczą się wewnątrz bloków z sześciokątnymi (sześciościennymi) wejściami dla innych bloków.
Blok logiczny <Object found> zgłasza „prawdę”, jeśli czujnik wykryje obiekt, i „fałsz”, jeśli czujnik nie. Aby dowiedzieć się więcej na temat bloków logicznych, odwiedź artykuł Pomoc lub Kształty bloków i znaczenie.
W tym przykładzie blok <Object found> jest używany z blokiem [Czekaj do], aby robot jechał do przodu, aż czujnik odległości wykryje obiekt. Gdy czujnik wykryje obiekt, robot zatrzyma jazdę, jak pokazano na powyższym obrazku.
Blok (Odległość od) podaje odległość najbliższego obiektu od czujnika odległości. Podaje zakres od24 mm do 1000 mm lub od 1 cala do 40 cali. Blok (Odległość od) to blok reportera używany wewnątrz bloków z okrągłymi odstępami.
W tym przykładzie blok (Odległość od) jest używany z blokiem [Drukuj] w celu wyświetlenia na ekranie Brain odległości pomiędzy czujnikiem odległości a obiektem. Blok (Odległość od) jest również pokazany wewnątrz bloku <Less than> , który znajduje się wewnątrz bloku {Wait until}. Spowoduje to, że robot będzie jechał, dopóki czujnik odległości nie wykryje obiektu znajdującego się w odległości mniejszej niż 50 milimetrów, a następnie zatrzyma jazdę. Pokazano to na pierwszym filmie powyżej.
Kodowanie czujnika odległości w Pythonie
Uwaga:Aby zakodować czujnik odległości VEX IQ (1. generacji) w języku Python, należy go podłączyć do mózgu VEX IQ (2. generacji). Brain VEX IQ (1. generacji) nie obsługuje języka Python.
Polecenie zgłasza wartość logiczną true lub false dotyczącą wyłącznika zderzaka.
Polecenie odległość.is_object_detected zgłasza wartość „prawda”, jeśli obiekt zostanie wykryty, i „fałsz”, jeśli obiekt nie zostanie wykryty.
Uwaga:Nazwa czujnika odległości pojawiająca się w poleceniu odpowiada nazwie nadanej mu w konfiguracji.
W tym przykładzie zastosowano pętlęWhile z warunkiem , a nie z poleceniem Distance.is_object_detected , aby robot jechał do przodu, aż czujnik odległości wykryje obiekt. Gdy czujnik wykryje obiekt, robot zatrzyma jazdę, jak pokazano na powyższym obrazku.
Polecenie odległość.odległość podaje odległość najbliższego obiektu od czujnika odległości. Podaje zakres od24 mm do 1000 mm lub od 1 cala do 40 cali.
W tym przykładzie zastosowano pętlę While z warunkiem , a nie z poleceniem Distance.is_object_detected , aby robot jechał do przodu, aż czujnik odległości wykryje obiekt. Gdy czujnik wykryje obiekt, robot zatrzyma jazdę.
W tym przykładzie polecenie odległość.odległość zostało użyte z poleceniem brain.screen.print w celu wyświetlenia na ekranie Brain odległości pomiędzy czujnikiem odległości a obiektem. Polecenie odległość.odległość jest także wyświetlane w pętli While z warunkiem , a nie . Spowoduje to, że robot będzie jechał, dopóki czujnik odległości nie wykryje obiektu znajdującego się w odległości mniejszej niż 50 milimetrów, a następnie zatrzyma jazdę. Pokazano to na pierwszym filmie powyżej.