Практична робота: Програмування роботизованої платформи з ІЧ-керуванням
Мета: Навчитися підключати зовнішні розширення, створювати функції та алгоритми керування рухом машини з колесами Ілона (Mecanum) за допомогою інфрачервоного (ІЧ) пульта.
Обладнання та програмне забезпечення:
Роботизована платформа Keyestudio Mecanum Robot V2.
Плата керування (мікроконтролер).
ІЧ-пульт дистанційного керування.
Середовище розробки (MakeCode).
Репозиторій бібліотеки: Keyestudio Mecanum Robot V2 GitHub.
Хід роботи
1. Підключення бібліотеки (Розширення)
Перед початком кодування необхідно додати спеціальні блоки для роботи з двигунами та ІЧ-датчиком платформи:
Відкрийте середовище розробки.
Перейдіть у розділ Розширення (Extensions / Advanced).
Вставте посилання на репозиторій у рядок пошуку:https://github.com/keyestudio2019/mecanum_robot.
Натисніть на знайдене розширення для його встановлення. У меню з'являться нові помаранчеві блоки Motor та сині IR.
2. Ініціалізація системи
У блоці при запуску налаштуйте ІЧ-приймач.
Додайте команду connect IR receiver at P9, щоб контролер зчитував сигнали з відповідного порту.
3. Створення функцій руху
Створіть підпрограми для 4 базових маневрів із фіксованою швидкістю двигунів 75%:
Функція Рух лівих двигунів (Upper/Lower) Рух правих двигунів (Upper/Lower)
car_forward Forward (Вперед) Forward (Вперед)
car_back Back (Назад) Back (Назад)
car_right Forward (Вперед) Back (Назад)
car_left Back (Назад) Forward (Вперед)
4. Алгоритм обробки команд з пульта
У головному циклі постійно реалізуйте логіку розпізнавання кодів кнопок:
Зчитуйте значення натиснутої кнопки IR button у змінну val.
Якщо сигнал є (val не дорівнює 0), збережіть його у val2.
Застосуйте розгалуження за кодами кнопок:
70 \(\rightarrow \) викликати car_forward (рух уперед).
68 \(\rightarrow \) викликати car_left (поворот ліворуч).
67 \(\rightarrow \) викликати car_right (поворот праворуч).
21 \(\rightarrow \) викликати car_back (рух назад).
64 \(\rightarrow \) виконати команду car stop (зупинка).
Контрольні запитання
Навіщо потрібно додавати зовнішню бібліотеку через GitHub перед початком роботи?
Як змінити код функцій, щоб машина здійснювала бічний рух (крабовий хід), використовуючи властивості коліс Mecanum?
Яка команда відповідає за повну зупинку всіх двигунів роботизованої платформи?
Висновок: У ході роботи було успішно імпортовано бібліотеку mecanum_robot_v2, налаштовано роботу ІЧ-приймача та створено модульний код для керування платформою за допомогою функцій руху.