Socrat.in.ua

Навчальні конструктори та DIY електроніка

Робот mBot + программа mBlock: глава 11

2016-08-08

mBot - патрульный робот

Давайте соорудим патрульного робота: наш mBot будет видеть нарисованную линию и следовать по ней.


Что мы будем изучать:

  1. Как работает датчик линии.
  2. Как следовать вдоль линии при помощи такого датчика.

Электроника

Модуль датчика линии mBotМодуль датчика линии
Датчик помогает роботу следовать вдоль чёрной линии на полу. На его передней части расположены два сенсора. Благодаря отражению света от светодиода на плате датчика, он может определять положение модуля относительно линии.


Что надо знать

Модуль Блок Инструкция
 Блок "Robots" mBlock (Scratch)  mBlock - блок датчика линии Получить величину отступа от линии с датчика линии. Может быть 4 величины = 0, 1, 2 или 3, где 0 означает что датчик расположен полностью над чёрной линией, а 3 - линия под датчиком не обнаружена. 1 или 2 показывают, что датчик расположен наполовину над линией.

Датчик линии mBot

Значение = 0

Датчик линии mBot

Значение = 1

Датчик линии mBot

Значение = 2

Датчик линии mBot

Значение = 3


Идея программы

При нажатой клавише "пробел" робот mBot выполняет программу. Определяем, находится ли датчик линии робота над нашей линией. Если это так, едем прямо. В другом случае продолжаем выбор - робот находится левее линии или правее. После этого решаем куда следует двигаться роботу: налево или направо. Если робот съезжает с линии, возвращаем его назад. Повторять цикл пока нажата клавиша "пробел".

Идея программк для mBot, глава 11


Попробуйте сами:

1. Установите датчик линии
Датчик линии mBotДатчик линии устанавливается в нижней части mBot. Датчик следует устанавливать детекторами вниз. Кабель данных подключается к порту №3 платы mCore.

2. Создадим собственный модуль для программы mBlock

Собственный блок для mBlockВ модуле "Data and Blocks" щёлкните по "Make a Block".

Выберите "Add number input" в открывшейся форме и переименуйте модуль в "left".

Мы создали свою функцию, которая при помощи двигателя робота повернёт его налево.

Таким же образом создайте модуль "right", который повернёт робота направо.

3. Давайте разберёмся с движением mBot

 mBot - вид свеврху Левое колесо нашего робота mBot соответствует двигателю №2, а правое - двигателю №1.

Создадим такой скрипт:

Скрипт для левого колеса, глава 11

Как показано выше, при запуске команды "left" вызываются команды модуля. Величина "30" в блоке при его вызове заменит значение переменной "number1" - таким образом, скорость двигателя будет "30".

Мотор вращается вперёд или назад?

В этом уроке наш робот развёрнут задом наперёд, поэтому скорость двигателя следует сделать отрицательной для движения вперёд и положительной - для движения назад. Мы может сделать этом в своём модуле:


Щоб побачити повний текст статті, вам потрібно зареєструватись

Автор: hobbytech


Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *



© HobbyTech 2016