Вивчаємо датчик кольору робота Lego mindstorms EV3 № 5

Знайомство та робота з конструктором LEGO Mindstorms EV3 відкриває перед учнями захопливий світ робототехніки. Під час уроків діти не лише дізнаються про будову та можливості конструктора, а й вчаться створювати власних роботів і програмувати їх дії. Така діяльність розвиває логіку, технічне мислення, навички командної роботи та зацікавлює учнів у вивченні STEM-дисциплін.
- 9 сторінки документу;
- матеріал для вчителя робототехніки;
- файл у форматі .pdf
Ваш документ у форматі pdf:
Зміст
Урок №5 – Починаємо вивчати датчик кольору
Вступ:
На цьому уроці ми продовжуємо знайомство з датчиками набору Lego mindstorms EV3. На черзі – датчик кольору, дуже важливий і корисний датчик! У більшості конструкцій він є, тим, чим у людини є очі. Тому вивчення датчика кольору ми присвятимо два послідовних уроку, але в подальшому курсі ще повернемося до його вивчення та використання.
5.1. Вивчаємо другий датчик – датчик кольору
Датчик кольору може працювати в трьох різних режимах:
в режимі “Колір” датчик може визначити колір піднесеного до нього предмета;
в режимі “Яскравість відбитого світла” датчик направляє світловий промінь на сусідній предмет і по відбитому пучку визначає яскравість предмета;
в режимі “Яскравість зовнішнього освітлення” датчик може визначити – наскільки яскраво освітлене простір навколо.
Мал. 1
5.2. Датчик кольору. Режим “Колір”
У режимі “Колір” датчик кольору досить точно вміє визначати сім базових квітів предметів, що знаходяться від нього на відстані приблизно в 1 см. Це такі кольори: “чорний” = 1, “синій” = 2, “зелений”= 3, “жовтий “ = 4, ” червоний “ = 5, ” білий “ = 6 і ” коричневий “ = 7. Якщо предмет віддалений від датчика або некоректно визначається колір предмета – датчик інформує про це станом “Без кольору” = 0.
Давайте, не затягуючи, перейдемо до практичного заняття!
Завдання №9: необхідно написати програму, яка називає кольору предметів, подносімих до датчика кольору.
Якщо ви збирали свого тренувального робота за інструкцією цього курсу, то у вас датчик кольору вже розміщений всередині робота і спрямований вниз. Буде потрібно докласти певних зусиль, може бути навіть злегка розібрати-зібрати нашу конструкцію, щоб підключити кабелем датчик кольору, наприклад до порту “2” модуля EV3. Для налагодження програми нам також знадобиться кілька кольорових предметів: це можуть бути цеглинки конструктора Lego, смужки кольорового паперу або кольорові кубики. Для кращого результату слід взяти кольору, максимально наближені до основних, але датчик досить непогано справляється з розпізнаванням відповідних відтінків. Щоб не знімати датчик кольору і не кріпити його в іншому місці, під час виконання програми можна тримати робота перевернутим догори колесами.
Мал. 2
5.3. Помаранчева палітра, програмний блок “Перемикач”
У рішенні Завдання №9 нам допоможе програмний блок “Перемикач” Помаранчевої палітри. Цей блок в залежності від налаштувань вибирає для виконання програмні блоки, розташовані в одному зі своїх контейнерів. Розглянемо налаштування цього блоку в режимі роботи з датчиком кольору.
Створимо нову програму “lesson-5-9” , встановимо в програмі блок “Перемикач” , виберемо режим “Датчик кольору” – “Вимірювання” – “Колір” (Рис. 3) . На відміну від програмного блоку “Очікування” , програмний блок “Перемикач” не чекає, поки настане певна подія, а перевіряє поточний стан і виконує програмні блоки, що знаходяться в контейнері, зіставлення поточному стану.
Мал. 3
Розглянемо докладніше настройки програмного блоку “Перемикач” :
обраний режим встановлює зображення датчика кольору в блоці (Рис. 4 поз. 1) ,
порт, до якого підключений датчик, відображається у відповідному полі блоку (Рис. 4 поз. 2) ,
в настройках кожного програмного контейнера вибирається значення, відповідно до якого будуть виконуватися програмні блоки, вкладені в цей контейнер (Рис. 4 поз. 3) ,
один з контейнерів повинен бути оголошеним “Варіантом за замовчуванням” – в разі, якщо значенням, отриманим від датчика, не відповідає жоден контейнер, то виконується контейнер, оголошений “Варіантом за замовчуванням” (Рис.4 поз. 4) ,
Кнопка “+” додає програмний контейнер в блоці “Перемикач” (Рис. 4 поз. 5) ,
Програмний блок “Перемикач” може автоматично розтягуватися, щоб вмістити все блоки, що поміщаються всередину. За допомогою міток, позначених червоними стрілками, можна самому змінювати розміри блоку (Рис.4) .
Мал. 4
Продовжимо формування програмного блоку “Перемикач” :
створимо необхідну кількість контейнерів, що відповідає кількості квітів для розпізнавання + варіант “Без кольору” ,
в настройках контейнерів встановимо розпізнаються кольору,
варіантом за умовчанням виберемо варіант “Без кольору” ,
в кожен контейнер крім варіанту “Без кольору” (цей контейнер залишиться порожнім) помістимо програмний блок “Звук” зеленої палітри.
кожному кольору можна порівняти відповідний звуковий файл.
Мал. 5
Наш програмний блок “Перемикач” значно збільшився в розмірах. Спеціальна кнопка (Рис. 6 поз. 1)дозволяє переключити режим відображення блоку на екрані на “Вид з вкладками” . Змінимо розміри блоку для комфортного візуального відображення.
Мал. 6
Залишилося вставити наш налаштований програмний блок “Перемикач” всередину програмного блоку “Цикл” Помаранчевої палітри. Програма готова! Завантажимо її в робота і протестуємо роботу! (Рис. 7)
Мал. 7
5.4. Помаранчева палітра, програмний блок “Переривання циклу”
Додамо в нашу програму рух. Зробимо наступне поле для виконання завдання:
Візьмемо білий аркуш паперу формату A4 або A3;
Нанесемо на нього послідовно, на рівній відстані кілька кольорових смуг. Смуги можна наклеїти з кольорового паперу, кольоровий ізоляційної стрічки або намалювати і зафарбувати;
можете також завантажити підготовлене зображення і роздрукувати його на кольоровому принтері;
Останню смугу зробимо чорного кольору (Рис. 8) .
Мал. 8
Завдання №10: необхідно написати програму прямолінійного руху робота, яка називає кольору смуг, над якими він проїжджає. При досягненні чорної смуги робот промовляє “Stop” і зупиняється.
За основу вирішення даного завдання візьмемо програму, вирішальну Завдання №9 . При вирішенні Завдання №10 нам буде потрібно перервати виконання циклу. Цій меті служить програмний блок “Переривання циклу” Помаранчевої палітри. За допомогою даного блоку можна організувати вихід з циклу, заданого параметром “Ім’я переривання” (Рис. 9 поз. 1) .
Мал. 9
Спробуйте вирішити Завдання №10 самостійно, не підглядаючи в рішення.
Рішення Завдання №10
Всередину циклу перед програмним блоком “Перемикач” додамо програмний блок “Рульове управління” , тим самим змусимо нашого робота рухатися (Рис. 10 поз. 1) . Під час руху робот перевірятиме поточний стан датчика кольору і вимовляти назву кольору. Якщо смужки будуть широкими, а робот буде рухатися повільно, то, можливо, він стане вимовляти назву кольору більш ніж один раз, так як перевірка кольору буде відбуватися неодноразово. Якщо такий стан справ вас не влаштує – збільште швидкість робота, щоб він швидше проїжджав кольорові смуги.
У відповідності до розділу завдання нам треба змінити поведінку контейнера програмного блоку “Перемикач” для чорного кольору.
У програмному блоці “Звук” змінимо звуковий файл “Black” на “Stop” (Рис. 10 поз. 2) .
Додамо в контейнер програмний блок, що виключає мотори (Рис. 10 поз. 3) .
Нам потрібно перервати виконання програмного блоку “Цикл” , щоб завершити виконання програми. Для цього помістимо в контейнер програмний блок “Превиваніе циклу” Помаранчевої палітри (Рис. 10 поз. 4) . У даного програмного блоку існує тільки одна настройка – назва переривається циклу. У складній програмі з безліччю циклів важливо правильно встановлювати цей параметр, щоб зупинити виконання потрібного циклу (Рис. 10 поз. 5) . У нашій програмі за програмним блоком “Цикл” відсутні інші програмні блоки, тому програма завершиться.
Мал. 10
