Джон Ловин - Создаем робота-андроида своими руками
- Название:Создаем робота-андроида своими руками
- Автор:
- Жанр:
- Издательство:Литагент «ДМК»233a80b4-1212-102e-b479-a360f6b39df7
- Год:2007
- Город:Москва
- ISBN:5-9706-0032-6
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Джон Ловин - Создаем робота-андроида своими руками краткое содержание
Эта книга – отличный подарок для тех, кто собирается строить робота в первый раз, а также будет полезна и более опытным «роботостроителям», которые хотят отточить свое мастерство. Базовых знаний в области радиоэлектроники окажется вполне достаточно, чтобы книга помогла вам осуществить 12 отличных робототехнических проектов с использованием как промышленных частей и деталей (полные списки прилагаются), так и различного домашнего хлама, вытащенного с антресолей.
Издание окажется крайне полезным для всех любителей электроники и телемеханики как классическое руководство по функционально-блочному построению робототехнических устройств.
Создаем робота-андроида своими руками - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
Поиск исходного положения
Можно усовершенствовать работу устройства, добавив в него схему обратной связи, которая отслеживает положение руки-манипулятора. Эта информация может быть введена в компьютер, что позволит определить абсолютное положение манипулятора. С такой системой позиционной обратной связи возможна установка положения руки-манипулятора в одну и ту же точку в начале выполнения каждой последовательности команд, записанных в script-файле.
Для этого существует много возможностей. В одном из основных методов позиционный контроль в каждой точке не предусмотрен. Вместо этого используется набор концевых выключателей, которые соответствуют исходной «стартовой» позиции. Концевые выключатели определяют точно только одну позицию – когда манипулятор доходит до положения «старт». Чтобы это сделать, необходимо установить последовательность концевых выключателей (кнопок) таким образом, чтобы они замыкались, когда манипулятор достигает крайнего положения в том или ином направлении. Например, один конечный выключатель можно установить на основании манипулятора. Выключатель должен срабатывать только тогда, когда рука-манипулятор достигнет крайнего положения при вращении по часовой стрелке. Другие конечные выключатели нужно установить на плечевом и локтевом сочленении. Они должны срабатывать при полном разгибании соответствующего сочленения. Еще один выключатель устанавливается на кисти и срабатывает, когда кисть поворачивается до упора по часовой стрелке. Последний концевой выключатель устанавливается на захвате и замыкается при его полном открывании. Чтобы поставить манипулятор в исходное положение, каждое возможное движение манипулятора осуществляется в сторону, необходимую для замыкания соответствующего концевого выключателя до тех пор, пока этот выключатель не замкнется. После того как достигнуто начальное положение для каждого движения, компьютер будет точно «знать» истинное положение руки-манипулятора.
После достижения исходного положения мы можем заново запустить программу, записанную в script-файле, исходя из предположения, что ошибка позиционирования во время выполнения каждого цикла будет накапливаться достаточно медленно, что не будет приводить к слишком большим отклонениям положения манипулятора от желаемого. После выполнения script-файла рука выставляется в исходное положение, и цикл работы script-файла повторяется.
В некоторых последовательностях знание только исходного положения оказывается недостаточным, например при поднятии яйца без риска раздавить его скорлупу. В подобных случаях необходима более сложная и точная система позиционной обратной связи. Сигналы с датчиков могут быть обработаны с помощью АЦП. Полученные сигналы могут быть использованы для определения значений таких параметров, как положение, давление, скорость и вращающий момент. В качестве иллюстрации можно привести следующий простой пример. Представьте, что вы прикрепили небольшой линейный переменный резистор к узлу захвата. Переменный резистор установлен таким образом, что перемещение его движка вперед и назад связано с открытием и закрытием захвата. Таким образом, в зависимости от степени открывания захвата меняется сопротивление переменного резистора. После проведения калибровки, с помощью измерения текущего сопротивления переменного резистора можно точно установить угол раскрытия зажимов захвата.
Создание подобной системы обратной связи вводит еще один уровень сложности в устройство и, соответственно, приводит к его удорожанию. Поэтому более простым вариантом является введение системы ручного управления для корректировки положения и движений руки-манипулятора в процессе выполнения script-программы.
Система ручного управления интерфейсом
После того как вы убедитесь, что интерфейс работает правильным образом, вы можете с помощью 8-контактного плоского разъема подключить к нему блок ручного управления. Проверьте положение подключения 8-контактного разъема Molex к головке разъема на плате интерфейса, как показано на рис. 15.10. Аккуратно вставьте разъем до его надежного соединения. После этого рукой-манипулятором можно управлять с ручного пульта в любой момент времени. Не имеет значения, соединен ли интерфейс с компьютером или нет.

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

Голосовое управление рукой-манипулятором
B голосовом управлении рукой-манипулятором используется набор распознавания речи (УРР), который был описан в гл. 7. В этой главе мы изготовим интерфейс, связывающий УРР с рукой-манипулятором. Этот интерфейс также предлагается в виде набора компанией Images SI, Inc.
Схема интерфейса для УРР показана на рис. 15.11. В интерфейсе использован микроконтроллер 16F84. Программа для микроконтроллера выглядит следующим образом:
‘Программа интерфейса УРР
Symbol PortA = 5
Symbol TRISA = 133
Symbol PortB = 6
Symbol TRISB = 134
Poke TRISA, 255
Poke TRISB, 240
Start:
Peek PortB, B0
If bit4 = 0 then trigger ‘Если запись в триггер разрешена, читать схе
му УРР
Goto start ‘Повторение
trigger:
pause 500 ‘Ожидание 0,5 с
Peek PortB, B0 ‘Чтение кода BCD
If bit5 = 1 then send ‘Выходной код
goto start ‘Повторение
send:
peek PortA, b0 ‘Чтение порта А
if bit4 = 1 then eleven ‘Число есть 11?
poke PortB, b0 ‘Выходной код
goto start ‘Повторение
eleven:
if bit0 = 0 then ten
poke portb, 11
goto start ‘Повторение
ten:
poke portb,10
goto start ‘Повторение
end

Рис. 15.11. Схема контроллера УРР для руки-робота
Обновление программы под 16F84 можно бесплатно загрузить из http://www.imagesco.com
Программирование интерфейса УРР
Программирование интерфейса УРР аналогично процедуре программирования УРР из набора, описанного в гл. 7. Для правильной работы руки-манипулятора вы должны запрограммировать командные слова соответственно номерам, соответствующим определенному движению манипулятора. В табл. 15.1 приведены примеры командных слов, управляющих работой руки-манипулятора. Вы можете выбрать командные слова по вашему вкусу.

Список деталей для интерфейса PC
Интервал:
Закладка: