ОБЗОРЫ

По оценкам организации ActivMedia Robotics (www.activmedia.com), занимающейся исследованиями в области робототехники, рынок мобильных роботов вырастет с 1 млрд. в 2001 г. до 5 млрд. долл. в 2005-м. Столь значительное увеличение интереса компаний и частных покупателей к самоходным аппаратам объясняется резким удешевлением последних и одновременно существенным расширением их функциональных возможностей (производительности, точности действий, гибкости и простоты настройки). Кроме того, промышленные корпорации в развитых странах стараются компенсировать рост зарплаты (примерно 1% в год) за счет полной автоматизации производственных линий, а массовый рынок пока восторженно принимает практически каждую интеллектуальную модель, что подталкивает разработчиков к ускоренному созданию новых устройств.

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

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

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

Стандарты: что сделано и делается

Организация ISO (прежде всего ее технический комитет ISO/TC 184 "Системы промышленной автоматизации и интеграция") предложила немало стандартов на функционирование промышленных роботов и их программное взаимодействие (в частности, серию ISO 10303). Стандарты детально определяют универсальную информационную модель, описывающую создаваемое машинами изделие, что упрощает автоматизацию обмена информацией о рабочих процессах между всеми участниками технологической цепочки и облегчает ввод новых производственных технологий. Но пока эти стандарты ориентированы на промышленные роботы, используемые стационарно. Тем не менее ISO и ей подобные структуры со временем наверняка охватят и сферу мобильных роботов, только этот процесс будет небыстрым.

Коснется он в первую очередь областей робототехники, имеющих достаточную общественную значимость. Возможно, это будут шагающие и лазающие роботы с повышенной проходимостью. Они обладают очень высоким промышленным потенциалом и могут быть использованы службами спасения, в космических исследованиях, при ремонте АЭС, заводских химических комплексов, шахт, трубопроводов и в ряде других задач, участие человека в которых опасно или невозможно. По этой причине Евросоюз сформировал сеть CLAWAR (Climbing and Walking Robots, www.clawar.com/home.htm), объединяющую проектировщиков и производителей подобных роботов. В ее рамках решаются вопросы модульного построения шагающих аппаратов и специальных датчиков для них, проводятся обучающие семинары и вырабатываются подходы к возможной стандартизации автономных аппаратов. Пока CLAWAR занимается объединением усилий и поиском взаимопонимания между производителями и пользователями таких систем.

По инициативе ряда немецких научных и промышленных организаций была создана европейская ассоциация развития открытой архитектуры управляющих систем OSACA (www.osaca.org), не привязанная к конкретному оборудованию. Ассоциация выдвинула ряд спецификаций, рекомендованных к применению участникам OSACA.

Одна из наиболее серьезных и объемных робототехнических наработок - пакет OMAC (Open Modular Architecture Controls, www.omac.org), описывающий открытые модульные архитектуры управляющего ПО для производственного оборудования и предлагающий набор спецификаций для интеллектуальных контроллеров. Развитие данного пакета происходит весьма активно, а поддерживают его такие солидные международные компании, как Microsoft, Boeing, Procter & Gamble и др.

Немаловажно, что OMAC совершенствуется в тесном взаимодействии с национальным американским институтом стандартов и технологий NIST в рамках большого проекта развития интеллектуальных машин Intelligent Machines and Systems Technology (www.isd.cme.nist.gov), в котором готовится открытая управляющая архитектура реального времени Real-Time Control Systems Library (www.isd.cme.nist.gov/projects/rcslib/index.html), ориентированная не только на роботов.

OMAC, в свою очередь, разделен на несколько подпроектов. Например, для задач автоматизации упаковочного оборудования предлагаются готовые низкоуровневые интерфейсы и драйверы PackConnect, ПО промежуточного слоя PackSoft и XML-приложение PackML, упрощающее стыковку различных систем.

Интеграционные тенденции

Интеграционные тенденции на рынке робототехники в ближайшие 3-5 лет будут характеризоваться следующими особенностями.

1. Крупные производители роботов, вспомогательного оборудования и ПО для них будут активно продвигать собственные решения в качестве стандартных. В этой связи можно ориентироваться на компании, особое внимание уделяющие маркетинговой деятельности*1: как показывает практика, рекламная составляющая бюджета в успешных высокотехнологичных компаниях достигает подчас 70-80%. А если одна из таких компаний выиграет крупный государственный заказ, то на ее платформу можно будет смело ориентироваться без особого риска потери инвестиций*2. Правда, не исключен и другой вариант - правительство, вложившее крупные суммы в робототехнику, не захочет, чтобы плодами разработок пользовались специалисты других стран. Подобное развитие событий тоже вполне вероятно. Так, компания Intel, при активном участии которой создавался комитет Robotics Engineering Task Force*3, ведет сейчас активные переговоры с вошедшим в него военным научным агентством DARPA на предмет передачи финансирования.

_____

*1 Анализу коммерческих решений будет посвящена отдельная статья.

