лабораторные_scada. Методические указания к лабораторным работам Составители И. П. Ефимов Д. А. Солуянов Ульяновск 2010
Скачать 2.86 Mb.
|
толщина стенок задайте ту же толщину, что и у емкости. Раскройте раздел материал двойным щелчком мыши по подчеркнутой строчке материал, если слой еще не раскрыт. Выберите значение true в поле выбрать из списка. Выберите требуемый материал в поле материал, к примеру, олово. В поле стандартная гравировка задайте гравировку, к примеру, шлифовку. Емкость примет вид, изображенный на рис. 3.35 Рис. 3.35 Пример емкости c. Создание насоса. Щелкните правой клавишей мыши по иконке . Среди предложенных инструментов выберите . Для размещения насоса на экране задайте противоположные углы прямоугольника, в который будет вписан насос щелчком левой клавиши мыши. Щелкните левой клавишей мыши по иконке . Выделите насос. Если не открылось окно свойств насоса, дважды щелкните левой клавишей мыши по созданному насосу. Раскройте раздел материал, двойным щелчком по подчеркнутому тексту материал, если он не раскрыт еще. В поле выбрать из списка установит значение true. В поле материал выберите необходимый материал, к примеру, пластик черный. В поле форма насоса выберите нужную форму насоса. Статическое изображение примет вид, изображенный на рис. 3.36 110 Рис. 3.36 Размещение насоса d. Создание труб. Щелкните правой клавишей мыши по иконке . Среди предложенных инструментов выберите . Создайте трубу по которой продукт поступает в емкость и по которой из емкости течет в насос. Для этого щелчком левой клавиши мыши отметьте местоположение начала трубы. Переведите курсор мыши в положение изгиба трубы и снова щелкните левой клавишей мыши. Таким образом, отмечаются все точки изгиба трубы. Когда курсор переведен в положение, где размещается конец трубы, щелкните правой кнопкой мыши, завершая создание текущей трубы. Создайте аналогично трубу, по которой продукт поступает в насос и вытекает из него. Для редактирования свойств каждой трубы выделите трубу. Если не открылось окно свойств, дважды щелкните левой клавишей мыши по трубе. В поле толщина подберите толщину каждой трубы, которая лучше будет подходить для рисунка. В поле базовый цвет выберите необходимый цвет, к примеру . Статическое изображение примет вид, указанный на рис. 3.37 Рис. 3.37 Создание труб 111 7. Создание динамического изображения. a. Импорт изображения. Выделите строку ресурсы навигатора проекта. Вызовите контекстное меню. Выберите строку создать группу. Среди предложенных групп выберите картинки (рис. 3.38). Рис. 3.38 Создание группы картинки Выделите созданную группу картинки, вызовите контекстное меню, выберите создать компонент. Среди предложенных компонентов выберите библиотеку изображений (рис. 3.39). Рис. 3.39 Создание библиотеки изображений Для импортирования изображения дважды щелкните левой клавишей мыши по созданной библиотеке изображений. Откроется пустое окно. В данном пустом окне вызовите контекстное меню и выберите импортировать . Откроется диалоговое окно для открывания графического файла. Откройте графический файл изображения, которое будет использоваться в дальнейшем. b. Создание динамической заливки. Создайте многоугольник. Щелкните левой клавишей мыши по иконке . Если на инструментальной панели нет иконки , щелкните правой клавишей мыши по одной из иконок: , , , . Среди предложенных инструментов выберите . Для размещения многоугольника щелкните левой клавишей мыши там, где должен располагаться один из углов многоугольника. Задайте точки излом щелчком левой клавишей мыши там, где будут располагаться другие углы 112 многоугольника. Последний угол многоугольника следует отмечать щелчком правой клавиши мыши. Результат создания многоугольника приведено на рис. 3.40 Рис. 3.40 Создание многоугольники для заливки Выделите созданный многоугольник. Если окно свойств не открылось, дважды щелкните левой клавишей мыши по созданному многоугольнику. Раскройте раздел заливка двойным щелчком левой клавиши мыши, если он не раскрыт. В появившемся поле стиль выберите без заливки. В результате изображение примет вид, указанный на рис3.37. Перейдите на закладку динамическая заливка . Поставьте флажок разрешено . Раскройте раздел «слой». Для этого дважды щелкните левой клавишей мыши на тексте слой. В появившемся поле имя введите имя для слоя. Произведите привязку слоя к аргументу, посредством которого произведена привязка тренда к канала, хранящему значение уровня продукта в емкости . В поле тип заливки выберите изображение. Щелкните в поле изображение . Откроется окно, предлагающее выбор изображений, хранящихся в библиотеке изображений, созданной ранее (рис. 3.41). Выберите необходимое изображение и щелкните левой клавишей мыши по кнопке готово. В поле Макс. установите значение верхней границы диапазона значений, хранимых в канале, созданном ранее, а в поле Мин.— нижней границы. 113 Рис. 3.41 Выбор изображения для заливки 8. Запуск проекта. Произведите запуск проекта, аналогично первой работе . Пример результата исполнения созданного проекта приведен на рис. 3.42. Рис. 3.42 Пример результата запуска 114 Вопросы для самоконтроля: 1. Опишите различие входных и выходных каналов. 2. Что такое привязка, зачем она нужна, как производится? 3. Что такое навигатор проекта? 4. Как импортируется изображение? 5. Как создаются компоненты базы каналов в Trace Mode? 6. Как размещается объект на экране? 7. Зачем нужно окно свойств объекта, что оно дает? 8. Чем отличается статическое изображение от динамического? 9. Как создается статическое изображение? 10. Как создается динамическое изображение? 11. Какие элементы изображения могут быть динамическими в Trace Mode? 115 Работа 3 Программирование на языках Texno ST и Texno FBD. Цель работы: изучить языки Texno ST и Texno FBD среды Trace Mode, реализовать систему АСУ ТП с использованием программной обработки. Задание : 1. Взять за основу проект, созданный при выполнении второй лабораторной работы (статическое и динамической изображение), добавить каналы, которые передают значение стоимости продукта, расхода, суммарного расхода, суммарной стоимости продукта, периода генерации сигнала, удалить использовавшийся во второй лабораторной работе генератор. У всех каналов следует снять флаг использовать на панели обработка при редактировании канала. 2. Добавить, кнопки, при нажатии на которые будет вводиться стоимость продукта, период генерации уровня продукта в емкости, расход, объекты текст для отображения суммарного расхода продукта, стоимости израсходованного продукта, стоимости продукта, периода генерации уровня продукта в емкости, расхода и стоимости. 3. Добавить FBD диаграмму, генерирующую уровень продукта в емкости. Если период генерации меньше 10, то программа должна установить период равный 10. Программа должна возвращать отмасштабированный сигнал, то есть значения должны изменяться в заданном диапазоне. 4. Добавить программу ST, которая проверяет значение стоимости и расхода и производит расчеты. Если значение стоимости или расхода меньше 1, то устанавливает соответствующий параметр равным 1. Производит расчет суммарного расхода продукта и суммарной стоимости израсходованного продукта. 116 Примечания : 1. У всех каналов и у программ должен быть установлен при редактировании одинаковый период 1— 3 секунды. 2. Вычислять суммарный расход следует по формуле: Обработки Период Расход расход Предыдущий расход Суммарный _ _ _ ⋅ + + = , где Суммарный _ расход — аргумент программы возвращающий значение суммарного расхода входному значению канала , который передает значение суммарного расхода ; Предыдущий _ расход — глобальная переменная , содержащая значение суммарного расхода , вычисленное при предыдущем вызове программы ; Период _ Обработки — аргумент привязанный к аргументу период пересчета канала , который передает значение расхода 3. После вычисления суммарного расхода следует глобальной переменной Предыдущий _ расход присвоить вычисленное значение Суммарный _ Расход , суммарную стоимость продукта вычислить как произведение вычисленного значения суммарного расхода на стоимость продукта Ход работы 1. Создание проекта Сохраните проект , созданный при выполнении работы 2 под новым именем Удалите генератор , привязанный к каналу Уровень Выделите объект экран и вызовите контекстное меню Выберите редактировать В открывшемся окне редактирования канала выберите период равным 1, единицу измерения — сек Аналогично измените период пересчета канала , который хранит уровень продукта в емкости 2. Создание необходимых каналов Добавьте каналы хранящие значение стоимости продукта , расхода продукта , периода генерации Для лучшего восприятия назовем канал , хранящий стоимость продукта как стоимость , хранящий расход продукта — расход , период генерации — период 117 генерации. Установите тип каждого канала— Input (см. работу 1). Добавьте каналы, хранящие результаты вычислений: суммарный расход продукта, суммарная стоимость продукта. Для удобства восприятия назовем канал, хранящий суммарную стоимость продукта, как суммарная стоимость, а суммарный расход продукта— суммарный расход. Установите тип указанных каналов— Intput. Для всех каналов установим одинаковый период пересчета значения. Для этого вызовите окно редактирования для каждого канала. В поле период установите необходимый период пересчета 1 и единицу измерения— секунду (сек). 3. Создание кнопок для задания необходимых параметров. Щелкните левой кнопкой мыши по иконке . Если данной иконки нет панели инструментов, то щелкните правой клавишей мыши по одной из иконок: или . Разместите кнопки на экране. Для этого задайте противоположные углы кнопок щелчком левой кнопки мыши (рис. 3.43). Для каждой кнопки откройте окно свойств. В поле текст введите назначение кнопки. Так, для кнопки, которая устанавливает период генерации можно ввести «Установить период», устанавливает расход продукта— «установить расход», устанавливает стоимость продукта— «Установить стоимость», к примеру. Перейдите на закладку действия . Выделите строку mousePressed и вызовите контекстное меню (рис. 3.44). Выберите в появившемся контекстном меню строку передать значение. В появившемся поле тип передачи установите ввести и передать. В поле результат произведите привязку к входному значению канала, которому будет передаваться вводимое значение (пример настройки кнопки— рис. 3.45). В результате привязки будут созданы четыре аргумента в таблице окна свойств привязки (рис. 3.46). Рис. 3.43 Размещение кнопок 118 Рис. 3.44 Создание события Рис. 3.45 Настройка события Рис. 3.46 Атрибуты для ввода данных 4. Создание объектов текст. Для вывода значений, хранимых в ряде каналов, создайте объекты текст. Пример создания объектов текст изображен на рис. 3.47. Объекты текст, расположенные слева, выводят подсказку (где какой параметр выведен), а справа— значения, хранимые каналами. Привязку объектов текст, расположенных в правом столбце, 119 производите к реальным значениям соответствующих каналов. Для привязки, при необходимости, создайте дополнительные аргументы, как показано на рис. 3.48 Рис. 3.47 Создание объектов текст Рис. 3.48 Атрибуты экрана 5. Произведите расчет множителя K и смещения С. Масштабирование сигнала в FBD программе будет производиться по формуле: Y = K·X + C, где Y— результат преобразования; Х— входное значение канала; К— множитель; C— смещение. FBD блоки, производящие генерацию сигнала возвращаеют сигнал, изменяющийся в диапазоне [-1; +1]. Найдите значение множителя K и смещения Z, которые позволят получить требуемый диапазон изменения результата преобразования (диапазон сигнала). 120 Пример : необходимо обеспечить диапазон сигнала [0; 1]. Множитель К составит 0,5, смещение Z— 0,5. 6. Создание FBD диаграммы. Выделите группу каналы RTM узла и вызовите контекстное меню. В появившемся меню выберите создать компонент . Среди предложенных вариантов выберите программа (рис. 3.49). Выделив созданную программу и, щелкнув левой клавишей мыши, можете изменить имя программы, например, на «синусоида». Выделите созданный объект-программу и вызовите контекстное меню. В появившемся меню выберите редактировать. Откроется окно, аналогичное редактированию канала float. В поле период выберите 1, выберите единицу измерения— секунду (сек). После настройки периода пересчета окно редактирования канала можно закрыть. Двойным щелчком левой клавиши мыши по созданной программе или вызвав контекстное меню и выбрав строчку редактировать шаблон, вызовите окно для создания (или редактирования) программы. Откроется окно, представленное на рис. 3.50. Рис. 3.49 Создание объекта программа В структуре программы выделите строчку аргументы. Заполните появившуюся таблицу. Каждая строка— аргумент программы. Установите тип In для аргументов, которые будут передавать данные в программу, Out— которые будут передавать данные из программы, In/Out— которые будут передавать в программу и из нее. Пример создания аргументов программы для генерирования синусоидального сигнала приведен на рис. 3.51. 121 Рис. 3.50 Окно редактирования шаблона программы Рис. 3.51 Атрибуты программы на языке Texno FBD Выделите строку программа# в структуре программы. Среди предложенных языков программирования выберите FBD диаграмму (рис. 3.52). Рис. 3.52 Выбор языка 122 Щелкните левой клавишей мыши по иконке или выберите строку палитра FBD блоков в меню вид, если палитра FBD блоков(рис. 3.52) не открыта. Рис. 3.52 Окно выбора FBD блоков Перейдите на закладку сравнение. Нажмите левую клавишу мыши на блоке больше или равно. Переместите его на рабочее поле и отпустите клавишу мыши. Аналогично разместите на рабочем поле FBD блоки(рис. 3.53): выбор из двух (закладка выбор), синусоидальный сигнал (закладка ), масштабирование (закладка арифметические). Произведите привязку блоков между собой. Для привязки выхода одного блока к входу другого наведите курсор мыши на соответствующий выход (вход) и нажмите левую клавишу мыши. Не отпуская левой клавиши мыши, наведите курсор на необходимый вход (выход) и отпустите левую клавишу мыши. Для привязки аргумента программы к соответствующему входу(выходу) выделите соответствующий вход (выход) и вызовите контекстное меню. В появившемся меню выберите привязать. Среди предлагаемых аргументов выберите необходимый (рис. 3.53). Для создания константы выберите вход, вызовите контекстное меню и выберите привязать. В появившемся поле вместо выбора аргумента программы введите константу. На вход IN2 блока больше или равно и IN0 блока выбора из двух следует подавать константу 10, согласно заданию. Вход IN2 блока больше или равно и IN0 блока выбора из двух следует привязать к аргументу, который передает период генерации в программу. Вычисленные ранее значения констант K и С следует подать на соответствующие входы 123 блока масштабирование. Программа, генерирующая сигнал, изменяющийся в диапазоне от [0;1] примет вид, изображенный на рис. 3.53. После создание программы проверьте ее. Для этого щелкните левой клавишей мыши по иконке «компиляция» . В окне «сообщения» будет выведен результат компиляции. Если окно «сообщения» закрыто, то следует щелкнуть по иконке или выбрать в меню «вид» окно сообщения. При отсутствии ошибок будет написано: «Программа#1.tms compiled successfully», к примеру. При наличии ошибки будет написано: «Е0011 Синтаксическая ошибка », к примеру. Рис. 3.53 Программа на языке Texno FBD 7. Создание ST программы. Создайте объект программа в группе каналы RTM узла. Название программы можно изменить на «обработка», к примеру. Установите период пересчета равным 1 секунде. Откройте программу двойным щелчком левой клавиши мыши по созданному объекту программы. В структуре программы выберите аргументы. Создайте аргументы, которые будут передавать в программу расход продукта, стоимость продукта, период пересчета каналов, а также аргументы, которые будут возвращать из программы суммарный расход продукта и суммарную стоимость всего израсходованного продукта (рис. 3.54). |