Блоки, специфічні для роботів#
Вступ#
Робот-герой Huey оснащений двома варіантами двигунів: датчиком зору IQ AI, оптичним датчиком та сенсорним світлодіодом.
Усі стандартні блоки віртуальної реальності VEXcode доступні для використання на ігровому майданчику IQ 25-26 Mix & Match.
Нижче наведено список усіх доступних блоків, специфічних для роботів:
Трансмісія – Переміщення та поворот робота.
Дії
drive — Рухає робота вперед або назад безперервно.
drive for — Переміщує робота вперед або назад на певну відстань.
повернути — Повертає робота ліворуч або праворуч назавжди.
повернути на — Повертає робота ліворуч або праворуч на певну кількість градусів.
повернути до напрямку — Повертає робота обличчям до певного напрямку.
повернути на обертання — Повертає робота на певний оберт.
зупинити рух — Зупиняє рух робота.
Налаштування
встановити швидкість руху — Вказує роботу, з якою швидкістю рухатися.
встановити швидкість повороту — Вказує роботу, з якою швидкістю потрібно повертатися.
встановити напрямок руху — Змінює поточний напрямок руху робота на новий.
встановити обертання приводу — Змінює поточне обертання робота на нове обертання.
встановити тайм-аут руху — Встановлює, скільки секунд робот намагатиметься завершити рух.
Значення
рух завершено — Повідомляє, чи завершив рух робота.
привід рухається — Повідомляє, чи рухається робот.
курс руху — Повідомляє поточний курс робота від 0 до 359,99 градусів.
обертання приводу — Повідомляє про поточне обертання робота.
швидкість руху — Повідомляє про швидкість руху робота.
Рух – Переміщення та відстеження двигунів робота.
Дії
обертання двигуна – Обертає двигун в одному з напрямків нескінченно.
обертати двигун протягом – Обертає двигун на певну відстань у градусах або обертах.
розкрутити двигун у потрібне положення – Розкрутить двигун у певне положення.
зупинити двигун – Зупиняє обертання двигуна.
Налаштування
встановити швидкість двигуна – Вказує двигуну, з якою швидкістю обертатися.
встановити тайм-аут двигуна – Встановлює час, протягом якого двигун намагатиметься завершити рух.
встановити положення двигуна – Змінює поточне положення двигуна на нове значення.
Значення
двигун готовий – Повідомляє, чи завершив рух двигуна.
двигун обертається – Повідомляє, чи обертається двигун.
положення двигуна – Повідомляє поточне положення двигуна.
швидкість двигуна – Повідомляє про швидкість обертання двигуна у відсотках від -100% до 100%.
Штучний зір – захоплення та аналіз об’єктів за допомогою датчика зору IQ AI.
Дії
get object data – Записує дані для певного підпису, такого як виявлена класифікація ШІ.
Налаштування
set object item – Вибирає певний об’єкт зі списку.
Значення
об’єкт існує – Повертає, чи було виявлено будь-яку класифікацію.
об’єкт є – Повертає, чи виявлено певну класифікацію.
кількість об’єктів – Повертає кількість виявлених об’єктів.
властивість об’єкта - Повертає ширину, висоту, centerX, centerY, originX або originY.
Сенсорика – Використовуйте різні датчики робота.
Оптичний
Оптичний датчик знайдено об’єкт – Повідомляє, чи датчик виявляє об’єкт у межах досяжності.
Оптичне визначення кольору – Повідомляє, чи оптичний датчик виявляє заданий колір.
Оптична яскравість – Повідомляє про яскравість, виявлену оптичним датчиком.
Оптичний відтінок – Повідомляє про відтінок, виявлений оптичним датчиком.
when Optical – Запускає приєднаний стек блоків, коли оптичний датчик виявляє або втрачає об’єкт.
Сенсорний світлодіодний індикатор
встановити колір сенсорного світлодіода – Встановлює вибраний колір для сенсорного світлодіода.
У прикладах на цій сторінці використовується початкова позиція ігрового майданчика за замовчуванням.
Трансмісія#
Трансмісія контролює, як VR-робот керує рухом та поворотами. Трансмісія може рухатися вперед або назад, повертати ліворуч або праворуч, змінювати напрямок руху та відстежувати своє обертання.
Дії#
диск#
Блок стека drive переміщує робота вперед або назад нескінченно. Робот продовжуватиме рухатися, доки йому не буде надано іншу дію, таку як поворот або зупинка.
їхати [вперед v]
Параметри |
Опис |
|---|---|
напрямок |
Напрямок руху робота: вперед або назад. |
Приклад
коли запущено :: hat events
[Drive forward, then stop.]
їхати [вперед v]
чекати (2) секунд
зупинити рух
їхати за#
Блок стеку drive for переміщує робота вперед або назад на певну відстань. Проект чекатиме, поки робот завершить рух, перш ніж запуститься наступний блок у стеку.
їхати [вперед v] на (200) [мм v] ▶
Параметри |
Опис |
|---|---|
напрямок |
Напрямок руху робота: вперед або назад. |
відстань |
Відстань, яку проїжджає робот. Це може бути ціле або десяткове число. |
одиниця |
Одиниця вимірювання відстані: мм (міліметри) або дюйми |
і не чекай |
Виберіть стрілку (▶), щоб розгорнути блок і сказати і не чекайте, тоді наступний блок у стеку запуститься одразу. |
Приклад
коли запущено :: hat events
[Drive forward.]
їхати [вперед v] на (500) [мм v] ▶
поворот#
Блок стеку turn повертає робота ліворуч або праворуч назавжди. Робот продовжуватиме повертатися, доки йому не буде надано іншу дію, наприклад, рух або зупинку.
повернути [праворуч v]
Параметри |
Опис |
|---|---|
напрямок |
Напрямок повороту робота: ліворуч або праворуч. |
Приклад
коли запущено :: hat events
[Turn right, then stop.]
повернути [праворуч v]
чекати (2) секунд
зупинити рух
повернути за#
Блок стеку turn for повертає робота ліворуч або праворуч на певну кількість градусів. Поворот здійснюється відносно поточного положення робота. Проект чекатиме, поки робот завершить поворот, перш ніж запустити наступний блок у стеку.
повернути [праворуч v] на (90) градусів ▶
Параметри |
Опис |
|---|---|
напрямок |
Напрямок повороту робота: ліворуч або праворуч. |
кут |
Кількість градусів, на яку повертається робот. Це може бути ціле або десяткове число. |
і не чекай |
Виберіть стрілку (▶), щоб розгорнути блок і сказати і не чекайте, тоді наступний блок у стеку запуститься одразу. |
Приклад
коли запущено :: hat events
[Turn left, then turn around to the right.]
повернути [ліворуч v] на (90) градусів ▶
повернути [праворуч v] на (180) градусів ▶
повернути до заголовка#
Курс руху – це напрямок, у якому рухається робот, виміряний у градусах. Блок стеку поворот до курсу повертає робота обличчям до певного курсу від -359 до 359 градусів. Робот поверне у найкоротшому напрямку, щоб досягти цільового курсу.
Початковий курс — 0 градусів.
Проєкт чекатиме, поки робот завершить обертання, перш ніж запуститься наступний блок у стеку.
повернути на курс (90) градусів ▶
Параметри |
Опис |
|---|---|
заголовок |
Кут, куди має дивитися робот, від -359 до 359 градусів. |
і не чекай |
Виберіть стрілку (▶), щоб розгорнути блок і сказати і не чекайте, тоді наступний блок у стеку запуститься одразу. |
Приклад
коли запущено :: hat events
[Turn to face the cardinal directions.]
повернути на курс (90) градусів ▶
чекати (2) секунд
повернути на курс (180) градусів ▶
чекати (2) секунд
повернути на курс (270) градусів ▶
чекати (2) секунд
повернути на курс (0) градусів ▶
чекати (2) секунд
поворот на обертання#
Блок стеку поворот на обертання повертає робота на певний оберт.
Обертання – це кут повороту робота, виміряний у градусах. На початку проекту значення повороту встановлюється на 0 градусів. Обертання також можна встановити за допомогою блоку set drive rotation.
Значення обертання є абсолютними. Це означає, що напрямок повороту залежить від поточного обертання робота. Поворот праворуч збільшує обертання, а поворот ліворуч зменшує обертання.
Наприклад, якщо робот починає рух з кута 0 градусів, а потім повертається на 720 градусів, він двічі повернеться праворуч. Якщо потім повернути на 360 градусів, він один раз повернеться ліворуч, оскільки 360 менше за 720.
Проєкт чекатиме, поки робот завершить обертання, перш ніж запуститься наступний блок у стеку.
повернути на обертання (90) градусів ▶
Параметри |
Опис |
|---|---|
обертання |
Значення повороту в градусах, до якого повернеться робот. Це може бути ціле або десяткове число. |
і не чекай |
Виберіть стрілку (▶), щоб розгорнути блок і сказати і не чекайте, тоді наступний блок у стеку запуститься одразу. |
Приклад
коли запущено :: hat events
[Turn left, then spin in a circle clockwise and face right.]
повернути на обертання (-90) градусів ▶
чекати (2) секунд
повернути на обертання (450) градусів ▶
зупинити керування#
Блок стеку зупинити рух зупиняє рух робота.
зупинити рух
Параметри |
Опис |
|---|---|
Цей блок не має параметрів. |
Приклад
коли запущено :: hat events
[Drive forward, then stop.]
їхати [вперед v]
чекати [4] секунд
зупинити рух
Налаштування#
встановити швидкість руху#
Блок стеку set drive velocity вказує роботу, з якою швидкістю рухатися. Вищий відсоток робить робот швидшим, а нижчий – повільнішим.
Кожен проєкт починається з того, що робот рухається зі швидкістю 50% за замовчуванням.
Примітка: Вища швидкість робить робот швидшим, але це може бути менш точно. Нижча швидкість робить робот повільнішим, але це може бути точнішим.
встановити швидкість руху (50) [% v]
Параметри |
Опис |
|---|---|
швидкість |
Швидкість руху від 0% до 100%. |
одиниця |
Одиниця вимірювання швидкості: % |
Приклад
коли запущено :: hat events
[Drive forward at the default velocity.]
їхати [вперед v] на (100) [мм v] ▶
чекати (1) секунд
[Move slower.]
встановити швидкість руху (20) [% v]
їхати [вперед v] на (100) [мм v] ▶
чекати (1) секунд
[Move faster.]
встановити швидкість руху (100) [% v]
їхати [вперед v] на (100) [мм v] ▶
чекати (1) секунд
встановити швидкість повороту#
Блок стеку set turn velocity вказує роботу, як швидко повертатися. Вищий відсоток змушує робота повертатися швидше, а нижчий — повільніше.
Кожен проект починається з того, що робот обертається зі швидкістю 50% за замовчуванням.
Примітка: Вища швидкість змушує робота обертатися швидше, але це може бути менш точно. Нижча швидкість змушує робота обертатися повільніше, але це може бути точніше.
встановити швидкість повороту (50) [% v]
Параметри |
Опис |
|---|---|
швидкість |
Швидкість повороту від 0% до 100%. |
одиниця |
Одиниця вимірювання швидкості: % |
Приклад
коли запущено :: hat events
[Turn at default velocity.]
повернути [праворуч v] на (100) градусів ▶
чекати (1) секунд
[Turn slower.]
встановити швидкість повороту (20)%
повернути [праворуч v] на (100) градусів ▶
чекати (1) секунд
[Turn faster.]
встановити швидкість повороту (100)%
повернути [праворуч v] на (100) градусів ▶
чекати (1) секунд
встановити заголовок диска#
Курс руху – це напрямок руху робота, що вимірюється в градусах. Блок стеку set drive heading змінює поточний курс руху робота на нове значення курсу.
Наприклад, якщо робот повернувся обличчям праворуч, встановлення курсу на 0 градусів робить це положення обличчям праворуч новим 0 градусами. Потім робот може повертатися в інші позиції на основі цього нового курсу.
встановити курс руху (0) градусів
Параметри |
Опис |
|---|---|
заголовок |
Значення курсу в градусах, яке потрібно встановити для робота. |
Приклад
коли запущено :: hat events
[Turn to the left.]
встановити курс руху (90) градусів
повернути на курс (0) градусів ▶
встановити обертання диска#
Обертання – це кут повороту робота, виміряний у градусах. На початку проекту значення повороту встановлюється на 0 градусів. Блок стеку set drive rotation змінює поточне обертання робота на нове значення.
Наприклад, якщо робот зробив два повних оберти праворуч, значення його обертання становитиме 720 градусів. Встановлення обертання на 0 градусів скине це обертання з 720 до 0 градусів. Потім робот зможе повертатися до обертань на основі цього нового значення.
встановити обертання руху (0) градусів
Параметри |
Опис |
|---|---|
обертання |
Значення обертання в градусах, яке потрібно встановити для робота. Це може бути ціле або десяткове число. |
Приклад
коли запущено :: hat events
[Spin counterclockwise two times.]
встановити обертання руху (720) градусів
повернути на обертання (0) градусів ▶
встановити час очікування диска#
Блок стеку set drive timeout встановлює, скільки секунд робот намагатиметься завершити рух. Якщо робот не зможе завершити його за цей час, він припинить спроби та перейде до наступного блоку в стеку. Це запобігає зависанню робота на русі.
встановити тайм-аут руху (1) секунд
Параметри |
Опис |
|---|---|
час |
Кількість секунд, протягом яких робот може спробувати завершити рух. Це може бути ціле число або десятковий дроб. |
Приклад
коли запущено :: hat events
[Drive forward for 1 second, then turn.]
встановити тайм-аут руху (1) секунд
їхати [вперед v] на (25) [дюйми v] ▶
повернути [праворуч v] на (90) градусів ▶
Цінності#
диск завершено#
Булевий блок drive is done повідомляє, чи завершив рух робота. Це можна використовувати для керування часом інших дій на основі руху робота.
Правда — Робот завершив рух.
Хибно — Робот все ще рухається.
Цей блок працює разом із блоками трансмісії, які мають параметр і не чекати.
<рух завершено?>
Параметри |
Опис |
|---|---|
Цей блок не має параметрів. |
Приклад
коли запущено :: hat events
[Start spinning when the drive is complete.]
їхати [вперед v] на (200) [мм v] ◀ і не чекати
чекати до <рух завершено?>
повернути [праворуч v] на (360) градусів ▶
привід рухається#
Булевий блок привід рухається повідомляє, чи рухається робот. Це можна використовувати для керування часом інших дій на основі руху робота.
Правда — Робот рухається.
Хибно — Робот не рухається.
Цей блок працює разом із блоками трансмісії, які мають параметр і не чекати.
<рух виконується?>
Параметри |
Опис |
|---|---|
Цей блок не має параметрів. |
Приклад
коли запущено :: hat events
[Print that the robot is moving while it is still driving.]
їхати [вперед v] на (200) [мм v] ◀ і не чекати
поки <рух виконується?>
вивести [Still Moving...] ▶
чекати (0.1) секунд
очистити екран
Кінець
вивести [Done!] ▶
напрямок руху#
Курс руху – це напрямок руху робота, що вимірюється в градусах. Блок репортера курс руху повідомляє про цей курс від 0 до 359,99 градусів.
Початковий курс робота становить 0 градусів.
(курс руху у градусах)
Параметри |
Опис |
|---|---|
Цей блок не має параметрів. |
Приклад
коли запущено :: hat events
[Display the heading after turning.]
повернути [праворуч v] на (450) градусів ▶
вивести (курс руху у градусах) на екран ◀ і перейти до наступного рядка
обертання диска#
Обертання – це кут повороту робота, виміряний у градусах. На початку проекту значення повороту встановлюється на 0 градусів. Блок звіту обертання приводу повідомляє про поточне обертання робота.
Поворот праворуч збільшує обертання, а поворот ліворуч зменшує. Наприклад, два повних оберти праворуч призведуть до обертання на 720 градусів.
(обертання руху у градусах)
Параметри |
Опис |
|---|---|
Цей блок не має параметрів. |
Приклад
коли запущено :: hat events
[Display the rotation after turning.]
повернути [праворуч v] на (450) градусів ▶
вивести (обертання руху у градусах) на екран ◀ і перейти до наступного рядка
швидкість руху#
Блок репортера швидкість руху повідомляє, з якою швидкістю рухається робот.
(швидкість руху у [% v])
Параметри |
Опис |
|---|---|
одиниця |
Одиниця вимірювання швидкості: % |
Приклад
коли запущено :: hat events
[Display the velocity after driving.]
їхати [вперед v] на (200) [мм v] ▶
вивести (швидкість руху у [% v]) на екран ◀ і перейти до наступного рядка
Рух#
Х’юї використовує двигун кігтя, щоб відкривати та закривати його, щоб штифти та балки можна було піднімати або опускати. Підйомний двигун піднімає та опускає штифти або балки, щоб вони могли з’єднуватися одна з одною.
Кожен двигун має власні параметри напрямку. Назви напрямків описують, як цей двигун рухається на Huey.
Дії#
обертальний двигун#
Блок стеку spin motor обертає двигун в одному з двох напрямків нескінченно. Двигун продовжуватиме обертатися, доки йому не буде надано іншу дію, наприклад, обертання в іншому напрямку або зупинка.
обертати [ClawMotor v] [ВІДЧИНЕНО v]
Параметри |
Опис |
|---|---|
двигун |
Двигун, що обертається: ClawMotor або LiftMotor. |
напрямок |
Напрямок обертання двигуна:
|
Приклад
коли запущено
[Place a pin atop another pin.]
обертати [LiftMotor v] [вгору v] на [600] [градуси v] ▶
їхати [вперед v] на (140) [мм v] ▶
обертати [ClawMotor v] [ВІДЧИНЕНО v]
обертальний двигун для#
Блок стеку spin motor for обертає двигун на певну відстань. Обертання залежить від поточного положення двигуна. Проект чекатиме, поки двигун завершить обертання, перш ніж запуститься наступний блок у стеку.
обертати [ClawMotor v] [ВІДЧИНЕНО v] на (90) [градуси v] ▶
Параметри |
Опис |
|---|---|
двигун |
Двигун, що обертається: ClawMotor або LiftMotor. |
напрямок |
Напрямок обертання двигуна:
|
відстань |
Відстань, на яку обертається двигун. Градуси використовують цілі числа. Оберти можуть використовувати цілі або десяткові числа. |
одиниця |
Одиниця вимірювання відстані: градуси або повороти. |
і не чекай |
Виберіть стрілку (▶), щоб розгорнути блок і сказати і не чекайте, тоді наступний блок у стеку запуститься одразу. |
Приклад
коли запущено
[Place a pin atop another pin.]
обертати [LiftMotor v] [вгору v] на [600] [градуси v] ▶
їхати [вперед v] на (140) [мм v] ▶
обертати [ClawMotor v] [ВІДЧИНЕНО v]
поверніть двигун у потрібне положення#
Блок стеку spin motor to position обертає двигун у певне положення.
Положення двигуна – це відстань, на яку він обертувався, вимірюється в градусах або обертах. Один оберт дорівнює 360 градусам. На початку проекту положення двигуна встановлюється на 0 градусів. Положення двигуна також можна встановити за допомогою блоку set motor position.
Значення положення є абсолютними. Це означає, що напрямок обертання залежить від поточного положення двигуна.
Наприклад, якщо двигун запускається при 0 градусах і обертається до положення 720 градусів, він обертається вперед на два оберти. Якщо він потім обертається до положення 360 градусів, він обертається назад на один оберт, оскільки 360 менше за 720.
обертати [ClawMotor v] до позиції (90) [градуси v] ▶
Параметри |
Опис |
|---|---|
двигун |
Двигун, що обертається: ClawMotor або LiftMotor. |
позиція |
Значення положення, до якого обертатиметься двигун. Градуси використовують цілі числа. Оберти можуть використовувати цілі або десяткові числа. |
одиниця |
Одиниця вимірювання положення: градуси або оберти. |
і не чекай |
Виберіть стрілку (▶), щоб розгорнути блок і сказати і не чекайте, тоді наступний блок у стеку запуститься одразу. |
Приклад
коли запущено
[Place a pin atop another pin.]
обертати [LiftMotor v] до позиції [-2] [оберти v] ▶
їхати [вперед v] на (140) [мм v] ▶
обертати [ClawMotor v] [ВІДЧИНЕНО v]
зупинити двигун#
Блок стека зупинити двигун зупиняє вибраний двигун.
зупинити [ClawMotor v]
Параметри |
Опис |
|---|---|
двигун |
Двигун, який потрібно зупинити: ClawMotor або LiftMotor. |
Приклад
коли запущено
[Raise the lift for 2 seconds, then stop.]
обертати [LiftMotor v] [вгору v]
чекати (2) секунд
зупинити [LiftMotor v]
Налаштування#
встановити швидкість двигуна#
Блок стека set motor velocity вказує двигуну, з якою швидкістю обертатися. Вищий відсоток змушує двигун обертатися швидше, а нижчий — повільніше.
Кожен проект починається з того, що кожен двигун обертається зі швидкістю 50% за замовчуванням.
Примітка: Вища швидкість робить двигун обертанням швидше, але це може бути менш точно. Нижча швидкість робить двигун обертанням повільніше, але це може бути точнішим.
встановити швидкість [ClawMotor v] (50) [% v]
Параметри |
Опис |
|---|---|
двигун |
Двигун для встановлення швидкості: ClawMotor або LiftMotor. |
швидкість |
Швидкість обертання двигуна. Відсоток використовує цілі числа від 0% до 100%. |
одиниця |
Одиниця вимірювання швидкості: %. |
Приклад
коли запущено
[Raise the lift at full speed.]
встановити швидкість [LiftMotor v] [100] [% v]
обертати [LiftMotor v] [вгору v] на [600] [градуси v] ▶
встановити тайм-аут двигуна#
Блок стеку set motor timeout встановлює час, протягом якого двигун намагатиметься завершити рух. Якщо двигун не зможе завершити рух за цей час, він припинить спроби та перейде до наступного блоку в стеку. Це запобігає зависанню двигуна на русі.
встановити тайм-аут [ClawMotor v] (1) секунд
Параметри |
Опис |
|---|---|
двигун |
Двигун для встановлення часу очікування: ClawMotor або LiftMotor. |
час |
Кількість секунд, протягом яких двигун може спробувати завершити рух. Це може бути ціле або десяткове число. |
Приклад
коли запущено
встановити тайм-аут [LiftMotor v] [2] секунд
обертати [LiftMotor v] [вгору v] на [5] [оберти v] ▶
Позиція#
положення двигуна#
Положення двигуна — це на скільки він обертився, вимірюється в градусах або обертах. Один оберт дорівнює 360 градусам. Блок репортера положення двигуна повідомляє поточне положення двигуна.
На початку проекту положення двигуна встановлюється на 0 градусів. Якщо двигун обертається на один повний оберт вперед, положення становитиме 360 градусів або 1 оберт. Якщо двигун обертається в іншому напрямку, положення буде від’ємним.
(позиція [ClawMotor v] у [градуси v])
Параметри |
Опис |
|---|---|
двигун |
Двигун, про положення якого потрібно повідомляти: ClawMotor або LiftMotor. |
одиниця |
Одиниця вимірювання для повідомлення про положення двигуна у: градусах або обертах. |
Приклад
коли запущено
[Raise the lift until it reaches 600 degrees.]
обертати [LiftMotor v] [вгору v]
чекати до <(позиція [LiftMotor v] у [градуси v]) [math_less_than v] [-600]>
зупинити [LiftMotor v]
встановити положення двигуна#
Положення двигуна — це відстань його обертання, що вимірюється в градусах або обертах. Один оберт дорівнює 360 градусам. Блок стеку встановлення позиції двигуна змінює поточне положення двигуна на нове значення.
Наприклад, якщо двигун обертався на 180 градусів, встановлення положення на 0 градусів скине це положення зі 180 на 0 градусів. Потім двигун може обертатися в положення на основі цього нового значення.
встановити позицію [ClawMotor v] (0) [градуси v]
Параметри |
Опис |
|---|---|
двигун |
Двигун для встановлення положення: ClawMotor або LiftMotor. |
позиція |
Значення положення, яке потрібно встановити для двигуна. Градуси використовують цілі числа. Оберти можуть використовувати цілі або десяткові числа. |
одиниця |
Одиниця вимірювання положення: градуси або оберти. |
Приклад
коли запущено
встановити позицію [LiftMotor v] [100] [градуси v]
обертати [LiftMotor v] до позиції [-500] [градуси v] ▶
Цінності#
двигун готовий#
Булев блок motor is done повідомляє, чи завершив рух двигуна. Це можна використовувати для керування часом інших дій на основі руху двигуна.
Правда — Двигун завершив рух.
Хибно — Двигун все ще рухається.
Цей блок працює разом з наступними блоками руху, які мають параметр і не чекати: обертати двигун протягом та обертати двигун у потрібне положення.
<[ClawMotor v] завершено?>
Параметри |
Опис |
|---|---|
двигун |
Двигун, який має повідомляти про завершення руху: ClawMotor або LiftMotor. |
Приклад
коли запущено
[Flash the Touch LED while the lift is moving.]
обертати [LiftMotor v] [вгору v] на [600] [градуси v] ◀ і не чекати
чекати [0.1] секунд
повторювати до <[LiftMotor v] завершено?>
встановити колір [TouchLED v] на [червоний v]
чекати [0.5] секунд
встановити колір [TouchLED v] на [відсутній v]
чекати [0.5] секунд
Кінець
двигун обертається#
Булев блок motor is spinning повідомляє, чи обертається двигун. Це можна використовувати для керування часом інших дій на основі руху двигуна.
Правда — Двигун обертається.
Хибно — Двигун не обертається.
Цей блок працює разом з наступними блоками руху, які мають параметр і не чекати: обертати двигун протягом та обертати двигун у потрібне положення.
<[ClawMotor v] обертається?>
Параметри |
Опис |
|---|---|
двигун |
Двигун, для якого потрібно повідомляти, чи обертається він: ClawMotor або LiftMotor. |
Приклад
коли запущено
[Flash the Touch LED while the lift is spinning.]
обертати [LiftMotor v] [вгору v] на [600] [градуси v] ◀ і не чекати
чекати [0.1] секунд
повторювати до <не <[LiftMotor v] обертається?>>
встановити колір [TouchLED v] на [червоний v]
чекати [0.5] секунд
встановити колір [TouchLED v] на [відсутній v]
чекати [0.5] секунд
Кінець
швидкість двигуна#
Блок репортера швидкість двигуна повідомляє про швидкість обертання двигуна у відсотках від -100% до 100%.
(швидкість [ClawMotor v] у [% v] :: custom-motion)
Параметри |
Опис |
|---|---|
двигун |
Двигун, для якого потрібно повідомляти швидкість: ClawMotor або LiftMotor. |
одиниця |
Одиниця вимірювання швидкості двигуна: %. |
Приклад
коли запущено
встановити швидкість [LiftMotor v] [100] [% v]
обертати [LiftMotor v] [вгору v] на [600] [градуси v] ◀ і не чекати
чекати [0.5] секунд
вивести (швидкість [LiftMotor v] у [% v] :: custom-motion) ▶
Зір штучного інтелекту#
Дії#
отримати дані об’єкта#
Блок get object data фільтрує дані з кадру IQ AI Vision Sensor до єдиного підпису — збереженого опису чогось, що датчик може розпізнати, наприклад, ігрового елемента на полі.
Набір даних зберігає об’єкти, відсортовані від найбільшого до найменшого за шириною, починаючи з індексу 0. Доступ до властивостей кожного об’єкта можна отримати за допомогою блоку властивість об’єкта. Якщо не виявлено відповідних об’єктів, повертається порожній набір даних.
отримати дані [AI Classifications v] з [AIVision v]
Параметр |
Опис |
|---|---|
підпис |
Фільтрує набір даних, щоб включити лише дані заданого підпису. Доступні підписи:
|
Приклад
коли запущено
[Place the Red Pin on the top left Blue Pin.]
обертати [LiftMotor v] [вгору v] на [600] [градуси v] ▶
повернути [ліворуч v] на [38] градусів ▶
повторювати до <(об'єкт [AIVision v] [ширина v]) [math_greater_than v] [48]>
отримати дані [AI Classifications v] з [AIVision v]
їхати [вперед v]
Кінець
їхати [вперед v] на [160] [мм v] ▶
обертати [ClawMotor v] [ВІДЧИНЕНО v]
Налаштування#
елемент об’єкта встановлення#
Блок set object item встановлює, який елемент у наборі даних використовувати.
встановити елемент об'єкта [AIVision v] на [1]
Параметри |
Опис |
|---|---|
елемент |
Номер елемента в наборі даних, який потрібно використовувати. |
Приклад
коли запущено
[Find the object index of the nearest Orange Pin.]
встановити [object_counter v] на [1]
отримати дані [AI Classifications v] з [AIVision v]
повторити (кількість об'єктів [AIVision v])
встановити елемент об'єкта [AIVision v] на (object_counter)
якщо <[AIVision v] object is [Orange Pin v]> тоді
вивести (об'єднати [Nearest Orange Pin is ] (object_counter)) ▶
інакше
змінити [object_counter v] на [1]
Кінець
Кінець
Цінності#
об’єкт існує#
Блок об’єкт існує повертає логічне значення, яке вказує, чи виявлено будь-який об’єкт у наборі даних.
True – Набір даних містить виявлений об’єкт.
Хибно – Набір даних не містить жодних виявлених об’єктів.
<об'єкт [AIVision v] існує?>
Параметри |
Опис |
|---|---|
Цей блок не має параметрів. |
Приклад
коли запущено
[Raise the Lift until a Pin or Beam is detected.]
повторювати до <об'єкт [AIVision v] існує?>
отримати дані [AI Classifications v] з [AIVision v]
обертати [LiftMotor v] [вгору v]
Кінець
зупинити [LiftMotor v]
об’єкт є#
Блок object is повертає логічне значення, яке вказує, чи відповідає виявлений об’єкт певній класифікації.
True – Елемент у наборі даних є певним об’єктом.
Хибність – елемент у наборі даних не є конкретним об’єктом.
<об'єкт [AIVision v] є [Beam v]?>
Параметр |
Опис |
|---|---|
об’єкт |
З яким об’єктом порівняти предмет:
|
Приклад
коли запущено
[Find the object index of the nearest Orange Pin.]
встановити [object_counter v] на [1]
отримати дані [AI Classifications v] з [AIVision v]
повторити (кількість об'єктів [AIVision v])
встановити елемент об'єкта [AIVision v] на (object_counter)
якщо <[AIVision v] object is [Orange Pin v]> тоді
вивести (об'єднати [Nearest Orange Pin is ] (object_counter)) ▶
інакше
змінити [object_counter v] на [1]
Кінець
Кінець
кількість об’єктів#
Блок object count повертає кількість виявлених об’єктів у наборі даних у вигляді цілого числа.
(кількість об'єктів [AIVision v])
Параметри |
Опис |
|---|---|
Цей блок не має параметрів. |
Приклад
коли запущено
отримати дані [AI Classifications v] з [AIVision v]
вивести (кількість об'єктів [AIVision v]) ▶
властивість об’єкта#
Існує шість властивостей, які додаються до кожного об’єкта, що зберігається після використання блоку get object data.
(об'єкт [AIVision v] [ширина v])
Усі значення властивостей описують положення та розмір виявленого об’єкта в області перегляду IQ AI Vision Sensor у момент використання блоку get object data. Ці значення вимірюються в пікселях, виходячи з роздільної здатності датчика 320 на 240 пікселів.
Параметр |
Опис |
|---|---|
власність |
Яку властивість виявленого об’єкта використовувати: |
ширина#
Властивість width повідомляє ширину виявленого об’єкта в пікселях як ціле число від 1 до 320.
(об'єкт [AIVision v] [ширина v])
висота#
Властивість height повідомляє висоту виявленого об’єкта в пікселях як ціле число від 1 до 240.
(об'єкт [AIVision v] [висота v])
центрX#
Властивість centerX повідомляє x-координату центру виявленого об’єкта в пікселях як ціле число від 0 до 320.
(об'єкт [AIVision v] [centerX v])
центрY#
Властивість centerY повідомляє y-координату центру виявленого об’єкта в пікселях як ціле число від 0 до 240.
(об'єкт [AIVision v] [centerY v])
походженняX#
Властивість originX повідомляє x-координату верхнього лівого кута рамки визначення виявленого об’єкта в пікселях як ціле число від 0 до 320.
(об'єкт [AIVision v] [originX v])
походженняY#
Властивість originY повідомляє y-координату верхнього лівого кута рамки визначення виявленого об’єкта в пікселях як ціле число від 0 до 240.
(об'єкт [AIVision v] [originY v])
Зондування#
Оптичний#
Оптичний знайшов об’єкт#
Логічний блок Оптичний датчик знайдено об’єкт повідомляє, чи виявляє оптичний датчик об’єкт у межах досяжності.
Правда — Оптичний датчик виявляє об’єкт.
Хибно — Оптичний датчик не виявляє об’єкт.
<[Optical v] знайшов об'єкт?>
Параметри |
Опис |
|---|---|
Цей блок не має параметрів. |
Приклад
коли запущено
[Place a pin atop another pin.]
обертати [LiftMotor v] [вгору v] на [600] [градуси v] ▶
їхати [вперед v] на (140) [мм v] ▶
обертати [ClawMotor v] [ВІДЧИНЕНО v]
чекати до <не <[Optical v] знайшов об'єкт?>>
обертати [LiftMotor v] до позиції [0] [градуси v] ▶
Оптичне розпізнавання кольору#
Логічний блок Optical detects color повідомляє, чи виявляє оптичний датчик заданий колір, на основі виявленого значення відтінку.
Правда – Датчик виявляє заданий колір.
Хибно – Датчик не розпізнає вказаний колір.
Примітка: Оптичний датчик шукає діапазони відтінків, що відповідають заданому кольору. Щоб дізнатися більше про визначення певних діапазонів відтінків, див. блок Оптичний відтінок.
<[Optical v] виявляє [червоний v]?>
Параметри |
Опис |
|---|---|
колір |
Який колір шукати:
|
Приклад
коли запущено
[Place a pin atop another pin.]
обертати [LiftMotor v] [вгору v] на [600] [градуси v] ▶
їхати [вперед v] на (140) [мм v] ▶
обертати [ClawMotor v] [ВІДЧИНЕНО v]
чекати до <[Optical v] виявляє [червоний v]?>
обертати [LiftMotor v] до позиції [0] [градуси v] ▶
Оптична яскравість#
Блок репортера Оптична яскравість повідомляє, скільки світла відбивається назад до оптичного датчика, у відсотках від 0% до 100%.
Вищий відсоток означає, що більше світла відбивається назад до оптичного датчика. Нижчий відсоток означає, що менше світла відбивається назад.
(яскравість [Optical v] у %)
Параметри |
Опис |
|---|---|
Цей блок не має параметрів. |
Оптичний відтінок#
Блок Оптичний відтінок повертає значення відтінку кольору, виявленого оптичним датчиком.
Відтінок – це спосіб опису кольору за допомогою чисел на колірному колі.

(відтінок [Optical v] у градусах)
Параметри |
Опис |
|---|---|
Цей блок не має параметрів. |
коли оптичний#
Блок when Optical запускає приєднаний стек блоків щоразу, коли оптичний датчик виявляє або втрачає об’єкт.
коли [Optical v] [виявляє v] об'єкт
Параметри |
Опис |
|---|---|
стан |
Коли запуститься приєднаний стек блоків: detects запускається, коли виявлено невиявлений об’єкт, тоді як loses запускається, коли виявлений об’єкт більше не виявляється. |
Приклад
коли [Optical v] [втрачає v] об'єкт
[Lower the lift when the object is no longer in the claw.]
обертати [LiftMotor v] до позиції [0] [градуси v] ▶
Сенсорний світлодіод#
встановити колір сенсорного світлодіода#
Блок set TouchLED color встановлює колір сенсорного світлодіода.
встановити колір [TouchLED v] на [відсутній v]
Параметри |
Опис |
|---|---|
колір |
Встановлює колір світлодіода:
|
Приклад
коли запущено
[Light the Touch LED while placing a pin.]
встановити колір [TouchLED v] на [червоний v]
обертати [LiftMotor v] [вгору v] на [600] [градуси v] ▶
їхати [вперед v] на (140) [мм v] ▶
обертати [ClawMotor v] [ВІДЧИНЕНО v]
встановити колір [TouchLED v] на [відсутній v]