Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Часть 1. Разработка прикладной программы ПИД-регулятора в среде CIMPLICITY Machine Edition.




1. Запустите среду программирования CIMPLICITY Machine Edition. Для этого в операционной среде Windows активируйте «Start» («Пуск») → «Programs» («Программы») → CIMPLICITY Machine Edition → CIMPLICITY Machine Edition. Во время запуска среды CIMPLICITY Machine Edition появится окно «CIMPLICITY Machine Edition», в котором необходимо задать проект, который будет открыт при запуске среды программирования CIMPLICITY Machine Edition – существующий или новый. При создании нового проекта в поле «Create a new project using» («Создать новый проект используя») включите опцию строки «Empty project» («Пустой проект»). Если необходимо запустить сохраненный ранее проект, включите опцию строки «Open an existing project» («Открыть существующий проект») и в списке имеющихся проектов выделите тот, который желаете открыть. Если в списке проектов нет нужного проекта, отметьте точкой пункт «All Projects» («Все проекты») под списком. Если и в этом случае не окажется необходимого проекта, это означает, что проекта нет на персональном компьютере или он был удален. В этом случае необходимо запустить новый проект.

Нажмите кнопку «ОК». При создании нового проекта откроется окно «New Project» («Новый проект»), в котором необходимо задать имя создаваемого проекта в строке «Project Name» («Имя проекта»). Каждый создаваемый проект должен иметь уникальное имя. Имя проекта нужно записать латинскими буквами. Если открывается существующий проект, в среде программирования CIMPLICITY Machine Edition загрузится последний сохраненный вариант проекта.

При запуске CIMPLICITY Machine Edition загружаются средства конфигурирования и программирования ПЛК, которые открываются в соответствующих окнах. Каждое средство конфигурирования и программирования может быть запущено или закрыто через меню «Tools» («Инструменты») путем включения соответствующих опций меню.

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

Основным средством управления процессом разработки прикладных программ является окно навигатора («Navigator»).

2. На следующем шаге выполняется конфигурирование контроллера –задаются семейство программируемых ПЛК, а также тип и порядок подключения используемых технических средств. Чтобы задать семейство программируемых контроллеров, необходимо в меню «Project» («Проект») активировать опцию «Add Target» («Добавить целевую задачу») → «GE Fanuc PLC» («ПЛК GE Fanuc») → «VersaMax PLC» («ПЛК VersaMax»). При этом в окне навигатора на закладке управления текущим проектом, которая отмечена значком , появится целевая задача «Target1» (имя целевой задачи можно изменить). Под названием созданной целевой задачи содержится список средств программирования и конфигурирования выбранного семейства контроллеров VersaMax, включающий:

- списки просмотра данных (Data Watch List);

- средство конфигурирования аппаратной части (Hardware Configuration);

- редактор программ на языке списка команд (IL Block);

- редактор программ на языке релейной логики (LD Block);

- таблицы просмотра адресов (Reference View Tables).

Для выбора состава технических средств, входящих в состав программируемого логического контроллера, войдите в подпрограмму конфигурирования аппаратной части контроллера («Hardware Configuration»). Для этого наведите указатель мыши на строку «Hardware Configuration» под именем целевой задачи и два раза щелкните ЛК мыши. При этом под строкой «Hardware Configuration» появится другая строка «Main Rack» («Основная стойка»). Наведите указатель мыши на строку «Main Rack» и два раза щелкните ЛК мыши. Под строкой «Main Rack» появятся еще две строки: «PWR (IC200PWR001)» - задает тип источника питания контроллера (по умолчанию установлен источник питания IC200PWR001) и «Slot 0 (IC200CPU001)» - задает тип процессорного модуля (по умолчанию установлен процессорный модуль IC200CPU001). Для питания системы автоматического регулирования используется блок питания IC200PWR101, поэтому следует изменить тип модуля питания, записанного в строке PWR. С этой целью наведите указатель мыши на строку «PWR (IC200PWR001)» и щелкните правой кнопкой мыши. Появится контекстное меню, в котором необходимо выбрать пункт «Replace Module…» («Заменить модуль…»). В появившемся диалоговом окне «Module Catalog» («Список модулей») выберите блок питания IC200PWR101 и нажмите кнопку «ОК» для подтверждения выбора. На рабочей панели откроется таблица, в которой приводятся характеристики выбранного модуля питания.

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

