Три закона роботехники в научной фантастике — обязательные правила поведения для роботов, впервые сформулированные Айзеком Азимовым в рассказе «Хоровод» (1942).

Законы гласят:

  1. Робот не может причинить вред человеку или своим бездействием допустить, чтобы человеку был причинён вред.
  2. Робот должен повиноваться всем приказам, которые дает человек, кроме тех случаев, когда эти приказы противоречат Первому Закону.
  3. Робот должен заботиться о своей безопасности в той мере, в которой это не противоречит Первому и Второму Законам.

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

Кстати, роботов нынче превеликое множество, начиная от простеньких конструкций из кубиков «Лего», создаваемых школьниками на уроках робототехники, до сложных человекоподобных созданий с запрограммированным интеллектом. К слову, последние, как правило, существуют в единичных экземплярах. Но если вы думаете, что создание роботов — прерогатива опережающей весь мир Японии, то вы наверняка ошибетесь.

Не так давно разработкой андроидов (человекоподобных роботов) занялись и российские специалисты. В 2004 г. на рынке появилась компания «Андроидные роботы», которая занимается конструированием человекоподобных механизмов (начиная от совсем небольших, размером с куклу, и заканчивая полноразмерными, в человеческий рост). Помимо этого специалисты компании ведут прикладные исследования по расширению возможностей роботов с помощью дополнительного оборудования: систем навигации, аппаратного «зрения», «слуха», телеметрии.

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

Самая популярная модель, разработанная в компании, — робот-андроид серии AR-100 «Добрыня». Хоть этот богатырь и невелик размерами, но умеет достаточно: уверенно имитирует человеческие движения, а при установке голосового синтезатора, переводящего текст в речь, даже говорит. Причем робота отличают устойчивая ходьба и плавное движение туловища, а это немаловажно в экстремальных ситуациях. Уникальность андроидных роботов состоит именно в особенностях их кинематики: ведь шагающему роботу намного проще передвигаться по неровностям, например по лестницам или завалам, чем роботам на гусеничном ходу. А потому разработка и программирование таких роботов — одно из перспективных направлений.

Есть у российских роботов и еще одно преимущество: программное обеспечение, необходимое для их работы, открыто и масштабируемо. Штатное ПО позволяет быстро разрабатывать сложные сценарии движения с использованием мультимедийных возможностей. Таким образом, роботы серии AR-100 считаются отличным пособием по изучению современных робототехнических технологий.

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

Язык программирования андроидов основан на знакомом многим Бейсике. Он так и называется — AR-Basic. А кроме того, для удобства работы специалисты компании «Андроидные роботы» создали специальную среду разработки AR-Basic Studio. Это ПО довольно просто в освоении.

Отличается AR-Basic от Бейсика наличием специальных команд, позволяющих оперировать сервомоторами — механизмами, которые отвечают за движение робота. В модели «Добрыня» сервомоторов (их еще называют сервоприводами) семнадцать. Они отвечают за сгибание рук и ног робота, повороты головы и наклоны туловища. Помимо них имеется контроллер, который вполне можно назвать мозгом робота, и аккумулятор, имитирующий сердце.

Языковые конструкции AR-Basic позволяют управлять сервоприводами как по отдельности, так и объединяя их в группы. Принцип управления прост: большинству команд в качестве параметров передаются лишь номер сервомотора или группы сервомоторов и значения, на которые должен подвинуться тот или иной сервопривод. Есть также команды для обмена данными — приема сигналов от пульта ДУ или компьютера, передачи данных по каналу Bluetooth, подачи звуковых и световых сигналов.

Ограничения сервопривода робота AR-100 составляют от 0 до 2048 единиц. Для удобства при выставлении нулевой отметки за максимальное значение принято число 1024, а за минимальное — минус 1024. Таким образом, программисту доступен диапазон значений примерно от –1000 до 1000, где 0 — середина.

В качестве параметров к этим функциям задается числовое значение — идентификатор привода (или группы) и одна или несколько точек, определяющих, куда следует повернуть конкретный привод (от –1000 до 1000).

Простейшая команда srv_move(mn, val) означает движение привода с номером mn в позицию val с учетом текущей скорости. А скорость можно задать командами srv_speed(mn, val) (для одного мотора с номером mn) или srv_speed_all(val) — для всех сразу. Интересна команда srv_moveptp(mn, val), обеспечивающая перемещение мотора с номером mn в позицию val таким образом, чтобы все сервомоторы в той же группе, что и mn, закончили движение одновременно. Вообще ptp (point-to-point) в названии функции означает автоматическое смещение скоростного режима для некоторых приводов в группе или в целом, для того чтобы конечное положение приводы в группе (или в целом) приняли одновременно.

Предположим, приводы плеча и локтевого сустава находятся в нейтральном положении, и мы хотим заставить робота поднять согнутую в локте руку. Для этого нам нужно подвинуть соответствующие приводы в разные точки, например, один в точку 300, а другой — в 600. Но поскольку скорость движения приводов по умолчанию одинакова, второй будет двигаться в два раза дольше. Чтобы избежать этого, нужно использовать команду PTP; тогда контроллер автоматически выставит для первого привода скорость в два раза меньше и оба сустава достигнут своих конечных точек одновременно.

Конечно, сразу научить робота определенным действиям довольно непросто. Чего стоит только разобраться в движении сервоприводов! Но разработчики AR-100 предусмотрели более простой способ программирования — визуальный. В AR-Basic Studio есть специальное окно управления сервоприводами, где на изображении робота рядом с каждым сервомотором указаны параметры: индикатор включения и число, характеризующее движение сервопривода. Это же окно позволяет автоматически генерировать фрагменты кода, описывающие определенные позы робота (поклон, приседание, поднятие рук и т.д.).

Кстати, если робот подключен к компьютеру, то можно сразу же проверить правильность заданных команд. Синхронизация робота с компьютером возможна как по USB, так и через порт Bluetooth.

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

В 2006 г. компания «Андроидные роботы» организовала первое в России соревнование роботов. С тех пор в «Открытом чемпионате России по боям роботов-андроидов», проводимом регулярно, принимают участие команды из разных городов России. Но таланты человекоподобных машин раскрываются не только на ринге, но и на танцевальной площадке. Как уже было сказано выше, андроиды достаточно достоверно имитируют движения человека и танцевальные па в их исполнении вполне похожи на настоящие. После неожиданно успешной презентации танцевальной программы в рамках первого чемпионата по боям компания «Андроидные роботы» организует соревнования по танцам на различных робототехнических выставках.

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

Дополнительные материалы на «Мир ПК-диске»

1777