К У Р С О В А Я
Н а у ч н о – и с с л е д о в а т е л ь с к а я
Р А Б О Т А
Тема
«Доработка встроенной диалоговой системы подготовки УП
Для станков с УЧПУ МИКРОС-12Т»
Исполнитель: студент группы ДАМ-07
______________П.А. Ливаткин
«__»_________________2011 г.
студент группы ДАМ-07
______________М.В. Ломака
«__»_________________2011 г.
Руководитель: _________к.т.н. В.И. Григорьев
«__»_________________2011 г.
Электросталь 2011
СОДЕРЖАНИЕ
1. Производственная практика ------------------------------------------------------------------ 3
А. Общая характеристика деятельности и история предприятия----------------3
Б. Цели КНИРа ------------------------------------------------------------------------------- 4
В.УЧПУ "МИКРОС-12Т" ----------------------------------------------------------------5
Г. Итоги КНИРа--- --------------------------------------------------------------------------9
2. Реализация программы ---------------------------------------------------------------------------9
3. Описание программы --------------------------------------------------------------------------- 12
4. Тексты модулей программы-------------------------------------------------------------------- 16
A. Текст модуля TMlist--------------------------------------------------------------------- 16
Б. Текст модуля zzc3----------------------------------------------------------------------- 24
Эта курсовая научно-исследовательская работа является прямым продолжением предыдущей курсовой научно-исследовательской работы, пройденной мной на ЗАО “Микрос” в начале 2011 года.
Общая характеристика
деятельности и история предприятия
ЗАО "Микрос" образовано в 1995 г. на базе научно-конструкторского и производственного подразделения Центрального научно-исследовательского технологического института Министерства оборонной промышленности, которое с конца 70-х г.г. прошлого столетия занималось созданием и производством микропроцессорных систем управления для различного машиностроительного оборудования. Ведущее место среди этих систем управления занимали устройства ЧПУ.
Первая широко распространённая модель УЧПУ предприятия - АС2621 - была создана в 1981 г. на базе первой отечественной промышленной ЭВМ <Электроника-60>. УЧПУ АС2621 широко использовалось для комплектации многокоординатных фрезерных обрабатывающих центров отраслевого производства ОЦ3В, ОЦФ1, МЦ450, МЦ800 и др. В 80-х г.г. было выпущено более 1000 штук УЧПУ АС2621. Благодаря продуманной системе технологических мер, тщательному тестированию компонент УЧПУ на всех стадиях производства была достигнута очень высокая надёжность УЧПУ с наработкой на отказ более 3000 часов. Многие образцы УЧПУ АС2621, выпущенные в середине 80-х г.г., работают до сих пор.
Во 2-й половине 80-х г.г. на предприятии впервые в стране было создано УЧПУ <МИКРОС-1> на новой элементной базе Intel.
В конце 80-х г.г. по заданию Правительства создано уникальное УЧПУ <ПРЕЦИЗИОН-Т> для комплектации и модернизации сверхточных токарных станков алмазного точения, в котором, впервые в стране, в качестве ЭВМ верхнего уровня была применена персональная ЭВМ с программированием управляющих программ на языке высокого уровня, а для обеспечения сложного формообразования реализован комплекс высокоточных алгоритмов планирования движения.
В последние годы для комплектации и модернизации токарных, фрезерных, шлифовальных, электроэрозионных, сверхточных станков разработана новая серия УЧПУ <МИКРОС-12> с архитектурой промышленного компьютера и использованием собственной операционной системы жёсткого реального времени.
В 1998 г. ЗАО "Микрос" разработало по техническому заданию Главного управления исполнения наказаний (ГУИН) Минюста России систему охраны периметров и помещений учреждений и предприятий "Сова".
Система "сова" включает в себя подсистему сбора и обработки информации от датчиков обнаружения, установленных на рубежах охраняемого периметра, подсистему телефонной связи, подсистему громкоговорящей связи, подсистемы видеонаблюдения и управления удалёнными объектами. С 1998 г. осущест-вляется производство этих систем охраны и поставка ГУИН. С 2006 года начато серийное производство системы охраны периметров и помещений "Микрос-02", которая явилась следующим поколением систем "Сова". К настоящему времени в десятках регионов России от Калининграда до Владивостока и от Архангельска до Махачкалы, а также в странах СНГ, установлены и успешно работают в круглосуточном режиме сотни систем охраны "Сова" и "Микрос-02".
С 2001 г. в ЗАО "Микрос" разрабатываются и выпускаются датчики для обнаружения проникновения через сигнализационные заграждения, оборудованные ёмкостными и трибоэлектрическими чувствительными элементами.
ЗАО "Микрос" - одно из немногих российских предприятий, разрабатывающих и выпускающих современные наукоёмкие и высокотехнологичные микропроцессорные системы управления и контроля. ЗАО "Микрос" динамично развивается - постоянно увеличивает объём выпускаемой продукции, повышает её качество, расширяет её номенклатуру, предлагает потребителям всё новые услуги.
Цели КНИРа.
Устройство ЧПУ "МИКРОС-12Т" имеет собственный встроенный язык управления. Поскольку использование данного языка сопряжено с рядом трудностей, (например, следует решать системы уравнений для определения точных координат начала и конца сопрягающих дуг) да и само изучение языка для написания управляющих программ требует много времени и усилий, нам было выдано задание: написать программу автоматизирующую процесс создания управляющих программ. В ТЗ были включены следующие требования:
1)ПО будет написано на основе выданной нам инструкции пользователя для ЧПУ фирмы FANUC. Оно должно соответствовать техническим требованиям, предъявляемым к системе FANUC серии i -Turning. Допустимы отличия в интерфейсе.
Требования к программному обеспечению: данное программное обеспечение должно функционировать под управлением операционной системы MS DOS. Для разработки программы подготовки УП для УЧПУ будет использован компилятор DJGPP для среды RHIDE. Будут использованы библиотеки: allegro, MESA и CGUI.
Диалоговая система подготовки УП должна быть выполнена в виде программного модуля, входящего в состав штатного программного обеспечения УЧПУ «Микрос-12Т».
Программный модуль, входящий в состав штатного программного обеспечения УЧПУ «Микрос-12Т», предназначен для выбора контура заготовки, ввода технологических параметров, инструмента, ввода конечного контура сечения детали при помощи стандартных элементов и генерации УП.
Показатели назначения.
Встроенная диалоговая система подготовки УП должна обеспечивать следующие возможности:
А)Выбор и отображение контура заготовки;
Б)Выбор инструмента;
В)Ввод технологических параметров;
Г)Ввод конечного контура детали, состоящего из стандартных элементов:
· прямая;
· дуга окружности;
· сопряжение дугой окружности:
o двух прямых;
o прямой и окружности;
o двух окружностей;
Д)Ввод количества проходов и глубины резания;
Е)Генерация кода УП с использованием следующих функций УЧПУ:
G00 | Позиционирование (ускоренное перемещение) |
G01 | Линейная интерполяция |
G02 | Круговая интерполяция по часовой стрелке |
G03 | Круговая интерполяция против часовой стрелки |
G180 | Цикл точения |
G181 | Цикл копирования |
G182 | Цикл резьбонарезания |
6)Сохранение текста управляющей программы на жёсткий диск.
В качестве примера было выдано руководство разработчика от фирмы FANUC.
Устройство ЧПУ "МИКРОС-12Т" предназначено для модернизации и комплектации токарных станков.
УЧПУ "МИКРОС-12Т" построено по архитектуре промышленного компьютера с использованием собственной операционной системы жесткого реального времени. Используются постоянно обновляющиеся новейшие
вычислительные средства.
Большой 15-дюймовый жидкокристаллический дисплей позволяет предоставлять пользователю разнообразную алфавитно-цифровую и графическую информацию.
Блочная конструкция УЧПУ позволяет расположить компактный пульт управления близко к зоне обработки детали.
![]() | Работа с УЧПУ "МИКРОС-12Т" удобна, благодаря дружескому человеко-машинному интерфейсу. Управление осуществляется в диалоговом режиме с использованием меню. Контроль за выполняемыми операциями, а также за состоянием УЧПУ и станка обеспечивается с помощью развитой индикации. |
![]() | Широкий, хорошо систематизированный набор параметров с полноценными названиями обеспечивает удобную и лёгкую настройку УЧПУ "МИКРОС-12Т" на конструктивные и технологические особенности станков. |
![]() | Встроенная процедура самонастройки на привод позволяет при подключении УЧПУ к станкам или замене приводов всего за несколько минут определить оптимальные параметры управления положением для каждой оси станка с учётом реальных характеристик приводов. |
![]() | Для программирования управления электроавтоматикой станков используется язык высокого уровня Мик-Си (на базе известного языка Си), обладающий универсальностью, наглядностью и компактностью. УЧПУ "МИКРОС-12Т" позволяет не только программировать логику работы электроавтоматики, но и время её выполнения. |
Встроенный имитатор входных и выходных сигналов станка позволяет проводить предварительную отладку программы управления электроавтоматикой без включения станка. |
![]() | Функция наблюдения временных диаграмм состояния любых выбранных входных и выходных дискретных сигналов позволяет проводить отладку программы управления электроавтоматикой быстро и эффективно. |
![]() | Текстовый редакторобеспечивает ручной ввод и редактирование управляющих программ. |
![]() | Развитый макроязык позволяет существенно сократить объем управляющей программы и время её отладки. Математические операции, функции и операторы позволяют задавать выражения с локальными, глобальными и системными переменными в удобном "математическом" виде. |
![]() | Программное обеспечение включает в себя различные постоянные технологические циклы, позволяющие упростить программирование многопроходной обработки и обработки типовых контуров и сократить длину программ. |
![]() | Режим графической поддержки предоставляет оператору возможность просматривать запрограммированное движение инструмента и проверять элементы его траектории при выключенном станке. |
![]() | Уникальная функция компенсации непостоянства радиуса режущей кромки радиусного резца позволяет учесть при обработке детали реальные погрешности его формы. Величина радиуса, как функция угла, вводится в виде таблицы с пульта УЧПУ. |
Автоматизированная смена ступени вращения шпинделя. По команде смены ступени управляющей программы (УП) выполняется приостановка УП и останов шпинделя, на дисплей выводится сообщение (для привлечения внимания оператора можно использовать также световой или звуковой сигналы) и шпиндель переводится в режим медленного вращения. Оператор включает заданную ступень и нажатием кнопки «Пуск» продолжает выполнение УП. |
![]() | В токарных циклах точения и копирования можно задать сложный контур, который имеет несколько углублений. Разбиения сложного контура на отдельные участки не требуется. Расчет проходов выполняется автоматически в соответствии с заданными параметрами обработки. |
![]() | Автоматизированный ввод циклов точения и резьбонарезания в управляющую программу. |
![]() | Все события и действия оператора фиксируются в протоколе. Протокол можно просмотреть на экране дисплея и распечатать на принтере. |
Теперь, при помощи УЧПУ "МИКРОС-12Т" легко программировать и обрабатывать детали со сложным контуром с высокой точностью.
Детали, обработанные на токарных станках с УЧПУ "Микрос-12Т"
![]() | ![]() | ![]() |
Пятизаходный червяк | Фасонная деталь | Детали из меди |
![]() | ![]() | |
Шарнирный палец | Ходовой винт |
Итоги КНИРа.
За период второй курсовой научно-исследовательской работы (1 сентября 2011 – 23 декабря 2011) нами была написана заданная руководством предприятия программа.
Она является продолжением первой курсовой научно-исследовательской работы и предоставляет пользователю, не обладающему достаточной специализацией и обширными знаниями в данной теме, широкие возможности в создании управляющих программ для УЧПУ "МИКРОС-12Т". Не требуется изучать язык управляющих программ для УЧПУ "МИКРОС-12Т", конструкцию токарного станка, вычислять координаты точек начала и конца сопряжения, иметь навыки программирования. В программе также реализованы широкие возможности по её дальнейшей модернизации.
В ходе этого КНИРа нами были самостоятельно изучены многие области знаний, не входившие в базовую подготовку. Были решены многие возникшие в ходе работы проблемы.
В ходе оценки первой курсовой научно-исследовательской работы были выявлены недостатки, делающие её мало пригодной для практического применения. В ходе второго КНИРа недостатки были исправлены, были введены циклы обработки деталей и возможность выбора одной из стандартных форм заготовки. Так же был модернизирован интерфейс, добавлены новые функции, в том числе и дополняющие результаты 1 КНИРа и специфические варианты сопряжений.
Реализация программы.
Основная задача курсовой научно-исследовательской работы заключалась в доработке встроенной диалоговой системы подготовки УП. Целью же данного отчёта является показать, как успешно были выполнены эти задачи.
1. Реализовать управление кнопками с помощью клавиатуры.
Клавиатурное управление является неотъемлемой частью библиотеки Allegro, оно уже реализовано и скрыто внутри неё.
2. Реализация интерфейса.
Был разработан интерфейс программы. Созданы окна, позволяющие осуществить
1)вывод графической информации пользователю в качестве:
1.1 изображения контура заготовки (динамическое создание неограниченного числа окон для написания новых программ)
1.2 текстовых сообщений о выбранном способе построения элемента контура (6 элементов, для корректной обработки которых потребовалось ввести 12 функций)
1.3 в виде управляющей программы для УЧПУ "МИКРОС-12Т" (выводится на главном окне программы)
2)ввода графической информации в качестве:
2.1 окон, содержащих кнопки выбора способов построения элементов контура(5 окон)
2.2 окон, содержащих элементы для ввода числовой информации (координат, углов) используемых в дальнейших расчётах и при построении контура заготовки, а также для генерации УП для УЧПУ "МИКРОС-12Т" (9 окон)
3. Реализация математического обеспечения.
В ходе написания программы возникла необходимость решения систем уравнений, для чего были разработаны более 20 алгоритмов, а в конечную реализацию программы внесены 8 из них. Сюда входят такие функции, как:
1) решение системы уравнений описывающей две окружности вида:
(x-x1)2 +(y-y1)2=r12,
(x-x2)2 +(y-y2)2=r22;
2) решение системы уравнений описывающей прямую и окружность вида:
y=kx+b0,
(x-x2)2 +(y-y2)2=r2;
3) решение системы уравнений описывающей вертикальную прямую и окружность вида:
x=n,
(x-x2)2 +(y-y2)2=r2;
4) решение системы уравнений из двух прямых, вида:
y=k1x+b1,
y=k2x+b2;
5) приведение прямой заданной двумя точками на координатной плоскости к виду y=kx+b0.
4) приведение прямой заданной 1 точкой на координатной плоскости углом наклона к оси 0X к классическому виду y=kx+b0.
5) Алгоритмы нахождения углов между:
5.1 вектором и координатной осью
5.2 двумя векторами
И другие.
4. Реализация алгоритмов преобразования числовой информации в текстовую.
Были реализованы алгоритмы для преобразования целочисленной знаковой информации в строки, которые затем используются для генерации управляющей программы. Для этого были написаны функции:
1) вычисляющая длину числа с учётом его знака
2) поразрядно преобразующая число в строку с учётом знака
В качестве заключения к этой части отчёта отмечу, что программа имеет широкие возможности по модернизации, её можно характеризовать как надёжный и стабильный инструмент разработчика. Использованные в ней функции могут быть эффективно использованы в других приложениях.
Недочёты программы: нет возможности масштабирования изображения контура заготовки.
Направления улучшения программы:
1) создание режима позволяющего вычислить координаты точек начала и конца сопряжения и вывести их на экран
2) добавление возможности масштабирования изображения контура заготовки
Описание программы
Основные функции
int main(void) – отвечает за переход в графический режим и вызывает функцию make_a_window() построения первого окна. При закрытии всех окон завершает работу программы и возвращает 0.
void make_a_window(void) – отвечает за создание первого окна, содержащего кнопки «NewPrj»(вызывает функцию make_a_canvas_window отрисовывающую окно для работы с новым проектом), «Tehn param», «Cycle», «Single», «Save», «Close» и «Exit». Помимо них окно содержит элементы: AddList(для вывода кода УП) и MkCanvas(для вывода графического изображения контура движения резца). Функция использует глобальную переменную mcanv.
void make_a_canvas_window(void) – отвечает за создание нового окна, позволяющего работать с новым проектом. Окно содержит кнопки «Set start point»(вызывает функцию asc_start_point), «Sopr»(вызывает функцию asc_sopr_form), «Line»(вызывает функцию asc_line_form), «Arc»(вызывает функцию asc_arc_form), «Close» и некоторые другие. Помимо них окно содержит элемент: MkCanvas(для вывода графического изображения контура движения резца). Функция использует глобальную переменную mcanv.