Пригоди Марка на Марсі з Makeblock Ranger. Глава 4: В режимі очікування

Сінченг – це не метрополіс, розташований на рівнині, а величезне гірське місто. Марку та Рексу доведеться пройти через різні круті гори щоб дістатися до МАР. Їм зустрінуться сотні крутих схилів і небезпечних поворотів на шляху і навіть досвідченому гонщику потрібно бути обережним впродовж усієї подорожі.

Хаха, але це так саме просто як і водіння по шосе для Марка. Дозволь мені розповісти тобі секрет: Марк не керує власноруч…


Цілі навчання

Якщо ми хочемо щоб двоколісний пристрій зберігав рівновагу, нам потрібно додати високоточні датчики та реалізувати на машині складний алгоритм. Але коли ми додамо до неї ще одне колесо, вона зможе стояти вертикально без проблем.

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


Теоретичні знання

Як ми всі знаємо, щоб змусити об’єкт тримати рівновагу, потрібно щоб лінія, яку проведено з центру мас, не виходила за нижню грань (див. главу 3). Але якщо об’єкт тримається на підлозі лише на одній або двох точках, йому буде дуже важко втримати рівновагу без додавання системи контролю. Ось чому після додавання третього колеса роботу стає набагато легше втримати рівновагу.

Точки опору

В першому (точка) і другому (лінія) випадках площина опору тіла нульова, а в третьому вона больше нуля і рівна половині добутку висоти на основу.

Тож коли об’єкт має площу, він може триматися на підлозі. Чим більша площа основи, тим більша стабільінсть конструкції.

makeblock ranger стабільність


Підготовка до збірки

Побудова триколісного гоночного робота Raptor  з конструктора mBot Ranger

makeblock ranger триколісний гоночний робот

makeblock ranger складання лихого раптораmakeblock ranger складання лихого раптораmakeblock ranger складання лихого раптора


Задачі для навчання

Задача 1 – Оновіть ПЗ, підключіть робота до комп’ютера за допомогою Bluetooth

Підготовте триколісного робота: під’єднайте плату Me Auriga до комп’ютера через USB кабель та натисніть “Оновити ПЗ” (якщо не пам’ятаєте як це зробити, поверніться до глави 2).

Перед механічним відключенням плати від комп’ютера, ми повинні відключити її програмно через mBlock задля того щоб уникнути інформаційних прорахунків та інших помилок.

[restrict]Перейдіть у вкладку “З’єднання” -> “Порт” -> “COM x” щоб від’єднати Ranger через mBlock. Як показано на малюнку нижче:

від'єднати Ranger через mBlock

Приготуйтеся до з’єднання Ranger через Bluetooth: натисніть “Bluetooth” -> “Відкрити”

Makeblock Ranger “Відкрити”” width=”501″ height=”320″ style=”height: auto; max-width: 100%; display: block; margin-left: auto; margin-right: auto;” />

Не забудьте ввімкнути Bluetooth на вашому комп’ютері, тоді система видасть вам повідомлення “Пошук Bluetooth”:

makeblock ranger Пошук Bluetooth

Після пошуку Bluetooth-пристроїв у списк з’явиться MAC адреса Makeblock Bluetooth. Натисніть на неї щоб ініціювати з’єднання.

Makeblock Bluetooth MAC адреса

Ви побачите маленьке віконце у якому написано “З’єднання Bluetooth”:

makeblock ranger З'єднання Bluetooth

Та вікно у якому буде показаний пароль для пристроїв (що не були підключені до цього комп’ютера раніше):

пароль для bluetooth

Оберіть “Так” і побачите спливаюче вікно, у якому буде написано “Bluetooth з’єднано”:

makeblock ranger Bluetooth З'єднано

Натисніть “Закрити” щоб його закрити. На верхній панелі mBlock ви побачите надпис “Bluetooth з’єднано” і колір кнопки зміниться на зелений, як показано на малюнку нижче:

Bluetooth З'єднано

Вітаємо, Ranger був успішно з’єднаний з mBlock! Тепер ми можемо управляти роботом через Bluetooth, не використовуючи USB кабелі.


Задача 2 – Накажіть роботу рухатися вперед

Поставте Ranger на підлогу і почніть дистанційно їм керувати. Ми будемо використовувати блок “рухатися вперед на швидкості 0” в розділі “Роботи“.

Блок Блок Швидкість  робота = 0

Функція: управління переміщенням Ranger

[Вперед]: Установка напрямку руху. Значення за замовчуванням (рухатися вперед), але ви можете змінити його, натиснувши на перевернутий трикутник та обравши необхідний напрямок (рухатися назад), (повернути наліво), (повернути направо).

(Швидкість): Встановлює швидкість роботи мотору. Значення за замовчуванням [0], що означає що колеса робота не будуть обертатися. Ви можете встановить будь яке значення від -255 до 255, при значенні “255” мотор буде крутитись вперед з максимальною швидкістю .

Від’ємне значення означає що мотор буде обертатися в іншу сторону.

Завантажте в робота таку програму і подивіться чи зупиниться Ranger через 1 секунду.

Блок

Що буде якщо блоку, що встановлює швидкість робота рівню нулю в кінці програми не буде (як на малюнку нижче)?

Примітка: Червона кнопка, що знаходиться у правій верхній частині області зупинить усі дії робота, якщо її натиснути.

makeblock_ranger_4_019-mblock-program-stop-motor

