Создание автоматизированных систем научных исследований на основе АСНИ LabVIEW

Автор Михаил, Суббота, марта 23, 2019, 01:16:52

« предыдущая тема - следующая тема »
Вниз

Михаил

Суббота, марта 23, 2019, 01:16:52 Последнее редактирование: Суббота, марта 30, 2019, 02:59:49 от Михаил
Исполнитель: Потемкин М.С., 641-об
Научный руководитель: Штыкин М.Д.
Создание автоматизированных систем научных исследований на основе АСНИ LabVIEW

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

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

LabVIEW или Laboratory Virtual Instrument Engineering Workbench (Среда разработки лабораторных виртуальных приборов) представляет собой среду графического программирования, которая широко используется в промышленности, образовании и научно-исследовательских лабораториях в качестве стандартного инструмента для сбора данных и управления приборами. LabVIEW - мощная и гибкая программная среда, применяемая для проведения измерений и анализа полученных данных.

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

В LabVIEW разрабатываемые программные модули называются «Virtual Instruments» (Виртуальные Инструменты) или по-простому VI. VIs - это кирпичики, из которых состоит LabVIEW - программа. Любая LabVIEW программа содержит как минимум один VI. В терминах языка Си можно достаточно смело провести аналогию с функцией с той лишь разницей, что в LabVIEW одна функция содержится в одном файле (можно также создавать библиотеки инструментов). Само собой разумеется, один VI может быть вызван из другого VI. В принципе каждый VI состоит из двух частей -- Блок-Диаграмма (Block Diagram) и Передняя Панель (Front Panel). Блок-диаграмма -- это программный код (точнее визуальное графическое представление кода), а Передняя панель -- это интерфейс. Вот как выглядит классический пример Hello,World!:

Рисунок 1 - Реализация программы по выводу "Hello, World!"


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

Рисунок 2 - Интерфейс LabVIEW


Концепция LabVIEW сильно отличается от последовательной природы традиционных языков программирования, предоставляя разработчику легкую в использовании графическую оболочку, которая включает в себя весь набор инструментов, необходимых для сбора данных, их анализа и представления полученных результатов. С помощью графического языка программирования LabVIEW, именуемого G (Джей), можно программировать задачу из графической блок-диаграммы, которая компилирует алгоритм в машинный код. Являясь превосходной программной средой для бесчисленных применений в области науки и техники, LabVIEW помогает решать задачи различного типа, затрачивая значительно меньше времени и усилий по сравнению с написанием традиционного программного кода.

Начиная с восьмой версии в LabVIEW была добавлена поддержка классов -- язык стал объектно-ориентированным. Реализованную поддержку нельзя назвать полной, однако основные черты объектно-ориентированных языков -- наследование и полиморфизм присутствуют. Также функциональность языка можно расширить дополнительными модулями, например NI Vision Toolkit - для обработки изображений и машинного зрения и другие. А при помощи модуля Applcation Builder можно сгенерировать исполняемый exe-файл. С помощью Internet Toolkit можно работать с ftp серверами, c помощью Database Connectivity Toolkit -- с базами данных и т.д.

Часто можно услышать мнение, что графический код плохо читаем. Действительно, с непривычки обилие иконок и проводников несколько шокирует. Однако опытный LabVIEW-разработчик никогда не создаст диаграмм, превышающих размер экрана, даже если программа состоит из сотен модулей. Хорошо разработанная программа фактически «самодокументируется», поскольку в основе уже лежит графическое представление.

Рисунок 3 - Блок диаграммы


LabVIEW -- это компилятор. Также LabVIEW-код может быть скомпилирован в полноценный исполнямый файл, который может быть запущен на компьютере без установленной LabVIEW (правда он требует LabVIEW Run-Time). Также можно собрать установочный пакет-инсталлятор, сторонних утилит типа InstallShield при этом не требуется.

На основе LabVIEW и модульных приборов, разработанных компанией National Instruments, в настоящее время, разработано множество различных систем, таких как:
• система сбора и обработки сигналов с датчиков;
• проектирование электронных схем;
• системы управления и механотроника;
• цифровая обработка сигналов;
• радиотехника и система связи;
• диагностика машин и механизмов;
• автоматизированный стенд магнито-люминесцентного контроля железнолорожных колес;
• измерительно-испытательный комплекс для проведения тестового испытания газотурбинных двигателей;
• мобильный испытательный комплекс для наладки испытаний электровозов и д.р..

Разработка виртуального подприбора «Управление асинхронным двигателем с короткозамкнутым ротором»


Процесс создания начинаем с:
Определения функциональных действий подприбора, а именно: управление ревесивным ходом асинхронного двигателя осуществляется при помощи двух выключетелей, управление выключателями будет осуществляться с помощью воздействия сигнала 24 В на катушку, имеющую выводы 1-2 к терминальному шлейфу, терминальный шлейф подключен к терминалу, который соединён с блоком усиления цифровых сигналов. Так же выключатель конструктивно реализует блокировку от одновременного включения движения «вперёд» и «назад», для реализации блокировки используются выводы 7-8 к терминальному шлейфу.  Следовательно, необходимо задействовать два дискретных выхода 5 В, которые соединены шлейфом с блоком усиления цифровых сигналов, и на выходе дают сигнал в 24В.

Для управления аналоговыми и дискретными сигналами необходимо в приложение Measurement & Automation Explorer создать соотвествующие каналы.


