- •Оглавление
- •Введение
- •1.Проверка на достоверность сигналов с усо
- •2.Структура алгоблока. Организация связи между алгоблоками
- •3.Программная реализация защиты по дискретному каналу
- •3.1.1 Таймер
- •3.1.2Триггер
- •3.1.3Программа защиты от «дребезга»
- •3.2.Программа защиты по дискретному каналу
- •3.3.Первая программа защиты по аналоговому каналу
- •3.3.1Конфигурационная таблица программы 1
- •3.4.Вторая программа защиты по аналоговому каналу
- •3.4.1Конфигурационная таблица программы 2
- •3.5.Оценка величины гистерезиса в нуль-органе
- •3.6.Алгоритм расчёта среднего значения в асутп
- •3.7.Защита от выброса или провала аналогового сигнала
- •3.8.Контрольные вопросы
- •4.Алгоритм простого блока мажоритарного выбора два из трёх
- •4.1.Программа простого блока мажоритарного выбора
- •5. Алгоритм мажоритарного выбора три из пяти
- •5.1.Программа
- •5.2.Конфигурационная таблица
- •6.Программа выбора исправного канала из двух каналов
- •6.1.Конфигурационная таблица
- •6.2.Контрольные вопросы
- •7.Управление по циклограмме
- •8.Алгоритм синтеза циклического управления
- •8.1.Циклограмма 1. Типовая циклограмма
- •8.2.Циклограмма 2. Управление в зависимости от параметра.
- •8.3.Циклограмма 3. Программа с повторяющимися ситуациями
- •8.4.Циклограмма 4. Задание числа циклов с лп контроллера
- •8.5.Циклограмма 5. Пуск циклограммы по команде оператора
- •8.6.Контрольные вопросы
- •9.Синтез дискретных систем управления
- •9.1.Классический алгоритм синтеза дискретного автомата
- •9.1.1Автомат с памятью и с защитой по каналам
- •9.2.Автомат с контролем последовательности ситуаций
- •9.3.Описание программы управления электрозадвижкой
- •9.4.Контрольные вопросы
- •10.Организация связи с верхним уровнем16
- •11.Управление задвижкой по циклограмме
- •12.Практические особенности реализации циклограмм
- •13.Перевод программы c языка fbd в dxf-формат
- •14.Порядок получения конфигурационной таблицы
- •15.Спецификация представленных в пособии программ
- •16.Варианты заданий
- •Литература
- •Приложение а
- •1.Элементарные функции алгебры логики
- •2.Свойства элементарных функций
- •3.Принцип двойственности
- •4. Разложение булевой функции по переменным
- •5. Полнота системы
- •5.1.Полином Жегалкина
- •5.2.Теорема Жегалкина
- •1.Минимизация булевых функций
- •1.1.Минимизация нормальных форм
- •1.2.Алгоритм Квайна построения сокращенной днф
- •1.3.Метод Блейка
- •1.4. Построение сокращенной днф с помощью кнф
- •1.5.Построение всех тупиковых днф.
- •Алгоритм минимизации функций в классе днф
- •Алгоритм минимизации функций в классе кнф
- •Алгоритм минимизации функций в классе нормальных форм
- •1.6.Минимизация частично определенных функций
- •1.7. Минимизация с использованием карт Карно
- •1.8.Код Грея
- •Приложение б Краткая биография Жегалкина и.И.
- •Приложение в Языки программирования промышленных контроллеров
- •Приложение г Имитаторы аналоговых и дискретных сигналов
- •Приложение д25 Программы для овен плк-150 и плк-154
- •Реализация дискретных систем управления на контроллерах
- •400131 Волгоград, пр. Ленина, 28, корп. 1.
- •400131, Г. Волгоград, пр. Ленина, 28, корп. 7.
8.2.Циклограмма 2. Управление в зависимости от параметра.
Представим циклограмму (рис.30), в которой команды формируются не по времени, а в зависимости от изменения технологического параметра. На рис.30 этот параметр обозначен Х (единица измерения 0С). Программная имитация автоматического изменения сигнала формируется с генератора треугольных импульсов. Предусмотрена возможность и ручного изменения параметра с имитатора аналоговых и дискретных сигналов. Поясним на примере трёх команд: С1, С2 и С3. По оси Х пусть будет температура. На представленном интервале температуры первая команда выдаётся два раза: С11 – на интервале от 5 до 100С, второй раз С12 – на интервале от 30 до 400С. Введённые обозначения команд используем и в программе. Наличие сквозных обозначений позволяет легко анализировать программу (рис.32). Такие обозначения значительно упрощают работу с программой и снижают вероятность ошибок при корректировке программы во время эксплуатации.
Рис. 30 Циклограмма
В качестве сигнала имитирующего изменение температуры в программе используется генератор треугольных импульсов (рис.32) с возможностью остановки изменения сигнала в любой точке. Генератор треугольных импульсов реализован в следующих алгоблоках: в алгоблоке 6 расположен триггер (ТРИ), в седьмом – переключатель (ПЕР), в восьмом – интегратор (ИНТ), в пятом – пороговый элемент (ПОР).
Рис. 31 Изменения температуры
Суть алгоритма генератора треугольных импульсов. Составной частью программы (рис.32) является генератор треугольных сигналов.
Рис. 32 Программа реализации циклограммы
Основу генератора составляет интегратор (ИНТ). На интегратор сигнал поступает с переключателя (ПЕР), на выходе которого периодически формируется то отрицательное, то положительное значение. Переключателем управляет сигнал с триггера (ТРИ).
Триггер устанавливается в единичное состояние сигналом с порогового элемента интегратора (выход D). Сброс триггера осуществляется дискретным сигналом с порогового элемента алгоритма ПОР. Остановка генератора производится первым тумблером с имитатора аналоговых и дискретных сигналов.
Можно дополнить генератор возможностью произвольного самостоятельного изменения аналогового сигнала с имитатора. Для этого следует отключить генератор и подключить аналоговый сигнал с имитатора или завести аналоговый сигнал на сумматор. Когда работает генератор, сигнал с имитатора устанавливают в ноль. При такой реализации можно остановить генератор и далее (т.е. с этой точки) изменять сигнал с имитатора.
Отображение информации на ЛП:
-
Номер входа
Цифровой индикатор
Шифр входа
Шкала
Наименование
5
ЦИ
Z1
0-100
Значение сигнала в первом канале, суммированное со значением генератора треугольных импульсов
7
ЦИ
Z2
0-100
Значение сигнала с генератора треугольных импульсов
9
ЦИ
Z3
0-100
Значение сигнала в первом канале до сумматора
Конфигурационная таблица
Имя схемы: UPRZIKL2.rem
Дата создания отчета : 22/02/2010(СНГ)
С И С Т Е М Н Ы Е П А Р А М Е Т Р Ы:
Системный номер контроллера: 3
Модель контроллера: Логическая
Комплектность УСО группы А: 8 ан.вх. и 2 ан.вых.(1)
Комплектность УСО группы Б: 8 д.вх. и 8 д.вых.(5)
Временной диапазон контроллера: Младший(Сек/Мин)
Время цикла: 0.2 сек.
А Л Г О Р И Т М Ы И К О Н Ф И Г У Р А Ц И Я :
Таблица 14
Ал.б. |
Алгоритм |
Мод |
МВ |
Вход |
Тип |
Значение |
Источник |
|
|
|
|
N Имя |
|
|
Ал.б./Выход |
01 |
ОКЛ(02) |
00 |
- |
|
|
|
|
|
|
|
|
1 Cпус |
0 |
0 |
|
|
|
|
|
2 Cст |
0 |
0 |
|
|
|
|
|
3 Cсбр |
0 |
0 |
|
|
|
|
|
4 Nоп |
9 |
0 |
|
|
|
|
|
5 z1 |
0 |
|
17/1(Y) |
|
|
|
|
6 Nz1 |
9 |
8 |
|
|
|
|
|
7 z2 |
0 |
|
8/1(Y) |
|
|
|
|
8 Nz2 |
9 |
8 |
|
|
|
|
|
9 z3 |
0 |
|
16/1(Y1) |
|
|
|
|
10 Nz3 |
9 |
8 |
|
05 |
ПОР(59) |
01 |
- |
|
|
|
|
|
|
|
|
1 X11 |
8 |
инверсия |
8/1(Y) |
|
|
|
|
2 X21 |
8 |
0 |
|
|
|
|
|
3 0.1 |
8 |
0.1 |
|
|
|
|
|
4 0 |
8 |
0 |
|
06 |
ТРИ(76) |
02 |
- |
|
|
|
|
|
|
|
|
1 Cs1 |
0 |
|
8/2(D) |
|
|
|
|
2 Cr1 |
0 |
|
5/1(D1) |
07 |
ПЕР(57) |
03 |
- |
|
|
|
|
|
|
|
|
1 X1=0 |
8 |
0 |
|
|
|
|
|
2 C1 |
0 |
|
9/1(D1) |
|
|
|
|
3 X2 |
8 |
10 |
|
|
|
|
|
4 C2 |
0 |
инверсия |
6/1(D1) |
|
|
|
|
5 X3 |
8 |
-10 |
|
|
|
|
|
6 C3 |
0 |
|
6/1(D1) |
08 |
ИНТ(33) |
- |
М |
|
|
|
|
|
|
|
|
1 X |
8 |
|
7/1(Y) |
|
|
|
|
2 T=20 |
1 |
10 |
|
|
|
|
|
3 Снач |
0 |
0 |
|
|
|
|
|
4 0 |
8 |
0 |
|
|
|
|
|
5 45 |
8 |
45 |
|
09 |
ВДБ(10) |
04 |
- |
|
|
|
|
10 |
НОР(60) |
05 |
- |
|
|
|
|
|
|
|
|
1 X11 |
8 |
|
17/1(Y) |
|
|
|
|
2 X21 |
8 |
0 |
|
|
|
|
|
3 5 |
8 |
5 |
|
|
|
|
|
4 Xм1 |
8 |
0 |
|
|
|
|
|
5 Xd1 |
8 |
0 |
|
|
|
|
|
6 X12 |
8 |
|
17/1(Y) |
|
|
|
|
7 X22 |
8 |
0 |
|
|
|
|
|
8 10 |
8 |
10 |
|
|
|
|
|
9 Xм2 |
8 |
0 |
|
|
|
|
|
10 Xd2 |
8 |
0 |
|
|
|
|
|
11 X13 |
8 |
|
17/1(Y) |
|
|
|
|
12 X23 |
8 |
0 |
|
|
|
|
|
13 30 |
8 |
30 |
|
|
|
|
|
14 Xм3 |
8 |
0 |
|
|
|
|
|
15 Xd3 |
8 |
0 |
|
|
|
|
|
16 X14 |
8 |
|
17/1(Y) |
|
|
|
|
17 X24 |
8 |
0 |
|
|
|
|
|
18 40 |
8 |
40 |
|
|
|
|
|
19 Xм4 |
8 |
0 |
|
|
|
|
|
20 Xd4 |
8 |
0 |
|
|
|
|
|
21 X15 |
8 |
|
17/1(Y) |
|
|
|
|
22 X25 |
8 |
0 |
|
|
|
|
|
23 20 |
8 |
20 |
|
|
|
|
|
24 Xм5 |
8 |
0 |
|
|
|
|
|
25 Xd5 |
8 |
0 |
|
11 |
ЛОИ(70) |
06 |
- |
|
|
|
|
|
|
|
|
1 C11 |
0 |
|
10/1(D11) |
|
|
|
|
2 C21 |
0 |
инверсия |
10/3(D12) |
|
|
|
|
3 C12 |
0 |
|
10/5(D13) |
|
|
|
|
4 C22 |
0 |
инверсия |
10/7(D14) |
|
|
|
|
5 C13 |
0 |
|
10/9(D15) |
|
|
|
|
6 C23 |
0 |
инверсия |
10/5(D13) |
|
|
|
|
7 C14 |
0 |
|
10/9(D15) |
|
|
|
|
8 C24 |
0 |
инверсия |
10/7(D14) |
|
|
|
|
9 C15 |
0 |
0 |
|
|
|
|
|
10 C25 |
0 |
0 |
|
12 |
ИЛИ(72) |
03 |
- |
|
|
|
|
|
|
|
|
1 C11 |
0 |
|
11/1(C11) |
|
|
|
|
2 С12 |
0 |
|
11/2(C12) |
|
|
|
|
3 C12 |
0 |
инверсия |
10/1(D11) |
|
|
|
|
4 С32 |
0 |
|
11/4(C32) |
|
|
|
|
5 C13 |
0 |
0 |
|
|
|
|
|
6 С23 |
0 |
0 |
|
13 |
МИЛ(73) |
03 |
- |
|
|
|
|
|
|
|
|
1 C1 |
0 |
|
11/1(C11) |
|
|
|
|
2 C22 |
0 |
|
11/3(C22) |
|
|
|
|
3 C23 |
0 |
|
10/7(D14) |
14 |
ДИК(04) |
08 |
- |
|
|
|
|
|
|
|
|
1 С1 |
0 |
|
12/1(C1) |
|
|
|
|
2 С2 |
0 |
|
13/1(C2) |
|
|
|
|
3 С3 |
0 |
|
12/2(C3) |
|
|
|
|
4 С4 |
0 |
0 |
|
15 |
ДВБ(14) |
04 |
- |
|
|
|
|
|
|
|
|
1 C1 |
0 |
|
12/1(C1) |
|
|
|
|
2 C2 |
0 |
|
13/1(C2) |
|
|
|
|
3 C3 |
0 |
|
12/2(C3) |
|
|
|
|
4 C4 |
0 |
0 |
|
16 |
ВАА(07) |
02 |
- |
|
|
|
|
|
|
|
|
1 Xc1 |
8 |
0 |
|
|
|
|
|
2 Km1 |
6 |
1 |
|
|
|
|
|
3 Xc2 |
8 |
0 |
|
|
|
|
|
4 Km2 |
6 |
1 |
|
17 |
СУМ(42) |
02 |
- |
|
|
|
|
|
|
|
|
1 Xo |
8 |
|
7/1(Y) |
|
|
|
|
2 X1 |
8 |
|
16/1(Y1) |
|
|
|
|
3 X2 |
8 |
0 |
|
Если посмотреть формально, то большой разницы в реализации данной циклограммы нет. Но это большое заблуждение. Ведь сигнал развёртки идёт с датчика. В нашем случае мы допустили, что это температура. Рассмотрим особенности реализации циклограммы, где развёрткой служит сигнал с датчика. Реальный сигнал с датчика не может быть таким «чистым», как он изображён на рис.31, поэтому на границах будут формироваться неоднократные изменения состояния команд, что на реальном объекте может привести к авариям. Для исключения такой ситуации следует правильно устанавливать величину гистерезиса в нуль-органе по каждому каналу (см. раздел 3.5).