- модуль аналогового ввода/вывода смешанного типа IC200ALG430 (содержит 4 аналоговых входа для подключения сигналов постоянного тока с диапазоном 4…20 мА и 2 аналоговых выхода постоянного тока с диапазоном 4…20 мА);

- модуль дискретного ввода/вывода смешанного типа IC200MDD845 (содержит 16 дискретных входов для сигналов постоянного тока на 24 В и 8 дискретных выходов постоянного тока на 24 В).

Модули ввода/вывода устанавливаются на несущую панель IC200CHS002, поэтому, перед тем как задавать тип используемых модулей ввода/вывода, необходимо задать тип используемых несущих панелей. Для этого наведите указатель мыши на строку «Slot 0 (IC200CPU001)» и щелкните правой кнопкой мыши. В появившемся контекстном меню выберите команду «Add Carrier/Base…» («Добавить Несущую панель/Базовую плату…»). В появившемся окне «Module Catalog» («Список модулей») выберите несущую панель IC200CHS002 и нажмите кнопку «ОК». После выбора типа несущей панели в списке элементов основной стойки («Main Rack») появится новая строка «Slot 1 ()» («Слот 1 ()»), которая показывает, что готово новое место для установки модуля ввода/вывода (несущая панель подключена к процессорному модулю). Чтобы задать тип модуля ввода/вывода, который будет установлен в первый слот несущей панели, наведите указатель мыши на строку «Slot 1 ()» и щелкните правой кнопкой мыши. В появившемся контекстном меню выберите команду «Add Module…» («Добавить модуль…»). Откроется окно «Module Catalog» («Список модулей»), в котором необходимо перейти на закладку «Analog Mixed» («Аналоговые смешанного типа») и выбрать модуль IC200ALG430. Для подтверждения выбора нажмите кнопку «ОК».

Аналогичным образом нужно установить новую несущую панель IC200CHS002 и модуль дискретного входа/выхода смешанного типа IC200MDD845. Для этого наведите указатель мыши на строку «Slot 1 (IC200ALG430)» и щелкните правой кнопкой мыши. В появившемся контекстном меню выберите команду «Add Carrier/Base…» («Добавить Несущую панель/Базовую плату…»). В появившемся окне «Module Catalog» («Список модулей») выберите несущую панель IC200CHS002 и нажмите кнопку «ОК». После выбора типа несущей панели в списке элементов основной стойки («Main Rack») появится новая строка «Slot 2 ()» («Слот 2 ()»), которая показывает, что готово новое место для установки модуля ввода/вывода (несущая панель подключена к первой несущей панели). Чтобы задать тип модуля ввода/вывода, который будет установлен во второй слот, наведите указатель мыши на строку «Slot 2 ()» и щелкните правой кнопкой мыши. В появившемся контекстном меню выберите команду «Add Module…» («Добавить модуль…»). Откроется окно «Module Catalog» («Список модулей»), в котором необходимо перейти на закладку «Discrete Mixed» («Дискретные смешанного типа») и выбрать модуль IC200MDD845. Для подтверждения выбора нажмите кнопку «ОК».

При установке новых модулей ввода/вывода на рабочей панели откроются таблицы, в которых приводятся характеристики выбранных модулей.

На этом конфигурация аппаратной части системы автоматического регулирования закончена.

3. После конфигурирования контроллера можно приступать к разработке прикладной программы. Перейдите в редактор программ на языке релейной логики («LD Blocks»). С этой целью в списке средств конфигурирования и программирования контроллера в окне навигатора наведите указатель мыши на строку «LD Blocks» и два раза щелкните ЛК мыши. Под строкой «LD Blocks» появится строка «_MAIN» («_Главная»). Наведите указатель мыши на строку «_MAIN» и два раза щелкните ЛК мыши. При этом на рабочей панели откроется окно редактора прикладных программ на языке релейной логики.

