русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Genies и Super Genies (джины и суперджины)


Дата добавления: 2013-12-23; просмотров: 2393; Нарушение авторских прав


Библиотека статических объектов (Library Objects)

Bitmap Editor

 

Рисунок Bitmap представляет собой совокупность пикселей (точек). Этот рисунок может быть создан в специальном редакторе (Bitmap Editor) закрашиванием с помощью цветного карандаша ячеек сетки с разрешением в 1 пиксель. Рисунки Bitmap, как и обычные объекты, можно перемещать, изменять их размеры, копировать, использовать как динамические объекты.

 

 

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

Создание каждого из этих объектов требует большого времени и может значительно затянуть разработку приложения. Для ускорения работы над проектом Citect предлагает разработчику библиотеку объектов (Library Objects), которая включает более 500 готовых графических компонентов.

Библиотека состоит из большого количества разделов (например, раздел емкостей, теплообменников, клапанов, насосов, иконок и т. д.), каждый из которых содержит широкий набор объектов определенного типа.

На рис.1.2.8 представлен набор объектов раздела Емкости.

Рис.1.2.8. Раздел Емкости библиотеки объектов.

 

Если же нужного объекта в библиотеке нет, его можно импортировать из других Windows - программ. В Citect можно копировать объекты самых различных форматов: .BMP, .DXF, .PCX, .WMF и многих других. В крайнем случае, объект можно нарисовать и, чтобы в дальнейшем он всегда был "под рукой", скопировать в "свою" библиотеку.



 

Каждый графический объект на графической странице настраивается индивидуально. Часто при разработке графического интерфейса приходится создавать типовые группы объектов, предназначенные для решения конкретной задачи. Например, группа из трех объектов (кнопка "ПУСК", кнопка "СТОП" и индикатор состояния - лампочка зеленого/красного цвета) предназначена для пуска/останова насоса, электродвигателя, конвейера и т. д. с индикацией их состояния. Тогда каждый раз для решения этой задачи разработчику придется создавать эти три объекта и конфигурировать их (задавать свойства). Но таких задач на одной графической странице может оказаться много. Читатель уже понял, что время специалиста в этом случае будет расходоваться неэффективно.

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

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

Citect предлагает два типа сложных объектов:

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

 

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

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

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

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

Пакет Citect поставляется с библиотекой джинов и суперджинов. Вызов библиотеки производится автоматически при выборе инструмента Paste Genie (вставка джина). На рис.1.2.9 приведен раздел Моторы библиотеки джинов.

Рис.1.2.9. Раздел Моторы библиотеки джинов.

 

Часто суперджины и джины используются вместе. Это достигается привязкой джина к суперджину, когда одна из функций джина активизирует суперджин (выпадающую страницу). В библиотеке джинов Citect некоторые джины уже связаны с суперджинами (джины с символом руки).

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

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

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

Рис.1.2.10. К описанию механизма суперджина.

 

Предлагается второе решение этой задачи - создать джин и суперджин. Постоянно на мнемосхеме процесса присутствуют джины для управления насосами, один из которых представлен на рис.1.2.10б. Но в этом случае они намного компактнее и не перегружают интерфейс. При определении свойств кнопки PUMP1 (насос1) джина на закладке INPUT (см. рис.1.2.6) в этом случае надо задать команду, которая будет выполняться при ее нажатии. Примером такой команды может быть AssPopUp (sPage, sTag1..8):

  • AssPopUp - функция, открывающая суперджинн в выпадающей странице и имеющая следующие аргументы:
    • sPage - имя страницы суперджина;
    • sTag1..8 - имена переменных, связанных с суперджином.

Джин, связанный с суперджином (рис.1.2.10в), заранее создан и сохранен в библиотеку джинов и суперджинов. При определении свойств компонентов (кнопок) этого суперджина должны быть использованы заменяемые имена с синтаксисом ? type number ? :

    • type - тип переменной (т.е. string, integer, real или digital);
    • number - позиция имени переменной (1-8) в списке функции AssPopUp() джина, который вызывает страницу суперджина.

Применительно к рассматриваемому примеру функция (команда), вызывающая суперджин, может иметь вид AssPopUp("SGenie", "%PUMP%", "%STATUS%"), а заменяемые имена переменных суперджина - ?digital 1? и ?digital 2? .

Кнопки суперджина SGenie (рис.1.2.10в) имеют следующие свойства:

Закладка - Appearance (General) Опция - Text Закладка - Input (Touch) Поле - Command
СТАРТ ? Digital 1?=1
СТОП ? Digital 1?=0
АВТО ? Digital 2?=1
РУЧ ? Digital 2?=0
ВЫХОД WinFree( );

 

В режиме исполнения нажатие кнопки джина PUMP1 активизирует команду AssPopUp("SGenie", "%PUMP%", "%STATUS%"). При этом произойдет подстановка первой переменной PUMP в заменяемое имя ?digital 1?, а второй переменной STATUS - в заменяемое имя ?digital 2? суперджина, что вызовет появление выпадающей страницы с пультом управления насосом PUMP1 (рис.1.2.10в). После выполнения действий по управлению насосом выпадающая страница может быть закрыта щелчком по кнопке ВЫХОД (функция WinFree( ) закрывает страницу).

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

 



<== предыдущая лекция | следующая лекция ==>
Инструментарий | Бюджетные полномочия органов государственной власти и местного самоуправления


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.006 сек.