IT7 (1087054), страница 4

Файл №1087054 IT7 (Методичка Intouch по интегрированным системам проектирования и управления) 4 страницаIT7 (1087054) страница 42018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 4)

- Misc... - функции для работы с алармами распределенных систем

(Ack), архивными трендами (HT), печатью и др.

Вызов списка функций группы осуществляется нажатием соответствующей клавиши. Назначение функций и описание их аргументов приведено в документации.

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

По окончании редактирования скрипта следует нажать кнопку Ok. При обнаружении в скрипте каких-либо ошибок на экран будет выведено соответствующее сообщение. В большинстве случаев курсор установится в ту позицию, которая привела к появлению ошибки. Прежде чем скрипт будет сохранен, все ошибки должны быть исправлены.

Работа 3. Использование скриптов в InTouch.

Цель работы:

- замена фиктивных переменных;

- создание скриптов, запускаемых кнопками;

- создание скриптов по условию.

28

1. Откройте окно Hopper.

В этом окне представлен бункер высотой 200 пикселей. Синий указатель – курсор “привязан” к переменной HopperSetpoint (задание уровня). Красный указатель служит для отображения текущего значения переменной HopperLevel (уровень в бункере).

Запуск конвейера в дальнейшем следует «привязать» к дискретной переменной Conveyor_on. Конвейер будет включен/выключен при Conveyor_on = 1/0. Управление значением переменной Conveyor_on должно осуществляться кнопкой Conveyor_on Toggle.

Нижняя крышка бункера “привязана” к переменной GateCount типа Integer. Полное открытие (перемещение) крышки - 30 пикселей.

2. При импортировании окна Hopper все относящиеся к этому окну переменные преобразовались в фиктивные, которые следует заменить на обычные. Нажмите клавишу F2 для выделения всех объектов в окне и выполните команду Special/Substitute Tags (замена переменных).

3. Нажмите Convert, затем Local для преобразования переменных.

29

4. Определите в словаре переменных следующие переменные:

- Conveyor_on, Memory Discrete;

- Gate, Memory Discrete;

- GateCount, Memory Integer, Min Value – 0, Max Value - 100;

- HopperLevel, Memory Real, Min Value – 0, Max Value - 100;

- HopperSetpoint, Memory Real, Min Value – 0, Max Value – 100.

Анимирование кнопок HopperLevel.

  1. Создайте скрипт, запускаемый кнопкой «HopperLevel=0 » (Touch Pushbutton Action). Тип скрипта - On Key Down (исполняется один раз в момент нажатия на кнопку) - следует выбрать из списка.

Нажатие кнопки «HopperLevel=0 » должно обнулять уровень в бункере.

  1. Создайте два скрипта Touch Pushbutton Action, запускаемых кнопкой «HopperLevel+10 ».

Тип первого скрипта - On Key Down (исполняется один раз в момент нажатия на кнопку). Щелчок по кнопке «HopperLevel+10 » должно вызывать увеличение уровня на 10 единиц.

Тип второго скрипта - While Down (выполняется периодически через заданные интервалы времени пока нажата кнопка) – также выбирается из выпадающего списка.

30

При удержании кнопки «HopperLevel+10 » уровень должен увеличиваться на единицу каждые 1000 мсек (1сек).

7. Перейдите в среду исполнения и проверьте работу кнопок.

8. Для анимирования заполнения бункера создайте два скрипта по условию (Condition Scripts).

Первый скрипт устанавливает переменную «Conveyor_on » в 1 (конвейер включен), когда значение переменной HopperLevel меньше, чем заданное HopperSetpoint (Condition – условие, см. рис. внизу), и присваивает переменной «Conveyor_on » значение 0 (конвейер выключен) при других условиях.

Щелкните на Special/Scripts/Condition Scripts и создайте скрипт по условию типа On True (исполняется один раз при переходе условия в состояние True). Скрипт этого типа включает конвейер, если текущий уровень меньше заданного.

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





31

9. Перейдите в среду исполнения для проверки работы скриптов.

  1. Второй скрипт по условию будет увеличивать значение переменной HopperLevel на 1 каждые 1000 мсек (1 сек.), если переменная Conveyor_on = TRUE (конвейер включен). Щелкните Script/New, затем Edit/Clear для очистки окна редактора. Создайте скрипт типа While True (исполняется непрерывно, пока значением условия является True):

11. Перейдите в среду исполнения для проверки работы скриптов.