Составьте прикладную программу в соответствии с блок-схемой, приведенной на рис. 6.

Рис. 6. Блок-схема прикладной программы на языке релейной логики.

 

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

· Для вставки нового функционального блока переместите указатель мыши в ту область экрана, где нужно установить блок и два раза щелкните ЛК мыши. Откроется диалоговое окно, в котором содержится полный список библиотечных элементов среды программирования CIMPLICITY Machine Edition. Выберите нужный функциональный блок (наведите на него указатель мыши) и дважды щелкните ЛК мыши. В окне редактора прикладных программ в указанном месте появится выбранный функциональный блок. Функциональный блок можно также выбрать путем набора его полного имени в строке над списком. При этом в списке библиотечных элементов автоматически выделится соответствующий блок. Чтобы поместить выбранный функциональный блок в редактор прикладных программ, необходимо нажать на клавиатуре кнопку Enter.

· Для вставки на схеме нормально разомкнутого контакта (на схеме обозначается ) в списке библиотечных элементов выберите инструмент «NOCON».

· Для вставки на схеме нормально замкнутого контакта (на схеме обозначен ) в списке библиотечных элементов выберите инструмент «NCCON».

· Чтобы нарисовать катушку реле (на схеме обозначается ), в списке библиотечных элементов выберите пункт «COIL».

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

· Для задания значений констант выделите область напротив соответствующего входа или выхода блока (наведите указатель мыши в соответствующую область и щелкните ЛК мыши – при этом область выделится пунктирной линией) и введите с клавиатуры необходимое число. Откроется окно «Enter the name of a variable or expression» («Введите имя переменной или выражение»), содержащее список используемых переменных и регистров памяти, а в строке над списком будет написано значение, которое было введено с клавиатуры. Нажмите клавишу Enter, чтобы присвоить соответствующему входу необходимое значение.

· Чтобы в редакторе прикладных программ задать адрес регистра, выделите область напротив соответствующего входа или выхода блока (наведите указатель мыши в соответствующую область и щелкните ЛК мыши – при этом область выделится пунктирной линией). Дважды щелкните ЛК мыши по выделенному полю. Откроется окно, содержащее список используемых переменных и регистров памяти. В строке над списком ведите с помощью клавиатуры адрес регистра. Необходимо помнить, что адреса начинаются с идентификатора, перед которым должен стоять символ «%». Например, если необходимо ввести адрес 100 регистра общего назначения, необходимо написать «%R100». Нажмите клавишу Enter, чтобы подать на соответствующий вход значение, хранящееся в указанном регистре.

Блок-схема (см. рис. 6) требует пояснений. Блок «BLC CLR WORD» предназначен для очистки содержимого 40 регистров памяти общего назначения для хранения конфигурационных данных блока PID_ISA. Функциональные блоки «BLCMOV INT» предназначены для записи конфигурационных данных в 7 последовательно расположенных регистров памяти (в соответствии с числом входов). При этом выход Q задает адрес регистра, начиная с которого будут записываться данные, подаваемые на входы IN1…IN7. Так, например, в первом блоке «BLCMOV INT» на выходе Q задан адрес регистра %R00102. Это значит, что в регистр %R00102 будет записано число, поданное на вход IN1, в регистр %R00103 будет записано число, поданное на вход IN2, и так далее. При этом в соответствии с табл. 3 вход IN1 первого блока «BLCMOV INT» задает период выборки (ПИД-алгоритм выполняется каждый цикл), IN2 и IN3 задают соответственно верхнюю и нижнюю границу зоны нечувствительности, IN4 задает коэффициент пропорциональности (), IN5 задает постоянную времени дифференцирования (), IN6 задает время интегрирования (), IN7 задает величину смещения выхода CV.

