- •Оглавление
- •Глава 8. Отладчик алгоритмов 91
- •Глава 1. Основные положения
- •1.1. Этапы работы системы
- •1.2. Общие термины и понятия
- •1.3. Задачи, решаемые адаптером
- •1.3.1. Определение имени станка
- •1.3.2. Определение номера постпроцессора
- •1.3.3. Преобразование команд cldata в слова и кадры уп
- •1.3.4. Компоновка кадров управляющей программы
- •Глава 2. Этапы создания постпроцессора
- •2.1. Состав постпроцессора
- •2.2. Действия пользователя при написании постпроцессора
- •2.3. Распечатка файлов постпроцессора
- •2.4. Трансляция файла алгоритмов
- •2.5. Просмотр результатов работы постпроцессора
- •2.2. Отладка постпроцессора
- •Глава 3. Формирование паспорта станка
- •3.1. Действия пользователя
- •Содержимое паспорта станка
- •Оборудование
- •Шпиндель, подача, охлаждение.
- •3.1. Возможность программного управления охлаждением.
- •3.2. Место выдачи в уп команды включения/выключения сож.
- •Инструмент.
- •Корректоры.
- •1.1. Место выдачи в уп команд включения линейных корректоров.
- •1.2. Место выдачи в уп команды включения радиусного корректора.
- •Перемещения.
- •Интерполяторы.
- •Параметры управляющей программы.
- •Глава 4. Формирование файла макрокоманд
- •4.1. Действия пользователя
- •4.2. Пример формирования файлов макрокоманд
- •Глава 5. Формирование макета кадра
- •5.1. Формат вывода
- •5.2. Формирование окон различных типов
- •5.3. Действия пользователя
- •Глава 6. Формирование файла алгоритмов
- •6.1. Арифметические действия и функции в алгоритмах
- •6.2. Команды алгоритмов
- •6.3. Пример работы с трансформами.
- •Примеры работы с пользовательскими командами и циклами
- •Пример работы с пользовательскими командами
- •Пример работы с пользовательскими циклами
- •6.5. Действия пользователя
- •6.6. Пример формирования файла алгоритмов
- •Глава 7. Системные переменные.
- •7.1. Координаты инструмента
- •7.2. Круговая интерполяция
- •7.3. Последующие перемещения инструмента
- •Совмещенные перемещения.
- •7.5. Геометрия и номер позиции инструментов
- •7.6. Включение/выключение корректоров
- •7.7. Выстой
- •7.8. Положение металла
- •7.9. Управление шпинделем
- •7.10. Управление подачей
- •7.11. Резьба
- •Учетные параметры программы, детали и станка
- •7.13. Постоянные циклы
- •7.14. Координаты безопасной позиции
- •7.19. Работа с подпрограммами.
- •7.20. Системные переменные для работы с контурами и clData.
- •7.21. Системные переменные для работы с пользовательскими функциями.
- •7.23. Системные переменные для работы с элементами контуров.
- •7.24. Вспомогательные переменные
- •Пользовательские переменные
- •Глава 8. Отладчик алгоритмов
- •Приложение а. Команды cldata
- •Приложение б. Пример паспорта станка
- •Пpиложение в. Пpимеp файла макрокоманд
- •Приложение г. Пример макета кадра
- •Пpиложение д. Пpимеp файла алгоритмов
6.5. Действия пользователя
Сформировать новый файл алгоритма
Нажмите
кнопкуСоздать
.
Откроется окно с пустым текстовым
файлом. При создании нового постпроцессора
окно алгоритма создается автоматически.
Открыть алгоритм
Нажмите
кнопкуОткрыть
и выберите файл алгоритма. Система
откроет выбранный файл. При открытии
постпроцессора окно алгоритма открывается
автоматически.
Сохранить изменения в алгоритме
Нажмите
кнопкуСохранить
Система сохранит изменения в текущем
алгоритме. При сохранении постпроцессора
и выполнения трансляции алгоритм
сохраняется.

