Распределенного интеллекта для решения задач управления, измерений и проектирования
Что первое приходит Вам на ум, когда Вы слышите о распреде-ленной системе?Многопроцессорная система,параллельно обрабаты-вающая несколько задач? Или электронная платежная система для работы с заказами со всего мира ? Сеть беспроводных датчиков, от-слеживающих состояние «умного дома»? Все эти примеры объединя-ет общая идея – распределение ресурсов системы для решения по-ставленной задачи. Благодаря повышению производительности со-временных микроэлектронных устройств при одновременном сниже-нии их стоимости, инженеры и ученые нашли эффективные решения сложнейших задач путем добавления процессоров и «интеллектуаль-ных» микропроцессорных компонентов в свои системы. И, как след-ствие, современные контрольно-измерительные устройства и систе-мы все больше становятся распределенными.
Тем не менее, разработка измерительных и управляющих си-стем, включающих несколько вычислительных узлов, не так проста, как может показаться на первый взгляд. При программировании рас-пределенных систем специалисты столкнулись с целым классом но-вых проблем, к решению которых существующие средства разработ-ки оказались не вполне пригодны. National Instruments LabVIEW 8 представляет новую технологию «распределенного интеллекта», ори-ентированную именно на этот класс задач, и включающую в себя следующие средства:
- Возможность программирования нескольких целевых плат-форм, таких как персональные, промышленные, портативные и встраиваемые компьютеры;
- LabVIEW Project – новая интерактивная среда управления рас-пределенными системами из единой программной оболочки;
- LabVIEW Shared Variable – новый коммуникационный интер-фейс, позволяющий упростить обмен данными между различными устройствами и программами, входящими в распределенную систему; - Средства синхронизации и тактирования как устройств, вхо-дящих в распределенную систему, так и нескольких распределенных
систем.
Распределенные системы проектирования,
Управления и измерений
Создание распределенных систем требует новых, оригинальных подходов к программированию. Например, беспроводные датчики (wireless sensors) образуют самоорганизующуюся сеть, узлы которой самостоятельно устанавливают связь друг с другом. Очевидно, что специалисты, работающие с такой технологией, столкнутся с совер-шенно новыми проблемами в области программного обеспечения. И хотя некоторые проблемы возникают только при реализации кон-кретных систем, многие инженеры и ученые уже сейчас начинают испытывать схожие трудности при программировании распределен-ных систем. В качестве примеров можно привести системы испыта-ния автомобильной электроники, смартфоны, комплексы техническо-го зрения и промышленного мониторинга, а также комплексы син-хронизированных автоматизированных тестовых станций.
Проблемы разработки распределенных систем
Вы встретите распределенные системы в самых различных от-раслях промышленности, на различных фазах жизненного цикла из-делий, тем не менее, всем приложениям, использующим такого рода системы присущи схожие сложности:
· Программирование приложений, использующих многопро-цессорную архитектуру, в том числе и смешанную – с микропроцес-сорами, ПЛИС и цифровыми сигнальными процессорами;
· Эффективный обмен данными между несколькими процес-сорами, расположенными как непосредственно на одной печатной плате, так и внутри единого инструментального шасси или объеди-ненными через сеть;
· Объединение всех узлов в завершенную систему, с реше-нием задач тактирования и синхронизации составляющих ее узлов;
· Интеграция в единой системе различных типов ввода-вывода, таких как высокоскоростной аналоговый или цифровой, а также техническое зрение и управление движением;
· Добавление иных сервисных функций по обмену данными между узлами, включая протоколирование, выдачу сигналов тревог и взаимодействие с информационными системами корпоративного уровня.
Использование новых возможностей NI LabVIEW 8 позволяет разрешить большинство из вышеперечисленных проблем.
Программирование распределенных систем