San Jose, CA 95112
(800) 538-5005
Строим робота-охотника за светом
Посмотрим, сможем ли мы сконструировать робота-охотника за светом, обладающего в некотором смысле «интеллектуальным» поведением. В главе 6 мы уже рассматривали систему слежения за источником света на фоторезисторах. Система слежения фиксировала источник света и поворачивалась в его направлении. Когда мы поместили следящую систему на копию робота-черепахи Вальтера, она направляла движение робота на источник света. Такой тип «ориентировочного» поведения мы будем называть первым уровнем системы «стимул-реакция».
Программа иллюстрирует, как алгоритмически управляемые микроконтроллеры могут имитировать функции нейронов. Для строгости примера приведем нейронную схему, которая исполняет те же функции без участия алгоритмически заданного «интеллекта».
На рис. 8.19 показано использование двойного симметричного операционного усилителя с однополярным питанием. Два ОУ включены в схемы компараторов. Работу компаратора мы подробно рассматривали в гл. 5. Если у вас возникли какие либо вопросы по поводу рис. 8.19, перечитайте гл. 5. Два фоторезистора CdS включены последовательно и образуют делитель напряжения. Выход этого фоторезистивного делителя подключен к инвертированному входу одного ОУ и неинвертированному входу другого.
Рис. 8.19. Нейронный компаратор на двух ОУ
Потребуются еще два делителя напряжения. Конструктивно они являются зеркально симметричными. Один делитель составляют резистор 3,9 кОм, подключенный к ИП, и резистор 4,7 кОм, соединенный с землей. Во втором делителе используются резисторы тех же номиналов, но в обратном включении.
Когда оба фоторезистора освещены одинаково, то ни один из светодиодов не горит. Если прикрыть один из фоторезисторов, то соответствующий светодиод загорится.
Каждый из ОУ функционирует как одиночный электронный нейрон. Когда значение электрического стимула превышает или падает ниже заданного порога (зависит от того, какой из ОУ мы рассматриваем), который определяется соответствующим резистивным делителем 3,9 кОм и 4,7 кОм, то «нейрон» активируется. Активация нейрона (т. е. сигнал на выходе ОУ) может быть использована для включения двигателя постоянного тока через NPN транзистор (см. рис. 8.20). В свою очередь двигатели могут обеспечивать перемещение и направление движения робота охотника.
Рис. 8.20. Управление двигателями постоянного тока с помощью нейронного компаратора
Для изготовления простого робота-охотника было использовано шасси, имеющее два двигателя постоянного тока с редукторами (см. рис. 8.21). Когда оба двигателя включены, робот движется вперед по прямой. Если один из двигателей выключен, то другой двигатель поворачивает конструкцию направо или налево.
Рис. 8.21. Общая схема робота – светоохотника
Для нашего робота-охотника при одинаковом освещении фоторезисторов нам необходимо подавать питание на оба двигателя. Для этого между выходом каждого из ОУ и базой NPN транзистора необходимо включить инвертирующий буферный каскад (см. рис. 8.22).
Рис. 8.22. Управление двигателями постоянного тока с помощью нейронных компараторов с инверторами
Поведение
Когда на один из фоторезисторов падает меньше света, чем на другой, один из двигателей соответственно выключается, а другой двигатель поворачивает устройство в направлении источника света. Когда световые потоки сравниваются, включаются оба двигателя и робот движется прямо по направлению на источник света.
Если мы поменяем местами выходы ОУ, управляющие двигателями, то поведение изменится на противоположное. Вместо того чтобы двигаться по направлению к источнику света, робот будет избегать света и искать «убежище».
Дополнительный тип поведения (питание)
Мы можем усложнить поведение робота-охотника, добавив еще один уровень «стимул-реакция» (см. рис. 8.23). Для этой цели подойдет еще одна управляемая светом схема компаратора, которая будет обеспечивать тип поведения «питание». Напомню, что принцип работы компараторов был изложен в гл. 5. Если у вас появились вопросы по рис. 8.23, то прочитайте еще раз эту главу. Второй слой надстроен сверху над первым. Когда интенсивность светового потока достигает критической величины, опорный детектор снимает напряжение с цепей первого слоя и системы питания двигателей. Если мы разместим на конструкции солнечную батарею и диод, то напряжение, генерируемое батареей, будет немного подзаряжать батарею NiCd аккумуляторов. Эту функцию мы назовем «питание».
Рис. 8.23. Схема компаратора для поведения типа «питание»
Еще один тип поведения (отдых)
Понятно, что у нас нет желания, чтобы робот-охотник перемещался в темноте, теряя при этом драгоценную энергию. Поэтому мы добавим еще один слой поведения. Третьим слоем будет еще один пороговый детектор (см. рис. 8.24). Этот детектор отключает напряжение от цепей первого слоя, системы питания двигателя и цепей второго слоя при уровне освещенности, близком к темноте. При повышении среднего уровня освещенности система восстанавливает питание первого слоя, подает напряжение на двигатели и цепи второго слоя.
Рис. 8.24. Схема компаратора для поведения типа «отдых»
Новый тип поведения
Посмотрим на поведение робота-охотника по трехуровневой (трехслойной) схеме «стимул- реакция» и посмотрим, можно ли классифицировать это поведение как «разумное». В полной темноте робот неподвижен, сосредоточивая всю активность на слое 3. При повышении уровня освещенности слой 3 индуцирует включение питания двух нижних слоев и активирует питание двигателей. На этом этапе слой 1 перехватывает управление устройством и направляет действия робота. Робот ищет и движется по направлению к источнику света. По мере продвижения к источнику света уровень освещенности нарастает. Когда освещенность достигнет критического порогового значения, схема слоя 2 отключит питание двигателей, переведя робота в режим «питание», что позволит ему «питаться» (подзаряжать аккумуляторы) с помощью солнечной батареи.
Решите ли вы считать такое поведение разумным или нет – зависит от вашего личного предпочтения. Подобные вопросы обсуждаются «с обеих сторон баррикад». В конце концов, подобное устройство иллюстрирует тот факт, насколько сложным может оказаться поведение при использовании иерархически уровневого построения системы по типу «стимул-реакция».
ВЕАМ-робототехника
Идеология ВЕАМ-робототехники была предложена Марком Тилденом во время работы в университете Ватерлоо в Канаде. Заинтересованность в роботах стиля BEAM возникла у Марка после лекции, прочитанной Родни Бруксом в Массачусетском технологическом институте, который Марк посетил в 1989 году. Профессор Родни Брукс рассматривал подход к конструированию роботов как систему по типу «стимул-реакция», названному «предикативной архитектурой».
Сокращение ВЕАМ (по-русски БЭАМ) представляет собой многозначный акроним, имеющий некоторое отношение к вопросам биологии, электроники, эстетики и механики. Я сказал «некоторое отношение», поскольку данный акроним можно толковать, например, как Биотехнологию, Эволюцию, Аналоговые системы и Модульные принципы.
Соревнования ВЕАМ-роботов
Для конструкторов ВЕАМ-роботов ежегодно проводятся соревнования по Олимпийской системе, программа которых включает 14 пунктов. Традиция подобных ВЕАМ-игр началась с первых международных соревнований, проведенных в Глазго, Шотландия, в 1990 году. Основной идеей философии ВЕАМ- робототехники является эволюция роботов: развитие от простых конструкций к сложным системам. Примером является идея отказа от обычных схем построения робота, управляемого «сверху» с помощью