
- •1 Особенности проектирования современных систем чпу
- •1.1 Задачи числового программного управления станками
- •1.2 Варианты архитектурной организации современных систем чпу
- •1.3 Варианты реализации открытой архитектуры систем чпу
- •1.4 Организация связей между компонентами системы управления
- •1.5 Особенности реализации стандартов в системах чпу
- •1.6 Реализация интерфейсных opc в системах чпу
- •1.7 Сущность производственных стандартов step
- •1.8 Разработка управляющих программ в стандарте step-nc
- •2 Проектирование информационной модели
- •2.1 Управление процессами операционной системой чпу
- •2.2 Состав информационной модели
- •2.3 Система чпу и объект управления как функциональный автомат
- •2.4 Языки программирования и управление систем чпу
- •2.5 Анализ кадра управляющей программы
- •Операции, выполняемые над входом:
- •Операции над магазинной памятью:
- •Служебные операции:
- •2.6 Пример проектирования управляющей таблицы мп-автомата
- •3 Методы программного управления автоматикой
- •3.1 Применение метода маскирования
- •3.2 Метод бинарных программ (разложение в ряд Шеннона)
- •3.3 Метод адресных переходов
- •3.4 Метод маскирования многоместных логических функций
- •3.5 Формализм описания сложных автоматических циклов
- •3.6 Графическое представление параллельных процессов сетью Петри
- •3.7 Формальное определение сети Петри
- •3.8 Применение сетей Петри для моделирования
- •3.9 Разработка сети Петри для моделирования цикла автоматической смены инструмента
- •3.10 Моделирование процесса управления гибкими производственными модулями (гпм)
- •4 Разработка управляющей программы
- •4.1 Базовые понятия
- •4.2. Координатные оси и координатные системы
- •4.3 Программирование интерполяции
- •4.4 Сплайновая интерполяция
- •4.5 Что дает применение сплайновой интерполяции?
- •5 Модернизация систем чпу
- •5.1 Анализ целей и задач модернизации
- •5.2 Модернизация станков чпу на базе систем чпу sinumerik
- •5.3 Разработка структурной схемы системы чпу станка и её конфигурирование
- •5.4 Разработка алгоритмов программного обеспечения
- •6 Общая характеристика структуры и компонентов simodrive
- •6.1 Общая характеристика двигателей
- •6.2 Обзор датчиков
- •6.3 Обзор приводных модулей simodrive
- •6.4 Модули питания
- •7 Проектирование структуры привода simodrive
- •Модули питания.
- •7.1 Принципы выбора двигателей, датчиков и плат управления
- •7.2 Косвенная регистрация положения с аналоговым и цифровым интерфейсами
- •7.3 Прямая регистрация положения с аналоговым управлением
- •7.4 Прямая регистрация положения с цифровым управлением
- •7.5 Выбор и подключение модулей структуры привода
- •Литература
3.3 Метод адресных переходов
Другим широко распространенным методом является метод адресных переходов (таблиц). Значение функций выхода для всех вариантов входного набора записываются в памяти. При этом код входного набора используется для получения адреса результата.
Пример. Пусть нужно превратить двоичный код в код семисегментного индикатора. Обозначение сегментов такого индикатора приведено на рисунке 3.2, а соответствие двоичного кода коду семисегментного индикатора приведено в таблице 3.1.
Рисунок 3.2 - Обозначение сегментов индикатора
Таблица 3.1 - Таблица истинности для входных наборов (00...04)
Символ на индикаторе |
Двоичный код входа |
h |
q |
f |
e |
d |
c |
b |
a |
Код индика-тора |
0 |
0000 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
3FH |
1 |
0001 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
06H |
2 |
0010 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
5BH |
3 |
0011 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
4FH |
4 |
0100 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
66H |
Ячейке, которая содержит информацию о работе сегментов при поступлении кода 0000B, присваивается базовый адрес памяти BASE. Адреса других ячеек будут определяться автоматически путем суммирования базового адреса с кодом подаваемого на автомат числа.
При поступлении входного набора автомат выполняет его суммирование с адресом BASE и по полученному адресу считывает значение выходного сигнала.
3.4 Метод маскирования многоместных логических функций
В
практике управления часто встречаются
ситуации с трудностями задания условий
и выбора решений. Поведение автомата
описывается при этом матрицей многоместных
логических функций, в которой условия
перехода задаются матрицами условий
Ui,j
{1,0,–}, а результаты работы представляются
матрицей решений Di,j
{0,1,–}, где прочерки обозначают отсутствие
условий или решений.
При представлении процесса графом переход с одного состояния (S1) в другое (S2) осуществляется по дуге xi (рис. 3.3).
Рисунок 3.3 - Обозначение перехода автомата в новое состояние
Для реализации процесса необходимо знать:
вектор условия перехода x;
вектор решения y - информацию о том, какие сигналы автомат должен установить, какие снять и какие оставить без перемен в новой вершине;
адрес памяти, где находятся данные по векторам условий и решений для новой вершины.
Таким образом, программная реализация автомата требует организации двух циклов. Поскольку из вершины может выходить несколько дуг, то в первом цикле осуществляется поиск дуги, которая удовлетворяет условиям, содержащимся во входном наборе. Если ни одно условие не подходит, автомат может выйти в непредвиденное состояние. Чтобы исключить этот вариант вводится фиктивная дуга с незначащими параметрами (- - - - - - - -), которая замыкает переход на эту вершину.
Во втором цикле осуществляется анализ вектора решений и формируется выходной сигнал автомата. После этого настраивается адрес новой области памяти, где сохраняются условия и информация для следующих циклов работы автомата.
Анализ условий и решений осуществляется с помощью маскирования. Для каждой дуги нужно создать четыре маски. Обозначим маски для вектора условий М1К(х) и М2К(х), а для вектора решений, соответственно, М1К(y) и М2К(у), где k=0, 1, 7 – номер разряда.
Первая маска выделяет значимые разряды байта вектора условий:
Вторая маска выделяет единичные значения:
Третья маска выделяет разряды, в которых выходные сигналы не должны изменяться:
Четвертая маска выделяет разряды, которые необходимо установить в единицу. Другие разряды сбрасываются:
Операции с масками аналогичны тем, которые были приведены выше.
Пусть дуга представлена вектором условий (0-1010-1), вектором решений (01--001-) и адресом 0926Н. При программировании автомата информация для этой дуги будет размещена в памяти в следующей последовательности:
ДУГА: 10111101 М1К(х)=BDH;
00101001 М2К(х)=29Н;
00110001 М1К(у)=31Н;
01000010 М2К(у)=42Н;
00100110 (младший байт адреса 26Н);
00001001 (старший байт адреса 09Н).
Таким образом, для описания одной дуги нужно шесть байт памяти.