LabVIEW – это мощный, полнофункциональный язык программи­рования, работающий на платформах: PC под управлением Microsoft Windows, компьютеров Apple Macintosh, рабочих станций Sun SPARCstations, Concurrent PowerMax и HP-UX. LabVIEW отступает от последовательной природы традиционных языков программирования и отличается графической программной средой и инструментарием, необ­ходимым для сбора данных, анализа и представления результатов. С по­мощью базиса LabVIEW – графического языка программирования, име­нуемого "G," можно создавать программы в виде блок-диаграмм, кото­рые позволяют более адекватно воспринимать "текст" программы, облег­чают ее отладку, модернизацию, поиск и корректировку ошибок. После написания программы в виде блок-диаграммы LabVIEW преобразует ее в машинный код.

LabVIEW объединяет сбор, анализ и представление информации в один комплекс ("сквозная" технология программирования). Для получе­ния данных и управления приборами LabVIEW поддерживает протоколы RS-232/422, IEEE 488 (GPIB) и VXI, включая функции Virtual Instrument Software Architecture (VISA), а также встраиваемые платы сбора данных. В состав пакета входит инструментальная библиотека с драйверами для сотен приборов, что значительно упрощает приложения управления при­борами. Обширная библиотека для анализа данных содержит функции: генерации сигналов, их обработки, фильтрации, статистической оценки, линейной алгебры и операций с массивами. Пакет LabVIEW является графическим по своей природе и обеспечивает такие средства визуализа­ции, как создание таблиц, приборных индикаторов, двухмерных графи­ков и трехмерных изображений.

Для уменьшения загрузки канала связи при взаимодействии опера­тора с роботом предлагается уменьшить объем передаваемых управляю­щих воздействий за счет использования CGI-интерфейса. Алгоритм рабо­ты системы с использованием интерфейса CGI включает следующие ос­новные этапы:

1.  Клиент устанавливает соединение с web-сервером через стандарт­ный браузер (например, Microsoft Internet Explorer).

2.  Браузер клиента передает серверу HTTP-запрос.

3.  Web-сервер анализирует запрос по расширению и выясняет, что это запрос не статической страницы, а запрос к CGI-скрипту.

4.  При обнаружении указанного в запросе CGI-приложения и нали­чии прав на запуск web-сервер запускает приложение.

5.   CGI-скрипт выполняет необходимые действия и в результате взаимодействия с приложением формирует ответные данные, выводит их в стандартный поток ввода-вывода. Web-сервер передает эти данные клиенту. Причем CGI-скрипт может передавать не только НТМ-данные, но и бинарные данные, таким образом полностью формируется HTTP-ответ.

6.   Web-сервер разрывает соединение, завершая тем самым обмен.

На основе анализа эффективности различных языков программиро­вания при разработке CGI-приложений в качестве основной среды разра­ботки был выбран язык графического программирования LabVIEW™ (Laboratory Virtual Instrument Engineering Workbench – рабочее место проектирования лабораторных виртуальных приборов).

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

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

Предлагаемая методика взаимодействия оператора с роботом по­средством сети Интернет предусматривает:

1)  унификацию команд верхнего уровня управления (команд опера­тора);

2)  максимально возможное упрощение ввода управляющих воздей­ствий оператором;

3)  реализацию управления в виде команд, задающих относительное или абсолютное приращение к текущему значению параметра;

4)  отображение параметров системы на мониторе оператора с обяза­тельным подтверждением принятия команд к исполнению и наличием индикаторов опасных ситуаций.

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

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

Бортовая система управления уровня должна обладать высокой сте­пенью интеллектуальности на тактическом уровне. В ее задачи входит:

•  формирование команд для исполнительных приводов робота;

•  корректировка команд с учетом текущих параметров интернет-соединения и прогноза возникновения критических ситуаций;

•  автоматическая остановка движения и переход в режим ожида­ния при потере управляющих воздействий от оператора.

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

Обобщенная схема системы управления мобильным роботом по глобальной сети представлена на рис. 6.2.

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

Рассмотрим более подробно две основные части системы: мобиль­ный робот с бортовой системой управления и web-интерфейс.

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

•  самонастройку системы на параметры Интернет-соединения (средняя скорость передачи данных, вероятность потери данных и т.д.);

•  прогноз возникновения критических ситуаций, на которые опе­ратор не сможет адекватно отреагировать из-за временных ограничений на передачу управляющих воздействий;

•  автоматическое отключение или переход в режим ожидания при потере управляющих воздействий от оператора.

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

Некоторые данные, позволяющие составить представление о про­блемах, возникающих при передаче данных по Интернету на различные расстояния, представлены в табл. 6.1.

Робототехническая система с управлением по глобальной сети должна удовлетворять ряду основных практических требований:

• робот не должен быть поврежден или приведен в неисправное состояние в результате вариаций временной задержки, возникающей при передаче данных по Интернету;

•  влияние изменения загруженности сети на работу оператора и качество его взаимодействия с роботом должно быть сведено к мини­муму;

•  для эффективного использования робота при инспекции объек­тов частота обновления передаваемого изображения с телевизионной камеры, установленной на роботе, должна быть максимально возможной;

•  для улучшения взаимодействия оператора с роботом web-сервер должен обеспечивать "дружелюбный" человекомашинный интерфейс.

Представив Интернет как "черный ящик", характеристики модели которого неизвестны, с помощью программных средств был проведен эксперимент по измерению в течение длительного времени передачи тестовых пакетов данных к удаленному серверу управляемого робота и об­ратно в отдельно взятом сегменте сети Интернет. С помощью модифици­рованной ping-процедуры, посылающей ICMP-пакеты (Internet Control Message Protocol) по 32 байта с частотой 100 Гц и записывающей время передачи в log-файл, был построен график, показывающий вариации вре­менной задержки в течение двух недель (рис. 6.1).

Используя полученные в результате эксперимента данные, по мето­дике предложенной в [81], определена пропускная способность сети и верхний предел полосы передаваемого сигнала. Повышение частоты сиг­нала увеличивает производительность системы, однако при этом из-за высокой загруженности сети возрастают временные задержки и повыша­ется вероятность потери пакетов данных.

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

При использовании глобальной сети как канала связи следует учи­тывать следующие важные факторы:

-  ограничения по пропускной способности сети: приложение может потребовать передачи таких объемов данных и с такой скоростью, кото­рые невозможно обеспечить с помощью Интернета;

-  временные задержки, верхняя граница которых непредсказуема и зависит от качества удаленного соединения;

-  флуктуация времени задержки в широких пределах, связанной с изменением загрузки сети во времени;

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

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

Перспективные области применения Интернет-робототехники:

-  дистанционное управление в условиях агрессивной окружающей среды (мобильные роботы);

-  астрономия (создание роботизированных автономных телескопов);

-  дистанционное образование (создание виртуальных лабораторий удаленного доступа);

- удаленное управление роботизированными ячейками и системами; – индустрия развлечений (виртуальные визиты в музеи, соревнова-о управлению Интернет-роботом и т.п.).

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

При использовании Интернета для целей дистанционного управле­ния возникает целый ряд научно-технических проблем. Они связаны с оптимизацией взаимодействия web-сервера и системы управления робо­том, необходимостью передачи больших объемов данных, нестабильно­стью удаленного соединения с оператором.