УДК 519.713.1
ФОРМИРОВАНИЕ ВНУТРЕННИХ СОСТОЯНИЙ ДИСКРЕТНОГО АВТОМАТА ПЕРЕМЕЩЕНИЯ МАНИПУЛЯТОРА ПО ПОКАЗАНИЯМ ДАТЧИКОВ
ОРЛОВСКИЙИ.А., СТЕКЛЕНЁВ С.В.___________
Рассматривается методика упрощения синтеза управляющих устройств, выполненных в виде дискретных автоматов, для механизмов с большим количеством датчиков измерения фиксированных значений одной координаты. Внутренние состояния автомата формируются только из предварительной обработки информации от датчиков. Дается аналитическая оценка снижения размерности таблиц автомата. Выполняется синтез и моделирование системы управления перемещением манипулятора по предложенной методике.
Введение
Ядром, реализующим управляющие алгоритмы технологических процессов, являются конечные автоматы. Они выполняются в виде программ или аппаратно.
При классическом синтезе дискретных автоматов размерность таблиц, описывающих их работу, равна 2n, где n — общее число входных и внутренних переменных. При отработке заданной траектории движения (определённая последовательность положений) или заданной последовательности изменения других физических величин (температуры, давления, скорости, усилия и т. д.) используют датчики, каждый из которых срабатывает при определённых фиксированных значениях измеряемой физической величины. При количестве таких датчиков 10 или 20 таблицы переходов и выходов увеличиваются более чем в 210 и 220 раза с учётом возрастания числа внутренних состояний автомата. При размерности таблиц, содержащих даже сотни строк (n=7-9), ручная обработка и анализ их становятся затруднительными. Использование графов автоматов для таких задач не является целесообразным из-за большого количества дуг и вершин графа.
Для уменьшения размерности таблиц автоматы с большим числом входов могут разбиваться на автоматы меньшей размерности [1,2]. При этом реализация каждого автомата меньшей размерности упрощается, однако усложняется организация связей между ними. Другим способом синтеза схем при таких условиях является использование циклограмм. Для упрощения их анализа выполняется разбиение всего цикла работы устройства на отдельные операции, для каждой из которых устанавливается элемент памяти (триггер) и схемы формирования сигналов установки и сброса триггера [3]. После этого реализуются отдельные циклограммы
для каждой операции. Однако такой подход является удобным при постоянном повторении одной и той же последовательности (цикла) входных сигналов. При различных их последовательностях сложность синтеза автомата значительно возрастает.
Целью исследования является разработка методики упрощения синтеза дискретного автомата путём использования показаний датчиков для определения внутренних состояний автомата.
1. Основная часть
Упрощение синтеза схем для задач, имеющих большое количество датчиков, которые сигнализируют о различных значениях одной координаты механизма, может быть выполнено путём предварительной обработки информации от датчиков для формирования внутренних состояний автомата. В этом случае используется допущение (для большинства механизмов оно справедливо), что одновременное срабатывание датчиков одной координаты невозможно.
Формирование внутренних состояний на основе показаний датчиков основывается на том, что при срабатывании датчика одной координаты устанавливается элемент его памяти и сохраняется до тех пор, пока не произойдёт срабатывание любого другого датчика этой координаты. Элементы памяти необходимы для запоминания срабатывания датчика, так как в процессе работы до срабатывания следующего датчика этой координаты показания рассматриваемого датчика обычно изменяются. В этом случае состояние автомата остаётся неизменным до срабатывания следующего датчика. Для датчиков других координат объекта также устанавливаются элементы памяти. Таким образом, может использоваться столько элементов памяти, сколько имеется датчиков. Для уменьшения количества элементов памяти можно выполнить кодирование внутренних состояний двоичной системой, однако при этом усложняются схемы управления элементами памяти.
Если выходные сигналы автомата формируются сложной последовательной цепочкой входных сигналов (например, для задания шифра открытия замка), то для обработки входной цепочки синтезируется свой отдельный автомат, в котором сигналы элементов памяти датчиков не используются.
Определение состояний автомата по показаниям датчиков позволяет максимально приблизить их к процессам в управляемом объекте, что значительно упрощает схемы управления триггерами, уменьшает возможность возникновения состязаний и повышает помехозащищенность схемы.
Для иллюстрации сказанного рассмотрим пример, в котором синтезируем автомат по предложенной методике. Выполним сравнение полученного автомата с автоматом, построенным классическим способом.
РИ, 2005, № 2
53
2. Конкретный пример реализации автомата
Пусть необходимо синтезировать дискретный автомат управления перемещением манипулятора на плоскости. В зоне работы манипулятора находятся препятствия, ограничивающие траектории его движения. Манипулятор может перемещаться одновременно в одном из двух взаимно-перпендикулярных направлений. Для определения положения манипулятора имеются 8 датчиков положения DQ1, ..., DQ8, позволяющие определять 16 фиксированных положений манипулятора (рис. 1).
Рис. 1. Зона работы манипулятора: 1 — возможные точки остановки манипулятора; 2 — препятствия; 3 — положение манипулятора; DQ1 — DQ8 — датчики положения; U1, U2, U3, U4 — управляющие сигналы автомата
Задание на перемещение подаётся от 16 кнопок K0 — K15, каждая из которых соответствует одному из фиксированных положений (0-15). На выходе автомата формируются 4 управляющих сигнала U1, U2, U3, U4 (рис. 2).
Рис. 2. Структурная схема системы управления объектом
Пусть управляющие сигналы задают следующие направления движения манипулятора: U1 = 1 — движение вправо, U2 = 1 — влево, U3 = 1 —вверх, U4=1 — вниз (см. рис. 1). Примем, что число внутренних состояний автомата равно числу фик-
54
сированных положений манипулятора. Кодирование сигналов от кнопок и кодирование внутренних состояний представлено в табл. 1 и 2. Сигналы от кнопок и внутренние состояния кодируются, соответственно, 4 входными Х1, Х2, Х3,
Х4 и 4 внутренними переменными S1, S2, S3,
S4.
Исходя из условия задачи и табл.
1 и 2, составлены таблицы перехо- Таблица 2
дов и выходов Кодирование состояний
автомата. Для получения дизъюнктивно-минимальной формы логической функции по таблице выходов построены 4 таблицы Карно для выходных переменных U1, U2, U3,
U4.
С помощью программы “Carno Minimizer” из таблиц Карно получены логические уравнения для выходных сигналов, по которым далее строится схема управления манипулятором. Для выходной переменной U1 уравнение имеет вид
U1 ="X31 X2X1| S31S1 + X3|X1|S3|S2|S1 + X3X2| X11 S3 | S1+X4X3| X1| S4S3| S2+X4X3| X2| S4S3| S2+X4X3X2 |X1|S4|S1+ X4X3|X2X1|S4| S1 + X3X2|X1|S4|S3|S2 +X4X2|X1S4|S3|S2|S1+ X4| X2| X1S4| S3S2| S1+ |X4X3 | X2| X1S4| S3S2+ X4X2 |X1|S4|S3S2|S1+ X4| X3X2X1 | S3S2S1+ X4X3X2X1| S3S2S1+X3X2X1| S4| S3S2S1 +X4X2| X11S41 S31S2S1+ |X3| X2X1| S4| S3| S2S1+X4X3 |X2X1|S4|S3|S2 + X4|X2|X1|S4|S3|S2|S1+ |X4|X3X2 X1| S4| S3S2| S1+X4| X3| X2X1| S41 S3 S2| S1 + X4X3X2 X1| S4S3SS1+ X41X31X2X1 S4| S31S21S1".
(1)
РИ, 2005, № 2
Таблица 1
Кодирование сигналов от кнопок
Обозн кноп- ки Входные переменные
XI Х2 хз Х4
ко 0 0 0 0
К1 0 0 0 1
К2 0 0 1 0
КЗ 0 0 1 1
К4 0 1 0 0
К5 0 1 0 1
Кб 0 1 1 0
К7 0 1 1 1
К8 і 0 0 0
К9 і 0 0 1
К10 і 0 1 0
К11 і 0 1 1
К12 і 1 0 0
К13 і 1 0 1
К14 і 1 1 0
К15 і 1 1 1
Сост. автом. Внутренние переменные
S1 S2 S3 S4
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 і 0 0 0
9 і 0 0 1
10 і 0 1 0
11 і 0 1 1
12 і 1 0 0
13 і 1 0 1
14 і 1 1 0
15 і 1 1 1
Как отмечалось выше, для упрощения синтеза внутренние состояния формируются только по сигналам датчиков. Датчики, измеряющие одну координату, объединяются в одну группу. При этом возможно срабатывание в любой момент времени только одного датчика из группы. Тогда можно выполнить кодирование сигналов от датчиков в каждой группе. При реализации для каждого датчика устанавливается триггер, который помнит информацию о последнем срабатывании датчика. Срабатывание очередного датчика устанавливает его триггер и сбрасывает остальные триггеры датчиков этой группы. Кодирование датчиков переменными D1, D2, D3, D4 для групп вертикального и горизонтального перемещения представлено в табл. 3 и 4.
сигнала от кнопок (Х1, Х2, Х3, Х4), 4 закодированных сигнала от датчиков (D1, D2, D3, D4).
Уменьшение размерности таблицы выходов в 16 раз и отсутствие таблицы переходов позволяют значительно уменьшить объём обрабатываемой информации при синтезе автомата. Кроме того, полученный автомат является проще и более наглядным.
Рассмотрим общий случай. Пусть имеется L различных координат объекта. Для каждой координаты имеется своя группа датчиков из Nj (l = 1, L ) датчиков. Каждая из групп датчиков будет закодирована с помощью Mj =] log2 Nj[ переменных, где ] [ обозначает ближайшее большее целое. Все группы датчиков кодируются
При этом внутренними состояниями автомата являются кодированные сигналы от датчиков
S1 = D1, S2 = D2, S3 = D3, S4 = D4.
Моделирование разработанной схемы выполнялось в пакете Simulink системы Matlab. Полная модель дискретного автомата для рассматриваемого примера представлена на рис.3. Блок Keys выполняет кодирование сигналов от кнопок, блок Sensors — вырабатывает состояния автомата по показаниям датчиков, блок Control формирует управляющие сигналы (уравнение (1)). Блоки Logical operator запрещают выдачу управляющих сигналов при первоначальном пуске схемы, когда ни одна из кнопок не нажата. На рис. 3 показано появление выходного сигнала U3 = 1 при нахождении манипулятора в положении 9 и нажатии кнопки К11, задающей перемещение манипулятора в положение
11. В этом случае манипулятор будет двигаться, обходя препятствие, находящееся между положениями 9 и 10 (см. рис. 1).
3. Сравнение результатов с классическим способом синтеза
Для рассматриваемой задачи при классическом синтезе таблица выходов и таблица переключения элементов памяти будут содержать 212 = 4096 строк каждая. Входными сигналами таблиц являются: 4 закодированных сигнала от кнопок (Х1, Х2, Х3, Х4), 4 закодированных сигнала от датчиков (D1, D2, D3, D4), 4 сигнала внутренних переменных (S1, S2, S3, S4).
При синтезе по предлагаемой методике составляется только таблица переключения выходных сигналов, которая содержит 28 = 256 строк. Входными сигналами таблицы являются: 4 закодированных
M =ZMj = Z(]log2Nj[) l=1 l=1
переменными. Размерность таблицы выходов сокращается в
k = 2M
Z (]log2 Nj[)
= 2i=i
раз.
Для рассматриваемого примера L= 2, N1 = 4, N2 =4, M1 =2, M2 =2, M= 4, k= 16.
Выводы
Предложено упрощение методики синтеза дискретного автомата для механизмов, имеющих группы датчиков измерения фиксированных значений координат. Упрощение синтеза основано на формировании внутренних состояний автомата только из показаний датчиков. Приведена аналитическая оценка снижения размерности таблиц автомата и, следовательно, объёма вычислений, что важно при практической реализации управления механизмами с большим количеством датчиков. Выполненный синтез и моделирование конкретного примера подтвердили работоспособность дискретного автомата, построенного по предложенной методике.
Литература: 1. Топольский Н.Г. Представление цифрового автомата автоматами меньшей размерности и его проектирование по частям //В сб. Проблемы управления в технике, экономике, биологии. М.: Наука, 1981. С.75-84. Юрловский И.А. Представление дискретного автомата автоматами меньшей размерности и организация связей между ними// Радіоелектроніка. Інформатика. Управління. 2000. №2. С. 146-155. 3. Проектирование бесконтактных управляющих логических уст-
Таблица 3
Кодирование датчиков вертикальной группы
Сигналы от датчиков Кодированные сигналы датчиков
DQ1 DQ2 DQ3 DQ4 D3 D4
1 0 0 0 0 0
0 1 0 0 0 1
0 0 1 0 1 0
0 0 0 1 1 1
РИ, 2005, № 2
Таблица 4
Кодирование датчиков горизонтальной группы
Сигналы от датчиков Кодированные сигналы датчиков
DQ5 DQ6 DQ7 DQ8 D1 D2
1 0 0 0 0 0
0 1 0 0 0 1
0 0 1 0 1 0
0 0 0 1 1 1
55
DQ1
ройств промышленной автоматики/ Грейнер Г.Р., Ильяшенко В.П., Май В.П., Первушин Н.Н., Токмакова Л.И. М.: Энергия, 1977. 384 С.
Поступила в редколлегию 12.11.2004
Рецензент: д-р техн. наук, проф. Краснодубец Л.А.
Орловский Игорь Анатольевич, канд. техн. наук, доцент кафедры электропривода и автоматизации про-
мышленных установок Запорожского национального технического университета. Научные интересы: интеллектуальные системы управления. Увлечения: туризм. Адрес: Украина, 69063, Запорожье, ул. Казачья, 49, кв. 25, тел.: 63-30-19, 69-83-85.
Стекленёв Сергей Владимирович, студент 5-го курса Запорожского национального технического университета. Адрес: Украина, 69069, Запорожье, ул. Жуковского, к.731.
УДК 621.391
ДВОИЧНОЕ ПОЛИАДИЧЕСКОЕ КОДИРОВАНИЕ ПО КОЛИЧЕСТВУ СЕРИЙ ЕДИНИЦ
БАРАННИК В.В., ЮДИНА.К_____________
Излагается двумерное однопризнаковое структурное кодирование двоичных данных по количеству серий единиц в полиадическом пространстве. Обосновывается, что дополнительный учет ограничений на количество серий единичных элементов в двоичных полиадических числах обеспечивает увеличение степени сжатия сообщений произвольного источника информации. Проводится оценка степени сжатия двоичных данных на основе разработанного кодирования.
Введение
Одно из направлений дальнейшего совершенствования телекоммуникационных систем связано с выполнением следующих требований [1, 2]:
— снижение времени обработки и передачи по каналам связи данных, полученных от различных источников информации с произвольной мощностью алфавита (изображения компьютерных и телевизионных цветовых моделей, различных графических форматов, изображения в спектральном виде, аудиосигналы, речь, текстовая информация);
— повышение степени достоверности данных, получаемых для последующего их анализа и принятия решения;
56
РИ, 2005, № 2