- •Оглавление
- •Введение
- •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.
Приложение а
1.Элементарные функции алгебры логики
Материалы этого приложения базируются на учебниках, пособиях[3, 7, 46, 44, 76, 89 , 52, 16 и информации с интернета]. Основы алгебры логики, которые здесь приведёны, позволят получить более глубокие знания и сократить время на поиск данного материала. В пособии [7, 16] подчёркнуто, что множество {0,1}, элементы которого не являются числами в обычном смысле, хотя по некоторым свойствам и похожи на них. Наиболее распространенная интерпретация двоичных переменных – логическая: «да» – «нет», «истинно» (и) – «ложно» (л), или «1» - «0».
Обозначения:
E2={0,1}; Е
=
E2E2...E2
– прямое произведение n
сомножителей; (x
,..,xn)
E2, | E2| – мощность
E2, |E2|=2, тогда |Е
|=2n.
Определение
1. Функцией алгебры логики называется
закон, осуществляющий отображение Е
E2, причем отображение всюду
определено и функционально.
Так
как множество Е
конечно, то задать отображение Е
E2, означает задать множество
наборов из Е
и для каждого набора указать его образ
в Е 2.
Пример
1. Пусть n=2, тогда Е
={(0
0),(0 1),(1 0),(1 1)}, отображение Е
E2 задано, например, так: (0 0) 0
; (0 1) 1;
(1 0) 1 ; (1 1) 1
Тем самым задана функция, для которой мы будем использовать стандартное обозначение f(x1,x2), записывая эту функцию в виде таблицы:
-
x1
x2
f(x1,x2)
0
0
1
1
0
1
0
1
0
1
1
1
Здесь x1 и x2 обозначают названия столбцов, а f – символ, обозначающий отображение. Следует обратить внимание, что функции f(x1,x2) и f(y1,y2) задают одно и то же отображение, и их таблицы отличаются только названиями столбцов.
Определение 2. Таблица, задающая функцию f(x1,x2,...,xn), называется таблицей истинности для этой функции.
Рассмотрим функции одной переменной. Их будет всего 4, они задаются следующими таблицами истинности:
-
x
f0(x)
0
1
0
0
функция
называется константой 0, записывается
f0(x)
0;
-
x
f1(x)
0
1
0
1
функция называется тождественной, записывается f1(x)= x;
-
x
f2(x)
0
1
1
0
функция
называется «не x»
и записывается f2
(x)=
;
-
x
f3(x)
0
1
1
1
функция
записывается f3(x)
1
и называется константой 1. Если
стандарт-ным
расположением переменной x
считать 0 в первой строке и 1 во второй,
то функции
f0,
f1, f2,
f3 определяются
однозначно наборами значений: f0=(0,0),
f1=(0,1),
f2=(1,0) и
f3=(1,1).
Наборы значений функций составляют
множество E2Е2,
поэтому количество функций одной
переменной равно |E2
E2|=4.
Для удобства функции пронумерованы
так, что двоичный код
номера
совпадает с набором значений функции.
Рассмотрим
функции двух переменных f(x1,x2).
Функции двух переменных определены на
множестве Е
={(0
0),(0 1),(1 0),(1 1)}, эти наборы переменных из
Е
можно тоже рассматривать как двоичные
коды чисел 0,1,2,3, именно такой порядок
расположения наборов (x1,x2)
будем считать стандартным. Тогда функции
f(x1,x2) определяются
однозначно наборами значений (1,
2, 3,
4), где
каждое iE2,
поэтому (1,
2, 3,
4)Е
.
Следовательно, число функций двух
переменных равно 24=16, занумеруем
их числами от 0 до 15 так, чтобы двоичный
код номера совпадал с набором значений
функции.
x1 x2 |
f0 |
f1 |
f2 |
f3 |
f4 |
f5 |
f6 |
f7 |
f8 |
f9 |
f10 |
f11 |
f12 |
f13 |
f14 |
f15 |
0 0 0 1 1 0 1 1 |
0 0 0 0 |
0 0 0 1 |
0 0 1 0 |
0 0 1 1 |
0 1 0 0 |
0 1 0 1 |
0 1 1 0 |
0 1 1 1 |
1 0 0 0 |
1 0 0 1 |
1 0 1 0 |
1 0 1 1 |
1 1 0 0 |
1 1 0 1 |
1 1 1 0 |
1 1 1 1 |
Некоторые из этих функций носят специальные названия и играют такую же роль, как элементарные функции в анализе, поэтому называются элементарными функциями алгебры логики. Перечислим их.
f1(x1,x2) = (x1&x2), читается «конъюнкция х1 и х2», иногда вместо знака & употребляют знак
или вообще его опускают, пишут (х1х2).
(х1х2)
совпадает с обычным произведением х1х2
и совпадает с min(x1,x2).
Эту операцию называют также логическим
умножением.f6(x1,x2) = (x1x2) – сложение х1 и х2 по модулю два, иногда пишут (х1+х2)mod2.
3) f7(x1,x2) = (x1x2), читается «х1 дизъюнкция х2», она совпадает с max(x1,x2), ее называют логическим сложением.
4) f8(x1,x2) = (x1x2), читается «х1 стрелка Пирса х2» и совпадает с отрицанием дизъюнкции, другие названия: функция Вебба, функция Даггера.
5) f9(x1,x2) = (x1x2), читается «х1 эквивалентно х2».
6)
f13(x1,x2)=(x1
x2),
читается «х1 импликация х2»,
иногда обозначается (х1х2),
т. е. х1 влечет х2 .
7) f14(x1,x2) = (x1|x2), читается «х1 штрих Шеффера х2», эта операция или функция является отрицанием конъюнкции.
Символы
,участвующие
в обозначениях элементарных функций,
называются логическими связками или
просто связками. Переменные 0 и 1 называются
логическими или булевыми переменными,
причем 0 соответствует «лжи» , а 1 –
«истине», а функции алгебры логики
называются еще и булевыми функциями.
Рассмотрим функции f(x1...xn), где (x1...xn) Е , тогда число наборов (x1...xn), где функция f(x1...xn) должна быть задана. Число наборов или ситуаций равно |Е |=2n. Обозначим множество всех функций двузначной алгебры логики Р2. Обозначим через Р2(n) число функций, зависящих от n переменных. Очевидно, что Р2(n)=22 n.
С ростом n число Р2(n) быстро растет: P2(1)=4, P2(2)=16, P2(3)=256, P2(4)=65536. При больших n табличный способ задания функций становится неприемлемым, используется формульное задание функций. Но прежде чем ввести понятие формулы, дадим определение существенной переменной.
Определение 3. Функция f(x1,...,xi–1,xi,xi+1,...,xn) существенно зависит от хi, если существуют такие значения 1, ...i–1, i+1, ...nпеременных x1, ...xi–1, xi+1, ...xn, что f(1, ...i–1 i+1.n)f(1...i–1 i+1.n) . Тогда переменная хi называется существенной переменной. В противном случае хi называется фиктивной переменной.
Пример 2.
Рассмотрим несколько функций двух переменных
x1 |
x2 |
(x1x2) |
f3 |
f15 |
0 0 1 1 |
0 1 0 1 |
0 0 0 1 |
0 0 1 1 |
1 1 1 1 |
Покажем, что (х1x2) существенно зависит от х1. Рассмотрим наборы (0,1) и (1,1), здесь 2=1, f(0,2)=0 и не равно f(1,2)=1. Покажем, что х2 тоже существенная переменная. Рассмотрим наборы (1,0) и (1,1). Здесь 1=1, f(1,0)=0 и не равно f(1,1)=1. Для функции f3(x1,x2) покажем, что х2 – фиктивная переменная, т.е. надо показать, что не существует наборов (1,0) и (1,1) таких, что f3(1,0)f3(1,1). Пусть 1=0, т.е. рассмотрим наборы (0,0) и (0,1), f(0,0)=f(0,1)=0. Пусть 1=1, но f(1,0)=f(1,1)=1.
Для функции f15 и x1 и x2 являются фиктивными переменными. x1 – фиктивная переменная, если не существует наборов (0,2) и (1,2), таких, что f(0,2)f(1,2). Если 2=0, то f(0,0)=f(1,0)=1. Пусть 2=1, тогда f(0,1)=f(1,1)=1.
Пусть хi является фиктивной переменной для функции f(x1, ..., xi, ..., xn). Тогда ее можно удалить из таблицы истинности, вычеркнув все строки вида: (1, ...i–1, 1, i+1, ...n) или, наоборот, все строки вида: (1, ..., i–1, 0, i+1, ...n) и столбец для переменной хi. При этом получим таблицу для некоторой функции g(x1, ..., xi–1, xi+1, ...xn). Будем говорить, что функция g(x1, ...xi–1, xi+1, ...xn) получена из функции f(x1, ..., xi, ...xn) путем удаления фиктивной переменной хi или f получена из g путем введения фиктивной переменной хi.
Определение 4. Функции f1 и f2 называются равными, если f2 можно получить из f1 путем добавления или удаления фиктивной переменной.
Пример 3.
x1 |
x2 |
f3 |
0 0 1 1 |
0 1 0 1 |
0 0 1 1 |
Вычеркнули строки типа (,1), т.е. (0,1) и (1,1) и столбец для х2.
Получили f3(x1 x2) = g(x1) = x1.
Пример 4.
x1 |
x2 |
g |
0 0 1 1 |
0 1 0 1 |
0 0 0 1 |
Пусть функция g(x1 x2) задана таблицей и существенно зависит от обеих переменных. Построим функцию f(x1,x2,x3), которая получается из g(x1,x2) введением фиктивной переменной х3:
x1 |
x2 |
x3 |
f |
0 0 0 0 1 1 1 1 |
0 0 1 1 0 0 1 1 |
0 1 0 1 0 1 0 1 |
0 0 0 0 0 0 1 0 |
К наборам (х1,х2) мы добавим х3=0, получим наборы вида: (1,2,0), на этих наборах функцию f положим равной g(,), затем добавим наборы вида (,,1), функцию f(,,1) положим равной g(,).
Особую роль играют константы 0 и 1, которые не имеют существенных переменных и которые можно рассматривать как функции от пустого множества переменных.
Определение 2. Две формулы N и D из <M> называются равными
N=D или эквивалентными ND , если функции, реализуемые ими, равны.
Пример 2. Доказать эквивалентность формул:
(
&(х2x3))~(
)
.
x1 |
x2 |
x3 |
x2x3 |
& |
x2 x3 |
x3x2 |
& |
x1 |
|
0 0 0 0 1 1 1 1 |
0 0 1 1 0 0 1 1 |
0 1 0 1 0 1 0 1 |
0 1 1 0 0 1 1 0 |
0 1 1 0 0 0 0 0 |
1 1 0 1 1 1 0 1 |
1 0 1 1 0 0 1 1 |
1 0 0 1 1 0 0 1 |
1 0 0 1 1 1 1 1 |
0 1 1 0 0 0 0 0 |
