Датчик відстані на VR Robot повідомляє відстань між VR Robot та найближчим об’єктом. Датчик обчислює відстань, використовуючи час, потрібний лазерному променю, щоб відбити об’єкт і повернутися до датчика.
Датчик відстані на роботі VR
Датчик відстані – це датчик, який повідомляє відстань між роботом VR та найближчим твердим об’єктом.
Датчик відстані використовує ті самі принципи, що й ехолот для вимірювання звуку. Він посилає невеликий імпульс лазерного світла з випромінювачем з одного боку датчика, а потім умножує, скільки часу потрібно, щоб світло відбилося назад до приймача з іншого боку датчика. Датчик розраховує відстань на основі того, скільки часу знадобилося пульсу, щоб здійснити подорож туди й назад. Потім датчик відстані повідомляє роботові VR, наскільки далеко знаходиться найближчий об’єкт.
Ширина діапазону зору датчиків відстані змінюється, коли він дивиться далі від передньої частини робота VR:
- Датчик може виявляти об’єкти в межах поля зору 10 градусів, шукаючи об’єкти на відстані менше 1000 міліметрів (~ 39 дюймів).
- Датчик може виявляти об’єкти в полі зору 5 градусів, шукаючи об’єкти на відстані від 1000 міліметрів (~ 39 дюймів) до 2000 міліметрів (~ 78 дюймів).
- Датчик може виявляти об’єкти в межах поля зору 2 градуси, коли шукає об’єкти на відстані понад 2000 міліметрів (~ 78 дюймів).
Загальне використання датчика відстані
Датчик відстані може виявити, чи є об’єкт перед роботом VR. Це можна використовувати, щоб уникнути перешкоди.
| Блоки VEXcode VR | Ігровий майданчик Wall Maze | |
| VEXcode VR Python | ||
def main(): |
||
|
Датчик відстані може вимірювати відстань між передньою частиною датчика відстані та передньою частиною об’єкта. Це може бути корисним, щоб пройти лабіринт, постійно не натикаючись на стіни чи уникаючи предметів. |
||
| Блоки VEXcode VR | Динамічний ігровий майданчик Castle Crasher | |
|
|
||
| VEXcode VR Python | ||
def main(): |
||
|
У цьому прикладі робот VR поїде вперед, якщо датчик відстані знайде об’єкт. Якщо він не виявить об’єкт, робот VR поверне праворуч і продовжить перевірку об’єкта. Примітка: У цьому прикладі знайдеться перша будівля, але вона потребує покращень, щоб уникнути падіння зі столу. |
||
Використання датчика відстані з блоками VEXcode VR
Блоки, які використовуються з датчиком відстані, можна знайти в категорії Sensing.
<Відстань знайденого об'єкта> Блок
Датчик відстані визначає наявність об’єкта перед ним за допомогою блоку <Відстань знайденого об’єкта>. Датчик відстані може виявляти об’єкт або поверхню в межах 3000 мм (~118 дюймів) від датчика.
Блок <Відстань знайденого об’єкта>є логічним блоком, який повертає умову як істина або хибно і поміщається всередині будь-яких блоків із шестикутними (шестисторонніми) проміжками для інших блоків.
Для отримання додаткової інформації про булеві блоки перегляньте цю статтю.
Значення блоку <Distance found object> є логічним блоком, який повідомляє істину, коли датчик відстані знаходиться близько до об’єкта, і повідомляє помилку, коли він недостатньо близько до об’єкта.
Вірно або Невірно буде повідомлено та з’явиться на консолі моніторингу.
Щоб дізнатися більше про Monitor Console, перегляньте цю статтю.
(Відстань від) Блоку
Використовуючи блок (Відстань від), датчик відстані може повідомляти про відстань до найближчого об’єкта в міліметрах (мм) або дюймах.
Блок (Відстань від) повідомляє числові значення та вписується в будь-які блоки з овальними проміжками.
Для отримання додаткової інформації про блокування репортерів перегляньте цю статтю.
Значення блоку (Відстань від) у міліметрах (мм) або дюймах можна відобразити на консолі монітора у VEXcode VR.
Щоб дізнатися більше про Monitor Console, перегляньте цю статтю.
Використання датчика відстані у VEXcode VR Python
Щоб розпочати програмування датчика відстані за допомогою Python, вам потрібно спочатку відкрити текстовий проект VEXcode VR. Для отримання додаткової інформації перегляньте цю статтю.
Потім знайдіть категорію Sensing на панелі інструментів і знайдіть команди found_object і get_distance. Це функції, які повідомляють логічне або числове значення датчика.
Щоб додати команду до свого проекту, ви можете перетягнути команду з панелі інструментів або ввести команду в робочій області за допомогою функції автозаповнення.
Щоб дізнатися більше про автозаповнення у VEXcode VR з Python, перегляньте цю статтю.
def main(): |
|
Цикл while можна використовувати з датчиками на вашому роботі, якщо ви хочете, щоб ваш робот зробив щось на кшталт руху, поки датчик відстані не буде на відстані 50 мм або менше від стіни, а потім зупинився або повернувся. У цьому проекті робот рухатиметься вперед, коли датчик відстані повідомляє значення, що перевищує 50 мм, і припинить рух, коли датчик відстані буде менше 50 мм від стіни. |
def main(): |
|
Значення командget_distance іfound_object можна відобразити на консолі монітора у VEXcode VR. Щоб дізнатися більше про використання консолі моніторингу у VEXcode VR Python, перегляньте цю статтю. |