4.05M
Category: softwaresoftware

Создание виртуального прибора “CMO” в среде LabView

1.

Создание виртуального прибора “CMO” в среде
LabView
Федоров Ефим Александрович

2.

Цель и задачи работы
Целью данного курсового проекта является закрепление знаний по предмету «Проектирование приборов и систем», а
также создание виртуального прибора в среде графического программирования LabView
Задачей данного курсового проекта является:
создание и работа виртуально прибора в LabVIEW.
описание составных элементов исследуемого объекта.
описание связей и взаимодействия между элементами рассматриваемой системы.
Задание – создать программу СМО
2

3.

Достоинства LABVIEW
Достоинства:
• Полноценный язык программирования;
• Интуитивно понятный процесс графического программирования;
• Широкие возможности сбора, обработки и анализа данных, управления приборами, генерации
отчетов и обмена данных через сетевые интерфейсы;
• Драйверная поддержка более 2000 приборов;
• Возможности интерактивной генерации кода;
• Шаблоны приложений, тысячи примеров;
• Высокая скорость выполнения откомпилированных программ;
3

4.

Интерфейс панели и окно редактирования
диаграмм
Интерфейсная панель - это интерфейс
пользователя. Вы устанавливаете на
интерфейсную панель графические элементы
управления и всевозможные индикаторные
приборы, которые являются соответственно
элементами ввода и вывода.
Окно редактирования диаграмм – программа в графическом
виде
Рисунок 1. Интерфейсная панель
Рисунок 2. Окно редактирования диаграмм
4

5.

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

6.

Используемые функции
Основные функции, которые используются в данной работе:
Element – добавляет элемент в хвост очереди
Obtain Queue – возвращает ссылку на очередь
Dequeue Element - исключает первый элемент из очереди и возвращает его значение
Get Queue Status - возвращает информацию о настоящем статусе очереди
• While Loop – цикл по условию для управления повторяющимися операциями в виртуальном приборе.
• Flat Sequence (развёрнутая последовательность) – цикл отображает все кадры одновременно и исполняет их
последовательно слева направо, пока не выполнится последний кадр.
• For Loop – цикл выполняет находящийся внутри рамки код определённое число раз.
6

7.

Построение СМО в LABVIEW
Первым делом был создан прибор для инициализации очереди. Для этого на функциональной
панели было выбрано Programming>Synchronization>Queue Operation>Obtain Queue. Затем из
Tools Palette выбран Connect Wire (катушка) и кликнуто правой кнопкой мыши на верхний вход
прибора (max queue size), далее в появившемся контекстном меню выбран пункт create>control.
Необходимо задать имя очереди. Для этого кликнуто правой кнопкой мыши на вход прибора name,
затем выбран пункт создания константы create>constant, и в появившемся окошке введено имя
очереди, например, 1. Также необходимо задать тип данных элемента. Для этого было выбрано
Programming>Numeric>Numeric Constant (по умолчанию стоит «0») и подключен к входу element
data type. Получился прибор, как показан на рис. 3.
Рисунок 3.
Инициализация очереди
7

8.

Построение СМО в LABVIEW
Далее необходимо определить порядок становления пациентов в очередь. Установлен
прибор Programming>Synchronization>Queue Operation>Enqueue Element .Так как клиент
не один, необходима циклическая работа программы. Выбрано из функциональной
панели programming>structures>For Loop и выделен прибор Enqueue Element. Чтобы
клиенты становились в очередь по одному, перетянуто «увеличение на 1» Programming >
Numeric> increment. К входу x подключен значок «итерация цикла», а выход (x+1)
пиктограммы подключен к входу Element прибора Enqueue Element. Пусть каждый клиент
приходит в поликлинику через заданное время, например через 1 секунду. Для этого
Рисунок 4. Добавление элементов
в очередь
установлена в цикл задержка. Результат на рис. 4
8

9.

Построение СМО в LABVIEW
В предприятии имеется регистратура, через которую проходит каждый пациент. Чтобы установить регистратуру, для начала был
установлен цикл While Loop, programming>structures>While Loop. Чтобы прочитывать элементы из очереди, то есть обслуживать
пациентов, помещен в цикл While Loop прибор Dequeue Element, Programming>Synchronization>Queue Operation>Dequeue
Element. Чтобы видеть, сколько обслужено пациентов, создан соответствующий индикатор для прибора Dequeue Element .
Установлено время обслуживания пациентов с помощью прибора задержки Wait (ms). Соединен только что созданный прибор с
ранее созданной очередью, как показано на рис. 5.
Рисунок 5. Чтение из очереди
9

10.

Построение СМО в LABVIEW
Чтобы видеть, сколько клиентов в данный момент находятся в очереди, использовался прибор Get Queue Status,
Programming>Synchronization>Queue Operation>Get Queue Status. Был помещен в цикл While Loop и соединен с очередью.
Кликнуто правой кнопкой мыши на левый вход Return Elements? (F) прибора Get Queue Status и выбран пункт Create>Constant.
Return Elements? – он отображает, возвращены ли элементы в очередь. По умолчанию установлено значение false – функция не
будет возвращать элементы в очередь. Поменяно значение на trough, как показано на рис. 6
Рисунок 6. Количество элементов в очереди
10

11.

Построение СМО в LABVIEW
Чтобы время поступления клиентов в очередь и время обслуживания клиентов можно было устанавливать на интерфейсной
панели, была поменяна constant у приборов задержки Wait (ms) на Control. В цикле с Dequeue Element необходима
последовательность действий для правильной работы. Выбрано Programming>Structure>Flat Sequence, помещен прибор
Dequeue Element и прибор Wait (ms) внутрь Flat Sequence. Кликнуто на границе Flat Sequence правой кнопкой мыши, и выбрано
Add Frame и помещено во второй фрейм индикатор «обслужено клиентов». Получилась программа, как на рисунке 7.
11

12.

Построение СМО в LABVIEW
Рисунок 7. Модель СМО
12

13.

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

14.

Заключение
В данном курсовом проекте был рассмотрен один из примеров виртуального прибора в LabView, а
именно - СМО (система массового обслуживания). Рассмотренный прибор адаптирует процесс
обслуживания.
В ходе написания курсового проекта мной было совершено описание:
• Среды графического программирования LabView;
• Элементов, входящих в состав исследуемого прибора;
• Работа созданного виртуального прибора СМО.
14

15.

Спасибо за внимание!
English     Русский Rules