Входы IN1 и IN2 второго блока «BLCMOV INT» задают соответственно верхнюю и нижнюю границы изменения регулирующего воздействия (диапазон изменения выходного регулирующего воздействия составляет 0…10000), остальные настроечные параметры блока PID_ISA задаются равными 0.

Функциональные блоки «SCALE INT» предназначены для масштабирования входного сигнала от датчика температуры, поступающего через аналоговый вход %AI00001 на вход блока (первый блок), и выходного сигнала CV блока PID_ISA, который после масштабирования подается на аналоговый выход %AQ00001 (второй блок). Значения, подаваемые на входы IHI и ILO, задают соответственно верхний и нижний пределы изменения входного сигнала (из регистра %AI00001). Значения, подаваемые на входы OHI и OLO, задают соответственно верхний и нижний пределы изменения выходного сигнала блока «SCALE INT» (значение, которое будет храниться в регистре %R00001). Численные значения, подаваемые на входы первого блока «SCALE INT» определены в результате эксперимента. Так, значению 21913 во входном регистре %AI00001 соответствует температура в печи 110 °С, а значению 5734 во входном регистре %AI00001 соответствует температура в печи 20 °С. Чтобы не усложнять программу дополнительными элементами (блоками преобразования из целочисленных переменных в вещественные и обратно) и при этом обеспечить высокую точность, в программе используются блоки масштабирования целочисленных данных, при этом количество десятичных разрядов увеличено на 2. То есть два последних числа в преобразованном значении (которое будет храниться в регистре %R00001) будут соответствовать сотым долям градуса Цельсия. Поэтому на вход OHI подается значение 11000, что соответствует температуре 110,00 °С, а на вход OLO подается значение 2000, что соответствует температуре 20,00 °С. Аналогичным образом производится масштабирование выходного регулирующего воздействия блока PID_ISA. При этом выход регулятора изменяется от 0 до 100% (два последних разряда в значении, подаваемом на вход IHI, задают сотые доли процента).

Значения булевых переменных, хранящихся в регистрах %М00001 и %М00002, сигнализируют о правильности работы функциональных блоков «BLCMOV INT» и «PID_ISA».

4. После завершения разработки прикладной программы необходимо проверить ее на наличие ошибок. Для этого активируйте команду «Validate All» («Проверить все») в меню «Project» («Проект»). Процесс проверки правильности составления прикладной программы отображается в окне «Feedback Zone» («Информационная зона»). Если программа выполнена правильно, то на закладке «Build» («Разработка») в окне «Feedback Zone» должна появится надпись «<имя целевой задачи> - 0 error(s), 0 warning(s)». В противном случае появится сообщения, сигнализирующие о наличии ошибок, или предупреждения о некорректном составлении прикладной программы, которые необходимо устранить, прежде чем приступать к следующему шагу программирования контроллеров.

Проверку правильности составления прикладной программы можно также осуществить с помощью команды «Validate “<имя целевой задачи>”» в меню «Target» («Целевая задача»). Правильность составления программы также отслеживается в окне «Feedback Zone».

5. Если прикладная программа составлена без ошибок, или после того, как в программе будут исправлены все ошибки, необходимо загрузить ее в контроллер. Предварительно необходимо очистить память ПЛК. Для этого активируйте команду «Clean Build Folder “<имя целевой задачи>”». После того, как память контроллера будет очищена, активируйте команду «Download “<имя целевой задачи> to PLC…”» в меню «Target» («Целевая задача») или нажмите клавишу F8 на клавиатуре. Появится окно «Building in Progress» («Процесс создания»). После загрузки прикладной программы в контроллер окно «Building in Progress» закроется. В процессе загрузки могут появиться предупредительные сообщения об ошибках. Необходимо исправить эти ошибки и повторить процедуру загрузки снова. По окончании загрузки прикладной программы в ПЛК необходимо запустить ее на исполнение. Для этого следует активировать кнопку на панели инструментов CIMPLICITY Machine Edition.

