Використання датчика ока у VEXcode VR з Python

Робот VEX VR має безліч датчиків, у тому числі два датчики очей.


Датчики очей на роботі VR

Знімок екрана інтерфейсу VEXcode VR, на якому показано середовище кодування на основі блоків для програмування віртуального робота, розроблене для підтримки STEM-навчання через навчальні посібники з кодування та дії з вирішення проблем.

VR Robot має два датчики очей, один спрямований вперед, а інший — вниз. Датчики можуть визначати наявність об’єкта, а також визначати колір (червоний, зелений, синій, немає).

Знімок екрана інтерфейсу VEXcode VR, який демонструє середовище кодування на основі блоків, розроблене для навчання концепціям кодування за допомогою віртуальної робототехніки, як частину розділу Навчальних посібників.

Значення датчика ока можна відобразити на інформаційній панелі у VEXcode VR. Щоб дізнатися більше про інформаційну панель, перегляньте цю статтю.

Знімок екрана інтерфейсу VEXcode VR, на якому показано середовище кодування на основі блоків для програмування віртуального робота, розробленого для освітніх цілей навчання STEM.

Значення датчика ока можна відобразити на консолі монітора у VEXcode VR. Щоб дізнатися більше про Monitor Console, перегляньте цю статтю.


Команди, що використовуються з датчиками очей

Датчик ока поблизу об'єкта команда

Знімок екрана інтерфейсу навчального посібника VEXcode VR, який демонструє варіанти кодування на основі блоків для програмування віртуального робота, спрямованого на навчання студентів і викладачів концепціям кодування та принципам робототехніки в освітньому контексті STEM.

 

Команда Датчик окапоблизу об’єкта повідомляє, чи знаходиться Датчик ока достатньо близько до об’єкта, щоб визначити колір (червоний, зелений, синій, немає). Датчик переднього ока та датчик ока вниз мають відповідні команди поблизу об’єктів.

Знімок екрана інтерфейсу VEXcode VR, який демонструє середовище кодування на основі блоків, призначене для навчання концепціям кодування за допомогою віртуального робота, представлене в розділі Навчальних посібників.

Команда Eye sensornear object повертає логічне значення, яке повідомляє True , коли датчик Eye Sensor знаходиться близько до об’єкта, який має помітні кольори, і повідомляє False , коли він недостатньо близький до об’єкт із помітними кольорами.

Команда кольору датчика ока

Знімок екрана інтерфейсу VEXcode VR, який демонструє середовище кодування на основі блоків, розроблене для навчання концепціям кодування за допомогою віртуальної робототехніки, що містить інструменти для створення, тестування та налагодження коду в симульованих умовах.

КомандаEye sensor color повідомляє, чи виявляє датчик ока певний колір.

Знімок екрана інтерфейсу VEXcode VR, який демонструє середовище кодування на основі блоків, розроблене для навчання концепціям кодування за допомогою віртуальної робототехніки, як частину розділу Навчальних посібників.

Колір, який шукає датчик ока, встановлюється як параметр команди. Обидва датчики ока можуть виявляти червоний, зелений, синій або не виявляти жодного.

Знімок екрана інтерфейсу VEXcode VR, що демонструє середовище кодування на основі блоків, призначене для навчання концепціям кодування за допомогою програмування віртуального робота, з опціями як для початківців, так і для досвідчених користувачів.

Команда Eye sensor color повертає логічне значення, яке повідомляє True , коли датчик ока виявляє вибраний колір, і повідомляє False , коли не виявляє колір, встановлений як параметр.


Загальне використання датчика ока

Знімок екрана інтерфейсу навчального посібника VEXcode VR, який демонструє середовище кодування на основі блоків, створене для навчання концепціям кодування за допомогою віртуального робота, спрямоване на вдосконалення навичок вирішення проблем і обчислювального мислення в освіті STEM.

Датчики очей на роботі VR можна використовувати різними способами. Одна річ, яку слід зазначити про датчик ока внизу, це те, що він налаштований таким чином, щоб не виявляти підлогу ігрового майданчика як об’єкт. Інші елементи, наприклад диски, будуть зареєстровані як об’єкти.

Датчики очей можуть визначати колір об’єкта поблизу датчика, наприклад кольорові диски на ігровому майданчику Disk Mover або червону рамку навколо ігрового майданчика Castle Crasher. Це корисно, якщо ви хочете, щоб робот VR сортував об’єкти різного кольору, під’їжджав до об’єкта певного кольору або визначав колір об’єктів, коли вони проходять повз датчик.

def main():
поки не down_eye.detect(BLUE):
drivetrain.drive(FORWARD)
wait(5, MSEC)
drivetrain.stop()
magnet.energize(BOOST)

Щоб використати приклад вище, скопіюйте цей код у VEXcode VR і запустіть проект на майданчику Disk Mover.

Знімок екрана інтерфейсу навчального посібника VEXcode VR, який демонструє параметри кодування на основі блоків і віртуального робота, розробленого, щоб допомогти користувачам вивчати концепції кодування та принципи робототехніки в освітньому середовищі.

Робот VR може використовувати датчики очей, щоб ініціювати послідовність дій, коли він знаходиться в потрібному для цього місці. Наприклад, робот VR може їхати вперед, доки не виявить, що він знаходиться поблизу об’єкта, наприклад стіни, потім повертати на 90 градусів або їхати заднім ходом, щоб не врізатися в об’єкт, наприклад замок, диск або стіну.

def main():
, поки не front_eye.near_object():
drivetrain.drive(FORWARD)
wait(5, MSEC)
drivetrain.stop()

Щоб використати наведений вище приклад, скопіюйте цей код у VEXcode VR і запустіть проект на ігровому майданчику Wall Maze.

Знімок екрана інтерфейсу VEXcode VR, на якому показано середовище кодування на основі блоків для програмування віртуального робота, розроблене для освітніх цілей у STEM, із підкресленням навчальних посібників щодо концепцій кодування та принципів робототехніки.

VR-робот може використовувати датчики очей, щоб рухатися до об’єкта або поверхні, доки він не опиниться на певній відстані, не торкаючись його. Це можна використовувати, щоб переконатися, що робот VR не впаде з ігрового майданчика чи не врізається в стіни.

def main():
drivetrain.drive_for(FORWARD, 300, MM)
drivetrain.turn_for(LEFT, 90, DEGREES)
поки не down_eye.detect(RED):
drivetrain.drive(FORWARD)
wait(5, MSEC) )
drivetrain.stop()

Щоб використати наведений вище приклад, скопіюйте цей код у VEXcode VR і запустіть проект на ігровому майданчику Castle Crasher.


Приклад проекту датчика ока

Знімок екрана інтерфейсу VEXcode VR, що демонструє параметри кодування на основі блоків і віртуального робота, ілюструє навчальні інструменти платформи для кодування, вирішення проблем і принципи робототехніки в навчальному контексті.

У наведеному нижче прикладі VR-робот рухатиметься вперед, доки датчик переднього ока не виявить зелений об’єкт, після чого він зупиняється та чекає, перш ніж рухатися заднім ходом. Зверніть увагу, що на приладовій панелі значення датчика переднього ока повідомляють True про те, що об’єкт виявлено, а колір цього об’єкта (диска) зелений.

def main():
drivetrain.drive(FORWARD)
while True:
if front_eye.detect(GREEN):
drivetrain.stop()
wait(2, SECONDS)
drivetrain.drive_for(REVERSE, 200, MM)
чекати (5, МСЕК)

Щоб використати наведений вище приклад, скопіюйте цей код у VEXcode VR і запустіть проект на ігровому майданчику Disk Maze.

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

Last Updated: