Научная статья на тему 'Подход к разработке математического и программного обеспечения встраиваемых АСНИ и высокоскоростных камер'

Подход к разработке математического и программного обеспечения встраиваемых АСНИ и высокоскоростных камер Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
82
19
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ВСТРАИВАЕМОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ / АСНИ / СЕТЕВАЯ КАМЕРА / ОБРАБОТКА И ПЕРЕДАЧА ДАННЫХ / СКОРОСТНАЯ ВИДЕОСЪЕМКА / БОГАТЫЕ ПРИЛОЖЕНИЯ ИНТЕРНЕТА

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Амосов Владимир Владимирович, Фёдоров Станислав Алексеевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Амосов Владимир Владимирович, Фёдоров Станислав Алексеевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Disadvantages of existing approaches to developing mathematical support and software of embedded automated research systems and high speed cameras are discussed. New approach to developing embedded software for this kind of devices are suggested. New properties are showed that it gives. New class of rich devices, apparatuses and systems with these properties is assigned

Текст научной работы на тему «Подход к разработке математического и программного обеспечения встраиваемых АСНИ и высокоскоростных камер»

УДК 004.9:004.55

В.В. Амосов, С.А. Фёдоров

ПОДХОД К РАЗРАБОТКЕ МАТЕМАТИЧЕСКОГО И ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ВСТРАИВАЕМЫХ АСНИ И ВЫСОКОСКОРОСТНЫХ КАМЕР

Необходимость изучения быстропротекаю-щих явлений (физика плазмы, взрывы, вспышки, разрушения, баллистика) и новые оптические датчики требуют создания современной контрольно-измерительной аппаратуры на основе встраиваемых в них автоматизированных систем научных исследований (АСНИ). Наиболее сложные задачи возникают в исследованиях физики плазмы. Подобные исследования накладывают ряд ограничений общего характера:

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

работа в условиях сильных электромагнитных помех;

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

Анализ используемых современных подходов по сопряжению камеры с компьютером и разработке встроенного математического и программного обеспечения показал, что часть из них применяют отдельные платы захвата для установки в компьютер (FastVideo, СЕДАТЭК, Cameralab, IDS), что накладывает ряд ограничений:

малая длина кабеля до компьютера (обычно 3-5 м) приводит к необходимости использования дополнительной вычислительной машины, прежде чем передать данные большому числу пользователей на удаленные безопасные центры наблюдения;

низкая скорость передачи данных для управления камерой (до 57 600 бод) из-за того, что высокоскоростные интерфейсы связи с платой ориентированы на высокоскоростную передачу в одну сторону (например, Camera Link). Существуют также повторители (repeaters), которые могут увеличивать максимальную длину кабеля. Однако для работы на максимально высоких частотах такие длины кабелей совершенно не подходят и

повторители не используются. Для конфигурации Full CameraLink рекомендуется пара кабелей длиной от 1,5 до 3 м, причем эти кабели обязательно должны быть одинаковыми;

соединение камеры с компьютером требует установки дорогостоящих специализированных плат захвата стоимостью около 100 000 руб. и может привести к несовместимости с используемыми диагностическими компьютерными комплексами из-за отсутствия в них интерфейса для платы (ISA, PCI, PCI Express);

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

из-за наличия платы и установки для нее драйверов появляется зависимость от них и от определенного семейства ОС - Windows.

Подходы производителей, использующие технологию Ethernet (FastVideo, СЕДАТЭК, Видеоскан, БИФО, visionresearch, Photron, Fastec Imaging Corporation, Basler AG, AOS Technologies, Kbinova, Lambert Instruments, IMPEREX, Olympus), обладают следующими недостатками.

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

• Нет поддержки многоядерных и многопроцессорных архитектур, используемых в выпускаемых процессорах.

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

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

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

Говоря более подробно, такой подход достигается следующими решениями.

• Разработка встраиваемого программного обеспечения как богатого приложения Интернета (Rich Internet Application [1]), а не настольного приложения (как в существующих подходах). Богатые приложения Интернета обладают такой

же переносимостью, как и классические приложения Интернета, и такими же возможностями, как и настольные приложения (поддержка неявной многопоточности, полный доступ к системе с правами пользователя). Среди наиболее популярных технологий разработки богатых приложений Интернета можно отметить Microsoft Silverlight, Sun JavaFX, Adobe AIR, Curl, Qt, Webkitgtk+. Предлагается использовать движок визуализации (layout engine) Webkitgtk+ для отображения страниц Интернета и среду выполнения GTK+ для обеспечения межплатформенности.

• Распараллеливание приложения с помощью технологии неявной многопоточности (OpenMP, Co-array Fortran) для эффективного использования современных многоядерных процессоров.

Это позволяет избавиться от недостатков имеющихся подходов и получить ряд дополнительных качеств. Такой принцип разработки раскрывает свои преимущества по сравнению с существующими обычными сетевыми устройствами.

Применение технологий физического уровня -IEEE 802.3 (Ethernet), IEEE 802.11 (WiFi), IEEE 802.16 (WiMax) дает следующее (табл. 1):

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

Таблица 1

Новые качества благодаря применению технологий Ethernet, WiFi, WiMax

Характеристика Подходы с платами захвата Подходы с технологией Ethernet Предлагаемый подход Новые качества

Интерфейс к ПК CameraLink IEEE 802.3 (Ethernet) ШЕЕ 802.3 (Ethernet), IEEE 802.11 (WiFi), IEEE 802.16 (WiMax), любые, поддерживающие ТСРЛР Распространенность -сопряжение с существующими комплексами

Расстояние до ПК 3-5 м Любое Любое + воздух Отсутствие проводов и удаленное обслуживание

Аппаратура в ПК Плата захвата Сетевая плата Сетевая плата или модуль Ethernet, WiFi, WiMax Отсутствие затрат сопряжение с существующими комплексами

Таблица 2

Новые качества благодаря применению протокола TCP/IP

Характеристика Подходы с платами захвата Подходы с технологией Ethernet Предлагаемый подход Новые качества

Интерфейс к ПК СатегаЫпк IEEE 802.3 (Ethernet) ШЕЕ 802.3 (Ethernet), IEEE 802.11 (WiFi), IEEE 802.16 (WiMax), любые, поддерживающие ТСРЛР Распространенность -сопряжение с современными сетевыми технологиями

Начало работы Установка драйверов и ПО Установка ПО, иногда драйверов Автонастройка, любой обозреватель Простота эксплуатации - одно из требований АСНИ

Число камер к ПК Сколько плат Сколько плат Любое Исследование с нескольких ракурсов, стереозрение

Доступность Через ПК Через ПК Любая сеть Возможность коллективного обслуживания

Надежность ЭМ-помехи Не во всех протоколах Подтверждение доставки данных Гарантированная доставка данных

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

• Применение технологий беспроводной связи IEEE 802.11 (WiFi) и IEEE 802.16 (WiMax) позволит при необходимости обходиться без проводов.

• Возможность удаленного обслуживания. Компьютер может находиться в удаленном помещении на любом расстоянии благодаря технологиям Ethernet.

• Отсутствие необходимости устанавливать в компьютер дорогостоящие платы обработки первичных данных (захвата изображения). Это также дает возможность сопряжения с существующими комплексами.

Применение протокола TCP/IP дает следующее (табл. 2):

• Простота эксплуатации - это основное требование к автоматизированным системам научных исследований (АСНИ). Для подключения достаточно вставить разъём Ethernet. Сетевая настройка проводится автоматически (DHCP, DNS).

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

• Возможность коллективного обслуживания. Масштабирование - доступность камеры для целой локальной или глобальной сети благодаря технологиям TCP/IP.

• Использование любых сетевых технологий Интернета, включая беспроводные.

• Гарантированнаядоставкакомандиданных-важно для работы камеры в составе сложных диагностических комплексов в условиях электромагнитных помех. За счет подтверждений о доставке уменьшается скорость, но обеспечивается гарантия доставки данных.

Применение современных технологий разработки богатых приложений Интернета (Rich Internet Application) дает следующее(табл. 3):

• Переносимость — сопряжение камеры с любой (!) программной и аппаратной платформой компьютера.

• Отсутствие необходимости устанавливать дополнительное программное обеспечение (ПО)

Таблица 3

Новые качества благодаря применению технологий разработки богатых приложений Интернета

Характеристика Подходы с платами захвата Подходы с технологией Ethernet Предлагаемый подход Новые качества

ОС на ПК Windows Windows Windows, GNU/Linux, Mac OS Любая ОС -сопряжение с существующими комплексами

Начало работы Установка драйверов и ПО Установка ПО, иногда драйверов Автонастройка, любой обозреватель Простота эксплуатации -одно из требований АСНИ

Масштабируемость ПО Обновление на каждом ПК Обновление на каждом ПК Все ПО находится в камере Легкость и скорость обновлений

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

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

• Легкость и скорость обновлений и масштабирования - все ПО находится в самой камере -не требуется ничего обновлять на компьютерах, которые уже подключались к камере до обновления ПО.

Применение технологии параллельного программирования дает:

• Эффективное использование многоядерных архитектур компьютера, что позволяет повысить быстродействие АСНИ, ведь такие системы предназначены для быстрого получения и анализа данных и быстрого принятия решений;

• Эффективную интеграцию с существующими диагностическими компьютерными комплексами.

Уже разработано встраиваемое программное

Пространство пользователя

DHCP UPnP DNS Web-приложение

HTTPS RAW pppoecd Grabber

Пространств о ядра

РРРоЕ/РРР

Ядро Linux

Драйверы устройств

Архитектура ПО на уровне пространства пользователя и пространства ядра

обеспечение на основе GNU/Linux [2], обеспечивающее работу камер как сетевых устройств, на котором оценены преимущества использования технологий Fast Ethernet, TCP/IP.

Архитектура встроенного ПО основана на ядре Linux и нескольких процессах (приложениях), выполняющих различные задачи. Каждый процесс запрашивает для своей работы различные ресурсы - кванты процессорного времени, память, сетевое подключение. Ядро Linux обрабатывает их запросы [3]. Таким образом, компоненты встроенного ПО можно поделить на пространство пользователя и пространство ядра в соответствии с блок-схемой на рисунке.

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

В драйвере устройства реализуется обработка первичной информации и поддержка передачи данных по сети. Именно за счет того, что драйвер пишется один раз для встроенной операционной системы [4, 5], достигается межплатформен-ность - не нужно писать драйвер для каждой операционной системы клиента, на клиенте выполняется (интерпретируется) богатое приложение Интернета с функциональностью не меньшей, чем у настольных приложений (в противовес обычным приложениям Интернета).

Стоит отметить другие важные вопросы разработки математического и программного обеспечения встраиваемых АСНИ и высокоскоростных камер:

математическое обеспечение по управлению сенсором;

межплатформенное программное обеспечение по визуализации и обработке данных (для получения независимости от ОС);

исследование и применение технологий параллельного программирования для поддержки многоядерности;

программное обеспечение по системному анализу и обработке информации: определение границ процесса, получение параметров объекта и др.;

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

Первое применение данного подхода планируется провести для высокоскоростной сетевой камеры 1РС^1, устанавливаемой на сферический токамак Глобус-М в Физико-техническом институте имени А.Ф. Иоффе РАН. Дальнейшее применение - разработка подобных высокоскоростных сетевых камер для других учреждений, организаций и предприятий, занимающихся исследованием и изучением быстропротекающих процессов.

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

В основе предложенного подхода лежат технологии разработки богатых приложений Интернета и параллельное программирование. Подход позволит создавать принципиально новые сетевые устройства - богатые устройства и приборы, в основе которых будут встраиваемые богатые АСНИ. Такие богатые устройства, приборы и системы не будут требовать установки дополнительного аппаратного и программного обеспечения (для начала работы), не будут зависеть от аппаратной или программной платформы компьютера, являясь межплатформенными, и позволят эффективно использовать многоядерные архитектуры процессоров и многопроцессорные компьютеры.

СПИСОК ЛИТЕРАТУРЫ

1. Allair, Jeremy Macromedia Flash MX—A 2. Лав, Р. Разработка ядра Linux [Текст]/Р. Лав.

next-generation rich client [Электронный ресурс].- -СПб.: Вильямс, 2006.—448 с. Macromedia White Paper, 2002.—14 с.

3. He3ara, M.,3,. .Sgpo Linux [TeKcrj/M.^. Me3a-th. -Cn6.: EXB-neiepSypr, 2007.-1104 c.

4. Salzman, P.J. The Linux Kernel Module Programming Guide [TeKCTj/P.J. Salzman, M. Burian,

O. Pomerantz//2007-05-18 ver 2.6.4. 82 c.

5. Corbet, J. Linux Device Drivers [TeKCTj/J. Corbet, A. Rubini, G. Kroah-Hartman.-O'Reilly, 2005.-636 c.

i Надоели баннеры? Вы всегда можете отключить рекламу.