Занимательная анатомия роботов

Мацкевич Вадим Викторович

9. Моделирование памяти и вычислительных систем

 

 

На пути к созданию искусственного мозга

Важнейшим объектом исследования нейрокибернетики является самая сложная биологическая система – человеческий мозг. Исследуя процессы, происходящие в головном мозге, можно изучить совокупность операций, которые приводят человека к решению творческих задач. Несмотря на сложность этой проблемы, творческие процессы познаваемы, как и любые другие процессы, происходящие в природе.

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

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

Человек всегда помнит больше, чем ему кажется. По свидетельству современников, Юлий Цезарь и Александр Македонский знали в лицо и по имени всех своих солдат, а ведь их было очень много – 30 тыс. А. Алёхин помнил все сыгранные шахматные партии и, не глядя на доски, мог одновременно играть более чем с 20 партнёрами.

Сейчас никто не в состоянии дать исчерпывающий ответ на все вопросы, связанные с деятельностью мозга: 6 механизме памяти, об удивительной системе произвольного доступа к огромным запасам информации, хранящейся в мозгу, о гибкости и надёжности памяти человека. Но великий русский физиолог И. М. Сеченов, очень хорошо понимавший титаническую трудность проблемы, утверждал, что предпосылки для понимания функций мозга состоят в «…строгом разборе его машинности».

Успехи кибернетики и бионики – лучшее доказательство справедливости этого тезиса. Новым наукам, развиваемым совместными усилиями физиологов, математиков и специалистов по электронике, союз которых оказался чрезвычайно плодотворным, по плечу любая задача. Рано или поздно учёные смогут узнать самые сокровенные тайны мозга.

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

Учёного-кибернетика мозг интересует прежде всего как пример разумной машины, созданной самой природой. Кибернетики пытались подойти к этой задаче с позиций физиологов. Мозг человека оказался настолько сложной системой, что разобраться в деталях его работы было невозможно. И только аналогия в работе мозга и вычислительной машины наметила подход к решению этой сложнейшей проблемы.

Создавая первые ЭВМ, инженеры мало знали о строении мозга. Они стремились создать машину, которая бы быстро и точно могла производить вычисления. Сходство ЭВМ с человеческим мозгом было обнаружено позже, когда физиологи при изучении мозга стали сравнивать известные им факты с тем, что они узнали от специалистов по вычислительной технике.

Прежде всего физиологи обратили внимание на бинарность в поведении нервной системы. Оказывается, каждое нервное волокно в любой момент либо «включено», либо «выключено». Оно либо активно и при этом проводит сигнал возбуждения, либо пассивно и сигнала не проводит. Насколько смогли определить физиологи, у нервных волокон не существует никакого промежуточного состояния.

 

Двоичная система счисления – идеальная система для ЭВМ

Мы уже говорили о том. что в нервных сетях действуют законы двоичного счисления: О или 1, ДА или НЕТ. Какими особенностями отличается двоичная система? Почему именно её избрали для ЭВМ?

Мы принимаем как должное счёт до десяти, хотя в действительности десятичная система счисления, которой мы постоянно пользуемся, является одной из многих и вовсе не лучшей.

Вот как выглядят числа в десятичной и двоичной системах (справа):

1 – 1

2 – 10 (одна единица второго разряда)

3 – 11

4 – 100 (одна единица третьего разряда)

5 – 101

6 – 110

7 – 111

8 – 1000 (одна единица четвёртого разряда)

9 – 1001

10 – 1010

11 – 1011

12 – 1100

13 – 1101

14 – 1110

15 – 1111

16 – 10000 и т.д.

Г. Лейбниц, впервые исследовавший двоичную систему счисления, ещё в 1703 году писал: «При сведении чисел к простейшим началам, каковы 0 и 1, всюду выявляется удивительный порядок…» Особенно восхищали Лейбница простотой правила двоичного сложения и умножения. Двоичная система тоже имеет недостатки, но их перекрывает огромное преимущество: каждое двоичное число, как бы велико оно ни было, составлено только из единиц и нулей. Только два различных значения, не более. Это обстоятельство делает двоичные числа идеальным инструментом для всех электронных вычислительных машин.

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

 

Основные элементы ЭВМ