Рисунок 4 - Лицевая панель подприбора


Функции для получения и формирования аналоговых сигналов располагаются в палитре Functions - Data Acquisition. Перечислим основные из них (рисунок 5 ):


Рисунок 5 - Функции сбора данных


Для всех функций входными параметрами являются:

  •  Device (устройство) - номер устройства присвоенный плате;
  • Channel (канал) - определяет физический канал на DAQ устройстве;
  • Number of samples - количество выборок на канал;
  • Sample rate - частота, с которой производиться считывание;
  • High, Low limit - верхнее и нижнее ограничение по уровню сигнала.

Из подменю Data Acquisition палитры Functions выбираем 3 элемента AI Acquire Waveform, так как нам необходимо непрерывное считывание по одному каналу и записать данные в виде одномерного массива чисел.


Рисунок 6 - Элемент Basic Averaged DC-RMS (Базовое среднее DC-RMS)


Функция рассчитывает действующее значение напряжения (DC value), среднеквадратичное значение (RMS value), также добавляем индикатор «Действующее значение», для вывода на лицевую панель числа, а также различные математические операции.

Разработка прибора в программе LabView
Объектом управления является асинхронный двигатель с короткозамкнутым ротором, исследуемыми величинами: ток, напряжение и частота вращения. Управление движением и частотой вращения асинхронного двигателя осуществляется при помощи преобразователя частоты. Преобразователь частоты имеет возможность работы в ручном и автоматическом режимах. В ручном режиме выбор направления вращения осуществляется нажатием на кнопки «вперед» и «назад» на блоке преобразователя частоты, изменение частоты питающей сети осуществляется при помощи вращения регулятора. В автоматическом режиме пуск, выбор направления вращения и остановка осуществляются по средством дискретных сигналов, изменение частоты осуществляется аналоговым сигналом 0-10В, что соответствует изменению частоты с 0-100Гц.


Рисунок 7 - Лицевая панель виртуального прибора



Рисунок 8 - Функциональная панель




ran

Спасибо за доклад.
Вопросы такие:
1) По сравнению с Simulink какие, на Ваш взгляд, преимущества и недостатки имеет LabView в плане моделирования систем?
2) При изучении каких дисциплин используется и может использоваться LabView?

Михаил

1)На мой взгляд преимуществом LabVIEW перед Simulink состоит в том, что в LabVIEW можно создавать визуальные объекты, на которых будет отображение входных и выходных значений. Что тем временем нельзя сказать о Simulink, т.к. при создание громоздких схем тяжело отследить параметры.
Недостатками являются невозможность регулирования точности измерений. В Simulink реализовано несколько инструментов позволяющие увеличить скорость и точность моделирования. Например алгоритмы численного интегрирования, которые вычисляют динамику системы во времени, с фиксированным и изменяемым шагом интегрирования.
2) LabVIEW может использоваться при изучении дисциплин связанные с моделированием процессов.

Михаил

В статье был добавлен раздел Разработка виртуального подприбора «Управление асинхронного двигателя с короткозамкнутым ротором в автоматическом режиме»

mds

Требуется обсуждение для оценки разработки  этого.

ran

Т.е., наверное, "Автоматическое управление асинхронным двигателем с короткозамкнутым ротором".
Какие функции управления реализуются автоматически?

Михаил

Функции реализующиеся в автоматическом режиме описаны в разделе "Разработка виртуального подприбора «Управление асинхронным двигателем с короткозамкнутым ротором в автоматическом режиме»"

ran

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

mds

"Начни  говорить  и  я  увижу  тебя  (Сократ)".   Постоянное  присутствие  в ЧМС

оператора  в контуре  управления свидетельствует об отсутствии  какого либо

автоматического  управления.  Значит название  параграфа  нужно  изменить.

Спасибо.

ran

Нет, нужно просто автоматическое заменить на автоматизированное.

mds


knoppix

1. Интерфейс пользователя наводит ужас, а ведь судя по рисунку 2 LabView позволяет сделать красиво (ну или хотя бы аккуратно).
2. Графические диаграммы позволяют какие-либо варианты комментирования?
Амурский Государственный Университет  - 2010 - Специалист
Harbin Institute of Technology - 2016 - M.Sc.Eng
Главный инженер-программист АСУ ТП

Михаил

1. Интерфейс пользователя наводит ужас, а ведь судя по рисунку 2 LabView позволяет сделать красиво (ну или хотя бы аккуратно).
2. Графические диаграммы позволяют какие-либо варианты комментирования?
No comments! Рисунок 2 взят из интернет ресурса для демонстрации возможностей моделирования в LabView

knoppix

1. Интерфейс пользователя наводит ужас, а ведь судя по рисунку 2 LabView позволяет сделать красиво (ну или хотя бы аккуратно).
2. Графические диаграммы позволяют какие-либо варианты комментирования?
No comments! Рисунок 2 взят из интернет ресурса для демонстрации возможностей моделирования в LabView
С первым вопросом ладно, делать позорно надо приучать себя с юности.
Ну а второй вопрос?
Амурский Государственный Университет  - 2010 - Специалист
Harbin Institute of Technology - 2016 - M.Sc.Eng
Главный инженер-программист АСУ ТП

Михаил

Да, в диаграммах возможны комментарии, при наведении на объект их можно увидеть

Вверх