12. Нижней крышке бункера присвоено свойство Location/Horizontal (горизонтальное перемещение) и «привязано» оно к переменной GateCount типа Integer. Крышка закрыта при значении GateCount=0. Когда GateCount=30, крышка полностью открыта. Кнопка Gate Control управляет значением дискретной переменной Gate.

Создайте скрипт, который будет открывать крышку бункера (увеличивать GateCount до 30), когда Gate == TRUE, и закрывать крышку (уменьшать GateCount до 0), когда Gate == FALSE.

Наблюдать за работой конвейера и бункера можно только при открытом окне Hopper. Поэтому скрипт, анимирующий крышку бункера, должен быть связан с этим окном (скрипт уровня окна - Window Scripts). Его тип - While Showing (исполняется периодически через заданные промежутки времени пока окно отображается на экране).

32

  1. Добавьте скрипт типа On Show для этого окна (исполняется один раз в момент открытия окна) для того, чтобы все переменные и кнопки находились в начальном состоянии при открытии окна Hopper.

15. В InTouch имеется набор предопределенных функций. Функцию InfoAppActive можно использовать в скриптах для активизации программы Calculator (калькулятор). Если калькулятора нет на экране, то скрипт запустит его. Иначе, скрипт будет работать в фоновом режиме.

Создайте скрипт Touch Pushbutton Action типа On Key Down для кнопки «Calculator ».

33

Функции также могут использоваться в поле Expression диалогов установки анимационных связей. Откройте окно Menu и анимируйте текст # MB для отображения размера свободного пространства на диске. Задайте текстовому объекту # свойство Value Display/Analog, введя в поле Expression следующее выражение:

InfoDisk («C»,2,$Second) /1000000

Раздел 4. Алармы и события в InTouch.

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

Типы алармов.

Стандартные (бывают и распределенные) алармы подразделяются по типу (Туре) на несколько категорий.

Дискретные алармы срабатывают при изменении состояния дискретной переменной. При этом для срабатывания аларма можно использовать любое из двух состояний: TRUE/ON (1) или FALSE/OFF (0).

Алармы

Стандартный тип

Discrete

DISC

Deviation - Major

LDEV

Deviation - Minor

SDEV

Rate - of - Change

ROC

Value - LoLo

LOLO

Value - Lo

LO

Value - High

HI

Value - HiHi

HIHI

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

- Deviation (отклонение от нормы);

- Rate of Change - ROC (скорость изменения).

- Low и Low Low (нижний и ниже нижнего);

- High и High High (верхний и выше верхнего);

С InTouch - переменной можно связывать алармы любого типа. В зависимости от типа переменной для нее можно определять один или более классов и типов алармов.

34

Приоритеты алармов.

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

Группы алармов.

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

Если пользователь не определил такую группу для конкретной переменной, то она автоматически связывается с корневой группой алармов $System. С любой группой алармов можно связать как переменную, так и другую группу алармов. Взаимосвязи всех групп алармов представляются древовидной структурой, у которой в качестве корневой является группа $System. Все определяемые группы алармов автоматически становятся потомками этой группы.

Для создания групп алармов в меню окна WindowMaker предусмотрена команда Special/Alarm Groups (группы алармов), вызывающая появление диалога Alarm Groups. При определении переменных в словаре Tagname Dictionary нажатие кнопки Group также выводит на экран этот диалог.

35

Определение условий аларма для переменной.

Условия возникновения аварийных ситуаций определяются в словаре переменных (Tagname Dictionary). Включение опции Alarms (или Details & Alarms) вызывает на экран диалог определения условий алармов, соответствующий типу переменной.

Характеристики

Список файлов книги

Методичка Intouch по интегрированным системам проектирования и управления
WWImp70
AppStg.stg
INTOUCH.INI
SPC.INI
SpcPassword.
alarm.cfg
app.ver
db.ini
dde.cbk
dde.cfg
group.dbk
group.def
hoppfull.wav
itocx.cfg
linkdefs.ini
password.bin
retentiv.x
serialno.trn
tagbrw.dat
tagname.avl
tagname.x
tagnames.ndx
tbox.ini
vers_res.inf
view.ini
win00002.wbk
win00002.win
win00002.wvw
win00004.tbk
win00004.trn
Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6989
Авторов
на СтудИзбе
262
Средний доход
с одного платного файла
Обучение Подробнее
{user_main_secret_data}