Логические операции счета в двоичной системе могут выполнять электромагнитные реле. Первые вычислительные машины состояли из большого числа электромагнитных реле, которые своими контактами или размыкали электрическую цепь, что соответствовало 0 (нулю), или замыкали, что соответствовало 1 (единице).

Но реле громоздки и ненадёжны, поэтому вычислительная техника перешла к использованию электронных ячеек с двумя устойчивыми состояниями – триггеров. Простейший триггер собирают из двух взаимно управляемых ламп или транзисторов. Если открыта одна лампа (или транзистор) триггера, то вторая закрыта. Каждый очередной управляющий импульс, поступающий на вход триггера, переключает его в другое состояние. При переключении на выходе триггера возникает ответный импульс, который может служить для переключения другого триггера. Из триггеров и переходных диодов можно составлять пересчетные устройства.

Рассмотрим цепь из четырёх последовательно включённых триггеров (см. схему на рис. 69). На рис. 69 показаны состояния транзисторов этой цепи (красный кружок – открыт, тёмный – закрыт). Устройство отсчитывает каждые десять входных импульсов и на каждый десятый выдаёт выходной импульс. Этот импульс может быть использован как счётный импульс для последующей счётной декады.

Puc. 69. Схема пересчетной ячейки

Рис. 70. Триггер

Прежде чем приступить к моделированию счётных каналов ЭВМ, подробно рассмотрим работу триггера и попытаемся собрать элементарную счётную ячейку. Как видно из рис. 70, триггер состоит из двух усилительных ступеней с непосредственной взаимной связью. Благодаря наличию отрицательной обратной связи он имеет два устойчивых состояния.

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

Скачки напряжения триггеров используют в ЭВМ для отображения чисел. Наличие напряжения обозначают цифрой 1, отсутствие – 0. Своё название этот своего рода бесконтактный переключатель получил от английского слова trigger, что означает «спусковой крючок». Наиболее распространён в практике транзисторный триггер с независимым смещением, с раздельными выходами и одним общим (счётным) входом.

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

Триггер с раздельными входами (рис. 71) – это две усилительные ступени с жёсткой обратной связью через резисторы R2 и R5. Она обеспечивает триггеру два устойчивых состояния: когда один из его транзисторов открыт, а другой закрыт, и наоборот. Из одного устойчивого состояния в другое триггер переключается поочерёдной подачей управляющих импульсов положительной полярности на его входы. Для наглядного контроля за состоянием транзисторов в цепь коллекторов транзисторов включены лампы накаливания (HL1 и HL2) на напряжение 2,5 В и ток 0,075 А.

Рис. 71. Триггер с раздельными входами

Стоит кратковременно нажать на кнопку SB2, как триггер перейдёт в другое устойчивое состояние, так как при этом на базу транзистора VT2 от элемента G1 (элемент 332) поступит положительный импульс. Триггер сохраняет своё устойчивое состояние сколь угодно долго. Благодаря отрицательным обратным связям через резисторы R2 и R5 процесс перехода триггера в новое устойчивое состояние происходит лавинообразно в течение нескольких микросекунд. Напряжение на электродах транзисторов, соответствующее другому устойчивому состоянию триггера, показано в скобках. Рассмотрим работу триггера.

Триггер со счётным входом. Схема этого триггера (рис. 72) выделена красной линией. Он похож на уже знакомый триггер с раздельными входами, но содержит несколько дополнительных элементов: конденсаторы СЗ и С4, резисторы R2 и R8, диоды VD1 и VD2 и, кроме того, имеет один общий вход. Конденсаторы СЗ, С4 и диоды VD1, VD2 образуют цепи, через которые на базу транзисторов VT1 и VT2 подводят входные управляющие импульсы.

Из одного устойчивого состояния в другое триггер переключается положительными импульсами напряжения, подаваемыми на вход. При отрицательных входных импульсах изменения состояния триггера не происходит.

Подавать на вход триггера одиночные импульсы кнопкой нельзя, так как в момент соприкосновения контактов кнопки во входной цепи возникает не один, а серия импульсов продолжительностью в несколько микросекунд (это явление называют «дребезгом контактов»). Здесь роль формирователя одиночных импульсов играет вспомогательный триггер с раздельными входами на транзисторах VT3 и VT4, управляемый кнопкой SB1.

В коллекторную цепь транзисторов VT1 и VT2 целесообразно включить индикаторные лампы HL1 и HL2, по свечению которых удобно судить о состоянии транзисторов.