6. Среда программирования CIMPLICITY Machine Edition позволяет в режиме реального времени в редакторе прикладной программы отслеживать текущее состояние переменных. Для этого необходимо установить режим обмена данными с контроллером с помощью кнопки (online/offline) на панели инструментов. При успешном завершении процесса соединения с контроллером в редакторе прикладных программ в режиме реального времени будут отображаться текущие значения измеряемых параметров и состояние элементов программы. Однако такая форма наблюдения за работой элементов программы неудобна, так как не дает визуального представления о характере изменения значений переменных во времени. Контролировать процесс изменения значений переменных удобно с помощью трендов (временных диаграмм). Отображение временных диаграмм изменения технологических параметров производится с помощью системы визуализации (Data Monitor). Чтобы перейти в систему визуализации, необходимо в окне навигатора переключиться на закладку утилит, отмеченную значком , и открыть окно визуального представления данных (наведите указатель мыши на пункт и дважды щелкните ЛК мыши). На рабочей панели откроется окно просмотра временных диаграмм.

Наведите указатель мыши на временную диаграмму и щелкните правой кнопкой мыши. В появившемся контекстном меню выберите команду «Add» («Добавить»). Откроется окно «Variable» («Переменная»), содержащее список используемых в проекте переменных. В качестве переменной для отображения на временной диаграмме выберите «R0002» (регистр, в котором хранится значение выхода функционального блока PID_ISA), для чего дважды щелкните ЛК мыши по строке «R0002» в списке переменных.

Аналогичным образом выведите на временную диаграмму значение переменной, хранящееся в регистре «R0001» (текущее значение регулируемого параметра).

7. Исследование работы функционального блока PID_ISA заключается в том, чтобы определить реакцию ПИД-регулятора (функционального блока PID_ISA) на скачкообразное изменение сигнала задания. Прежде чем проводить исследование необходимо проделать следующие подготовительные операции. Чтобы объект регулирования не оказывал влияние на процесс исследования, необходимо в прикладной программе исключить связь с объектом. Для этого в первом функциональном блоке «SCALE INT» (который стоит перед блоком «PID_ISA») на выходе OUT изменить название регистра на %R00010. Затем запишите в регистр %R00001 (вход PV блока PID_ISA) значение 5000. Для этого наведите курсор мыши на область перед входом PV блока PID_ISA (этот вход связан с регистром %R00001), щелкните правой кнопкой мыши и в появившемся контекстном меню выберите команду «Write value» («Записать значение»). В появившемся диалоговом окне введите значение 5000 и нажмите клавишу «Enter». В этом случае значения сигналов, подаваемых на входы SP и PV, будут равны 5000, то есть сигнал рассогласования равен 0 и выход блока PID_ISA не изменяется. В CIMPLICITY Machine Edition имеется возможность быстрого переключения между редактором прикладных программ и окном визуализации временных диаграмм. Для этого на рабочей панели имеются закладки открытых (используемых) окон. Чтобы перейти в редактор прикладных программ, достаточно навести указатель мыши на закладку «_MAIN» и щелкнуть ЛК мыши. Переключение в окно визуализации временных диаграмм осуществляется с помощь закладки «Data Monitor..».

8. Исследование П-алгоритма регулирования. Чтобы блок PID_ISA работал в соответствии с П-законом регулирования, необходимо из ПИД-алгоритма устранить И- и Д- составляющие. Для этого в первом функциональном блоке «BLKMOV INT» на входе IN5 необходимо установить 0 (постоянная времени дифференцирования равна 0), а на входе IN6 – 0 (постоянная времени интегрирования стремится к ). Загрузите полученную программу в контроллер и запустите проект на исполнение. Установите режим обмена данными с контроллером с помощью кнопки (online/offline) на панели инструментов. Откройте окно отображения временной диаграммы и убедитесь, что на ней отображаются значения переменных, хранящиеся в регистрах %R00001 и %R00002. Снова перейдите в окно редактора прикладных программ и задайте скачкообразное изменение сигнала рассогласования. Для этого измените величину регулируемого параметра с 5000 до 7000 (на вход PV блока «PID_ISA» необходимо записать число 7000, что соответствует изменению температуры в печи с 50 до 70 °С). Переключитесь в окно отображения временных диаграмм и посмотрите реакцию П-регулятора на скачкообразное изменение сигнала рассогласования. Снова перейдите в окно редактирования прикладных программ и установите сигнал рассогласования равным 0 (на входе PV блока «PID_ISA» снова задайте 5000). Сохраните временную диаграмму отклика ПИД-регулятора на скачкообразное изменение сигнала рассогласования.

