Разработка коммуникационной сети датчиков в среде LabVIEW
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
В»ежат программируемые логические блоки, блоки ввода-вывода и программируемые внутренние связи. Именно за счёт программируемых внутренних связей FPGA предоставляет возможность запрограммировать практически любую архитектуру. Любое приложение выполняемое на ПЛИС в конечном счёте представляет из себя аппаратную архитектуру в виде множества соединений логических блоков. Гибкость работы микросхем данного типа сравнима разве только с микроконтроллерами, но в отличие от них ПЛИС позволяет программировать непосредственно аппаратную составляющую устройства, что значительно повышает скорость вычислений. Однако ПЛИС не позволяет динамически изменять код исполняемой программы, т.к. она сохраняется в ПЛИС в виде аппаратной архитектуры. Поэтому, для того, чтобы изменить исполняемый микросхемой FPGA код, необходимо произвести цикл перезаписи микросхемы. Из чего следует, что ПЛИС менее гибок, чем микроконтроллер, который позволяет изменять исполняемый код во времени выполнения программы.
Достоинства ПЛИС:
низкая стоимость;
высокая скорость обработки;
возможность параллельной обработки неограниченного числа задач.
Недостатки ПЛИС:
сложность разработки приложений по сравнению с микроконтроллерами;
меньшая гибкость обработки данных.
Основные сферы использования ПЛИС:
обработка данных в режиме реального времени;
реализация узкоспециальных алгоритмов;
высокопроизводительное решение сложных математических задач;
построение высокоскоростных систем ввода / вывода данных.
протокол коммуникационный датчик безопасность
3.2Среда разработки NI LabVIEW
NI LabVIEW - среда графического программирования, разработанная компанией National Instruments. В качестве языка программирования среда разработки использует язык G - язык потокового графического программирования, разработанный в 1986 году.
Последовательность выполнения операций с данными в языке G определяется не порядком их следования, а наличием данных на входах этих узлов. Операторы, не связанные потоком данных, выполняются параллельно в произвольном порядке. Узлы диаграммы представляют собой простые инструкции или их наборы - функции. Выполнение инструкций узла происходит только после того, как на всех входных терминалах узла появляются данные. После выполнения инструкций его результат передается через выходные терминалы узла на входы следующих узлов. Несмотря на то, что язык G позволяет задавать тип данных в явном виде, одно из существенных отличий этого языка от других - это наличие проводников, выполняющих функции переменных. Вместо того, чтобы передавать переменные между функциями, передача данных определяется соединениями проводников. С другой стороны, в языке G присутствуют и стандартные для других языков конструкции, такие как условные циклы, циклы со счетчиком, структуры выбора, функции обратного вызова и логические функции.
Среда разработки LabVIEW тесно интегрирована с другими популярными средами разработки и языками программирования, к примеру Visual Studio и С# от Microsoft. Кроме этого в связи с близостью потокового программирования и принципа организации вычислений в микросхемах ПЛИС LabVIEW содержит в себе компилятор для записи программ написанных на языке G непосредственно в ПЛИС.
Преимущества среды NI LabVIEW по сравнению с классическими средами разработки ПО:
наличие обширной библиотеки стандартных функций;
встроенная поддержка параллельных вычислений;
тесная интеграция с научным оборудованием, позволяющая работать с любым оборудованием как с обычной периферией компьютера;
встроенная поддержка операционных систем реального времени;
встроенный компилятор для программирования ПЛИС, позволяющий программировать ПЛИС без использования низкоуровневых языков;
интеграция с другими средами и языками разработки (C# (.NET), C++, MatLab).
4.Реализация
4.1Разработка модели
Разрабатываемая модель коммуникационной сети датчиков пожарной безопасности включает в себя следующие группы модулей:
модули, моделирующие работу аналоговых компонентов приёмопередатчиков;
модули, моделирующие работу цифровых компонентов приёмопередатчиков;
служебные модули, обеспечивающие работу модели (модуль режима виртуальной памяти, модули обслуживающие пользовательский интерфейс модели).
Общая структура модели представлена на рисунке 23.
Рассмотрим подробнее модули, входящие в модель.
Модуль Main является основным модулем системы, контролирующим работу остальных модулей. Главное предназначение данного узла это предоставление удобного пользовательского интерфейса для работы с моделью (рисунок 24). Именно с помощью данной части отображаются результаты работы составляющих модели моделирующих работу аналоговых и цифровых компонентов приёмопередатчиков линии коммуникационной сети.
Рисунок 23 - Общая структура модели
Рисунок 24 - Лицевая панель модуля Main
Непосредственное моделирование аналоговых компонентов приёмопередатчиков осуществляется с помощью отдельной группы Analog devices, моделирующих работу:
генератора сигнала (модуль source);
оптрона (модуль optocoupler);
дифференциальной цепи (differentiating_circuit);
выпрямляющего моста (rectifier);
генератора разрешающих импульсов (generator_allowing_pulse);
генератора линейно изменяющегося напряжения (generator_linearly_varying_voltage);
компаратора (comparator);
генератора счётных имп