Как работает триггер со счётным входом? При включении питания (батарея GB1) один из его транзисторов, как и в триггере с раздельными входами, открывается, другой – закрывается. Будем считать исходным состоянием триггера такое, при котором транзистор VT1 закрыт, а транзистор VT2 открыт (должна гореть лампа HL2). Если состояние триггера иное, то нажмите на короткое время на кнопку SB1.

Рис. 72 Триггер со счётным входом

При этом лампа HL2 должна загореться, a HL2 – погаснуть. Устойчивое состояние, когда транзистор VT1 закрыт, VT2 открыт, поддерживается цепями отрицательной обратной связи точно так же, как в триггере с раздельными входами. Напряжение на базе закрытого транзистора VT1 положительно, а на его коллекторе – отрицательно, поэтому диод VD1 закрыт и база этого транзистора отключена от входа триггера (путь сигналу через конденсатор СЗ блокирован).

Рис. 73 Структура обучающегося робота – манипулятора

В то же время наличие отрицательного напряжения на базе открытого транзистора VT2 (около – 0,4 В) и на его коллекторе (-0,2 В) приводит к открыванию диода VD2, тем самым вход триггера к базе транзистора VT2 подключается через конденсатор С4. Переключают триггер в другое состояние подачей на его вход положительного импульса. Для этого надо лишь кратковременно нажать на кнопку SB1. При каждом нажатии на кнопку SB1 на вход триггера со счётным входом поступает одиночный импульс положительной полярности.

Таким образом, триггер переключается положительными импульсами. Положительный и отрицательный перепады напряжения, снимаемые с Выхода 1 и Выхода 2, могут быть использованы для управления другими электронными устройствами. Положительный импульс на Выходе 1 появляется при поступлении на вход триггера каждого нечётного импульса, а на Выходе 2 – чётного импульса; триггер, следовательно, делит частоту поступающих на его вход импульсов на два. То есть коэффициент счета триггера К = 2. Мы уже говорили о том, что основным элементом ЭВМ, участвующим во всех вычислительных операциях, является триггер. На основе триггеров можно создать множество занимательных конструкций, например действующие модели светофоров, увлекательные кибернетические игры. В промышленности триггерные счётчики широко применяют в электронной измерительной аппаратуре с цифровой индикацией результатов измерений. Такие счётчики можно использовать и в роботе, например, для подсчёта проходящих мимо него деталей или людей.

Объединение механической системы робота – манипулятора с ЭВМ (рис. 73) позволяет создавать обучаемых роботов.

 

Обучение робота

Робот действует по программе. Вначале изучают траекторию движения руки робота, затем «обучают» его самого и составляют программу самостоятельной работы. Кратко рассмотрим этапы обучения.

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

Движения, совершаемые рукой, фиксируют кодовые датчики (см. рис. 73) и сигналы в цифровом виде поступают на блок записи программы. Этот блок записывает программу на магнитный барабан памяти движения руки по пяти осям (три поступательных движения и два вращательных) в цифровом виде на пяти дорожках. После того как записано одно движение, приступают к записи другого. Заметьте, что робот запоминает с первого раза и удерживает в памяти до 180 команд и на столько времени, сколько это необходимо человеку.

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

В последние годы электронной промышленностью созданы чудесные микроЭВМ и микропроцессоры. Благодаря низкой стоимости микропроцессора его стало возможным включить в большинство обычных машин и аппаратов. Любую машину микропроцессор может наделить способностью принимать решения, хранить в памяти программу работы и инструкции на различные ситуации, автоматически регулировать свою работу в зависимости от складывающихся условий.

В чём принципиальные преимущества использования в массовых объектах управления микропроцессоров и микроЭВМ?

Главное – малые габариты и потребляемая мощность, низкая стоимость микропроцессорных вычислительных систем, особенно так называемых однокристальных, у которых на одной кремниевой пластине объединены микропроцессор и запоминающие устройства. Уже одно это позволяет применять вычислительную технику в тех областях, где ранее вычислительные и управляющие машины были недоступны из-за «барьера стоимости» и сложности организации промышленного выпуска необходимого их количества. Благодаря малым размерам микропроцессорную систему можно легко разместить на станке, в кабине трактора, в корпусе робота – манипулятора, в магнитофоне, в телефонном аппарате.