Оптимальный раскрой полос или штучных заготовок

2.1. Постановка задачи

Однорядная штамповка деталей из ленты (полосы) определяется двумя параметрами: шириной половы b и шагом штамповки h (рис. 2.1.).

Коэффициент использования металла h определяется для штамповки из полосы длиной l как отношение площади Sд n деталей, полученных из полосы, к площади полосы Sп (см. рис. 2.1.).

.

Рис. 2.1. Раскрой полосы на заготовки

 

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

.

Рис. 2.2. Раскрой штучной заготовки

 

Под оптимальным раскроем в данном случае понимается нахождение таких величин h и b или a и b, при которых значение h максимально.

2.2. Математическое обеспечение

2.2.1. Кодирование контура заготовки

 

Для решения задачи оптимизации раскроя необходимо каким-либо образом описать контур исходной заготовки. В общем случае контур любой детали (заготовки) может быть представлен как произвольное сочетание прямоугольных и криволинейных элементов (рис. 2.3.)

Криволинейные элементы могут быть представлены как совокупность дуг окружностей с различными радиусами.

Для того чтобы описать заготовку, необходимо на её контуре найти узловые точки, то есть такие точки, в которых происходит смена линии, ограничивающей контур заготовки. Если координаты всех узловых точек, а также координаты центров кривизны дуг окружности известны, то описание контура можно задать перечислением в определённом порядке координат узловых точек и кодом характера линий между ними (см. рис. 2.3.)

 

2.2.2. Определение площади заготовки

 

Для вычисления КИМ необходимо знать площадь заготовки. Так как фигура заготовки представлена в виде отрезков прямых и дуг окружности, то для определения площади фигуры её можно представить состоящей из площади многоугольника, к которой прибавляются (в случае выпуклой дуги) или отнимаются (в случае вогнутой дуги) площади сегментов (рис. 2.4.)

Рис. 2.3. Контур исходной заготовки

 

Рис. 2.4. Определение площади фигуры

а – площадь прибавляется;

b – площадь отнимается

 

Площадь многоугольника определяется по формуле

,

где - координаты i-той точки;

- координаты i-той–1 точки

Для определения площади сегмента, находящегося между i-1 и i-той узловой точкой, вычислим величину радиуса дуги окружности:

,

где хцi, уцi – координаты центра дуги.

Расстояние от i до i-1 точки найдём как

,

вычислим вспомогательную величину

.

Найдём величину центрального угла

.

Площадь сегмента вычисляется следующим образом:

,

где знак плюс ставится для выпуклой дуги, минус для вогнутой дуги.

Площадь заготовки определяется как

,

где - сумма площадей сегментов.

 

2.2.3. Определение оптимального размера штучной заготовки

 

При вырубке детали из штучной заготовки контур детали должен целиком находиться внутри штучной заготовки (см. рис. 2.2.). Геометрически это означает, что вокруг контура заготовки описан прямоугольник. Если принять, что контур заготовки параллелен осям ОХ и ОУ, а деталь может занимать произвольное положение на плоскости, то каждому произвольному положению детали будет соответствовать заготовка с различными размерами.

Пусть имеется деталь, заданная координатами узловых точек. Размер описанного прямоугольника будет зависеть от угла поворота ji детали относительно начального положения (рис. 2.5.)

Рис. 2.5. Исходная (I) и повёрнутая (II) деталь в штучной заготовке

 

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

аi – ширины описанного прямоугольника;

bi – длины описанного прямоугольника.

Площадь описанного прямоугольника составляет

.

Коэффициент использования металла определяется по формуле

.

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

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

Расчёт проводим в следующей последовательности.

Фигура задана массивом координат узловых точек

х1, х2, х3, …, хn
y1, y2, y3, …, yn

При повороте фигуры на дискретный угол jI образуется новый массив точек

х1j, х2j, х3j, …, хnj
y1j, y2j, y3j, …, ynj

где хij и yij определяется как

Для определения размера заготовки необходимо найти точки с минимальными и максимальными значениями координат , . По этим значениям находятся размеры заготовки:

По формуле (2.3) определяем коэффициент использования металла.

Такой расчёт проводим для углов с определённым шагом (например, через 1°) и получаем множество значений для каждого угла поворота . Из полученного множества значений находим максимальное . Соответствующие этому значению КИМ величины и являются исходными для определения величины заготовки. Для определения фактических размеров заготовки необходимо учесть величину боковых кромок или штамповочных перемычек Dа и Db:

 