9. Исследование ПИ-алгоритма регулирования. Чтобы блок PID_ISA работал в соответствии с ПИ-законом регулирования, необходимо в ПИД-алгоритме задать П- и И- составляющие. Д-составляющая должна быть равна 0. Для этого в первом функциональном блоке «BLKMOV INT» на входе IN5 должен быть установлен 0 (постоянная времени дифференцирования равна 0), а на входе IN6 – 100 (постоянная времени интегрирования равна 10 с). Загрузите полученную программу в контроллер и запустите проект на исполнение. Установите режим обмена данными с контроллером с помощью кнопки (online/offline) на панели инструментов. Откройте окно отображения временной диаграммы и убедитесь, что на ней отображаются значения переменных, хранящиеся в регистрах %R00001 и %R00002. Снова перейдите в окно редактора прикладных программ и задайте скачкообразное изменение сигнала рассогласования. Для этого измените величину регулируемого параметра с 5000 до 7000 (на вход PV блока «PID_ISA» необходимо записать число 7000, что соответствует изменению температуры в печи с 50 до 70 °С). Переключитесь в окно отображения временных диаграмм и посмотрите реакцию ПИ-регулятора на скачкообразное изменение сигнала рассогласования. Снова перейдите в окно редактирования прикладных программ и установите сигнал рассогласования равным 0 (на входе PV блока «PID_ISA» снова задайте 5000). Сохраните временную диаграмму отклика ПИ-регулятора на скачкообразное изменение сигнала рассогласования.

10. Исследование ПИД-алгоритма регулирования. Чтобы блок PID_ISA отрабатывал ПИД-закон регулирования, необходимо задать все составляющие ПИД-алгоритма. Установите Д-составляющую равной
10 с и И-составляющую равной 10 с. Для этого в первом функциональном блоке «BLKMOV INT» на входе IN5 должен быть установлен 1000 (постоянная времени дифференцирования равна 10 с), а на входе IN6 – 100 (постоянная времени интегрирования равна 10 с). Загрузите полученную программу в контроллер и запустите проект на исполнение. Установите режим обмена данными с контроллером с помощью кнопки (online/offline) на панели инструментов. Откройте окно отображения временной диаграммы и убедитесь, что на ней отображаются значения переменных, хранящиеся в регистрах %R00001 и %R00002. Снова перейдите в окно редактора прикладных программ и задайте скачкообразное изменение сигнала рассогласования. Для этого измените величину регулируемого параметра с 5000 до 7000 (на вход PV блока «PID_ISA» необходимо записать число 7000, что соответствует изменению температуры в печи с 50 до 70 °С). Переключитесь в окно отображения временных диаграмм и посмотрите реакцию ПИД-регулятора на скачкообразное изменение сигнала рассогласования. Снова перейдите в окно редактирования прикладных программ и установите сигнал рассогласования равным 0 (на входе PV блока «PID_ISA» снова задайте 5000). Сохраните временную диаграмму отклика ПИД-регулятора на скачкообразное изменение сигнала рассогласования.

11. Сохраните проект, для чего в меню «File» («Файл») выберите команду «Save Project» («Сохранить проект»).





Поделиться с друзьями:


Дата добавления: 2017-02-24; Мы поможем в написании ваших работ!; просмотров: 1095 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Велико ли, мало ли дело, его надо делать. © Неизвестно
==> читать все изречения...

2466 - | 2142 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.