Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методичка ПСА genie

.pdf
Скачиваний:
76
Добавлен:
12.02.2016
Размер:
1.32 Mб
Скачать

Если на этапе разработки пароль не был задан, деблокирование пунктов меню исполнительной среды GENIE, заблокированных с помощью команды Lock, производится путем нажатия клавиши Esc.

2.2.2.7. Меню Layout

Меню Layout (рис. 2.6) содержит команды, позволяющие установить и изменить порядок исполнения функциональных блоков в задаче, окно которой активно. Имеется возможность изменения порядка исполнения нескольких блоков либо полного переопределения порядка исполнения всех блоков. Когда отмечена строка Complete reorder (Изменить для всех блоков), однократный щелчок левой клавишей мыши на каждом функциональном блоке задачи переопределяет порядок их исполнения в соответствии с последовательностью, в которой были произведены щелчки левой клавишей мыши. Порядок исполнения отражается последовательностью чисел от 1 до N, которые отображаются на пиктограмме функционального блока при выборе строки Order Layout меню View. Если требуется поменять местами порядок исполнения двух блоков, следует отметить строку Exchange order меню Layout и произвести однократный щелчок левой клавишей мыши на каждом из них.

2.2.3. Набор инструментов Редактора задач

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

2.2.3.1. Проводник

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

организации взаимодействия между блоками.

2.2.3.2. Блок Тэг

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

управления, входящим в окно формы отображения, может быть передано функциональным блокам задач посредством блока Tag (Тэг). Подробнее см. п. 2.2.1.2.

21

2.2.3.3. Блок Бейсик-сценария (BasicScript Block)

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

условные переходы, ветвления и циклы. В блоке используется язык программирования, синтаксис и функции которого совместимы с принятыми в Microsoft Visual Basic for Applications (VBA). Однако язык программирования Бейсик-сценариев GENIE является интерпретатором, что вызвано необходимостью достижения

компромисса между простотой в применении и быстродействием.

Блок Бейсик-сценария предназначен для реализации небольших алгоритмов обработки данных. Разработка и использование больших и сложных программ не рекомендуется. Выходы (8) блока могут соединяться с неограниченным количеством других функциональных блоков стратегии.

Более подробно работа с этим блоком описана в разделе 2.4.

2.2.3.4. Блок аналогового ввода

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

показанной на рис.2.6.

22

Рис. 2.10. Диалоговая панель настройки функционального блока аналогового ввода

Поле Device

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

ПРИМЕЧАНИЕ. Данное поле имеется в диалоговых окнах всех функциональных блоков, участвующих в информационном обмене устройств, имеющих подсистему ввода (вывода) аналоговых или цифровых сигналов, с другими функциональными блоками и элементами отображения стратегии.

Если в качестве устройства выбрано аппаратное средство, обмен с которым осуществляется по последовательному каналу связи через порт СОМх, (например модуль серии ADAM-5000 или ADAM-4000), тип подобного устройства будет отображен в поле Module диалоговой панели.

Группа параметров каналов

После выбора устройства или модуля аналогового ввода следует установить параметры каналов, информация от которых будет поступать в блок аналогового ввода. Количество аппаратных каналов, информация от которых может быть принята блоком аналогового ввода, может составлять от 1 до 16. Например, если выбран модуль ADAM-5018, имеется возможность одновременного опроса его 7-ми каналов с помощью одного блока аналогового ввода.

Поля From Channel и To Channel

Данные поля должны содержать номера каналов, которые будут опрашиваться соответственно первыми и последними при вызове блока аналогового ввода. Значение, устанавливаемое в поле From Channel, может быть в диапазоне от 0 до максимального количества каналов, подключенных к блоку. Значение, устанавливаемое в поле To Channel, может быть больше либо равно значению, установленному в поле From Channel.

Группа Input Range (Диапазон входного сигнала)

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

Группа Expansion Channel (Коммутатор/Усилитель аналоговых сигналов)

Данная группа позволяет описать параметры дополнительной платы коммутатора/усилителя аналоговых сигналов, подключенной к одному из каналов основной платы ввода аналоговых сигналов.