*2 Как это уже, в сущности, происходит с фирмой iRobot, в которую вкладывает средства корпорация Acer.

*3 Robotics Engineering Task Force (RETF) призван подготовить стандарты на электронные системы управления и навигации и выработать спецификации ПО, обеспечивающие совместимость различного оборудования для небольших мобильных роботов ценой около 100 долл. на базе процессоров XScale.

Но это характерно для сегодняшней Америки, где госзаказ играет все большую роль, а вот в Японии наблюдается совсем другая ситуация. Группа ведущих производителей бытовой электроники, возглавляемая корпорациями Sony, Toshiba и NEC, намерена объединить собственные робототехнические достижения в рамках единой коммерческой архитектуры. В нее войдут:

- созданная в Sony системная библиотека низкого уровня OPEN-R SDK (на ее базе выпущена популярная собачка-робот Aibo);

- предложенная Toshiba открытая управляющая архитектура Open Robot Controller Architecture (ORCA), реализованная в виде ПО промежуточного слоя, объединившего, с одной стороны, драйверы датчиков и кинематического оборудования, средства связи, модули обработки изображений, речи и т. п., а с другой - ОС и процессоры. В результате одна и та же прикладная система (например, ответственная за распознавание речи) сможет без серьезной модификации исходного кода функционировать на разных аппаратных платформах, процессорах и ОС. Таким образом, на основе готовых компонентов удалось быстро спроектировать робот ApriAlpha. ORCA опирается на технологию распределенных объектов HORB, разработанную в Национальном японском институте науки и технологии AIST;

- созданная в NEC визуальная среда формирования интеллекта роботов RoboStudio*1, в которую входят оболочка быстрой разработки, компилятор, виртуальная машина, имитирующая действия различной аппаратуры, и библиотека, включающая модули распознавания и самообучения и базу знаний. RoboStudio независима от производителя оборудования.

_____

*1 Продукт выпускается только для японского рынка.    

RETF также планирует выработать объектную архитектуру управления, не привязанную к конкретному языку программирования и ОС и допускающую использование в качестве управляющего блока практически любого современного вычислительного устройства, будь то ПК или 4-разрядное цифровое оборудование.    

Спецификации будут полностью открыты для подключения программных и аппаратных компонентов других фирм. Правда, информация о результатах деятельности комитета на его сайте www.robo-etf.org весьма скудная.    

2. На мировом рынке сохранится несколько массовых и плохо совместимых друг с другом типовых платформ, причем не только коммерческих, но и общедоступных.

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

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

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

В таблице (см. таблицу) приведены общедоступные программные системы, распространяемые, как правило, в исходных текстах*1 и допускающие создание промышленных продуктов без отчислений авторам. Вполне возможно, что одна из них и станет робототехническим стандартом в своей области.

_____

*1 Все пакеты написаны на Си/С++.    

Общедоступное программное обеспечение для создания роботов

Название системы

Сайт

Платформа разработки

Описание

Интегрированные пакеты

 

Tekkotsu

www.tekkotsu.org

Windows, Unix

Объектная событийно-ориентированная платформа высокоуровневого программирования роботов, основанная на библиотеке OPEN-R и созданная в Университете Карнеги - Меллона для разработки алгоритмов искусственного интеллекта и автоматизации рутинных задач управления. Первоначально Tekkotsu ориентировалась на робота Aibo. Заложенные в нее концепции позволили адаптировать платформу к другим автономным устройствам. Tekkotsu включает, в частности, модули обработки изображений, управления ходьбой, организации беспроводной связи по TCP/IP-протоколу, а также мощные средства отладки

Darwin2K

2 darwin2k.sourceforge.net

Linux, IRIX, Solaris

Среда, объединяющая средства динамической симуляции и автоматического проектирования, синтеза моделей и оптимизации кинематики, позволяющая быстро создавать полноценные прототипы роботов с ориентацией на конкретное оборудование

ROSSUM

rossum.soureeforge.net

Java, Windows, Linux, Solaris

Набор открытого ПО от различных компаний, включающий интеграционную оболочку и среду двумерного моделирования. Позволяет создавать колесные роботы на базе независимой от языка программирования клиент-серверной архитектуры. Особое внимание авторы ROSSUM уделили возможности быстрой инсталляции пакета на аппаратную часть и скорейшему созданию действующего устройства. На основе ROSSUM проводятся, в частности, популярные соревнования роботов-пожарных Trinity College Fire-Fighting Home Robot Contest

FlowDesigner

flowdesigner.

sourceforge.net

Windows, Linux

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

MissionLab

www.cc.gatech.edu/ aimosaic/robot-lab/ research/MissionLab/

Linux

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

Управляющие пакеты

 

OROCOS Open Robot Control Software

www.orocos.org/

orocos.html

Linux 2.6, RTAI (rtai.org)

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

Motion Strategy Library

msl.cs.uiuc.edu/ msl/index.html

Linux