Рис. 14. Текст алгоритма.
Алгоритм формируется и редактируется в текстовом виде. Перед трансляцией алгоритма в файл система проверяет его на наличие ошибок.
|
Примечание: |
|
6.6. Пример формирования файла алгоритмов
Необходимо сформировать файл алгоритмов постпроцессора с номером 1 для токарного станка, т. е. занести в него алгоритмы следующих команд:
Линейная интерполяция,
Круговая интерполяция,
Включить подачу,
Включить ускоренное пеpемещение,
Включить шпиндель,
Включить охлаждение,
Сменить инструмент,
Выключить шпиндель,
Выключить охлаждение,
Конец управляющей программы.
Вызываем окно диспетчера постпроцессоров и устанавливаем его номер – 1.
Можно начать с составления алгоритма на любую из команд CLDATA. Мы начнем с инициализации номеров окон макета кадра в алгоритме команды Программа, ее код равен 1. (Полный список команд с их кодами смотрите вПриложении А.)
Предположим, макет кадpа постпроцессора 1 имеет следующий вид:
N[]G[]X[]Z[]I[]K[]F[]T[]S[]M[]L[]*[]
Пользовательской переменной _G присвоим номер окна G[]в макете кадра. Для этого введем в алгоритм строку
_G=2;
Таким образом, инициализируем все номера окон макета кадра. Алгоритм после окончания набора примет следующий вид:
1;
_G=2;
_X=3;
_Z=4;
_I=5;
_K=6;
_F=7;
_T=8;
_SK=9;
_M=10;
_L=11;
END;
Так как все номера окон макета инициализированы, закончим на этом составление алгоритма команды с кодом 1.
Вводим код команды Линейная интерполяция, ее код равен 181.
Предположим, что управляющая программа формируется в приращениях, приращение по оси X записывается в кадре с адресом X, приращение по оси Z записывается в кадре с адресом Z. Нулевые приращения по оси не формируются.
Сформируем алгоритм отработки команды. Чтобы сформировать ненулевое пеpемещение по оси X, занесем в окно X[] его величину. Для этого введем строку алгоритма:
IF DX!=0 _X->DX;
Аналогично сформируем ненулевое перемещение по оси Z:
IF DZ!=0 _Z->DZ;
Оформим информацию в виде кадра. Для этого введем команду алгоритма:
КАДР;
На экране:
181;
IF DX!=0 _X->DX;
IF DZ!=0 _Z->DZ;
КАДР;
END;
Вводим код команды Круговая интерполяция, ее код равен 183.
Предположим, что круговая интерполяция формируется в приращениях. Приращение по оси X записывается в кадре по адресу X, приращение по оси Z записывается в кадре по адресу Z, ненулевая абсолютная разница координат по оси X начальной точки дуги и центра дуги записываются по адресу I, ненулевая абсолютная разница координат по оси Z начальной точки дуги и центра дуги записываются по адресу K. Движение по часовой стрелке задается функцией G2, против часовой стрелки – G3.
Сформируем алгоритм:
183;
_X->DX;
_Z->DZ;
IF ХЦОКP!=XC _I->ABS(XЦОКP-XC);
IF ZЦОКP!=ZC _K->ABS(ZЦОКP-ZC);
IF НАПPОКP=ЧС _G->2;
ELSE _G->3;
КАДР;
END;
Следующая команда: Включить подачу, код 23.
Предположим, что величина рабочей подачи формируется по адресу F. Сформируем алгоритм отработки команды:
23;
_F->S;
END;
Обратите внимание, что в алгоритме нет команды КАДР. Это значит, что информация в кадр будет выведена в последующих командах.
Следующая команда: Включить ускоренное пеpемещение, код 25.
Предположим, что величина ускоренного перемещения равна 70000 и формируется она по адресу F. Сформируем алгоритм отработки команды:
25;
_F->70000;
END;
Следующая команда: Включить шпиндель, код 24.
Предположим, что величина оборотов шпинделя задается по адресу S. Направление вращения по часовой стрелке определяет функция M3, против часовой стрелки – M4. Сформируем алгоритм отработки этой команды:
24;
_S->N;
IF НВШП=ЧС -M->3;
ELSE _M->4;
END;
Следующая команда: Включить охлаждение, код 26.
Предположим, что охлаждение включается функцией M8. Сформируем алгоритм отработки этой команды:
26;
_M->8;
END;
Следующая команда: Сменить инструмент, код 35.
Предположим, что номер позиции инструмента устанавливается по адресу T, а команда на загрузку инструмента задается функцией M6. Все должно быть оформлено отдельным кадром. Сформируем алгоритм отработки этой команды:
35;
КАДР;
_T->ТИНСТР;
_M->6;
КАДР;
END;
Следующая команда: Выключить шпиндель, код 701.
Предположим, что выключение шпинделя задается функцией M5. Все должно быть оформлено отдельным кадром. Сформируем алгоритм отработки этой команды:
701;
КАДР;
_M->5;
КАДР;
END;
Следующая команда: Выключить охлаждение,код 700.
Предположим, что выключение охлаждения задается функцией M9. Все должно быть оформлено отдельным кадром. Сформируем алгоритм отработки этой команды:
700;
КАДР;
_M->9;
КАДР;
END;
Последняя команда: Конец управляющей программы,код 4.
Предположим, что конец управляющей программы задается функцией M2. Все должно быть оформлено отдельным кадром. Сформируем алгоритм отработки этой команды:
4;
КАДР;
_M->2;
КАДР;
END;
Итак, мы создали все необходимые алгоритмы
1;
_G=2;
_X=3;
_Z=4;
_I=5;
_K=6;
_F=7;
_T=8;
_S=9;
_M=10;
_L=11;
END;
181;
IF DX!=0 _X->DX;
IF DZ!=0 _Z->DZ;
КАДР;
END;
183;
_X->DX;
_Z->DZ;
IF ХЦОКP!=XC _I->ABS(XЦОКP-XC);
IF ZЦОКP!=ZC _K->ABS(ZЦОКP-ZC);
IF НАПPОКP=ЧС _G->2;
ELSE _G->3;
КАДР;
END;
23;
_F->S;
END;
25;
_F->70000;
END;
24;
_S->N;
IF НВШП=ЧС _M->3;
ELSE _M->4;
END;
26;
_M->8;
END;
35;
КАДР;
_T->ТИНСТР;
_M->6;
КАДР;
END;
701;
КАДР;
_M->5;
КАДР;
END;
700;
КАДР;
_M->9;
КАДР;
END;
4;
КАДР;
_M->2;
КАДР;
END;
END;
После завершения процесса формирования файла алгоритмов сохранимсозданный файл постпроцессора под номером: 1.
