Текст книги "Создаем робота-андроида своими руками"
Автор книги: Джон Ловин
Жанр:
Педагогика
сообщить о нарушении
Текущая страница: 7 (всего у книги 22 страниц) [доступный отрывок для чтения: 9 страниц]
При помощи обычного компаса найдите направление на север. Поворачивайте устройство до тех пор, пока не загорится один светодиод. Для удобства я использую момент зажигания светодиода, наиболее удаленного от датчика. Если вы сделаете то же самое, то автоматически получите последовательность, отображенную на рис. 5.31.
Рис. 5.31. Последовательность включения светодиодов
Компьютерный интерфейсЧетыре линии выхода компаса формируют 4-разрядное двоичное число (полубайт), которое можно легко считать с помощью микроконтроллера, компьютера или иной схемы (см. табл. 5.4). До момента рассмотрения схемы работы PIC микроконтроллера 16F84 в гл. 7 мы не будем рассматривать схемы его подключения.
Таблица 5.4. Назначение светодиодов
Электронный аналоговый компас типа 1525В большинстве случаев информации о направлении, выдаваемой устройством 1490, более чем достаточно для правильной работы робота. Однако в каких-то случаях требуется более точное определение направления, и в этом случае можно воспользоваться аналоговым электронным компасом типа 1525 (см. рис. 5.32).
Рис. 5.32. Электронный аналоговый компас типа 1525
Выходная информация устройства 1525 требует гораздо более сложной обработки, но преимущество такого электронного компаса в том, что он определяет направление с точностью порядка 1°.
Выходной сигнал представляет собой два синусоидальных колебания, сдвинутых по фазе на 90° одно относительно другого (см. положение фаз колебаний на рис. 5.32). Амплитуда каждого колебания зависит от направления устройства. Если амплитуда четверти колебания (фаза 90°) преобразуется 8-битным АЦП, то разрешение устройства будет порядка 1°.
Система глобального позиционирования (GPS)Использование системы глобального позиционирования (GPS) позволит роботу определить свое местонахождение с большой точностью в любом месте Земли. Использование GPS в большинстве случаев не является действительно необходимым, но снижение стоимости подобных систем делает их возможное применение вполне реальным.
Распознавание речи
Диапазон слышимости человеческого уха лежит в пределах от 10 до 15.000 Гц. Для регистрации звуковых колебаний могут использоваться микрофоны и усилители, причем диапазон «слышимости» микрофона, как правило, превышает возможности уха. Для робототехники использование звука является ценным инструментом.
В обычной жизни слух используется преимущественно для коммуникации (язык). Создание робототехнических систем распознавания речи сейчас очень популярно. По этой причине мы посвятим целую главу (см. гл. 7) созданию схем распознавания речи и их интерфейсов. Но, тем не менее, не пропустите следующую информацию, поскольку использование звуковых систем в роботах может оказаться очень полезным.
Звуковые и ультразвуковые системы
Звук может быть использован в играх, определении расстояний, предотвращении столкновений и объезде препятствий. Для игры в «салки» роботы снабжены двухтональным генератором и приемником. Каждый робот может генерировать и принимать сигналы двух тонов. Допустим, тон А составляет 3000 Гц, а тон В – 6000 Гц. Эти тоны издаются при любом столкновении роботов (используются контактные выключатели).
Робот, который является «салкой» (водящим), издает звук тона В при любом столкновении «бамперов» с другим роботом. Робот, который является «не водящим», в этом случае издает звук тона А. Напомним, что при столкновении «водящий» робот издает звук В. «Не водящий» робот слышит звук В, переключается и становится «водящим». В свою очередь «водящий» робот слышит звук А и становится «не водящим». При столкновении двух «неводящих» роботов каждый издает звук тона А, поэтому их состояние не меняется. Понятно, что мы использовали звуковые сигналы в качестве примера. С тем же успехом можно использовать системы коммуникации на ИК лучах.
Для определения расстояний и обнаружения препятствий часто используется ультразвук. Многие конструкторы остановились на использовании ультразвуковых модулей компании Polaroid (см. рис. 5.33). Подобные модули используются в фотокамерах Polaroid для быстрого определения расстояния до объекта и фокусировки объектива с целью получения четкого изображения. При соединении с интерфейсом микроконтроллера подобные устройства способны измерять расстояния с большой точностью.
Рис. 5.33. Ультразвуковой дальномер типа Polaroid
Такие датчики фирмы Polaroid очень удобны для использования в роботах с целью определения расстояний. Устройство способно измерять расстояния до 10 м. При использовании сервомотора или шагового двигателя устройство можно поворачивать на манер радара для составления навигационной карты или обнаружения свободного прохода.
При каждом включении УЗ преобразователь фирмы Polaroid издает слышимый щелчок. Эти постоянные щелчки, исходящие от датчика, кажутся мне раздражающими. Хотя модуль функционирует в ультразвуковом диапазоне, начальный процесс возбуждения УЗ излучателя сопровождается слышимыми звуками.
Относительно легко создать УЗ систему избегания столкновений, которая, будучи полостью ультразвуковой, работает «тихо». Основная схема повторяет схему избегания столкновений на ИК лучах, с тем отличием, что мы используем звук вместо света. На рис. 5.34 показана функциональная схема устройства. Передатчик посылает сигнал 40 кГц в УЗ преобразователь (излучатель). Другой преобразователь (приемник) расположен рядом с излучателем передатчика. Когда робот приближается к стене или препятствию, сигнал 40 кГц отражается и попадает в приемник, что вызывает повышение амплитуды его выходного напряжения. Когда напряжение превысит пороговое значение, компаратор перебросится в другое состояние, сигнализируя о наличии препятствия.
Рис. 5.34. Схема УЗ детектора препятствий
УЗ приемный блокУЗ приемный блок (см. рис. 5.35) используется для точной настройки передатчика. Дело в том, что УЗ преобразователи имеют резонансную частоту 40 кГц. Если частота отличается от резонансной (±750 Гц), то эффективность преобразователя резко падает. Точная настройка преобразователя на максимум резонанса не составляет трудности, если вы воспользуетесь процедурой, описанной ниже. Для этого потребуется авометр, измеряющий постоянный ток, со шкалой 2 В.
Рис. 5.35. Схема УЗ приемника
Поскольку преобразователи имеют очень узкую полосу пропускания, (резонанс лежит около частоты 40 кГц), использование петли ФАПЧ (ИС LM567) не является необходимым. Сам преобразователь подавляет сигналы вне его частотного диапазона.
В приемном блоке использован ОУ КМОП-структуры. Цоколевка корпуса усилителя с 8 выводами аналогична универсальной ИС типа 741 (но не является заменой ОУ 741). ОУ включен в схему с инвертированным входом и имеет коэффициент усиления порядка 22.
УЗ передающий блокУЗ передающий блок выполнен на ИС КМОП-структуры типа 555, включенной в режиме генерации. Для точной подстройки частоты использован подстроечный резистор R2 4,7 кОм (см. рис. 5.36).
Рис. 5.36. Схема УЗ передатчика
Настройка передатчика
Расположите УЗ преобразователи (излучатели) навстречу друг другу на расстоянии 10–15 см (см. рис. 5.37). Присоедините вольтметр, как показано на вставке к рис. 5.35 (компаратор при этом нужно отсоединить). Установите авометр на измерение напряжения постоянного тока. Выходное напряжение будет порядка 2 В, соответственно необходимо установить нужный предел измерения. Включите одновременно оба устройства. Подстраивая передатчик с помощью R2, добейтесь максимума выходного напряжения на вольтметре, которое должно составлять порядка 2 В.
Рис. 5.37. Проверка работы УЗ устройства
Настройка КМОП-компаратора
После настройки передатчика мы должны настроить схему компаратора. Отсоедините вольтметр и присоедините компаратор. Расположите УЗ преобразователи в ряд, в одном и том же направлении на расстоянии примерно 15 мм друг от друга. Расположите предмет с плоской гранью на расстоянии примерно 75 мм перед УЗ преобразователями. Включите приемник и передатчик и подстраивайте резистор R5 приемника до зажигания сверхминиатюрного светодиода.
Для проверки работы схемы уберите предмет, расположенный перед излучателями. В этом случае светодиод должен погаснуть. Отодвиньте предмет на расстояние 12–15 см и еще раз подстройте R5 до зажигания светодиода. Помните, что приемник очень чувствителен к углу отражения. Если предмет имеет острый угол, то ультразвуковой сигнал может отразиться «вбок» от приемника. По мере приближения объекта угол отражения становится менее критичным.
Устройство способно обнаруживать объекты на расстояниях до 20 см. На больших расстояниях угол отражения становится очень критичным. Я использовал перпендикулярное положение излучателей. Для различных расстояний можно немного поворачивать излучатели.
При обнаружении объекта на расстоянии до 15 см устройство стабильно выдает TTL сигнал высокого уровня, зажигающий светодиод. Этот сигнал можно легко использовать для управления нейросетью или микроконтроллером.
Расположение УЗ датчиковОчевидными способами использования УЗ преобразователей (датчиков) является обнаружение препятствий спереди, сзади и по бокам робота. Другим применением, не столь очевидным, является мониторинг поверхности. Если закрепленный спереди УЗ датчик наклонен немного вниз, то он может предоставлять информацию о состоянии поверхности, по которой движется робот. Если робот достигает обрыва или «ступеньки», то нормально высокий сигнал становится низким, информируя ЦПУ о необходимости остановки движения.
Осязание и чувство давления
Поразительная точность и верность чувства осязания у человека едва ли может быть достигнута в конструкции робота. Однако существует несколько типов простых датчиков, которые можно использовать для обнаружения прикосновения и давления. Датчики прикосновения обычно используются в роботах для обнаружения препятствий на пути следования, что позволяет роботу избегать столкновений.
Более совершенные датчики прикосновения и давления используются в конструкциях рук и кистей. Такие датчики позволяют «руке» робота захватывать и удерживать предметы с достаточным усилием без риска их повреждения. Простой датчик прикосновения и давления можно изготовить из электростатического (проводящего) поролона. Подобный поролон используется при упаковке ИС для защиты их от статического электричества. Такой поролон обладает определенной электрической проводимостью, которая изменяется при сжатии.
Необходимо использовать неплотный (мягкий) тип поролона, поскольку он имеет пористое строение и обладает достаточной гибкостью. При нажатии поролон сжимается, что приводит к изменению сопротивления между наложенными на него электродами.
На рис. 5.38 приведен чертеж простого датчика давления. Проводящие пластины (электроды) могут быть изготовлены из фольгированного материала для печатных плат, алюминиевой фольги или чего-то подобного. Более точные датчики касания и давления будут рассмотрены в этой главе ниже.
Рис. 5.38. Датчик давления на базе проводящего поролона
Пьезоэлектрические материалы
Существует большое количество разнообразных пьезоэлектрических датчиков. Пьезоэлектрические датчики могут регистрировать вибрации, толчки и тепловое излучение. Компания Pennwall производит уникальный продукт, названный пьезоэлектрической пленкой. Она представляет собой пластик, покрытый алюминием таким образом, что он приобретает пьезоэлектрические свойства.
Материал имеет достаточную чувствительность для обнаружения теплового излучения человека, перемещающегося перед поверхностью пленки. Многие коммерческие устройства охранного включения света, продающиеся в магазинах оборудования, используют датчики в виде пьезоэлектрической пленки, помещенные за линзой Френеля, для обнаружения присутствия человека по его тепловому излучению. Такие устройства автоматически включают свет при попадании человека в «поле зрения» прибора.
Выключатели
Выключатели мгновенного действия (кнопочные) по типу образуют груп пы датчиков касания, указателей направления и конечных выключателей Разнообразие типов подобных выключателей обеспечивает свободу их вы бора. Наиболее часто в робототехнике используются выключатели мгновен ного действия рычажного и кнопочного типов (см. рис. 5.39).
Рис. 5.39. Выключатели мгновенного действия (кнопки)
Датчики изгиба
Датчики изгиба представляют собой пассивные элементы резистивного типа, сопротивление которых увеличивается при изгибе или скручивании (см. рис. 5.40 и 5.41). Такие датчики обычно используются в специальных перчатках систем виртуальной реальности для определения положения пальцев в перчатке, и могут быть легко приспособлены для нужд робототехники. Такой датчик изгиба может представлять собой род щупальца и предупреждать робота о наличии препятствия.
Рис. 5.40. Датчик изгиба
Рис. 5.41. График сопротивления датчика изгиба
Подобные устройства напоминают усы у кошки. Кошки используют усы для определения того, является ли проход достаточно широким, чтобы туда можно было пройти. Если усы по обеим сторонам кошачьей мордочки сигнализируют о наличии препятствия, то кошка туда не пойдет. Подобным образом можно использовать датчики давления и в роботах.
Тепловые датчикиНаиболее известными тепловыми датчиками являются термисторы (см. рис. 5.42). Это устройство пассивного типа изменяет сопротивление пропорционально температуре. Существуют термисторы, имеющие положительный и отрицательный температурный коэффициенты (см. рис. 5.43). Температурное излучение также может быть обнаружено с помощью пьезоэлектрических материалов, о чем говорилось выше.
Рис. 5.42. Термистор
Рис. 5.43. Графики температурной зависимости сопротивления термистора с положительным и отрицательным ТК
Датчики давления
Для измерения сил хорошо подходят датчики давления, изображенные на рис. 5.44. «Чувствительный» элемент датчика расположен на специальной подложке размерами 14х14 мм на одном конце устройства. С увеличением приложенной силы сопротивление датчика падает. Датчики выпускаются для различных диапазонов приложенных сил: от 0–4 Н до 0-4000 Н.
Рис. 5.44. Датчик давления Flexiforce
Датчики запаха
Диапазон реакций на запахи человеческого носа в настоящее время недостижим ни одной из известных искусственных сенсорных систем. Известны простые газовые датчики, способные обнаружить присутствие токсичных газов (см. рис. 5.45). Подобные датчики могут быть использованы для создания автоматических (роботизованных) систем вентиляции.
Рис. 5.45. Датчики ядовитых газов
Пример включения простого газового датчика представлен на рис. 5.46. Для создания чувствительности резистивный элемент должен быть подвергнут нагреву. Устройство снабжено встроенным подогревателем, питающимся от отдельного источника. Подогреватель потребляет около 130 мА при стабилизированном напряжении питания 5 В. Показания резистивного элемента могут быть считаны аналогично описанному выше.
Рис. 5.46. Проверка работы датчиков токсичных газов
При использовании простых схем возможности газовых датчиков раскрываются не полностью. Дело в том, что одиночный датчик не выдает достаточно точных показаний. Иными словами, показания датчиков немного изменяются от экземпляра к экземпляру. Это «аналоговое» свойство группы датчиков может быть использовано для создания более чувствительного устройства.
Рассмотрим группу из восьми датчиков, резистивный элемент каждого из которых подключен к АЦП. В данной ситуации использование компаратора неэффективно, поскольку нас как раз интересует небольшая разница в показаниях отдельных датчиков. Для калибровки устройства необходимо выпустить небольшую порцию известного газа (запаха) на все восемь датчиков. Показания каждого из них преобразуются АЦП и записываются в компьютер. Разница показаний датчиков формирует профиль для каждого анализируемого запаха.
Подбор профиля хорошо реализуется в технологии нейронных сетей. Нейронная сеть может быть создана таким образом, что окажется в состоянии определять не только интенсивность, но и распознавать различные запахи.
Датчики влажности
Пассивные датчики влажности с резистивным выходом представляют собой относительно новую разработку и доступны к приобретению.
Проверка датчиков
При разработке и изготовлении систем чувствительных датчиков представляется разумным производить их тестирование перед установкой в систему робота. Одним из способов, который я осуществил, являлось создание небольшого передвижного робота, единственной функцией которого была проверка работоспособности и характеристик датчиков. Таким образом, оказалось возможным оценить время срабатывания датчика и его надежность до установки в более сложную конструкцию робота.
Робот способен тестировать «ударные» выключатели, световые выключатели, датчики изгиба, а также системы датчиков предотвращения столкновений, использующих ультразвук и ИК лучи. Прочие типы датчиков могут потребовать тестовой платформы больших размеров.
Изготовление робота-тестера
Я назвал конструкцию этого небольшого устройства роботом-тестером. В основе ее лежит небольшой электрический автомобиль, который можно приобрести менее чем за $10 (см. рис. 5.47).
Рис. 5.47. Тестер
Принципиальная схема робота-тестера изображена на рис. 5.48. Сенсор подключается к входу запуска таймера ИС типа 555, использованной в режиме одновибратора. На выходе схемы (вывод 3) присутствует напряжение низкого уровня до момента подачи отрицательного запускающего импульса на вывод 2. После этого на выводе 3 генерируется одиночный положительный импульс длительностью порядка 1 с.
Рис. 5.48. Схема работы тестера
Вывод 3 ИС 555 соединен с NPN транзистором типа 2N2222. Выходной сигнал снимается с эмиттера транзистора и поступает на одну из 6 схем «НЕ» инвертора, выполненного на ИС 4049. Выходы буферов схем «НЕ» 4049 поступают на МОП полевые транзисторы, включенные по схеме моста, которые управляют вращением двигателя привода.
При наличии низкого уровня на выходе ИС 555 транзисторы моста включают двигатель для движения «вперед». Тестируемый датчик подключен к входу запуска 2 ИС 555. Датчик включен таким образом, что при замыкании или коммутировании он выдает отрицательный импульс (садится на землю). Этот импульс на выводе 2 запускает одновибратор, который в свою очередь выдает положительный импульс длительностью 1 с на вывод 3. Данным импульсом транзисторы перекоммутируют двигатель на 1 с для движения «назад».
Подобный тестер может быть использован для проверки большинства датчиков и преобразователей.
Усовершенствование робота-тестераКогда я разрабатывал конструкцию робота-тестера, то предполагал что большинство проверяемых датчиков будет использовано в конструкциях миниатюрных моделей. Однако вышло по-другому. В процессе конструирования различных схем-прототипов, как правило, не хватало времени для изготовления печатной платы, не говоря уже о минимизации размеров устройства.
Если бы я создал другого робота-тестера, я бы, несомненно, использовал большую модель электрического автомобиля в качестве платформы. Наличие достаточного места позволило бы с большим удобством проверять различные типы датчиков и иных схем.
Детали для описанных устройств можно заказать по адресу:
Images Company
P.O.Box 140742
Staten Island, NY 10314
(718)698-8305
http://www.imagesco.com
Глава 6
Интеллект
«Интеллект», заключенный в роботе, принимает одну из двух форм: программно поддерживаемый интеллект (экспертная система) и интеллект в форме нейронной сети. Возможно одновременное функционирование этих форм интеллекта. Такой синтез со временем будет широко использоваться в роботах для создания систем развитого ИИ.
Экспертные программы ИИ, основанные на системе решающих правил, хорошо известны большинству пользователей ПК. Это программы, написанные на языке высокого или низкого уровня типа С++, Basic или ассемблере. С другой стороны, нейронные системы используют искусственные, электронные нейроны для управления и генерации поведения робота. Подобная архитектура построения нейронных сетей, управляющих поведением роботов, была впервые предложена Вильямом Грей Вальтером в конце 40-х начале 50-х годов. Позднее Родни Брукс из Массачусетского технологического института разработал поведенчески ориентированную структуру сетей роботов под названием предикативной (условной) архитектуры. Мы рассмотрим работу поведенчески ориентированных роботов в гл. 8.
В этой главе мы остановимся на программируемых системах и микроконтроллерах. Помните, что работу нейронных сетей возможно имитировать с помощью специальных программных систем. Заслуживает внимания тот факт, что практически все матобеспечение по нейронным сетям функционирует на обычных программируемых компьютерах, используя специальные программы для имитации работы сетей.