Оптимизация автоматических циклов шлифования, выполняемых на плоскошлифовальных станках, методом динамического программирования

обработка материалов резанием

УДК 621.92

оптимизация автоматических циклов шлифования, выполняемых на плоскошлифовальных станках, методом динамического программирования

Д. в. исаков, А.С. Коваленко

Ключевые слова: шлифование, операция шлифования, автоматический цикл шлифования, оптимизация операций шлифования, динамическое программирование.

В современном машиностроительном производстве широкое распространение получили шлифовальные станки с ЧПУ. Такие станки позволяют выполнять операции шлифования в автоматическом цикле и по заданной программе. Однако расчет управляющей программы обработки проводится эмпирически, то есть на основе опыта рабочего или технолога. Как правило, спроектированная таким образом шлифовальная операция далека от оптимальной. Основной причиной данного положения является отсутствие научно обоснованной методики проектирования автоматических циклов шлифования для разных видов шлифовальных операций. В настоящее время существует хорошо разработанная методика оптимизации автоматических циклов шлифования, выполняемых на круглошли-фовальных станках с ЧПУ [1]. Методика оптимизации автоматических циклов плоского шлифования периферией круга не разработана. В связи с этим возникает необходимость создания такой методики.

Решение любой задачи оптимизации предполагает выполнение следующих основных этапов:

• выбор критерия оптимальности (функции цели);

• формирование комплекса технологических ограничений функции цели;

• выбор метода оптимизации;

• разработка алгоритма оптимизации.

Выбор критерия оптимальности

Обычно при оптимизации шлифовальных операций в качестве критерия оптимальности принимают переменную часть затрат на ее выполнение, зависящую от режимов резания. Это связано с тем, что именно режимы резания оказывают влияние на время обработки, а следовательно, и на себестоимость опера-

ции. Исходя из данного условия, в качестве критерия оптимальности примем минимальное время автоматического цикла шлифования Тц. Тогда функцию цели 9 выразим следующим образом:

гтах гтах Пг-Вш £„т

9 = тц = = Е —г ^ тт,

ц ¿=1 1 ¿=11000да

где г — порядковый номер ступени цикла (г = = 1, 2, ..., гтах); гтах — максимально допустимое конструкцией прибора активного контроля (ПАК) количество ступеней цикла; Тг — время снятия Пг-й части припуска; Бш — ширина шлифования; Ьш — длина шлифования; Ьг — скорость поперечной подачи (скорость движения стола) на ступени цикла г; ^ — осевая скорость подачи на ступени цикла г; Бг — радиальная скорость подачи на ступени цикла г.

Формирование комплекса технологических ограничений функции цели

Применительно к операциям шлифования ограничения целевой функции можно разделить на четыре группы в зависимости от того, с какими параметрами они связаны. К последним относятся:

• требуемые показатели качества обрабатываемых поверхностей детали: точность, шероховатость и бесприжоговость обрабатываемой поверхности детали (согласно чертежу детали);

• исходная точность заготовки и колебание припуска;

• эксплуатационные свойства шлифовального круга: неосыпаемость, стойкость круга или интенсивность износа шлифовального круга;

• конструктивные параметры станка.

Ограничения, связанные с требуемыми показателями качества обрабатываемых поверхностей детали. Точность обрабатываемой поверхности задается на чертеже несколькими показателями: допуском на линейный размер (обязательное требование чертежа); допусками формы и расположения поверхностей, когда они меньше допуска на размер. В соответствии с ГОСТ 24642-81 для наружных плоских поверхностей различаются следующие допуски формы и расположения поверхностей:

• допуск прямолинейности;

• допуск плоскостности;

• допуск параллельности;

• суммарный допуск параллельности и плоскостности.

Поскольку численные значения допусков формы и расположения задаются более точно, чем допуск на линейный размер, то, будучи ограничениями по точности обработки, именно они оказывают основное влияние на снижение производительности цикла шлифования. Чтобы обеспечить заданную точность обработки в течение цикла шлифования, необходимо снизить колебание линейного размера обрабатываемой поверхности до требуемого уровня, лимитируемого самым точным допуском среди всех имеющихся чертежных допусков, которые можно выразить:

5 < [5]; 5 ]; 5пр < [5пр];

пр

5пар < [5пар]; 5£ < [5Е]»

Ra < [Ra т]-

Действительная глубина тепловых повреждений (прижог) Нд обрабатываемой поверхности не должна превышать допустимого значения [Лт], требуемого чертежом детали:

Ограничения, связанные с исходной точностью заготовки и колебанием припуска.

Важной особенностью обработки на плоскошлифовальных станках с прибором активного контроля обеспечиваемого линейного размера является то, что снимаемая часть припуска на первой ступени должна быть больше допуска на этот размер. Это ограничение целевой функции формулируется следующим образом: снимаемая часть припуска на первой ступени цикла шлифования Щ должна превышать допуск на линейный размер заготовки:

П1 > [5з + [Ду]]Кз,

где [5з] — допуск на линейный размер заготовки (по чертежу заготовки); [Ду] — погрешность установки заготовки; Кз — коэффициент запаса, зависящий от погрешности измерения высоты заготовки (Кз = 1,2 ... 1,5).

Вся величина припуска на обработку должна быть полностью распределена по всем ступеням цикла

Z

_ ^max_

п = ma п ;

i=1

п = п

где 5 и [5] — погрешность и допуск линейного размера соответственно; 5пл и [5пл] — отклонение от плоскостности и допуск плоскостности; 5пр и [5пр] — отклонение от прямолинейности и допуск прямолинейности; 5пар и [5пар] — отклонение от параллельности и допуск параллельности; 5^ и [5^] — суммарное отклонение от параллельности и плоскостности и суммарный допуск параллельности и плоскостности.

По окончании съема припуска шероховатость шлифуемой поверхности Яа не должна быть хуже требуемой чертежом [.Ка т]. Это ограничение записывается в виде неравенства

где П — припуск, снимаемый при шлифовании на всех ступенях автоматического цикла; П — припуск, снимаемый на отдельной ступени; Птах — максимально возможный припуск на шлифование в рассматриваемой партии деталей.

Следует отметить, что системы автоматического управления, которыми оснащены шлифовальные станки, не позволяют отслеживать колебания припуска, поэтому при определении момента включения рабочей подачи следует исходить из максимального размера заготовки.

Ограничения, связанные с конструктивными параметрами станка. Скорость резания в расчетном цикле не должна выходить за пределы величин скоростей, предусмотренных на станке:

V  < V < V гк mm — Кк — Кк max'

где VK min и VK max — минимальная и максимальная скорости шлифовального круга соответственно.

Расчетные значения программных скоростей подач должны находиться в диапазоне программных скоростей подач по паспорту станка:

t . < t < t . с. < с < с . "-mm — 1 — 'max' °min — ° — °max>

К < [hT].

F  < F < F

min max

где Ь — скорость программной поперечной подачи; и Ьтах — минимальное и максимальное допустимое значение программной поперечной подачи; 8 — скорость программной продольной подачи; и 8тах — минимальное и максимальное допустимое значение программной продольной подачи; Е — скорость программной осевой подачи; Ет1п и Етах — минимальное и максимальное допустимое значение программной осевой подачи.

Максимальная мощность резания в течение цикла шлифования не должна превышать мощности привода поступательного движения стола станка с деталью:

N < N - N

заданных технологических условиях обработки за минимальное время тц.

Наиболее подходящим способом решения рассматриваемой задачи является метод динамического программирования [2]. Он относится к методам дискретной оптимизации и по сути своей является методом ускоренного направленного перебора. Его применение для решения задачи оптимизации автоматических циклов шлифования требует дискретизации управляющих параметров.

Для наглядного представления метода динамического программирования разобьем шкалу поперечной подачи на дискрет (М - 1) (М — количество поперечных подач станка) в диапазоне (на рис. 1 — на т дискрет):

где — максимальная мощность, необходимая для поступательного движения детали при максимальных расчетных подачах;

— мощность привода движения стола станка; — мощность холостого хода привода стола станка.

Максимальная мощность резания при максимальных расчетных подачах не должна превышать мощности привода круга:

Ьтш < Ьт < Ьтах,

где т — текущий номер программной поперечной подачи при 1 < т < М; Ьт — величина уровня т поперечной подачи.

Аналогично разобьем шкалу припусков на N - 1) частей дискрет N — максимальный номер дискреты припуска, при котором величина оставшейся части припуска равна нулю) в диапазоне

N < N _N

Пг

> Пп > 0,

где Nш — мощность, идущая на резание металла шлифовальным кругом; Nп — мощность привода круга; — мощность холостого

хода привода круга.

В комплекс ограничений необходимо внести требование к стойкости шлифовального круга Т. Она должна быть больше времени одного цикла

Тц < Т.

где п — номер текущего уровня припуска (уровня дискреты припуска) (при п = 0 величина оставшейся части припуска равна Птах, а при п = N равна нулю); Пп — величина оставшейся части припуска на дискрете п припуска.

Таким же образом шкала продольной подачи делится на (8 - 1) дискрет (8 — количество скоростей продольных подач станка) в диапазоне (на я дискрет):

Целевая функция (1) вместе с системой ограничений (2)-(11) составляет модель, которую в дальнейшем будем использовать для оптимизации.

Выбор метода оптимизации и разработка алгоритма оптимизации

На основании вышесказанного задачу оптимизации автоматического цикла шлифования заготовок на плоскошлифовальных станках с ЧПУ можно сформулировать следующим образом. Необходимо найти сочетание параметров цикла (количество ступеней £тах, программные скорости подач Ь и Е; снимаемые части припуска П1, П2, ., Пп), гарантирующих требуемое качество обработки при

с . < с < с °тш — — °тах>

где я — текущий номер программной продольной подачи при 1 < я < 8; — величина уровня я продольной подачи.

И наконец, шкала осевой подачи делится на (В - 1) дискрет (В — количество скоростей осевых подач станка) в диапазоне (на рис. 2 — на Ь дискрет):

Е  < Ръ < Е тш — Ь — тах>

где Ь — текущий номер программной осевой подачи при 1 < Ь < В; Еь — величина уровня Ь осевой подачи.

Таким образом, оптимизация режимов резания производится в параметрах Ьт — Пп — — Еь

Номер программной скорости к поперечной подачи на дискрете п припуска

и ичад

р

оа кк

сс

I ^ 8 е1

а ар

оН в = £1

в + 1

М

<

т + 1

->Т-

т - 1

т = 1

Программная скорость поперечной подачи, мм/мин

М, 0, Ъ - Тп-1, М, О, Ь т*, в*. Ъ*- Тп, м, О, Ь т*, в*. Ъ* - Т^ м, О, Ь

0, М, О, Ь

1, М, О, Ь

,п-1, М, О, Ь

1, т + 1, О, Ь

Тп-1, т+1, О, Ь т*, в*, Ь* \\Тп, т + 1, 0, Ь т*, в*, Ь*

11, т+1, О, Ь

,п-1, т+1, О, Ь\

-п-1, т, О, Ь

т. 0. Ъ ~Тп - 1: т, О, Ь

п, М, О, Ь \ *

11,т, О, Ь

п,

Т1, т-1, О, Ь т-1, О, Ь Тп - 1, т - 1, 0, Ь т*, в*, Ь*

О, т-1, О, Ь

Тп, т, 0, Ь т*, в*, Ь*

1. 1. О, Ь

Тп - 1, 1, 0, Ь т*. в*. Ъ*

Тм, м ., О , Ь т* , в*. Ъ*

ТМ, т+1, 0, Ь т* , в*. Ъ*

ТМ, т, 0, Ь т* , в*. Ъ*

ТМ, т-1, 0, т* , в*. Ъ*

ТМ, 1, 0, Ь т* , в*. Ъ*

п = 1

п 1

, Номер п = N | дискреты

По = Пт

П1

Пп

Пп

в = 1

/Щ = 0 Пп Припуск, мм

в - 1

Программная скорость £в продольной подачи, мм/ход

£

п

Т

1, М, О, Ь

п, М, О, Ь

в

п

т

Т

1, т, О, Ь

О, т, О, Ь

г

п. М. 0. Ь

п-1. 1. 0. Ь

в

п.тгп

Т

1. 1. О. Ь

Ь

О

Рис. 1. Координатная сетка для оптимизации цикла плоского шлифования периферией круга методом динамического программирования

на пространственной координатной сетке, образовавшейся после разбивки шкал на дискреты. На координатной сетке гт — Пп — — ^ дополнительно проведены оси т, п и в, показывающие, соответственно, номер дискретного уровня программной скорости поперечной подачи, номер текущего уровня дискреты припуска и номер дискретного уровня программной продольной подачи (рис. 1).

Каждое пересечение координатной сетки однозначно определяется координатами [т, п, в, Ь], которые в дальнейшем будем называть координатами состояния процесса шлифования. На пересечении помещена клетка, в которой записывается оптимальное (минимальное) время Тт, п, в, Ь достижения состояния, полученное по методике, согласно которой состояние процесса [т, п, в, Ь] может быть достиг-

нуто несколькими путями на основе состояний предыдущего уровня (п - 1). Обозначим номер дискретного уровня поперечной подачи на предыдущем уровне (п - 1) через {т} при допустимом диапазоне {т} = 1, ..., М; номер дискретного уровня продольной подачи на том же предыдущем уровне (п - 1) — через {в} при допустимом диапазоне {в} = 1, ., £; а номер дискретного уровня осевой подачи на предыдущем уровне (Ь-1) — через {Ь}.

Для того чтобы перейти в состояние [т, п, в, Ь] с предыдущего уровня припуска (п - 1) из номеров {т, в, Ъ} подач (то есть из состояния [п - 1, {т, в, Ъ}] в состояние [п, т, в, Ъ]), необходимо сделать ход (рис. 2, 3). Под этим термином в дальнейшем будем понимать осуществление моделирования съема дискреты припуска (Пп _ 1 - П„) при номере т поперечной подачи, при

К

л

г=3i z = 3

z - 2j z = j

=1 z = 1

0>1Ъ / 0,9Ъ 0,1Ъ 0,9Ъ

fz - 3 4 z = 3

z - j / z = j

z =1 z = 1

0,1Ъ

z = 1

0,1Ъ 0,5Ъ 0,9Ъ

z -1

0,1Ъ 0,5Ъ 0,9Ъ sy

z - 1 /

0,9Ъ

z - 3

z - j

1 - z

0,1Ъ

0,9Ъ

z - 3

z - j

-z

0,1Ъ

0,9Ъ

z - j 4

1 - z

z - 3 ч z - 3

z - j z - j

1 - z

nN - П4-О

Допущение s - const

П

Рис. 2. Учет ограничения по количеству ступеней переключений программной скорости поперечной подачи

номере я скорости продольной подачи и при номере Ь осевой подачи.

Время, необходимое для съема дискреты припуска (Пп _ 1 - Пп), называется временем хода и обозначается т™ -1, ^ГЬ 6 Ь}; где нижние индексы т, п, в, Ь означают координаты со-

стояния, куда произведен ход, а верхние индексы {т, в, Ь} — номер поперечной подачи, номер скорости продольной подачи и номер скорости осевой подачи на предыдущем уровне (п - 1) дискреты припуска, откуда произведен ход. Согласно принципу оптимальнос-

S

S

8

S

вп5 {

$п<> :

г = 2

г = 2 4, 4, 0,1Ь

0,1Ь 0,3Ь 0,5Ь 0,7Ь 0,9Ь

8

8

5

в

Рис. 3. Пример формирования циклов плоского шлифования периферией круга

ти, из нескольких возможных ходов в состояние [п, т, в, Ь] требуется выбрать один, самый оптимальный ход.

Оптимальным считается один из возможных ходов, обеспечивающий минимальное время Тп т в Ь достижения состояния [п, т, в, Ь], определяемое как сумма времени Тп _ 1,{т, в, ь} (то есть времени достижения состояния [п _ 1, {т, в, Ь}] на предыдущем уровне припуска, откуда произведен ход) и времени хода

т

п — 1, {т, в, Ь} п, т, в, Ь

стояние [п, т, в, Ь]):

(из состояния [п 1, {т, в, Ь}] в со-

Тп, т, в, Ь

= ,тЧ,{Тп — 1, {т, в, Ь} +т

{т, в, Ь}

п — 1, {т, в, Ь} п, т, в, Ь

};

То, о, о = 0; т = 1, ..., М; п = 1, ..., И; в = 1, ..., в; Ь = 1, ..., В,

где То, о, о = о — время начала обработки. Из всех возможных ходов со временем

п — 1, {т, в, Ь} п, т, в, Ь

при минимизации времени Т

п, т, в, Ь

т

выбираются только допустимые хода. Применительно к задаче оптимизации цикла шлифования допустимость хода означает, что после совершения данного хода существуют такие режимы резания, при которых будут гарантированно выполнены ограничения по точности, шероховатости обработанной поверхности, прижогу и др.

Таким образом, из всех возможных ходов выбираются только допустимые хода. Из совокупности допустимых ходов, то есть ходов, обеспечивающих выполнение всех ограничений, выбирается только один оптимальный ход, удовлетворяющий выражению (16). После нахождения по формуле (16) оптимального хода в состояние [п, т, в, Ь] согласно требованиям метода динамического программирования производится запоминание номеров программных скоростей подач, откуда произведен оптимальный ход, то есть запоминаются номер поперечной подачи {т}, номер скорости {в} продольной подачи и номер скорости {Ь} осевой подачи на предыдущем уровне (п - 1) припуска, откуда произведен оптимальный ход (см. рис. 3).

Запомненное значение уровня, откуда произведен оптимальный ход, фиксируется для каждого состояния [п, т, в, Ь] и хранится в переменных т*, в*, Ъ*:

т*, в*, Ъ*

где т* (п, т, в, Ь) — запомненное значение уровня программной поперечной подачи, откуда произведен оптимальный ход с предыдущего уровня припуска в состояние [п, т, в, Ъ]; в* (п, т, в, Ь) — запомненное значение уровня программной продольной подачи, откуда произведен оптимальный ход с предыдущего уровня припуска в состояние [п, т, в, Ъ]; Ъ* (п, т, в, Ь) — запомненное значение уровня программной осевой подачи, откуда произведен оптимальный ход с предыдущего уровня припуска в состояние [п, т, в, Ъ]; то, во, Ъо — оптимальные номера, соответственно, программной поперечной подачи из совокупности номеров {т}, программной продольной подачи из совокупности номеров {в} и программной осевой подачи из совокупности номеров {Ъ} на уровне (п - 1) припуска в состояние [п, т, в, Ъ]. Обозначения т*, в*, Ь* условно показаны на рис. 3 в правых половинках клеток, в которых записаны времена Тп, т, в, Ь. Подобная процедура оптимизации производится для каждого пересечения координатной сетки. Исключение составляют те пересечения, которые не имеют ни одного допустимого хода.

При п = 1 всегда производится только один ход при скоростях подач т, в, Ь и одинаковых начальных условиях для всех номеров т, в, Ь. Поскольку на первой дискрете припуска при каждом значении программных скоростей подач гт, вв, Еь возможен только один ход, то все допустимые хода (на первой дискрете) будут оптимальными, то есть можно записать:

m*, s*, b* (n, m, s, b) = m, s, b (18) для m = 1, ..., M; s = 1, ..., S и b = 1, ..., B.

Если все хода в какое-либо состояние [n, m, s, b] будут недопустимыми, то при переходе на следующий уровень припуска (n + 1) из состояния [n, m, s, b] ходы вообще не производятся. Таким образом, процесс оптимизации начинается с выполнения совокупности прямых ходов на первой дискрете припуска. Затем производится переход из предыдущего уровня припуска (n - 1) при программных скоростях подач m, s, b в уровень припуска n. Каждый ход проверяется на допустимость по заданным ограничениям целевой функции. При достижении состояния [n, m, s, b] процесса шлифования одним или несколькими допустимыми ходами производится выбор оптимального хода, обеспечивающего минимальное время Tn m s ь достижения состояния [n, m, s, b]. Запоминаются координаты предыдущего состояния процесса [n - 1, {m, s, b}], переход с которого является оптимальным. После достижения последнего уровня припуска n = N (конечного состояния процесса) на координатной сетке возможно наличие нескольких клеток, расположенных на разных номерах, как m программных поперечных подач, s программных продольных подач, так и b программных осевых подач, имеющих различное время Tn m ь z. Это означает, что получение требуемой поверхности детали возможно при разных значениях фактических скоростей подач в конце цикла и соответствующих им программных скоростях подач, но за разное время обработки. Поэтому среди всех существующих вариантов на последнем уровне припуска выбирается один, имеющий минимальное время TN, M, S, B достижения конечного состояния, которое и будет минимальным временем цикла тц, то есть тц = min = TN ,, M, s> B.

n, s, b ' ' '

Моделирование ограничений целевой функции по допустимому количеству ступеней переключения программной скорости подачи.

Полученная выше траектория оптимального цикла шлифования не учитывает ограничения по количеству ступеней цикла. Для выполнения ограничения целевой функции по количеству допустимых ступеней цикла, то есть по количеству допустимых переключений, осуществляемых ПАК, состояние процесса будем определять не только координатами [n, m, s, b], но и дополнительной координатой z — номером ступени цикла. Таким образом, состояние процесса будет характеризоваться пятью

координатами [п, т, в, Ь, г] на координатной сетке при допустимом диапазоне изменения ступеней цикла 1 < г < гтах.

Вместо однострочной клетки (см. рис. 1), расположенной на пересечении координатных узлов Ьт — Пп — вв — поместим туда многострочную клетку (рис. 2), в каждой строке которой записано значение Z, а количество строк равно Zmax. Соответствующим образом обозначим время достижения состояния

с помоЩью Тп, т, в, Ь, г; <—^,{т,ъЬ,гг] — время хода; т*(п, т, в, Ь, г) — запомненное значение уровня программной скорости подачи, откуда произведен оптимальный ход.

Рассмотрим сначала, какие ходы можно совершать в этих условиях. На рис. 2 изображена координатная сетка, в узлах которой расположены многострочные клетки, в каждой из которых имеется только три строчки, то есть максимально допустимое количество ступеней оптимизируемого цикла равно трем. Для упрощения в строчках этих клеток записан только номер ступени Z. При съеме самой первой части (дискреты) припуска (По_П1) всегда совершается только прямой ход, который образует начало первой ступени цикла г = 1. Поскольку на первой дискрете допустим только прямой ход, то образование на этом ходе второй и последующей ступени невозможно. Поэтому в клетках на уровне припуска П1 заполнена только одна строчка с г = 1, а стрелка направлена в строку первой ступени г = 1. На рисунке условно показан только один возможный прямой ход при номере программной скорости подачи т = 4, хотя при оптимизации хода на первой дискрете припуска они делаются при всех значениях т с последующей проверкой допустимости хода.

При съеме следующей части (дискреты) припуска (П1_П2) возможные ходы делаются с первой строки каждой клетки. Если номер программной подачи на предыдущей дискрете припуска, откуда делается ход, не равен номеру программной скорости подачи на дискрете припуска, куда делается ход (такой ход назовем непрямым ходом), значит, произошло переключение программной скорости подачи, и номер ступени г увеличился на единицу.

Например, делается непрямой ход с припуска П1 (при п = 1) при номере программной скорости подачи {т} = 4 и номере ступени г = 1 на следующий уровень припуска П2 (при п = 2) и при номере программной скорости подачи т = 3 (см. рис. 2). Такой ход означает, что после съема припуска (По-Щ) при программной скорости подачи Йп4 произведено ее переключение на программную скорость подачи 8пз, при которой произведен съем час-

ти (дискреты) припуска (Щ-П^). После такого переключения номер ступени г увеличился на единицу, параметры состояния записываются во второй строке г = 2 номеров ступени т = 3; в = 3; Ь = о,1Ь припуска П2, то есть в состояние [2, 3, 3, о,1Ь, 2]. Поэтому стрелка ведет от строки г = 1 к строке г = 2. Таким же образом стрелки идут по направлению к другим клеткам, расположенным на 1, 2, 3 и 5-м номерах т программной скорости подачи.

Следовательно, если {т} Ф т, а в нашем случае 4 Ф 3, то номер ступени г увеличивается на единицу и запись состояния производится в соответствующей строчке клетки. И наоборот, если при совершении хода номера программных скоростей подач с предыдущего уровня припуска и последующего равны ({т} = т), то нет переключения программных скоростей при совершении хода, значит номер ступени г не изменяется, а параметры состояния записываются в такой же номер строки г на уровне припуска, куда делается ход, то есть такой ход будет прямым. На рис. 2 указанному ходу соответствует прямой ход из состояния [1, 4, 3, о,5Ь, 1] в состояние [2, 4, 3, о,5Ь, 1], стрелка начинается при г = 1 и заканчивается при том же значении г на следующем уровне припуска.

Этот же принцип учета наличия переключений действителен на всех последующих ступенях г, кроме последней. На рис. 2 показаны возможные ходы с П2 к П3 (с номера {т} = 3 и г = 2). При {т} Ф т стрелки направлены к строке г = 3, а при {т} = т имеется только один возможный прямой ход — к строке г = 2.

Таким образом, в процессе оптимизации возможные ходы совершаются по следующему принципу. Если {т} Ф т, то есть производится переключение программной скорости подачи и количество ступеней г увеличивается на единицу, то совершается непрямой ход в состояние [п, т, в, Ь, г] только из состояния [п - 1, {т, в, Ь}, г - 1]. При {т} = т, когда переключение программной скорости подачи не производится и количество ступеней цикла не изменяется, совершается прямой ход в состояние [п, т, в, Ь, г] только из состояния [п - 1, т, в, Ь, г]. Процедура формирования возможной совокупности ходов в состояние [п, т, в, Ь, г] приведена на рис. 3.

На первой дискрете показан один ход в строке г = 1. На последующих дискретах показаны возможные хода в состояния с номером ступени: г = 1 на дискрете припуска (П1-П2); г = 2 на дискрете (щ-пз); г = 3 на дискрете (щ-щ). Если ход делается из последней строки клеточки при гтах, то он может быть только прямым, без переключения программной скоро-

сти подачи, так как в противном случае номер ступени необходимо увеличить на единицу и количество ступеней станет превышать максимально допустимое значение zmax. На рис. 3 один такой возможный ход показан при ходе от П3 к П4 при z = 3.

Следовательно, ход считается недопустимым по количеству возможных переключений ПАК ступеней цикла, если при {m} Ф m увеличение числа ступеней Z на единицу превышает максимальное количество ступеней, то есть Z + 1 > Zmax. Другими словами, при выполнении этого условия получается ход из состояния [n - 1, {m, s, b}, zmax] в несуществующее состояние [n, {m, s, b}, zmax + 1].

С учетом особенностей, связанных с допустимым количеством ступеней скоростей подач, запишем принцип оптимальности:

{m} = m;

T =

Jn, m, s, b, z

= min {T , +Tn- 1' {m' s' b}' z - 1};

= rmln{Jn - 1, {m, s, b}z - 1 +Tn, m, s, b };

{m, s, b}

{m} = m;

T=

An, m, s, b, z

= mln {Tn - 1, {m, s, b}z + Cmi m s b}, z}.

{m, s, b}

Процедура оптимизации аналогична той, которая описана выше. Среди всех возможных ходов выбираются только допустимые по ограничениям целевой функции ходы. Из массива последних выбирается только один ход для каждой ступени z, удовлетворяющий принципу оптимальности. Для каждой ступени цикла при всех состояниях [n, m, s, b, z] запоминаются оптимальные ходы m*(n, m, s, b, z) = m^bo. Нахождение оптимальной траектории цикла производится с помощью процедуры обратного хода.

Таким образом, оптимизация цикла плоского шлифования периферией круга методом динамического программирования с учетом ограничения по допустимому количеству ступеней переключения программной скорости подачи осуществляется по следующему алгоритму:

1. Определяется состояние процесса на последнем уровне припуска n = N с минимальным временем, которое и будет временем цикла то есть тц = mln TN, m, s, b, zmax.

m, s, b

2. Используя хранимые координаты предыдущего состояния процесса m*(n, m, s, b, zmax),

определяем предшествующее состояние процесса Тп - 1, {т, ъ}, г - 1 при переключении скорости подачи и Тп - 1, {т, 8, щ, г, если переключения нет, для всех уровней припуска п начиная с последнего уровня п = N до п = 1, величины программных скоростей и припусков, по достижении которых производились переключения программной скорости подачи. В результате осуществляется формирование управляющей траектории оптимального цикла шлифования.

Процедура обратного хода. Для фиксации оптимальной траектории управления циклом шлифования необходимо выполнить процедуру обратного хода, которая начинается из единственного конечного состояния, имеющего тц. Процедура обратного хода позволяет получить оптимальные траектории цикла не только для г = гтах, но и для всех возможных количеств ступеней цикла 1 < г < - гтах. Для этого необходимо определить состояние процесса Т^ т, в, ъ, г, при котором достигается минимальное время цикла, для каждого значения г.

Допустим, что оптимальный трехступенчатый цикл (рис. 4) заканчивается в состоянии [4, 2, 2, 0,5Ъ, 3], то есть минимальное время тц достигается при г = гтах = 3 в состоянии [4, 2, 2, 0,5Ъ, 3]. В клетке с координатами [4, 2, 2, 0,5Ъ, 3] при п = 4; т = 4; я = = 2; Ъ = 0,5; г = 3 записано значение т* = 2; я* = 3; Ъ* = 0,5. Поскольку т = т*, то переключения нет, следовательно, проводим стрелку обратного хода в клетку с координатами [3, 2, 3, 0,5Ъ, 3]. В этой клетке записано значение т* = 3; я* = 3; Ъ* = 0,9, то есть оптимальное переключение было из клетки с координатами п = 2; {т} = 3; {я} = 3; {Ъ} = 0,9. Поскольку переключение программной скорости подачи произведено (т Ф т), то переключение произошло при значении г - 1 = 3 - 1 = 2. Проводим стрелку обратного хода в координату [2, 3, 3, 0,9Ъ, 2]. В клетке с этой координатой записано значение т* = 4; я* = 1; Ъ* = 0,1, значит переключение произведено при г - 1 = 2 - 1 = 1 из уровня йП4 в вд3. Проведем стрелку обратного хода на предыдущую дискрету в координату [1, 4, 1, 0,1Ъ, 1]. Поскольку в первую дискрету припуска всегда идет только прямой ход, то в состояние [1, 4, 1, 0,1Ъ, 1] был произведен ход при программных скоростях подач Йп4, и йд = 0,1Ъ.

Значение припуска для каждой ступени цикла определим следующим образом: для первой ступени г = 1 припуск равен П0-П1; для второй ступени г = 2 припуск равен П1-П2; для третьей ступени ъ = 3 припуск равен П2-П4. Таким образом, оптимальный трехступенчатый

Рис. 4. Процедура обратного хода с формированием одно- (1), двух- (2) и трехступенчатого (3) циклов

цикл имеет следующие параметры: для первой ступени г = 1, 8п4, По-Щ; для второй ступени г = 2, 8пз, Щ-Щ; для третьей ступени

г = 3 П2-П4.

На рис. 4 показаны также процедуры обратного хода для двухступенчатого (из состояния [4, 2, 2, о,5Ь, 2]) и одноступенчатого (из состояния [4, 2, 2, о,5Ь, 1]) оптимального цикла (траектории изображены сплошной и пунктирной линиями соответственно).

Таким образом решена задача оптимизации автоматических циклов шлифования, выполняемых на плоскошлифовальных станках, методом динамического программирования.

Этот метод оптимизации циклов обработки может быть применен для любых видов операций механической обработки.

Литература

1. Переверзев П. П. Теория и расчет оптимальных автоматических циклов обработки деталей на круглошлифовальных станках с программным управлением: Дис. ... д-ра техн. наук. Челябинск: Юж.-Урал. гос. ун-т, 1999. 293 с.

2. Щербина О. А. Методологические аспекты динамического программирования // Динамические системы. 2оо7. Вып. 22. С. 21-36.