Джон Ловин

Создаем робота-андроида своими руками


Скачать книгу

среднему положению будет равен 1,5 мс. Импульсы подаются с частотой порядка 50 в секунду (50 Гц), т. е. время между импульсами составляет порядка 20 мс. Такой «средний» импульс вызовет поворот вала мотора в среднее положение ±45 град.

      Поворот вала сервомотора ограничен 90 градусами (±45 град. от среднего положения). Импульс длиной 1 мс вызовет поворот вала мотора влево до упора (см. рис. 4.10), в то время как импульс в 2 мс вызовет аналогичный поворот вправо. Варьируя длину импульсов в пределах 1–2 мс, можно добиться поворота вала двигателя на любой угол внутри указанного интервала.

      Рис. 4.10. Управляющие импульсы для сервомотора

      Может показаться, что генерация подобных импульсов представляет собой достаточно сложную задачу. На самом деле это не так. Для управления сервомотором PIC – микроконтроллер 16F84 использует лишь несколько простых команд. Такой PIC может управлять одновременно восемью сервомоторами. Другим удобным методом управления сервомоторами является использование R/C систем. Альтернативой этому может служить создание собственной схемы управления.

      Изготовление такой схемы не столь сложно, как может показаться вначале. На рис. 4.11 показано использование сдвоенного таймера типа 556 для управления сервомотором. Схема 556 имеет два независимых таймера. Для лучшего понимания работы схемы посмотрите на схему, изображенную на рис. 4.12, где использованы два отдельных таймера серии 555. Первый таймер находится в режиме генерации и выдает отрицательные прямоугольные импульсы длительностью 1 мс с частотой 55 Гц. Этот таймер соединен со вторым таймером серии 555, включенным по схеме одновибратора.

      Рис. 4.11.Управление сервомотором с помощью ИС 556

      Рис. 4.12. Управление сервомотором с помощью ИС 555

      При появлении отрицательного импульса на выводе 1 одновибратор генерирует положительный импульс на выводе 5. Ширину выходного положительного импульса можно изменять, используя потенциометр 10 кОм. В зависимости от типа используемого сервомотора, возможно, придется подобрать величины сопротивлений R1 и R2 на рис 4.11. Помните, что у сервомотора могут существовать внутренние ограничители угла поворота, и не прикладывайте излишних усилий, если мотор «застрял».

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

      По мере накопления опыта работы с сервомоторами вы можете захотеть использовать их на больших углах поворота (в пределах 180°), что потребует расширения диапазона времен управляющих импульсов.

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

      Например, у вас имеется сервомотор, которому для поворота в крайнее правой положение требуются импульсы длиной 2,8 мс. Если сервомотор поворачивается