РОББО Платформа. Использование датчиков

Подключение датчиков

Датчики подключаются к пронумерованным разъёмам. Всего одновременно можно подключить до пяти датчиков. Датчики закрепляются на платформе с помощью магнитов. Они же служат проводниками тока.

После подключения датчика необходимо включить его в RoboScratch. Для этого нажмите на иконку Robboscratch3_rKwoSJC0ey. В открывшемся меню нужно поставить галочки напротив номеров разъемов к которым подключены датчики:

С помощью следующего блока можно получить показания датчика:

Задание № 1. Датчик касания

После запуска скрипта, Платформа неподвижна. Когда будет нажат датчик касания, Платформа начинает движение вперёд в течении 2 секунд.

Здесь и в последующих проектах в таблице будет указано, какие датчики используются для решения задачи:

Используемые датчики Обозначение Номер разъема
Датчик касания image-20221102193855204 1

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

Составьте скрипт аварийной остановки:

Скрипт аварийной остановки

Добавляйте этот скрипт к последующим проектам в первую очередь. Нажмите Space , чтобы остановить движение Платформы и все скрипты проекта.

Составьте следующий скрипт:

Нажмите на зелёный флажок. Платформа не должна двигаться. Нажмите на датчик касания, чтобы Платформа пришла в движение.

Сохранение проекта

Сохраните проект под именем 01 Датчик касания.

Показания датчика касания

В условии показания датчика должны быть больше 90. Иногда в нажатом состоянии датчик не даёт значение равное строго 100.

Задание № 2. Робот-пылесос 1.0

После запуска программы Платформа едет вперёд, пока не наткнётся на стену. После столкновения, Платформа останавливается и едет назад в течении 2 секунд. После паузы в три секунды, Платформа снова начинает движение вперёд до встречи со стеной.

Используемые датчики Обозначение Номер разъема
Датчик касания image-20221102193855204 1

Скрипт для решения задачи составьте самостоятельно.

Сохранение проекта

Сохраните проект под именем 02 Робот-пылесос 1.

Задание № 3. Датчик линии

Составьте скрипты следования по линии. Используйте различные алгоритмы.

Релейный регулятор с двумя состояниями

Используемые датчики Обозначение Номер разъема
Датчик линии image-20221102203830198 1

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

Составьте следующий скрипт, который будет запускаться по нажатию клавиши ↑Up :

Вместо обведённого числа подставьте среднее значение, которые вычислили ранее.

Расположите Платформу на поле с линией и запустите программу.

Сохранение проекта

Сохраните проект под именем 03 Линия 1.

Релейный регулятор с тремя состояниями

Используемые датчики Обозначение Номер разъема
Датчик линии image-20221102203830198 2
Датчик линии image-20221102203830198 5

Используем в следующем скрипте два датчика линии. Алгоритм будет похож на предыдущий, но теперь при проверке условий будет использоваться разность показаний датчиков. Для хранения разности создайте переменную датчик:

Составьте следующий скрипт:

1 Если разность показаний отрицательна, то Платформа повернёт направо.2 Если разность показаний меньше 10, то платформа будет ехать прямо. 3 Иначе Платформе необходимо повернуть налево.

Расположите Платформу на поле с линией и запустите программу.

Сохранение проекта

Сохраните проект под именем 03 Линия 2.

Пропорциональный регулятор

Используемые датчики Обозначение Номер разъема
Датчик линии image-20221102203830198 1

Суть алгоритма состоит в том, что направление и величина поворота зависит от того, насколько Платформа отклонилась от некоторого значения, полученного с датчика линии - средней точки. Величина на которую будет изменяться скорость вращения левого и правого колеса вычисляется по следующей формуле: \[ коррекция = K_p \times(S-m) \] где \(K_p\) - коэффициент пропорциональности, \(S\) - показания датчика, \(m\) - средняя точка.

Добавьте в проект переменные коррекция, ошибка, скорость и средняя точка:

Составьте скрипт:

Проверьте работу скрипта на поле с линией. Обратите внимание, что значение средней точки будет зависеть от показаний датчика на вашей Платформе. Если повороты происходят слишком резко или плавно, измените числовой коэффициент, который умножается на значение ошибки.

Сохранение проекта

Сохраните проект под именем 03 Линия 3.

Задание № 4. Датчик расстояния

Впереди перед Платформой находится коробка, расстояние до которой неизвестно. Составьте скрипт с помощью которого Платформа остановится перед коробкой.

Используемые датчики Обозначение Номер разъема
Датчик расстояния image-20221102192056284 1

После подключения датчика поднесите к нему руку на расстояние примерно равное 2 см и запишите измеренное значение. Используйте его в следующем скрипте, вместо обведённого в кружок:

Изменим алгоритм для решения следующей задачи:

Платформа движется прямо. Чем ближе Платформа к коробке, тем медленнее она начинает двигаться и затем полностью останавливается.

Добавьте к проекту переменную разность:

В переменной будем хранить разность между максимальной мощностью моторов и показаниями датчика расстояния. Исправьте первоначальный скрипт на следующий:

Обведённые кружком значения, возможно, придётся изменять.

Сохранение проекта

Сохраните проект под именем 04 Датчик расстояния.

Задание № 5. Робот-пылесос 2.0

Платформа движется прямо, пока не увидит перед собой препятствие. После этого Платформа останавливается, отъезжает назад и поворачивает направо на 90 градусов. После этого Платформа продолжает движение прямо до следующего препятствия.

Используемые датчики Обозначение Номер разъема
Датчик расстояния image-20221102192056284 1

Скрипт для решения задачи составьте самостоятельно. Блок-схема возможного решения приведена на рисунке:

Сохранение проекта

Сохраните проект под именем 05 Робот-пылесос 2.

Задания для самостоятельной работы

Стеснительный робот

Платформа движется назад, если датчик расстояния прикрыт рукой и вперёд, когда впереди свободно.

Используемые датчики Обозначение Номер разъема
Датчик расстояния image-20221102192056284 1

Добыча минералов

Перед платформой располагаются три полоски чёрного цвета (месторождения полезных ископаемых). Расстояние между полосками заранее неизвестно. Платформа должна ехать прямо, пока не увидит очередную полоску. Если робот встретил полоску, то он останавливается на 3 секунды, издаёт звуковой сигнал и продолжает движение вперёд.

Используемые датчики Обозначение Номер разъема
Датчик линии image-20221102203830198 1

*Робот-пылесос 3.0

Улучшите программу для умного пылесоса из этого задания. С помощью двух датчиков линии, Платформа должна определить, когда она подъезжает к краю стола. Если это произошло, платформа поворачивает в сторону противоположную краю стола.

Используемые датчики Обозначение Номер разъема
Датчик расстояния image-20221102192056284 1
Датчик линии image-20221102203830198 2
Датчик линии image-20221102203830198 5