Библиотека Иллинойского университета, упрощающая создание систем управления движением роботов. В поставку входят несколько готовых алгоритмов: RRT (быстро исследуемые деревья вероятностей), PRM (вероятностные маршруты), FPD (динамическое прогнозирование). Разработчик с помощью графической оболочки может настраивать любой из семи уровней функционирования: от моделирования кинематики отдельных элементов устройства до программирования интеллектуального решателя проблем

Modular Controller Architecture

mca2.sourceforge.net/

Windows, Linux

Среда создания ПО для управления роботами и различным промышленным оборудованием

Microb

www.robotique.ireq.ca/ mierob/en/index.html

QNX, VxWorks, Windows NT/2000, Solaris, Linux, Irix, SunOS

Созданный Квебекским исследовательским институтом набор классов Си++, упрощающий разработку контроллеров для электромеханических систем

Player/Stage

soureeforge.net/

pro-jects/layerstage/

POSIX

Клиент-серверная сетевая архитектура управления роботами, предлагающая интерфейсы и модели популярного периферийного оборудования

VRML 2.0 Robot

wvjw.robotic.dlr.de/ STUDENTS/

artin. Rohrmeier/robot/ robothtml

Браузер

Система телеуправления роботами через Сеть. Функционирует с помощью браузера

DROS Dave’s Robotic Operating System

dros.org

Unix, Perl

Графическая оболочка для стыковки программно-аппаратных модулей мобильных роботов разных производителей, включающая немало готовых элементов

Средства программирования и численных расчетов

Octave

www.octave.org

Windows, Linux, Mac OS

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

Scilab

scilabsoft.inria.fr

Windows, Linux, Unix

Пакет для научных вычислений, включающий модули симуляции гибридных динамических систем и средства трехмерной визуализации и базирующийся на наработках Фортран-проекта Netlib (www.netlib.org)

Lisp Universal Shell (LUSH)

lush.sourceforge.net

Windows, Linux, Solaris, IRIX

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

Hybrid Systems Description Language (HYSDEL)

eontrol.ee.ethz.ch/ -hybrid/hysdel/

Windows, Linux, Solaris

Язык описания и моделирования линейных динамических систем на базе автоматной логики, правил и т. д. Создан в Цюрихском федеральном технологическом институте

Средства моделирования

 

MatPLC

mat.sourceforge.net

Linux

Графические средства создания и моделирования промышленных систем. Акцент сделан на удобном пользовательском интерфейсе - на сайте проекта можно познакомиться с примером использования MatPLC для управления механической рукой с тремя степенями свободы через Интернет

MjbWorld

Java, .NET

Программа моделирования трехмерных физических систем

Model Transformation Tools

Linux, Solaris

Набор инструментов моделирования динамических систем университета Глазго

DynaMechs

Linux, IRIX

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

Xm

Браузер с поддержкой JavaScript

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

SimRobot

Windows, Unix

Симулятор кинематики трехмерных роботов, разработанный в университете г. Бремена

Open Dynamics Engine (ODE)

Windows, Unix

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

Genetic Programming System

uni~dortmund.de/ people/sigel/seiten/ einleituno en html

Linux, Solaris

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

Robotics Toolbox tor MATLAB

MATLAB

Библиотека, предлагаемая австралийским Королевским центром передовых технологий (www.cat.csiro.au), расширяет возможности математического пакета MATLAB алгоритмами моделирования низкоуровневой кинематики и определения оптимальных траекторий отдельных элементов манипуляторов, включает средства моделирования, анализа и трехмерной визуализации результатов и позволяет экспериментировать с реальными роботами

Пакеты искусственного интеллекта

 

Machine Learning Library

www.intel.com/ research/mrl/pnl/

Windows, Linux

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

GiNaC

www.ginac.de

Linux

Написанная на C++ библиотека манипулирования символическими математическими выражениями. Поддерживает также ряд численных методов. Важная особенность GiNiaC в том, что другие пакеты схожего предназначения предлагают собственные высокоуровневые внутренние языки с ограниченным синтаксисом, а библиотека позволяет разработчику задействовать гибкость C++

Pyro Python

cs.brynmawr.edu/ BeyondLegos/ PyroModules/ Introduction/

Linux, Python

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

Machine Vision Toolbox

www.catcsiro.au/ cmst/staft/pic/ vision-tb.html

MATLAB

Пакет машинного зрения для MATLAB, отличающийся от стандартного пакета Mathwork Image Processing Toolbox большим числом функций

XML-стандарты

 

RotaoML

www.roboml.org

XML

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

Sensor Modeling Language (SensorML)

vast.nsstc.uah.edu/ SensorML/

XML

Ориентированное на задачи "раскопки" данных XML-приложение, определяющее структуру представления данных, получаемых от всевозможных датчиков. Позволяет учитывать различие в форматах информации, способах представления координат, определять точность измеряемых параметров и т. п. SensorML задает функциональную UML-модель произвольного датчика, не привязанную к конкретному оборудованию. Он поддержан консорциумом открытых геоинформационных систем OpenGIS

Spacecraft Markup Language (SML)

xml.coverpages.org/ spacecraftML.html

XML

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