Информационно-управляющая оболочка для системы ЧПУ
В качестве объекта управлениявыбрана система ЧПУ фрезерно-токарного станка с четырёхосевым приводомпостоянного тока. На рисунке 1 представлена структурная схема подобной системыУЧПУ. На схеме приняты следующие обозначения:
ДП — датчик положения;
ЭПр — электропривод;
ЭАС — электроавтоматика;
РУ — ручное управление;
УП — управляющая программа.
Приведенная схема отличается отклассической отсутствием в структуре ЧПУ интерпретатора УП, и её функциивозложены на CAM-систему информационно-управляющейоболочки ЭВМ верхнего уровня.
Таким образом, для работы спредставленной системой ЧПУ информационно-управляющая оболочка ЭВМ верхнегоуровня должна решать следующий круг задач:
реализовать пользовательскийинтерфейс;
осуществлять функцииинтерпретатора для определённых языков УП;
осуществлять загрузку УП и еёрабочих параметров в УЧПУ;
иметь возможность оперативногоуправления и контроля работы оборудования;
иметь возможность тестированиясостояния и настройки режимов основных узлов системы управления станком (системаЧПУ, электроприводы осей, электроавтоматика).
/>
Рис.1. Структура системы ЧПУчетырёхосевым электроприводом
Разрабатываемая оболочкаработает с четырьмя разновидностями УП обработки изделий:
файлом геометрических описаний встандарте HPGL фирмы Hewlett Packard (файл с расширением PLT);
монохромный черно-белыйрастровый файл с расширением ВМР;
монохромный полутоновый файл срасширением ВМР;
текстовый файл в стандарте ISO аналог УП для стойки ЧПУ 2С85 или ей подобной.
В первых трех случаях дляполучения файла геометрических описаний изображения изделия вполне достаточноиспользование стандартных графических векторных и растровых редакторов,например Corel Draw для векторных рисунков и Photo Shop или Paintдля растровых.
Применение этих редакторовпозволяет существенно снизить стоимость САПР УП для систем ЧПУ. Техническиехарактеристики графических редакторов позволяют практически полностью перекрытьпотребности в подготовке УП для четырёхкоординатного фрезерногодеревообрабатывающего станка. В этом случае интерпретатор управляющейпрограммной оболочки системы управления станка берет на себя некоторые функциипостпроцессора.
Регулирование положениякомплектных электроприводов с ДПТ (рис.1) требует минимального количествадополнительного оборудования для реализации системы управления. На рисунке 2приведена структурная схема системы управления с использованием комплектныхтиристорных электроприводов постоянного тока. На рисунке приняты следующие обозначения:
A/Ii, А/Оi — входные и выходные бинарные сигналы управления или состояния оборудования (i — номер канала);
Ui — сигнал задания скорости i-той оси;
fi — сигнал углового положения i-той оси;
Кi — сигнал нажатия i-той клавишипульта ручного управления.
/>
Рис.2. Структурнаясхема системы ЧПУ
Система управления формирует 4сигнала задания скорости для электроприводов, представленных в виде ШИМпоследовательности или двухполярного аналогового сигнала в зависимости отисполнения привода. Задает состояние 24 входных (A/I) и 24 выходных (А/О) бинарных сигналов, 4 входных и 4выходных, из которых используются для контроля состояния и разрешения работыкомплектных электроприводов соответственно. Для ввода информации от датчикауглового (линейного) положения по каждой из 4 координат, требуется по две линииввода информации. Помимо этого к адаптеру подключен пульт управления станком,который в зависимости от схемотехнической реализации может потребовать от 3 до20 линий ввода/вывода. Здесь предполагается, что регулятор положенияэлектропривода формирует выходной сигнал (сигнал задания скорости накомплектный электропривод) в виде 16-разрядного параллельного кода, которыйаппаратным способом адаптером преобразуется в ШИМ последовательности импульсовчастотой примерно 2,7 кГц.
Скважность сигнала Q=0,5 соответствует нулевому уровню сигнала задания скорости.Увеличение скважности соответствует приращению величины сигнала, заданным сознаком "+", уменьшение скважности — со знаком "-". ЧетырёхканальныйШИМ преобразователь может быть достаточно просто реализован на 2-хтрехканальных программируемых таймерах. Код управляющего воздействия на входуправления регулятора скорости комплектного электропривода может быть задан ввиде двухполярного аналогового сигнала. Для этого соответствующий канал ШИМдолжен быть заменен цифро-аналоговым преобразователем.
Приращение текущего положения наодну дискрету вводится в регулятор положения с использованием системыаппаратных прерываний. Каждый из датчиков формирует 2 импульсныепоследовательности, сдвинутые друг относительно друга на угол p/2 или — p/2в зависимости от направления перемещения.
Исходя из структуры системыуправления и основных задач, которые должна решать информационно-управляющаяоболочка, можно сформулировать следующие требования к её основным режимамработы:
ввод и визуализация файловизображения или текста УП, рассмотренных выше;
запуск и сопровождение отработкиРП системой ЧПУ при управлении от ЭВМ верхнего уровня;
индикация ошибок и сбойныхситуаций при отработке РП;
ввод параметров технологическогопроцесса для обработки детали в выбранном режиме;
контроль правильности вводапараметров;
управление и тестированиеосновных режимов работы и узлов оборудования при управлении от ЭВМ верхнегоуровня;
индикацию состояния элементовавтоматики оборудования, текущее и заданное положение рабочего инструмента поосям координат;
задание параметров итестирование интерфейса между ЭВМ верхнего уровня и системой ЧПУ;
управление оборудованием можетосуществляться с пульта управления системы ЧПУ или ЭВМ верхнего уровнясредствами информационно-управляющей оболочки (пульт управления имеет высшийприоритет).
Чертёж блок-схемы алгоритмаосновного выбора режимов работы информационно-управляющей оболочки приведен нарисунке 3.
/>
Рис.3. Блок-схема алгоритмаосновного выбора
Основной выбор предоставляет враспоряжение пользователя пять возможных режимов работы:
ТПО — режим выбора файла УП, еговизуализация и загрузка по интерфейсу RS485 в памятьпрограмм УЧПУ;
ТП1 — выполняет вводтехнологических параметров и констант исполняемой РП с контролем правильностиввода и загрузку их в систему ЧПУ;
ТП2 — осуществляет запускпрограммы, визуализацию рисунка и контроль ее исполнения (режим реальноговремени);
ТП3 — режим ручного управленияперемещением РИ (рабочего инструмента) по координатам с клавиатуры ЭВМ верхнегоуровня и тестирования состояния элементов автоматики и электроприводов станка (режимреального времени);
ТП4 — режим настройки итестирования параметров интерфейса RS485.
Режим выбора файла используетвыбор в стиле Windows. Выбор начинается с текущейпапки, где размещен исполняемый модуль информационно-управляющей оболочки, иможет расширяться на всю файловую систему и все физические устройства,определенные в системе. На режим отображения имен файлов установлены фильтры,которые позволяют из всего множества просматривать имена файлов с расширениями*. plt, *. txt, *. bmp. После вы-бора файла изображение, которое он содержит,выводится в окно просмотра. В случае *. plt-файла — средствами векторной графики. При этом в окне просмотра помимо самогоизображения выводится отметка начальной точки рисунка, а в специальных окнах — истинные габаритные размеры рисунка. Если рисунок многослойный, то каждый слойвыводится своим цветом. Если рисунок многоконтурный, то все переходы междуконтурами выполняются линиями черного цвета. После выбора нужного чертежаосуществляется процедура его преобразования в исполняемый код и загрузка поинтерфейсу RS485 во внутреннюю память системы ЧПУ.
Рассмотрим более подробно этотрежим. Блок-схема режима выбора файла просмотра изображения представлена нарисунке 4. Здесь приведен случай вывода файла *. plt. Послепроцедуры выбора файла (блок 1 алгоритма) осуществляется синтаксический разбортекста файла. С помощью блоков 3 и 4 алгоритма вырезается заголовочная частьфайла, содержащая информацию, не используемую для формирования изображения наэкране монитора и генерации кода УП. Точкой входа считается строка текстафайла, начинающаяся с символов РU. Если раньше потексту файла встретится строка символов SPO (признакконца текста), то файл не содержит информации о рисунке; выдается сообщение«Файл пуст», и программа переходит в режим основного выбора.
В случае появления символов PU продолжение строки содержит начальные координаты x и y изображения.Значения x и y переводятся из формата строки в формат longи запоминаются в промежуточном буфере УП. После этого начинается построчноепреобразование абсолютных значений координат концов отрезков прямых впеременные типа long и запоминания их в промежуточном (блоки8-13 алгоритма).
В случае если строка начинаетсясимволами SPx, где х — число от 1 до 8, то данная точка считается разрывом контура и в буфер обменавместо значений координат вводится значение Const +x. Значения Const на порядокпревосходит максимальное значение векторов x и y контурного изображения; запись в буфер продолжается допоявления заголовка строки SPO или строки с заголовком,не включенным в процедуру сравнения (блок 13 алгоритма). В первом случаепроисходит привязка рисунка к координатам окна вывода изображения на экранедисплея, т.е. рассматриваются масштабные коэффициенты преобразования, исходя изгабаритных размеров рисунка и габаритных размеров окна вывода. Затем позначениям векторов концов отрезков полилиний, сохраненных на предыдущем этапепреобразования, в окне вывода изображения строится рисунок. Во втором случаеизображение не выводится и выдается сообщение об ошибке структуры файла. Результатомдействия рассмотренного алгоритма является изображение рисунка в окне просмотрас указанием начальной точки изображения, габаритные размеры рисунка в сотыхдолях миллиметра и буфер векторов точек полилиний, образующих рисунок.
Дальнейшим действием в режимеТПО может быть просмотр следующего рисунка из списка файлов либо загрузка кодаУП в систему ЧПУ. Блок-схема алгоритма кодирования и вывода УП представлена нарисунке 5.
/>
Рис.4. Блок-схема алгоритмавывода изображения УП
На чертеже приняты следующиеобозначения:
i — указатель исходного буфера координат полилиний;
j — указатель буфера УП;
БПУ — буфер управляющейпрограммы;
Х1, У1 — координаты началатекущего отрезка прямой;
Х2, У2 — координаты концатекущего отрезка прямой;
ТКН — технологическая команданачала работы;
Sx, Sy — знаки текущего приращенияотрезка прямой по координатам x и y соответственно;
L — команда перемещения РИ;
int — шестнадцатиразрядная переменная oxffff;
ТКК — технологическая команда;
n — число отрезков полилиний переходов и технологическихкоманд;
m — коэффициент преобразования dxили dy в переменные типа intв случае, если одна из них имеет тип long;
k — указатель текущего значения числа записей при преобразованииlong в int;
пп — подтверждение приема от интерфейса связи с системой ЧПУ.
/>
Рис.5. Блок-схема алгоритмакодирования и вывода УП
Задачей настоящего алгоритмаявляется преобразование массива векторов координат полилиний и условий переходаот одной полилинии к другой в исполняемой УП для системы ЧПУ. В рассматриваемомслучае используется трехосевой привод. Одна команда УП может иметь длину однуили три переменных типа int. Однословная командаявляется технологической или задает перемещение по координате z в соответствии с номером слоя, содержащимся в кодекоманды. Величина перемещения по z в этом случаеопределяется исходя из таблицы параметров, находящейся в программируемойпостоянной памяти системы ЧПУ. Трехсловная команда задает перемещение оси вотносительных координатах. Первое слово команды содержит код команды иопределяет направление перемещения относительно текущего положения РИ. Вторыедва слова определяют величину перемещения по координатам х и усоответственно. Помимо рассматриваемого случая сходный способ кодирования УП можетбыть применен в случае использования линейно-круговой интерполяции, поэтому накод команды отводится целое слово.
Формирование УП начинается собнуления указателей на буфер массива векторов точек полилинии и на пустойбуфер, в котором будет формироваться код УП (блок 1 алгоритма). Первая команда,записываемая в буфер УП, — технологическая и определяет начальное положение покоординате z РИ. Блоки 3 и 4 алгоритмаопределяют начальное и конечное положение точек текущего отрезка полилинии. Еслитекущее положение второй точки отрезка определяется как Const,в буфер УП записывается команда поднять (опустить) РИ на величину z (блок 9 алгоритма) и увеличивает на единицу указательбуфера координат.
В противном случае вычисляетсяабсолютная величина и знак текущего приращения по координатам. Формируется кодоперации как логическая сумма собственно кода операции (в данном случаеотработка прямой линии) и знаков приращений по координатам х и усоответственно (блок 6 алгоритма).
Так как в данной реализациимаксимальный размер приращения не может превышать величину int/2(15 двоичных разрядов), блоки 7 и 8 осуществляют проверку на превышениетекущего приращения относительно заданного. Максимальный размер приращения в int/2 принят исходя из сокращения объема памяти УП, т.к подавляющеебольшинство отрезков прямых полилиний, образующих рисунок, не превышаютотмеченный порог.
В случае, если порог непревышен, в буфер УП записываются код операции и значения приращений покоординатам (блок 10 алгоритма). Затем проводится проверка на конец исходногобуфера и, если не «конец», осуществляется выборка координат очереднойточки и форми-рование очередной команды.
При превышении текущих значенийприращений по координатам или одной из них величины порога отрезок разбиваетсяна m участков, где mесть отношение максимально возможного приращения по координате заданного типаоборудования к величине int/2, и формируется ветвьалгоритма записи m участков прямой (блоки 14-16).После этого происходит переход к основной ветви алгоритма (блок 11).
Если весь исходный буферисчерпан, формируется последняя технологическая команда «конец УП» (блок12 алгоритма).
После процесса кодировкизапускается режим ввода УП в систему ЧПУ. Весь массив УП разбивается на блокипо 128 байт. Для каждого блока формируется контрольная сумма, т.е. циклическийкод CRC. Передача каждого блока в систему ЧПУсопровождается квитированием получения блока, формируемым системой ЧПУ. Вслучае сбойной передачи выдается сообщение «ошибка вывода» (блок 20алгоритма) и передача прекращается. Для повторного ввода УП необходимозапустить весь процесс сначала. Разбиение всего массива на блоки вызваноособенностями работы ППЗУ УП системы ЧПУ. В случае успешной передачи управлениепередается в фоновый режим (режим основного выбора).
Ввод параметров осуществляется склавиатуры ПК в окна однострочных текстовых редакторов, каждый из которыхсоответствует своему параметру. Режим ввода технологических параметровреализован для системы ЧПУ с двух-, трех-, четырехосевым электроприводом. Взависимости от количества осей доступ осуществляется к строго определеннойгруппе параметров. Группы могут перекрываться между собой. При вводе параметровосуществляется контроль на выход за допустимую зону его изменения. Принеправильном вводе значение параметра устанавливается по умолчанию (обычноминимальное) и выдается сообщение об ошибочном вводе.
Загрузка параметровосуществляется специальной командой. В этом случае все параметры преобразуютсяиз строковой переменной в двоичную типа long, int или cnar в зависимости отдиапазона изменения и в определенном порядке загружаются в буфер. Буферпередается в систему ЧПУ, где запоминается. Сообщение дополняется байтом CRC. При ошибочном приеме сообщения на ЭВМ верхнего уровнявыдается сообщение об ошибке, которое индицируется на экране монитора. Принормальной передаче программа переходит в фоновый режим.
Блок-схема алгоритма запуска УПна исполнение с ЭВМ верхнего уровня представлена на рисунке 6. Данный режимработы оболочки связан с непосредственным управлением работой ЧПУ и не можетбыть покинут без передачи сообщения в систему. После входа в режим «Работапо программе» осуществляется опрос двух кнопок управления, выведенных напанель оболочки. Это кнопки «Пуск» и «Выход» (блоки 1 и 2алгоритма). При нажатии кнопки «Выход» осуществляется переход вфоновый режим. При нажатии кнопки «Пуск» происходит вывод рисунка УПв графическое окно оболочки (блок 3 алгоритма), затем через com-порт передается команда запуска УПна отработку. Если система ЧПУ готова к работе в этом режиме, выдаетсясообщение о готовности и происходит запуск УП, т.е. начинается обработка детали.В случае, если система по той или иной причине не готова к работе, возвращаетсянулевой сигнал готовности, при этом на экран выводится сообщение о неготовностиустройства к работе и осуществляется переход в начало (блоки 5, 11 алгоритма).
/>
Рис.6. Блок-схема алгоритмапуска и сопровождения УП
При работе с системой постоянноопрашиваются состояния COM-порта и кнопки «стоп»на лицевой панели оболочки. В случае нажатия кнопки «Стоп» в системучерез COM-порт передается команда остановить выполнениепрограммы и осуществляется переход в начало (блоки 9 и 10 алгоритма). При этомрисунок УП в окне просмотра удаляется. При отработке УП со стороны системычерез COM-порт может прийти три типа сообщения. Рассмотримих поочередно.
Сообщение «Кадр» информируетоболочку о том, что отработан очередной участок полилинии. По этому сообщениюучасток полилинии в окне просмотра изменяет цвет, индицируя тем самым этапотработки УП (блок 6, 12 алгоритма).
Сообщение «Сбой» сигнализируето нарушении режима работы технологического оборудования или ошибке в работесистемы ЧПУ. Это сообщение может быть вызвано также прекращением отработки УПпо команде оператора с пульта управления системы. Команды с пульта управленияимеют высший приоритет по сравнению с командами от ЭВМ верхнего уровня. В этомслучае на панель оболочки выдается сообщение с номером ошибки и осуществляетсяпереход в начало программы (блок 7, 12 алгоритма).
Сообщение «КП» сигнализируетоб успешном завершении выполнения УП системой. В этом случае формируетсясообщение об успешном выполнении программы, которое выводится на рабочей панелиоболочки и так-же осуществляется переход в начало программы (блок 8, 14алгоритма).
Внешний вид рабочей панелиинформационно-управляющей оболочки в режиме ручного управления технологическимоборудованием и контроля его состояния приведен на рисунке 7.
На панели расположены следующиеэлементы индикации и управления:
кнопки управления режимом «Слежение»,«Работа», «Выход»;
окна индикации заданного иистинного положения осей электроприводов X, Y, Z, φ, а также величинырассогласования (на рисунке 6 показан режим управления двухосевым приводом,поэтому окна Z и φ не активны);
панель выбора режима в положении«Работа»;
индикаторы состояния приводов покаждой из координат и положение инструмента по данной координате;
кнопки включения/отключенияэлектроприводов;
индикационная панель выбранногорежима в состоянии «Работа».
В режиме «Слежение» напанель оболочки выводятся значения заданного и истинного положений ирассогласования между ними по каждой из рабочих координат, а также состояниеприводов включено/выключено и наличие сигнала ограничения (выход за пределырабочей зоны) по каждой из рабочих координат.
Режим «Слежение» можетбыть включен независимо от текущего состояния системы ЧПУ. В этом режиме счастотой 10 Гц в систему подается запрос о текущем состоянии. В ответ на запроссистема ЧПУ формирует сообщение о текущем состоянии элементов и передает этосообщение в ЭВМ верхнего уровня.
/>
Рис.7. Внешний вид панелиинформационно-управляющей оболочки в режиме ручного управления системой ииндикации состояния
В случае, если процессор системыЧПУ отключен, на панель выдается сообщение о том, что нет связи с объектом. Выходиз режима «Слежение» осуществляется нажатием кнопки «Выход»,любая другая попытка выйти из этого режима блокируется.
В режиме «Работа» помимоэлементов индикации доступен также ряд элементов управления оборудованием. Вэтом случае с помощью панели «Выбор режима» можно задать один из пятивозможных способов управления оборудованием:
работа ПП;
кадр;
пульт РУ;
переход база;
переход ноль.
Инициализация выбранного режимауправления оборудованием осуществляется кнопкой «Пуск реж. ». Приэтом в систему ЧПУ передается запрос на управление в заданном режиме. Еслисистема доступна для управления от ЭВМ верхнего уровня, то она возвращаетсообщение о разрешении режима, в противном случае на панель выдается сообщение«Система недоступна». При получении сигнала разрешения на управлениев нижней части панели появляется информационное сообщение о том, что оборудованиенаходится под управлением ЭВМ верхнего уровня.
Режим «Работа ПП» запускаетотработку УП, находящуюся в памяти системы ЧПУ и в ходе процесса отражаеттекущее положение РИ и состояние приводов. Выход из режима осуществляетсяавтоматически по завершении выполнения УП.
Режим «Кадр» позволяетзапустить УП в покадровом режиме, т.е. после выполнения заданной командывыполнение УП приостанавливается и на элементах индикации можно зафиксироватьтекущее положение РИ. Повторный пуск осуществляется повторным нажатием кнопки«Пуск Реж.»
Режим «Пульт РУ» даетдоступ к дополнительной панели управления «Задание перемещения». Сэтой панели доступно управление приводом каждой из координат, движение покоторой разрешено при выбранных настройках.
Начало перемещения инициализируетсянажатием соответствующей клавиши на панели «Задание перемещения». Скоростьперемещения определена в списке параметров. Прекращение перемещения по даннойкоординате осуществляется кнопкой «Стоп».
Режим «Переход База» выдаеткоманду системе ЧПУ на перемещение РИ в заданную точку рабочего пространства,координаты которой определены в списке параметров. Выход из режимаосуществляется автоматически по достижении РИ заданной точки. Режим «ПереходНоль» выдает команду системе ЧПУ перемещения РИ в начало координатрабочего пространства технологического оборудования. Выход из режима аналогиченвышеописанному.
Прекращение выполнения любого изрежимов осуществляется нажатием кнопки «Стоп Реж.» на панели «Выборрежима». В этом случае в систему ЧПУ передается команда прекращениявыполнения текущего режима. При возникновении сбойной ситуации в системе илиоборудовании, а также при нажатии клавиши «Стоп» на пульте управлениятехнологическим оборудованием, исполнение выбранного режима прекращается и вЭВМ верхнего уровня выдается соответствующее сообщение, которое выводится напанель индикации.
В режиме настройки итестирования COM-порта задаются основные параметрыпередачи сообщений по стандарту UART, к числу которыхотносится скорость обмена, количество бит в сообщении, наличие контроляпаритета и количество стоповых бит. Здесь же выбирается номер COM-порта,через который будет подключен интерфейс RS485. Здесь жеможно осуществить наглядное тестирование интерфейса между ЭВМ верхнего уровня иЧПУ, если она обладает такими возможностями, в режиме «автоэхо».
Программа, реализующаяинформационно-управляющую оболочку, написана на языке С++ в среде С++Builder5. Отладка ПО проведена с помощью имитатора системыЧПУ, выполненного на базе микроконтроллера семейства AVR.
Библиографический список
1. Фридман, А.Л. Язык программирования Си ++ [Текст] / А.Л. Фридман. — М.: ISBN, 2009. — 288 с.