2.2.4. Определение оптимального шага штамповки и ширины полосы

 

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

Контур заготовки описывается последовательностью координат узловых точек, координат центров окружностей и кодов видов линий между узловыми точками. Как и для штучной заготовки, предлагается криволинейные элементы аппроксимировать отрезками прямых. В этом случае контур заготовки будет представлен совокупностью координат узловых точек. Необходимо определить оптимальную ширину полосы и шаг штамповки (рис. 2.6.). Направление оси полосы совпадает с направлением оси ОХ.

Значение оптимального шага штамповки и ширины полосы зависит от угла поворота контура заготовки относительно направления штамповки.

Рассмотрим размещение произвольного контура в полосе.

Начальное положение контура задано совокупностью координат точек ( , ). По формулам (2.11) определяем координаты контура, повёрнутого на угол . Обозначим их как и . Для определения шага штамповки необходимо узнать, на какую минимальную величину hmin необходимо сдвинуть контур относительно исходного положения, чтобы соседние заготовки не накладывались друг на друга. Это означает, что заготовки не должны иметь общих точек.

Сдвинутый контур описывается массивом точек

 

х1jh, х2jh, х3jh, …, хnjh
y1jh, y2jh, y3jh, …, ynjh

где

Рис. 2.6. Исходная (I) и повёрнутая (II) деталь в заготовке-полосе

Из рис. 2.6. видно, что величина h лежит в пределах , где определяется как .

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

Уравнение прямой, проходящей через две точки с координатами (х1, у1), (х2, у2), имеет вид

.

После преобразования получаем

.

Введём обозначения:

С учётом принятых обозначений нахождение общих точек контуров сводится к решению системы линейных уравнений:

Если решение системы х и у и удовлетворяет следующим условиям:

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

Величину h отыскиваем методом «двоичного поиска» в несколько шагов. Как было сказано, величина h лежит в пределах . Решение ищем в несколько шагов. Шаг 1. Вычислим . Шаг 2. Если для этого фигуры пересекаются, то сделаем и перейдём к шагу 1. Если фигуры не пересекаются, то сделаем и перейдём к шагу 1.

Этот процесс будем повторять до тех пор пока ; тогда величинаh будет равна hопт.

Величину b найдём как . По формуле (2.2.) вычислим коэффициент использования металла.

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

 

2.3.Ввод исходных данных

 

Ввод исходных данных осуществляется следующим образом.

Контур заготовки представляется в виде отрезков прямых и дуг окружности и вычерчивается на листе миллиметровой бумаги в масштабе 1:1. Далее проводятся линии ОХ и ОУ таким образом, чтобы контур заготовки оказался в первом квадрате (см. рис. 2.7.).

Взяв какую-либо точку за начальную, необходимо пронумеровать точки в порядке обхода внутреннего контура против часовой стрелки (рис. 2.7.).

Рис. 2.7. Кодирование исходной заготовки

 

После этого необходимо присвоить линиям, соединяющим две соседние точки, определённый код. В зависимости от вида линии применяются следующие коды:

- прямая линия;
- дуга окружности выпуклая a<180°;
- дуга окружности выпуклая a³180°;
- дуга окружности вогнутая a<180°;
- дуга окружности вогнутая a³180°.

Далее определяются координаты точек и центров окружностей и заносятся в таблицу 2.1.

В графу «Вариант» заносится:

- если расчёт размера штучной заготовки;
- расчёт всех вариантов размера штучной заготовки;
- расчёт 6 лучших вариантов раскроя полосы;
- расчёт всех вариантов раскроя полосы.

 

Таблица 2.1.

вариант расчёта Номер детали Толщина металла Число точек
       
Номер точки Координата Код линии Координата центра окружности
х у х у
           
           
           
           
           

 

Таблица заполняется следующим образом. Вначале заносятся номера и координаты точек, затем заносятся коды линии. Причём код определяется для линии, соединяющей текущую и предыдущую точки, например, для точки 2 код лдинии равен 0 (см. рис. 2.7.), для точки 3 код лини равен 2. Далее для тех точек, код которых равен 1 или 2, заносятся координаты центра окружности.