среда, 30 марта 2011 г.

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

Пропорциональный регулятор - это устройство, оказывающее управляющее воздействие u(t) на объект пропорционально его линейному отклонению e(t) от заданного состояния x0(t);
e(t)=x0(t)-x(t), где x(t) - состояние в данный момент времени;
u(t)=ke(t), где k - усиливающий коэффициент.
То есть, чем дальше робот отклоняется от заданного курса, тем активнее должны работать моторы, выравнивая его.

Движение по линии с одним датчиком освещенности с помощью П-регулятора

Движение по границе черного и белого тоже можно построить на П-регуляторе. Хотя внешне задача представляется решаемой только с помощью релейного регулятора, поскольку в системе присутствует всего два видимых человеческому глазу состояния: черное и белое. Но робот все видит иначе, для него отсутствует резкая граница между этими цветами. Можно сказать, он близорук и видит градиентный переход оттенков серого.

Вот это и поможет построить П-регулятор.
Определяя состояние работа как показания датчика освещенности, научимся оказывать пропорциональное управляющее воздействие на моторы по следующему закону:
e=s1-grey, где s1 - текущие показания датчика, а grey - заданное значение.
Коэффициент k (равный в данном примере 2) должен быть достаточно мал (от 1 до 3). Такой регулятор эффективно работает только для малых углов отклонения, поэтому робота надо ставить в направлении движения так, чтобы датчик оказался по левую сторону от черной линии. Нетрудно заметить, что движение по линии на П-регуляторе отличается плавность. и на некоторых участках работ движется практически прямолинейно или точно повторяя изгибы линии.

Калибровка датчика

Обратимся к числу 48, использованному в формуле. Это среднее арифметическое показание датчика освещенности на черном и на белом, например (40+56)/2=48. Однако показания датчиков часто меняются по разным причинам: другая поверхность, изменение общей освещенности в помещении, небольшая модификация конструкции и т.п. Поэтому проведем калибровку робота вручную, определив показания датчика освещенности на белом и на черном.

Движение по линии с двумя датчиками освещенности с помощью П-регулятора
 
Правильно проехать перекресток с одним датчиком освещенности довольно сложно. Если требуется сделать это с достаточно высокой скоростью,нужно хотя бы два датчика, поставленные не расстоянии в две ширины линии (или шире).
При движении возможны четыре состояния датчика:
  • оба на белом - движение прямо;
  • левый (s1) не черном, правый (s2) на белом - движение налево;
  • левый на белом, правый на черном - движение направо;
  • оба на черном - движение прямо.

Т.о. при равных показаниях датчика (оба белые или оба черные) робот едет прямо. Перед запуском робота, проведем автокалибровку обоих датчиков. Тогда алгоритм движения по линии с П-регулятором будет выглядеть с.о.:
Коэффициент k может изменяться в достаточно широком диапазоне (от1 до 20 и более) в зависимости от кривизны линии, маневренности робота и разницы между черным и белым на поле.
Важное условие. Автокалибровка должна проводиться на одноцветной поверхности и желательно при той освещенности, которая будет занимать наибольшую часть пути. Например, если робот едет вдоль черной линии на белом поле, то калибровать надо на белом. Т.е. положение робота при старте должно быть вот таким:

И еще замечание. Встречаются датчики, показания которых расходятся на 10-20%. Желательно их не ставить в паре на регулятор с большим коэффициентом, поскольку при резком изменении общей освещенности даже на однородном белом поле отклонения могут оказаться различными, что приведет к неожиданным последствиям.

четверг, 17 марта 2011 г.

Занятие 21. Релейный регулятор.

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

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

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

среда, 2 марта 2011 г.

Занятие 20. Двухмоторная тележка

Это самая распространенная разновидность роботов. Тележка может быть с тремя точками опоры, две из которых - ведущие колеса, а третья - волокуша, или свободно вращающееся колесико.
Процесс построения одной из наиболее простых тележек.
Шаг 1. Для крепления моторов, которые будут располагаться по обе стороны от NXT, берем две изогнутые балки:
Шаг 2. В зависимости от расположения балок центр тяжести тележки может быть смещен:
Шаг3. Дополнительные крепления для придания устойчивости:
Все готово для установки контроллера:

Шаг 4. Колеса устанавливаются на 6-модульные оси, втулки предохраняют от нежелательного трения о корпус.
Шаг 5. Конструкция для крепления третьего колеса:
Шаг 6. Элементы подвижного колеса. Длины осей - 3 и 5 модулей. Колесо должно вращаться свободно.
Тележка готова.
Знакомство со средой Robolab 2.9
Палитра функций включает в себя различные типы команд:
Простейшие алгоритмы.
Квадрат. По умолчанию считаем, что левый мотор подключен к порту В, правый - к порту С. Проверьте подключение.


Повторяй 4 раза:
  • моторы B, C вперед;
  • жди N/100 секунды;
  • мотор С назад (B продолжает двигаться вперед);
  • жди N/100 секунды.
Стоп моторы.