Ми знаємо що мотор не зупиниться автоматично після завершення програми, отже щоб це зробити нам необхідно використовувати команду.


Завдання

Завдання 1 – 5 хвилин дистанційного управління роботом

Для реалізації програм можуть виткористовуватись  блоки в розділі “Події”. Ми вже показували вам як використовувати блок

makeblock ranger блок

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

makeblock ranger блоки

makeblock_ranger_4_021-mblock-block-events-2 Коли натиснута клавіша Коли натиснута клавіша ” “

Натисніть кнопку ” ” для запуску програми.

Примітка: Якщо програма не запускається при натискання обраної клавіші, перевірте мову введення тексту, вона повинна бути англійською.

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

При натисканні кнопок зі стрілочками (вверх, вниз, ліворуч, праворуч) робот буде рухатися у відповідні сторони. Нижче приведені функції цих кнопок:

Клавіша Рух робота
вверх Ranger рухається прямо
вниз Ranger рухається назад
наліво Ranger рухається ліворуч
направо Ranger рухається праворуч
пробіл Ranger не рухається

Ми розробили ось таку програму:

makeblock ranger програма Raptor

Цей приклад не включає в себе блокmakeblock ranger блок  що дозволяє вам побачити що існує багато способів реалізації програм.

У цій програмі ви можете натиснути пробіл або червоний кружок у верхній правій частині щоб зупинити робота:

makeblock ranger старт-стоп


Завдання 2 – Поліпшення дистанційного керування Ranger

У попередньому завданні Ranger продовжував рухатися навіть після відпускання кнопки “вверх”. Швидкість мотору була встановлена на 100, отже щоб встановити її на 0 нам потрібно було натиснути на Пробіл.

Але чи існує інший спосіб управління роботом? Звичайно: ми можемо використати блок makeblock ranger блок коли

makeblock_ranger_4_021-mblock-block-events-2 makeblock ranger блок коли Коли клавіша не натиснута

Функція: визначає коли певна клавіша не натиснута.

Коли ця умова виконується, починає виконувати блоки-команди, приєднані до цього блока.

Додайте блок “коли…не натиснута” до вашої програми. Коли ми відпустимо кнопку, швидкість моторів прийме значення 0, а отже Ranger зупиниться.

makeblock ranger програма Raptor 2

Спробуйте і переконайтеся що ваш робот діє саме так як встановлено цією програмою. Дуже зручно використовувати такий спосіб управління Ranger.


Завдання для кмітливих

Завдання 1 – Використовуйте різні кнопки для управління роботом

Спробуйте використовувати різні кнопки щоб задавати роботу різну швидкість ходу. Наприклад:

  1. Коли натиснута кнопка “a”, Ranger повільно повертає ліворуч.
  2. Додайте управління світлодіодами. Коли натиснута кнопка “b“, усі світлодіоди на Me Auriga стануть червоними.

Спробуйте розробити програму власноруч і заповніть таблицю нижче відповідно до зразка:

Клавіша Рух робота
a Ranger повертає ліворуч
b  
   

Підказка:

makeblock_ranger_4_027-mblock-exercise1


Завдання 2 – Використайте більше клавіш для керування роботом

Використайте більше клавіш та скомбінуйте серії блоків щоб змусити робота танцювати. Наприклад, коли ви натиснете “c” Ranger виконає таку послідовність дій:

Швидко рухається вперед → чекає 1 секунду → повільно рухається назад → чекає 2 секунди → швидко повертає ліворуч → чекає 3 секунди → зупиняється

Будь ласка, заповніть таблицю нижче

Рух робота Відповідний блок програми в mBlock
швидко рухається вперед Ranger повертає ліворуч
чекає 1 секунду  
повільно рухається назад  
чекає 2 секунди  
швидко повертає ліворуч  
чекає 3 секунди  
зупиняється  

Підказка:

makeblock_ranger_4_028-mblock-exercise2


Висновок цього розділу

Більшість машинок на дистанційному управлінні, якими ми грались у дитинстві, були куплені в магазинах іграшок. Ми можемо грати з ними просто вставивши в них батарейки. З появою роботів на кшталт Ranger ситуація радикально змінилась. Ви можете зібрати Ranger власноруч і написати різні програми для нього. Існують десятки кнопок, які можуть бути використані для управління роботом. Що ви оберете тепер?


makeblock ranger глава 4

Марк ввійшов до МАР за карткою з вищим рівнем доступу та з її допомогою добрався до директорського офісу.

“Сядь та випий чашку чаю, я знаю що ти хочеш спитати” – сказав директор. Це могло означати тільки одне: він знав що Марк прийде і чекав його. Директор намалював квадрат у повітрі, двічі плеснув долонями і з’явилася стереографічна проекція сонячної системи.

“Скільки вам років, не можу повірити що ви все ще граєтеся з цим!” – глузуючи сказав Марк, граючи вінтажним пристроєм для “об’ємного мислення”, – “Ви сказали що знаєте що я хочу спитати, тож дайте мені відповіді!”

Директор збільшив зображення за допомогою пальців і сфокусував його на довгій, вузькій тіні в північній півкулі Марса. “Ми збирали інформацію протягом 3 тижнів. Джерело сигналу знаходиться у цій тіні або неподалік від неї, ось вся інформація, яку ми отримали за цей час.” – сказав директор, приймаючи квадратний прозорий кристал з комп’ютера. Потім він поклав його на візитну карточку і простягнув Марку.[/restrict]

наступна глава >>