Трансмісія#
Вступ#
Трансмісія контролює, як VR-робот їздить та повертає. Трансмісія може рухатися вперед або назад, повертати ліворуч або праворуч, змінювати напрямок руху та відстежувати своє обертання.
Існує багато способів кодування трансмісії. Нижче наведено список усіх блоків трансмісії:
Дії — Переміщення та поворот робота.
drive — Рухає робота вперед або назад безперервно.
drive for — Переміщує робота вперед або назад на певну відстань.
повернути — Повертає робота ліворуч або праворуч назавжди.
повернути на — Повертає робота ліворуч або праворуч на певну кількість градусів.
повернути до напрямку — Повертає робота обличчям до певного напрямку.
повернути на обертання — Повертає робота на певний оберт.
зупинити рух — Зупиняє рух робота.
Налаштування — Налаштування параметрів трансмісії.
встановити швидкість руху — Вказує роботу, з якою швидкістю рухатися.
встановити швидкість повороту — Вказує роботу, з якою швидкістю повертатися.
встановити напрямок руху — Змінює поточний напрямок руху робота на новий.
встановити обертання приводу — Змінює поточне обертання робота на нове обертання.
встановити тайм-аут руху — Встановлює, скільки секунд робот намагатиметься завершити рух.
Значення — Перевірити стан руху.
рух завершено — Повідомляє, чи завершив рух робота.
привід рухається — Повідомляє, чи рухається робот.
курс руху — Повідомляє поточний курс робота від 0 до 359,99 градусів.
обертання приводу — Повідомляє про поточне обертання робота.
Дії#
диск#
Блок стека 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) градусів ▶
вивести (обертання руху у градусах) на екран ◀ і перейти до наступного рядка