Задача 5. Движение на пропорциональном регуляторе
  • БЛОГ
  • УЧЕБНИКИ
    • Электронные версии УМК по робототехнике
    • ОСНОВЫ РОБОТОТЕХНИКИ 5-6 КЛАСС
  • КВЕСТЫ
  • ПРОЕКТЫ
    • Подпроект 1
    • Подпроект 2
    • Подпроект 3
  • ЗАНЯТИЯ
  • НАПИСАТЬ АДМИНУ
  • ТУРНИРЫ
    • Junior Skills
    • Шагающие роботы
    • WRO-2016
    • Танковый биатлон
    • Кубок Губернатора
  • РАСПИСАНИЕ
  • Главная
    /
  • Решаем задачи
    /
  • /

Задача 5. Движение на пропорциональном регуляторе

 (Robolab)

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

 

В этом примере осуществляется простое движение по границе церного и белого (серый оттенок). Первый замер (контейнер fst) будет хранить значение серого цвета, которого робот должен придерживаться в дельнейшем при движении.

 

Важно помнить, что робот детектирует границу черного и белого в виде серого градиента. Четких границ он не может определить из-за точности датчиков.

 

Внутри бесконечного цикла функция высчитывает управляющий коэффициент, который будет производить воздействие на уровень мощности моторов и направление вращения. Суть пропорционального регулятора заключается в том, что воздействие количественно одинаково на все моторы. Такой тип воздействия обеспечивает скорость и одновременно плавность движения. Управляющий коэффициент отнимается (в одном случае) и прибавляется (для другого мотора) к среднему значению мощности, т.е. 50. Отрицательные значения меняют направление вращения моторов.

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

 

(NXT-G)

Алгоритм движения на пропорциональном регуляторе компактнее и эффективнее всего реализовывать на текстовых языках, таких, как RobotC и др. Однако для начинающих робототехников эти языки сложно освоить, поэтому приведем программу на NXT-G, который не отличается компактностью кода, но прост в освоении.

Программа выглядит громоздко из-за арифметических расчетов, которые в Robolab представлены формулой. На самом деле здесь реализован тот же самый алгоритм. Команды сравнения позволяют определить направление вращения каждого из моторов.

    Добавить отзыв/Оставить заявку
         
    Заполните обязательное поле
    Введите код с картинки
    Необходимо согласие на обработку персональных данных
    Повторная отправка формы через:
    • БЛОГ
    • УЧЕБНИКИ
    • КВЕСТЫ
    • ПРОЕКТЫ
    • ЗАНЯТИЯ
    • НАПИСАТЬ АДМИНУ
    • ТУРНИРЫ
    • РАСПИСАНИЕ
    ×Убрать копирайт

    Сайт создан на 1C-UMI

    Работает на UMI.CMS

    Поделиться с друзьями: