Пуск |
1 |
|
2 |
||
|
Ввод исходных данных:
(Tр )max;(Me)max;(δLусл )max;
(Tр ); (Me); (δLусл );{(GTML )i}


3 jmax= (δLусл )max/ (δLусл ) ;
kmax=
(Tр )max/ (Tр )
;
lmax=
(Me)max/ (Me)
|
|
|
|
|
|
j |
4 |
|
|||
|
|
|
|
|
j=1;j≤jmax;j=j+1 |
||||||
|
|
|
|
|
|
|
|
|
|
|
5 |
((δ |
L |
усл )maxтек)j=j∙ |
(δLусл ) |
|
|||||||
|
|
|
|
|
|
k |
6 |
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
k=1;k≤kmax;k=k+1 |
||||||||
|
|
|
|
|
|
|
|
|
7 |
||
|
|
((Tр )maxтек)k=k∙ (Tр ) |
|
|
|||||||
|
|
|
|
|
|
l |
8 |
|
|||
|
|
|
|
|
l=1;l≤lmax;l=l+1 |
||||||
|
|
|
|
|
|
|
|
9 |
|||
|
|
((Me)maxтек)l=l∙ |
(Me) |
||||||||
|
|
|
|||||||||
l 17
k 18
j 19
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
|
|
|
|
|
|
Θmin=∞; |
iопт=0 |
||||||||||||||||||||
|
|
|
|
|
|
|
|||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i |
|
|
|
|
11 |
|
|
||
|
|
|
|
|
|
i=1;i≤Nмет;i=i+1 |
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
)maxтек)j Нет |
||||||||
((δ |
L |
|
|
)i≤((δ |
L |
|
|
||||||||||||||||||
|
|
|
|
|
усл |
|
|
|
|
|
|
|
|
|
усл |
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
((Tр )i≤((Tр )maxтек)k) |
|
|
|
||||||||||||||||||||
|
|
|
|
|
((Me)i≤((Me)maxтек)l |
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
Да |
|
|
|
|
|
|
|
13 |
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
(δ |
L |
|
) |
|
|
|
|
|
|
|
|
||||||
Θi = |
|
|
|
|
|
|
|
|
усл |
|
i |
|
|
|
+ |
|
|
|
|
||||||
|
((δ |
|
|
|
|
) |
|
|
|
) |
|
|
|
|
|
||||||||||
|
L |
усл |
|
|
|
j |
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
|
maxтек |
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
(Tр ) |
|
|
|
|
|
|
|
|
|
(M ) |
|
|
|
||||||
+ ((T |
) |
|
|
i |
) + |
((M |
) |
e i |
) |
|
|
||||||||||||||
|
|
|
|
|
maxтек |
|
|
||||||||||||||||||
|
|
|
|
р maxтек |
|
|
k |
|
|
|
|
|
e |
l |
14 |
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
iопт=Индекс(min({Θi})); Θmin=Θiопт
i 15
Nопт(j,k,l)=iопт 16
20
Вывод результатов:
Nопт
21
Останов
Рис. 3.7. Блок-схема алгоритма интеллектуальной поддержки САПР выбора методики оптимизации траектории
4. Номер оптимальной для текущего сочетания значений ((δLусл )maxтек)j; ((Tр )maxтек)k; ((Me)maxтек)l методики заносится в трех-
мерный массив Nопт(j,k,l). В случае, если условие (3.31) не выполняется ни для одной методики, принимается Nопт(j,k,l)=0.
85
5. Осуществляется вывод результатов (массив Nопт) в форме, удобной для восприятия исследователем. В массиве Nопт содержится множество номеров неулучшаемых методик Λ.
Окончательный выбор алгоритма для оптимизации траектории осуществляется исследователем из множества Λ с учетом графической интерпретации результатов.
Блок-схема алгоритма интеллектуальной поддержки САПР выбора методики расчета оптимальной траектории приведена на рис. 3.7.
Использование предложенных частных критериев оценки эффективности алгоритмов и методик, а также алгоритма интеллектуальной поддержки САПР выбора методики оптимизации траектории позволяет осуществлять подбор наиболее подходящей для решения конкретной задачи методики.
3.3. Методика построения полидистантных поверхностей вокруг реальных поверхностей препятствий, заданных дискретно
Для того чтобы исключить столкновение груза с реальными поверхностями препятствий при поиске траектории движения, была предложена методика построения пространственных эквидистантных (равноудаленных) поверхностей вокруг реальных поверхностей препятствий, заданных на двухмерной дискретной сетке с произвольным шагом [102].
Эквидистантные поверхности строятся на расстоянии эквидистантного радиуса R от реальных поверхностей-препятствий, равном
[102]
R =lg+lзап, |
(3.32) |
где lg – расстояние от характерной точки начала координат системы груза до наиболее удаленной от начала координат периферийной точки груза в заданном направлении, определяемом угловой ориентацией груза относительно препятствия в момент его прохождения; lзап – запас расстояния, учитывающий возможное раскачивание груза, погрешность реализации алгоритма, погрешность при сглаживании траектории, погрешность реализации алгоритма приводами и т.п.
При этом необходимо указать на целесообразность задания фиксированного значения lg в виде максимального значения вдоль одной из координатных осей OgXgYgZg системы координат груза (lgx на рис. 3.8).
86
Предлагается модифицировать методику [102] построения полидистантных (разноудаленных в различных направлениях) поверхностей вокруг препятствий.
Это позволит учесть возможные ограничения, накладываемые на угловые обобщенные координаты груза в процессе его перемещения, что может оказывать значительное влияние на длину найденной траектории, особенно если груз имеет выраженную неравноосную форму (т.е. значительную разницу собственных габаритных размеров). Поиск пути точки начала координат груза в среде с эквидистантными поверхностями не позволяет учесть данные ограничения.
|
|
|
|
|
|
|
|
|
|
Так, например, если |
||
|
|
|
|
|
Yg |
рассматривать перемещение |
||||||
|
|
|
|
|
груза в форме цилиндра или |
|||||||
|
|
|
|
|
|
|
|
|
|
|||
|
Zg |
Xg |
параллелепипеда достаточно |
|||||||||
|
большой длины (как в при- |
|||||||||||
|
|
|
|
|
|
|
|
|
|
мере на рис. 3.8), для кото- |
||
|
|
|
|
|
|
|
|
|
|
рого возможны в процессе |
||
|
Груз |
|
|
|
|
|
|
перемещения |
только пово- |
|||
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
роты |
вокруг |
вертикальной |
|
|
|
|
|
|
|
l |
gy |
|
||||
|
|
|
|
|
|
|
|
|
|
оси Yg |
и недопустимы дру- |
|
|
|
|
l |
gx |
|
|
|
|
|
|||
|
|
|
|
|
|
l |
|
|||||
|
|
|
|
|
|
|
|
gz |
гие угловые |
перемещения, |
||
|
|
|
|
|
|
|
|
|
|
|||
Рис. 3.8. Определение величин lg_г, lg_в |
что является одним из са- |
|||||||||||
мых часто встречающихся в |
||||||||||||
практике расчетных случаев, построение полидистантной поверхности вокруг препятствий позволит учесть тот факт, что размер lgz для рассматриваемой на рис. 3.8 формы груза намного меньше lgx. Кроме того, возможное раскачивание груза вызывает его смещения в основном в горизонтальной плоскости и лишь в незначительной степени – в вертикальном направлении вверх. Следовательно, удаленность полидистантной поверхности вертикально вверх от поверхности препятствий должна быть меньше, чем в горизонтальном направлении.
Полидистантные поверхности в настоящей монографии предлагается строить на расстоянии горизонтальной полуоси (радиуса Rг от реальных поверхностей-препятствий в горизонтальном направлении) и на расстоянии вертикальной полуоси (радиуса Rв в вертикальном направлении) эллипса:
Rг =lg_г+lзап_г; Rв =lg_в+lзап_в, |
(3.33) |
87
где lg_г – расстояние от характерной точки начала координат системы груза до наиболее удаленной от начала координат периферийной точ-
ки груза в горизонтальном направлении, lg_г= 
(lgx )2 + (lgz )2 ; lg_в – рас-
стояние от характерной точки начала координат системы груза до наиболее удаленной от начала координат периферийной точки груза в вертикальном направлении, lg_в= lgz; lзап_г – запас расстояния в горизонтальном направлении; lзап_в – запас расстояния в вертикальном направлении.
Конечная
точка
Начальная
точка
|
|
|
Y0 |
|
|
Z0 |
|
|
|
|
|
|
|
|
|
|
|
|
Y0 |
||||
|
X0 |
|
X0 |
Z0 |
|||||||
|
|
||||||||||
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
||
а) |
|
|
|
|
|
|
|
|
|
б) |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|||
Рис. 3.9. Реальная (а) и соответствующая ей полидистантная (б) поверхности с найденной кратчайшей траекторией движения точки (пример)
При этом предлагается использовать вариант перехода от вертикального направления к горизонтальному по эллиптической кривой.
Рабочая область с препятствиями (рис. 3.9, а) задана в виде двухмерного массива чисел – высот точек реальной поверхности YПР(i,k).
rp |
∆k |
|
|
|
|
|
Y0 |
|
|
|
|
|
|
|
|
∆i |
Rв |
R |
∆y |
|
|
|||
|
|
|
|
X0 |
rp |
X0,Z0 |
|
||
|
Rг |
|
Z0 Rг
а) |
б) |
Рис. 3.10. Схема к построению полидистантных поверхностей: а – вид сверху; б – вид сбоку
88
Построение полидистантной поверхности YЭ на основе YПР на дискретной двухмерной сетке предлагается выполнять по следующему алгоритму [94]:
- принять в первом приближении
YЭ(i,k)=YПР(i,k), |
(3.34) |
где i [1; imax]; k [1; kmax];
- при помощи циклов, меняющих i и k, осуществить перебор каждой точки сетки с высотой YПР(i,k) и для каждой из ее ближайших то- чек-соседей, входящих в область радиуса Rг (за исключением тех, которые выходят за пределы рассматриваемой рабочей области), определить значения rp и ∆y (рис. 3.10):
|
|
|
|
|
|
, |
|
||||||
rp = |
|
(Di × Dl)2 + (Dk × Dl)2 |
(3.35) |
||||||||||
где ∆i=∆k=– ëRг lû…+ ëRг |
lû; |
|
l=(xк0–xн0)/imax |
– |
шаг квантования |
||||||||
линейных координат; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
æ |
|
2 |
ö |
|
|
|
|
|
|
|||
Dy = |
ç1 |
- |
|
rp |
÷ |
×(R |
)2 |
|
; |
|
(3.36) |
||
|
|
|
|||||||||||
|
èç |
|
|
(Rг )2 ø÷ |
в |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- для текущих значений i и k вычислить значение высоты y~:
y~= YЭ(i,k)+∆y; |
(3.37) |
- сравнить высоты y~ и YЭ(i1,k1) и при выполнении неравенства |
|
y~>YЭ(i1,k1) присвоить YЭ(i1,k1) значение y~: |
|
YЭ(i1,k1)= y~, |
(3.38) |
где i1=i+∆i; k1=k+∆k.
Зависимость (3.36) получена из эллиптического уравнения rp2/Rг2+(∆y)2/Rв2=1 (см. рис. 3.10, б).
Блок-схема описанного алгоритма приведена на рис. 3.11. Значения imax и kmax определяют шаг квантования сетки линейных
координат (∆l), который зависит от максимальных значений координат рассматриваемой области xmax=xк0; zmax=xmax. Для рассматриваемо-
го примера (см. рис. 3.9) imax=kmax=100; ∆l=10/100=0,1 УЛЕ.
Пусть в качестве примера lgy=lgz=0,25 УЛЕ; lgx=1,0 УЛЕ (см. рис.
3.8). Примем lg_г= 
(lgx )2 + (lgz )2 =1,03 УЛЕ; lg_в= lgz= 0,25 УЛЕ; lзап_г=0,5 УЛЕ; lзап_в=0,25 УЛЕ.
89