48707 (Разработка человеко-машинного интерфейса в GraphWorX32), страница 7

2016-07-29СтудИзба

Описание файла

Документ из архива "Разработка человеко-машинного интерфейса в GraphWorX32", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "остальное", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "48707"

Текст 7 страницы из документа "48707"

Рис.11 Расположение статических объектов из Библиотеки символов на мнемосхеме

6.2 Создание анимационных объектов

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


6.3 Создание имитации наполнения/опустошения резервуара

Ниже будет описана настройка динамического действия для графического объекта Switch On создаваемой мнемосхемы. Как следует из названия, данный графический объект представляет переключатель с двумя фиксируемыми положениями и служит для запуска дискретно-непрерывного процесса. После выполнения однократного щелчка левой клавишей мыши над объектом Switch on (переключатель зелёного цвета), переключатель перейдёт во включённое положение и будет происходить загрузка значений в локальную переменную ~~tank~~.

Данный алгоритм будет иметь следующие свойства:

уровень в резервуаре будет установлен в 0, если значение переменной ~~tank~~ станет меньше 0;

если уровень в резервуаре больше либо равен 0, при одновременном равенстве 1 сигнала запуска процесса то уровень в резервуаре будет представляться следующей формулой:

Уровень = Текущий уровень + ICONICS. Simulator.1\diplom. dip. bool. out1 + ICONICS. Simulator.1\diplom. dip. bool. out2 - отгрузка, где: ICONICS. Simulator.1\diplom. dip. bool. out1 = 1, если задвижка ValveA (расположена слева от резервуара) открыта (CompA поступает в резервуар)

ICONICS. Simulator.1\diplom. dip. bool. out1 = 0, если задвижка ValveA (расположена слева от резервуара) закрыта (CompA не поступает в резервуар)

ICONICS. Simulator.1\diplom. dip. bool. out2 = 1, если задвижка ValveB (расположена справа от резервуара) открыта (CompB поступает в резервуар)

ICONICS. Simulator.1\diplom. dip. bool. out2 = 0, если задвижка ValveB (расположена справа от резервуара) закрыта (CompB не поступает в резервуар)

Отгрузка = 1, если отгрузочный насос включён; Отгрузка = 0, если отгрузочный насос выключен.

Для реализации построенного алгоритма необходимо завести нужные переменные, приведённые ниже в табл.3:

Табл.3 Описание переменных, необходимых для создания дискретно-непрерывного процесса

Имя переменной

Тип

Описание

ICONICS. Simulator.1\diplom. dip. start

Boolean

Сигнал запуска процесса

~~tank~~

Double

Уровень в резервуаре (в диапазоне от 0 до 1000см)

ICONICS. Simulator.1\diplom. dip. bool. out1

Boolean

Положение задвижки ValveA

ICONICS. Simulator.1\diplom. dip. bool. out2

Boolean

Положение задвижки ValveB

~~disch~~

Boolean

Положение отгрузочного насоса

Для создания этих переменных будет использоваться OPC-сервер имитации сигналов OPC Simulator из программной группы ICONICS Genesis-32. Для данной мнемосхемы будет создана отдельная группа тегов, названная diplom. dip. В нужной группе создаются нужные теги и конфигурируются на усмотрение пользователю.

Рис.12 Добавление набора тегов в OPC-сервере имитации сигналов

Теперь, когда есть нужные переменные можно перейти непосредственно к созданию имитации заполнения/опустошения резервуара. Для этого нужно выделить изображение Swtich On и в панели “Динамика" выбрать свойство “Указание и щелчок мышью". После чего на экран монитора будет выведена диалоговая панель “Инспектор свойств" с выбранной закладкой “Указание и щелчок". В выпадающем списке Операция" следует выбрать действие Передать значение".

Рис.13 Внешний вид страницы “Указание и щелчок” диалоговой панели “Инспектор свойств" после выбора операции “Передать значение”

В выпадающем списке “Тип” следует выбрать “С фиксацией”. Если выбрать тип без фиксации, тогда элемент Switch On будет подавать 1 (или True) на зависимые от него переменные (под словом зависимые следует понимать то, что элемент Switch on управляет всей моделью, то есть если он включен, то процесс может работать, а если выключен то процесс остановится) только при нажатии левой кнопкой мыши. Получается, что весь процесс будет работать лишь в момент нажатия клавишей мышью Switch On. Поэтому следует выбрать тип “С фиксацией" (фиксация позволяет зафиксировать положение/значение элемента до тех пор, пока пользователь не изменит положение/значение этого элемента). Теперь если нажать левой клавишей мыши на элемент Switch On, то он станет 1 (или True) до тех пор, пока пользователь не остановит процесс, тем самым изменив True на False. В группе параметров “Порядок выполнения” отмечается флажок “Пока нажато”, после чего в поле “Интервал" устанавливается значение 50 мс (это значит, что в переменную будет записываться значение раз в 50 мс). Источником данных будет являться локальная переменная ~~tank~~. После настройки параметров остаётся ввести выражение, которое будет отображать описанный ваше алгоритм. Для этого в инспекторе свойств есть меню “Редактор выражений”.

При вызове редактора выражений будет выведена диалоговая панель, в которую и будет введёно выражение. Выражение выглядит так: X= (if (~~tank~~>1000,1000,~~tank~~ +

{{ICONICS. Simulator.1\diplom. dip. start}}*{{ICONICS. Simulator.1\diplom. dip. bool. out1}}+{{ ICONICS. Simulator.1\diplom. dip. start}}*

{{ICONICS. Simulator.1\diplom. dip. bool. out2}} - {{ICONICS. Simulator.1\diplom. dip. start}} * ~~disch~~)) * (if (~~tank~~<0, 0,1))