Поле Update Rate (Частота обновления)

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

23

задача, в которую входит данный функциональный блок. Например, пусть задача вызывается (сканируется) один раз в 50 мс. Для того, чтобы блок аналогового ввода, входящий в данную задачу, вызывался один раз в 250 мс, следует установить в поле Update Rate значение 5. В этом случае значение на выходе блока будет обновляться через каждые пять вызовов задачи, содержащей блок.

Значение, устанавливаемое в данном поле, может быть в диапазоне от

1 до 32767.

Кнопка Scaling

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

2.2.3.5. Блок аналогового вывода

Данный функциональный блок предназначен для передачи информации, получаемой от других функциональных блоков, элементов отображения или других приложений Windows посредством механизма динамического обмена данными (DDE), устройствам, имеющим подсистему вывода аналоговых сигналов. Диалоговая панель настройки параметров блока показана на рис. 2.11.

Рис. 2.11. Диалоговая панель настройки функционального блока аналогового вывода

Поле Device

(см. п. 2.2.3.4)

Поле Channel

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

24

Поле Update Rate

(см. п. 2.2.3.4)

Группа параметров DDE

Блок аналогового вывода обеспечивает возможность получения данных от других приложений Windows посредством механизма динамического обмена данными (DDE). Данный механизм позволяет формировать на аналоговом выходе устройства, связанного с функциональным блоком АО, сигнал, закон изменения которого определяется в любом приложении Windows, поддерживающем механизм DDE (например, Microsoft Excel).

2.2.3.6. Блок дискретного ввода (DI)

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

другим функциональным блокам и элементам отображения. Диалоговая панель настройки параметров блока дискретного ввода показана на рис. 2.12.

Рис. 2.12. Диалоговая панель настройки функционального блока дискретного ввода

Поле Device

(см. п. 2.2.3.2)

Поле Group(Byte)

После выбора устройства дискретного ввода, следует установить номер группы каналов (бит) дискретного ввода, связанных с данным функциональным блоком дискретного ввода. Количество групп и каналов в группе зависит от типа применяемого устройства дискретного ввода. В поле

25

Group(Byte) и списке Bit(s) отображается общее количество групп и каналов, имеющихся в выбранном устройстве.

Переключатель Establish DDE Link

Блок дискретного ввода обеспечивает возможность передачи данных другим приложениям Windows посредством механизма динамического обмена данными (DDE).

Поле Update Rate

(см. п. 2.2.3.2).

2.2.3.7. Блок дискретного вывода (DO)

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

обмена данными (DDE), устройствам, имеющих подсистему вывода дискретных сигналов. Диалоговая панель настройки параметров блока дискретного вывода показана на рис. 2.13.

Рис. 2.13. Диалоговая панель настройки функционального блока дискретного вывода

Поле Device

(см. п. 2.2.3.2)

Поле Group(Byte) и переключатель Establish DDE Link

(см. п. 2.2.3.6)

26

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

Поле Update Rate

(см. п.2.2.3.2)

2.2.3.8. Блок измерения температуры

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

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

температуры от устройства, преобразуется в линеаризованные значения температуры, выраженной в предварительно заданных

единицах.

Поддерживаются термопары типов: J (Железо/Медь-Никель),

К (Хромель/Алюмель), S (Платина-10%-Родий/Платина), Т (Медь/Конста-

нтан),

В (Платина-30%/Родий-Платина-6%/Родий),

R (Платина-13%-

Родий/Платина), Е (Хромель/Константан).

Диалоговая панель настройки параметров блока измерения температуры показана на рис. 2.14.

Рис. 2.14. Диалоговая панель настройки функционального блока измерения температуры

Поле Device и переключатель Establish DDE Link

(см. п. 2.2.3.6)

Поле Input Range

27

Позволяет установить для канала диапазон входного сигнала, подаваемого на канал.

Поля Thermocouple Type и Temperature Scale

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

Поле Update Rate

(см. п. 2.2.3.2)

