- обеспечение запросов к базе данных;
- извлечение записей из баз данных и т.д.
Специфицировать очередность выполнения подпроцессов:
- создание интерфейса ввод исходных данных создание базы данных определение связей таблиц баз данных
Специфицировать требования обеспечения правильности данных для каждого подпроцесса.
Создать интерфейс для подключения внешних баз данных.
Подключение баз данных.
8. Создание интерфейса для проведения телеконтроля
Реализация программных алгоритмов.
Проверка на надежность функционирования.
Воронежский государственный технический университет
УДК 621.313
АППРОКСИМАЦИЯ КРИВЫХ БЕЗЬЕ СОПРЯЖЕННЫМИ ДУГАМИ И ЕЕ ПРАКТИЧЕСКОЕ ПРИМЕНЕНИЕ
Ю.С. Скрипченко, А.С. Кольцов, Р.С. Лопатин
В последнее время многие прикладные программы для математического описания и представления графических объектов используют плоские кривые Безье третьего порядка (в дальнейшем для краткости будем называть их просто кривыми Безье, как это принято в современной литературе). Кривые Безье используются, например, в графических редакторах Corel Draw!, Adobe Illustrator, Micrografx Designer, Aldus Freehand, издательских пакетах Aldus Pagemaker, QuarkXpress и многих других. Более того, язык описания страниц PostScript прямо ориентирован на использование кривых Безье. Добавим еще, что во многих популярных шрифтовых форматах (Adobe PostScript Type 1, Agfa Intellifont, Nimbus Q, и др.) контуры символов полностью или частично построены из кривых Безье, а для обмена графической информацией между различными программами в среде Windows наиболее часто используется формат файла EPS (Encapsulated PostScript, вариант языка PostScript). Все упомянутые программные продукты так или иначе связаны с издательской и дизайнерской деятельностью. С другой стороны, программы для обслуживания САПР и станков с ЧПУ используют традиционное описание плоских контуров в виде отрезков прямых и дуг (AutoCAD, PCAD, КОМПАС ГРАФИК и др.). Большинство известных систем программирования для станков с ЧПУ также поддерживают команды перемещения инструмента по отрезку и по дуге. Хотя мощные САПР "умеют" очень многое, в некоторых случаях чертеж детали или его часть для обработки на станке с ЧПУ бывает удобнее подготовить в дизайнерской системе. Особенно, если работа связана со шрифтовым оформлением (шильдики, таблички, рекламные панно, вывески и т.п.): ведь в распоряжении оператора любой дизайнерской или издательской системы находятся десятки или даже сотни шрифтов самого разнообразного начертания, чего нельзя сказать о САПР. Возьмем, к примеру, самую популярную дизайнерскую систему Corel Draw! и самый распространенный пакет САПР - AutoCAD. Казалось бы, проблем с передачей графической информации нет: Corel Draw! экспортирует чертежи в формате DXF, котрый "понимают" и AutoCAD, и многие другие программы. Однако, Corel Draw! при записи кривых Безье из базы данных рисунка в формат DXF использует кусочно-линейную аппроксимацию: каждая кривая Безье заменяется как мимнимум восемью векторами, а, если она выпуклая, охватывает достаточно большой угол и имеет сравнительно большие размеры, таких векторов будет 64 или даже больше! Есть другой путь. AutoCAD версий 12 и 13 импортирует EPS-файлы, однако... тоже делает кусочно-линейную аппроксимацию! В результате база данных чертежа непомерно разрастается, а полученная на ее основе программа для ЧПУ окажется весьма длинной и медленной.
Нами была поставлена задача аппроксимировать произвольную кривую Безье последовательностью сопряженных дуг, причем число дуг должно быть минимальным при заданной точности аппроксимации. Цель задачи - минимизировать объем файла импорта данных и программу для ЧПУ. Для заинтересованного читателя напомним, что кривые Безье названы так в честь французского математика Пьера Безье, впервые предложившего их в начале 70-х годов фирме «Рено» для моделирования обводов кузова легкового автомобиля. В общем виде уравнение кривой Безье n-го порядка в многомерном пространстве для каждой координаты запишется в виде (1):
(1)
где
r(t) - параметрически задаваемая координата ;
-
координаты
i
опорных точек (число опорных точек равно
);
t - параметр, который принимает значения от 0 до 1.
Плоская кривая Безье третьего порядка c четырьмя опорными точками является частным случаем уравнений (1), описывается системой параметрических уравнений (2) и представляет собой кубический сплайн специального вида:
;
(2)
где
и
-
координаты опорных, или управляющих
точек сплайна
A,B,C
и
D
(рис.
1):
Рис. 1. Плоские кривые Безье третьего порядка .
Кривая Безье касательна к охватывающему контуру ABCD в крайних точках, потому сопряжение со следующей кривой Безье сделать очень легко. Простейший случай аппроксимации выпуклой кривой Безье двумя сопряженными дугами показан на рис.2
Рис. 2. Схема аппроксимации кривой Безье двумя сопряженными дугами.
Математически
задача сводится к отысканию координат
центров аппроксимирующих дуг
и
(и соответственно их радиусов
и
).
Однако, данная задача не однозначна:
существует множество решений. Наилучшим
будет, очевидно, решение, которое
минимизирует среднеквадратичное
отклонение D
(рис. 2). При вычислении координат центров
следует проверять условия связности,
сопряженности и выпуклости. Если
огибающий контур представляет собой
невыпуклую либо самопересекающуюся
ломаную, кривая Безье будет иметь точки
перегиба, возврата или пересечения (cм.
рис. 1). В этих случаях задача усложняется,
и необходимо проверять дополнительные
условия. Если аппроксимация двумя дугами
не обеспечивает требуемой точности,
необходимо строить три или даже четыре
дуги. Сложность и количество вычислений
возрастают на порядок. Но существует и
другой подход. Можно попытаться
аппроксимировать кривую Безье даже
одной дугой, проходящей через три
заданные точки: начальную, конечную
точки огибающего контура и некую среднюю
точку на кривой Безье. В этом случае
следует проверять допустимое отклонение
от направления касательной в точках
сопряжения с огибающим контуром. Как
показала практика, неточность сопряжения
в пределах 3...4 градусов практически не
заметна. Нам удалось найти достаточно
эффективный алгоритм для быстрой
аппроксимации кривых Безье
последовательностью приближенно
сопряженных дуг. Критерием точности
аппроксимации служит максимальной
отклонение D
(рис.2) в направлении радиуса. Если
требуемая точность аппроксимации или
сопряжения не достигается, число дуг
автоматически увеличивается и вычисления
повторяются. Как показала практика,
четырех-пяти дуг обычно бывает достаточно,
чтобы аппроксимировать кривую Безье
практически любой сложности. Для
аппроксимации одной выпуклой кривой в
описании символа типичного шрифта в
формате Adobe PostScript бывает достаточно
двух дуг.
На основе упомянутого алгоритма нами была разработана программа для конвертации изображений плоских контуров из формата EPS в файлы форматов DXB (для ввода в AutoCAD), DXF (для ввода во многие графические системы), FRG (для ввода в КОМПАС ГРАФИК) и PRG (программа для лазерной резки в системе команд ZIT-500).
Воронежский государственный технический университет
УДК 621.313
Математическое обеспечение подсистемы конструкторско-технологического проектирования токарной обработки интегрированной САПР
Р.П. Орлов, А.С. Левченко, Р.С. Лопатин
При оптимизации режимов механической обработки обычно определяются параметры v и s при некотором фиксированном значении глубины резания t. Такой подход был использован из-за сложности построения математической модели процесса резания для трех параметров и их определения. В то же время выбор глубины резания и ее изменение в значительной степени определяют оптимизируемые параметры v и s.
Рассмотрим задачу построения математической модели процесса резания для трех параметров v, s и t с разработкой метода и алгоритма оптимизации этих режимов резания.
В целях создания универсальных алгоритмов, обеспечивающих оптимизацию по критериям «минимальное штучное время», «минимальная себестоимость» или совмещенному критерию F, подставим в нижеприведенную зависимость выражение для tшт.р и Соп.р
(1)
1) ограничения по стойкости режущего инструмента
2) ограничения по мощности электродвигателя главного движения станка
3) ограничения по заданной производительности станка
; (2)
4) ограничения по прочности режущего инструмента
;
(3)
5) ограничения по жесткости режущего инструмента
(4)
6 ) ограничения по жесткости заготовки
(5)
ограничения по прочности механизма
(6)
ограничения по требуемой шероховатости поверхности
(7)
Обозначим
правые части неравенства соответственно
,
.
В качестве компромиссной целевой функции принимаем
,
(8)
,
, (9)
,
(10)
где x — весовой коэффициент, определяющий долю влияния в функции F критерия оптимальности tшт.р и изменяющийся от 0 до 1; , Соп.ср — средние арифметические значения tшт, Соп на множестве значений пар (vi, si), и после преобразований получим
(11)
г
(2.12)
(13)
Рассмотрим возможности оптимизации режимов резания для параметров v, s и t применительно к полученной оценочной функции F, представленной в виде получившегося выражения. Если зафиксировать значения v и s, то функция F будет зависеть от одного параметра t. Для этого случая минимальное значение критерия F может быть определено с помощью частной производной по t:
(14)
Используя известную зависимость для v=Cvkv/Tmtx0sy0, можно получить выражение для определения значения стойкости инструмента:
(15)
(16)
Учитывая это, выражение для производной целевой функции преобразуется к следующему виду:
(17)
Приравняем производную dF/dt нулю; учитывая, что [v, s, t]-1 0, получим
(18)
Из этого уравнения
находим
.Подставляем
в это выражение значение Т:
(19)
и получаем зависимость для определения оптимальной глубины резания
(20)
Это значение tопт дает абсолютный минимум функции F при заданных v и s. Однако параметры v, s и t связаны рядом технических ограничений, выражающихся в виде неравенств:
(21)
(22)
(23)
(24)
где Ri — некоторые постоянные, зависящие от характеристик станка, заготовки, инструмента и т. д., но не зависящие от элементов режима резания v, s, t.
(21)
где
.
(26)
Значения
определяются
исходя из анализа известных и ранее
установленных технических ограничений:
- ограничения по
мощности главного привода станка,
прочности и жесткости станка.
Оптимальное значение глубины резания tопт, полученное по зависимости для заданных значений v и s, может находиться в точке трехмерного пространства, определяемого техническими ограничениями, или вне его. В последнем случае величина tопт принимается на пересечении перпендикуляра к плоскости v—s с поверхностью, описываемой одним из технических ограничений, в точке M. Графическое определение tопт для заданных значений v, и s, показано на рисунке 1. Аналитически выбор и уточнение глубины резания после определения tопт по зависимости может быть показан в следующем виде:
Таким образом, если tomM, то toпт действительно дает наименьшее значение критерия F при заданных v и s. Если же tom> M, то в качестве оптимального значения приходится брать M — верхнюю допустимую границу для t. При фиксированных vi и si, задача решена.
Оптимизация режимов резания по значениям v и s.
Для оптимизации по всем значениям v и s необходимо рассматривать два случая, а именно:
Рисунок 1 – Модель для оптимального определения режимов резания v, s и t (при дискретных значениях v и s)
Для дискретного множества значений v и s и для непрерывного множества значений этих же параметров. Для примера рассмотрим построение алгоритма решения рассматриваемой задачи для первого случая. Наиболее простым способом решения такой задачи на ЭВМ является ранее рассмотренный метод перебора всех значений vi, si, из множеств {vi,v2, ... vn } и {si, s2, ... , sp}. При этом алгоритм может быть построен в следующем виде. Для каждой пары значений vi, sj, вычисляются с помощью производной дF/дt оптимальные значения toпт ij Проверяется выполнение условия tonr M, вытекающего из технических ограничений. В случае невыполнения этого условия принимается toпm=M. Затем перебором находится минимум оценочной функции из чисел F(vi, sj, tопт ij). Этот подход использован при построении схемы алгоритма оптимизации режимов механической обработки для дискретных значений параметров v, s и глубины резания t.
| 05_Холера |
| 10.4. Исследование регистров |
| 1112 |
| 12 |
| 1568 |
| 1673 |
| 17 |
| 1703 |
| 2.2. Практическая работа к теме |
| 2091 |