Далее следует установить соединение между положением переключателя Switch On и переменной ICONICS. Simulator.1\diplom. dip. start. Для этого необходимо выбрать инструмент “Указание и щелчок мышью". В появившейся диалоговой панели, в списке “Операция" нужно выбрать “Передать значение” и в поле “Значение" поставить 1. Далее переключатель Switch On будет настроен таким образом, что в режиме исполнения он будет видимым только в случае, если дискретно-непрерывный процесс остановлен. Для этого нужно выделить элемент Switch On и выбрать инструмент “Скрыть/блокировать" в панели “Динамика”. На экран будет выведена диалоговая панель, которой в качестве источника данных будет переменная ICONICS. Simulator.1\diplom. dip. start и указываем параметр “Скрыть/блокировать, если true”. Получается, что если переменная ICONICS. Simulator.1\diplom. dip. start будет равна 1, то объект Switch On не будет видимым в режиме исполнения. Теперь, когда настроен элемент Switch On, нужно настроить другой элемент - Switch Off, который предназначен для остановки процесса. Переключатель Switch Off должен быть видимым только в случае, если процесс запущен. В то же время щелчок левой клавишей мыши на данном переключателе должен приводить к сбросу в 0 значение переменной ~~tank~~.

Выделяем объект Switch Off и используем инструмент “Указание и щелчок мышью" в панели “Динамика”. В появившемся окне нужно выбрать операцию Передать значение и в поле Порядок выполнения необходимо указать Если отпущено. Источником данных будет переменная ICONICS. Simulator.1\diplom. dip. start и в поле значение указываем 0. Снова выделяем объект Switch Off и выбираем инструмент “Скрыть/блокировать" в инструментальной панели “Динамика”. В инспекторе свойств с выбранной закладкой “Скрыть" нужно выполнить нужную настройку. Источником данных выбираем ICONICS. Simulator.1\diplom. dip. start и выбираем опцию “Скрыть/блокировать, если False". Теперь когда все настройки с элементами Switch On и Switch Off, следует наложить их друг на друга для динамического эффекта.

6.4 Создание элемента отображения уровня в резервуаре

Выбираем инструмент “Численное отображение параметра" в инструментальной панели “Динамика”. В появившейся диалоговой панели в поле Источник данных следует указать локальную переменную ~~tank~~. Теперь уровень в резервуаре будет отображаться не только графически, но и в текстовом виде.


6.5 Настройка анимации для изображения миксеров

Каждое изображение миксера в зависимости от значения уровня в резервуаре должно представлять одно из двух состояний: включён или выключен. Во включённом состоянии лопасть миксера должна вращаться. Данный визуальный эффект создаётся при помощи динамического действия “Анимация". Изображение лопасти каждого миксера, вставленного из библиотеки символов, состоит из графических объектов.

Рис.14 Составные части изображения лопасти миксера

Все эти элементы данного объекта в итоге будут представлять анимацию. Для начала следует выделить лопасть миксера и разгруппировать его при помощи инструмента “Разгруппировать” в инструментальной панели “Расположение". После данной операции необходимо выделить торец миксера и выдвинуть его на передний план. После этого нужно выделить всё изображение лопасти и выбрать инструмент “Анимация" в инструментальной панели “Динамика”. Во всплывшем окне инспектора свойств с выбранной закладкой “Анимация" нужно в редакторе выражений ввести следующее выражение: X= (~~tank~~>300) && {{ICONICS. Simulator.1\diplom. dip. start}}. Благодаря данному выражению нижняя лопасть миксера будет вращаться, когда переменная ~~tank~~ (уровень в резервуаре) будет больше 300, но при условии, что переменная ICONICS. Simulator.1\diplom. dip. start будет равна 1 (то есть если процесс включён). Так же в инспекторе свойств следует отметить опцию “Анимация, если true". Порядок смены кадров будет равным 50 мс. Так же следует установить опцию “Видимый, если выкл” и “Первый кадр, если выкл”.

Рис.15 Настройка свойств динамического действия Анимация для изображения лопасти

Затем для упрощения процесса делаем ещё 2 копии настроенных лопастей и размещаем выше оригинальной лопасти. В итоге получится миксер, состоящий из 3 лопастей.

Р ис.16 Размещение изображений лопастей на оси

Далее следует вызвать инспектор свойств средней лопасти с вкладкой “Анимация" и в выражении, находящемся в поле Источник данных изменить 300 на 500, в результате чего формула будет иметь следующий вид: X= (~~tank~~>500) && {{ICONICS. Simulator.1\diplom. dip. start}}.

После этого нужно проделать аналогичную операцию с верхней лопастью, но 300 заменить на 700: X= (~~tank~~>700) && {{ICONICS. Simulator.1\diplom. dip. start}}.

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

Рис.17. Мнемосхема дискретно-непрерывного процесса


Заключение

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


Список литературы

  1. www.prosoft.ru

  2. www.asutp.ru

  3. www.iconics.com

  4. Джеф Раскин “Интерфейс: новые направления в проектировании компьютерных систем” (Символ-плюс, 2005).

  5. Fastwel SD Dept “Руководство пользователя ICONICS GraphWorX32" (19.05.2000).

  6. Fastwel SD Dept “Начальные сведения и ускоренное ознакомление с основными подсистемами ICONICS GraphWorX32" (10.06.1997)

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5209
Авторов
на СтудИзбе
430
Средний доход
с одного платного файла
Обучение Подробнее