2.2.3.9. Блок таймера

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

относительных временных интервалов с разрешением 0,1 с или 1 с. Цикл таймера до сброса с последующим возобновлением работы может составлять от 1 минуты до 1 года. Содержимое таймера (относительное или абсолютное время) может быть передано другому функциональному блоку стратегии.

Выходное значение блока таймера представляется в виде целого двойной точности в диапазоне от 0 до 4294967295. Данный блок является весьма удобным средством для реализации различных алгоритмов управления, выполнение которых основывается на интервалах времени.

Единицы, в которых выражается значение на выходе блока таймера, могут быть выбраны с помощью переключателя Resolution диалоговой панели настройки параметров блока (рис. 2.15). Таким образом, разрешающая способность таймера может составлять 1 тик (0,1 с) или 1 с. Получение более высокого разрешения в рамках операционной системы Windows представляется весьма трудной задачей.

Рис. 2.15. Диалоговая панель настройки функционального блока таймера

Цикличность (периодичность) работы таймера может быть выбрана с помощью переключателя Cycle диалоговой панели настройки параметров блока. По истечении периода времени, выбранного с помощью указанного

28

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

– 1 с, то содержимое таймера в каждом цикле будет увеличиваться от 0 до 59 с последующим возобновлением. Данная функция блока таймера в текущей версии пакета работает только при использовании разрешающей способности, равной 1 с.

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

При использовании таймера, отсчитывающего абсолютное время (переключатель Timer Type установлен в положение Elapsed time), после запуска стратегии на исполнение алгоритм работы таймера объясняется следующим примером. Если разрешающая способность таймера составляет 1 с, а в качестве цикла таймера выбрана 1 минута, то при запуске стратегии на исполнение в 11:23:17 (по часам реального времени компьютера), работа таймера начнется со значения, равного 17, и будет продолжаться до 59 с последующим сбросом и дальнейшим возобновлением работы.

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

Таблица 2.1

 

Нулевые начальные значения таймера

Цикл таймера

Значение системного времени для нулевого

начального содержимого таймера

 

Год

00:00:00, 1 января каждого года

Месяц

00:00:00, в первый день каждого месяца

Неделя

00:00:00, в воскресенье каждой недели

Сутки

00:00:00, в начале каждых суток

Час

каждый час

Минута

каждую минуту

Таким образом, имеется возможность вычисления текущего времени. Например, таймер с циклом Weekly (Неделя) и разрешением 1 с при запуске стратегии в 0:00 в понедельник будет иметь начальное содержимое, равное 86400, а в полдень (12:00) пятницы его содержимое увеличится до 518400. В результате появляется возможность автоматического отключения какой-либо единицы контролируемого оборудования в течение выходных.

2.2.3.10. Блок Метка времени

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

различных форматов представления системного времени.

29

2.2.3.11. Блок счетчика событий

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

поступающих на его вход от любого функционального блока, выдающего информацию в виде логических нулей и единиц. Выход блока счетчика событий может быть соединен с другим функциональным блоком стратегии. Каждое увеличение/уменьшение содержимого счетчика производится при каждом вызове задачи, в состав которой он входит. Таким образом, разрешающая способность счетчика равна периоду опроса содержащей его задачи. Для присвоения содержимому счетчика начального значения и остановки счета следует подать логическую единицу на его вход Reset от другого функционального блока. Для возобновления счета необходимо подать на указанный вход логический нуль. Если вход сброса не присоединен, то на нем будет подразумеваться фиксированное значение, равное логическому нулю. Подсчет событий может быть временно приостановлен другим функциональным блоком стратегии путем подачи логической единицы на вход Hold блока счетчика событий. Для возобновления счета необходимо подать на указанный вход логический нуль.

Рис. 2.16. Диалоговая панель настройки функционального блока счетчика событий

Поля Start Count at и Stop Count at

Данные поля должны содержать значение, с которого начинается счет, и значение, по достижении которого счет должен быть завершен, соответственно. Максимальное значение в данных полях – 65535.

Поле Increment/Decrement by

30