Гирнык Б.В., студ.,

Лапковский С.В. к.т.н., доц.,

Кореньков В.Н. к.т.н., доц.,

НТУУ «КПИ», г.Киев

 

АВТОМАТИЗИРОВАННЫЙ СИНТЕЗ МАТЕМАТИЧЕСКОЙ МОДЕЛИ СБОРОЧНОГО ИЗДЕЛИЯ

 

Одним из узких мест современных САПР сборки является введение исходной информации о деталях сборочной единицы (СЕ) и о СЕ в целом. В существующих программных продуктах пользователь должен либо вручную заполнять матрицы ограничений подвижности размерностью, как минимум, 6xNxN (N - количество деталей в СЕ), или, в лучшем случае, в режиме диалога вводить подробную информацию о каждой паре деталей. При этом помимо высокой трудоемкости такого процесса, не исключаются ошибки, существенно влияющие на правильность и эффективность проектных решений.
В связи с бурным развитием САПР, в том числе трехмерного проектирования (так называемые 3D CAD системы), появилась реальная возможность получить информацию из данных систем автоматически.

Попытки автоматизировать ввод информации путем анализа сборочного чертежа или анализа различных проекций СЕ при 2D моделировании мы считаем бесперспективными. Такой анализ, хотя и чисто теоретически можно реализовать, практически сделать это чрезвычайно сложно. В данной статье рассматривается подход к выявлению взаимных ограничений подвижностей деталей на основе анализа 3D моделей СЕ. В качестве базовой CAD системы использовался SolidWorks.

Основная идея предлагаемого метода заключается в том, что каждый объект 3D модели сборочного изделия подлежит вокселизации.

Суть вокселизации (рис.1) состоит в том, что объемный объект представляется в виде множества параллелепипедов (вокселей) заданного размера, для этого организован цикл по трем координатам, и на каждом шаге цикла выполняется проверка заполнения данного элемента объема материалом:

1.   Пользователь задает размер вокселя d (грань куба)

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

3.   Выполняется проход по трем координатам x y z (три вложенных цикла), и на каждом шаге осуществляется проверка заполнения текущего объема материалом.

4.   Если текущий обьем заполнен на 100%, то текущие координаты x, y, z добавляются в массив вокселей

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

 

C:\Documents and Settings\Администратор\Мои документы\Мои рисунки\Рисунок1.png

 

 

Рис.1. Вокселизация трехмерной модели

 

Число вокселей, даже для небольшой модели, получается очень большим – к примеру, если обьем 3D модели составляет 1 м3 , а размер вокселя 1 мм3 , то число вокселей составит 109. Поэтому, для сокращения обьема памяти используемой для хранения воксельной модели, необходимо реализовать алгоритм построения разреженого воксельного дерева. Его принцип состоит в том, что нам важны лишь те воксели, котрые находятся на поверхности, внутренние же мы можем не анализировать. Поэтому после получения массива вокселей, для каждого из них, мы проверяем наличие соседних вокселей для каждой из шести граней куба - если все шесть соседей имеются, то этот воксель мы можем удалить.

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

Наиболее затратной по времени операцией программы является операция проверки заполнения обьема – в Solid Works API это операция GetMassProperties. Время выполнения программы можно сократить, если проверять не заполнение куба, а заполнение точки (рис.2,3).

 

Рис.2. Куб радиусом 32 мм

 

Рис.3. Разбиение объектов одинакового объема

 

Далее, имея воксельную модель можно использовать уже известные методы формирования матриц бинарных отношений ограничений подвижности [1-4]. Вкратце, их суть заключается в том, что используя вложенные циклы с параметрами i и j мы многократно вызываем процедуру анализа взаимных ограничений подвижности деталей i и j. Результатом выполнения каждого цикла будет заполнение таких матриц: Mx[i, j], Mx [j, i], My [i, j], My [j, i], Mz [i, j], Mz [j, i]. Соответствующие значения будут записаны в результирующий файл.

 

Выводы:

1.     Установлено, что с помощью функций определения наличия области пересечения двух деталей, входящих в состав современных CAD-систем, в частности это функция "GetMassPropetries" В SolidWorks, существует возможность определения ограничение подвижности при непосредственном контакте двух деталей.

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

 

Литература

1.     Пасічник В.А. Виявлення кінематичних з’єднань у складальній одиниці на основі інформації про бінарні відношення обмеження рухливості / В.А. Пасічник, Ю.В. Лашина // Труды Одесского политехнического университета: Науч. и произв.-прак. сб. по техн. и ест. наукам. – Одесса, 2008. – Вып. 1(29). – С.31-35

2.     Давыгора В.Н., Пасечник В.А., Сімута Р.Р. Спосіб визначення взаємних обмежень рухливості деталей у складальній одиниці // Вісник Технологічного університету Поділля. – 2000. – №3 / ч.2. – С. 157-161.

3.     Сімута Р.Р. Забезпечення якості і прискорення технологічної підготовки механоскладального виробництва: Дис... канд. техн. наук: 05.02.08. – К., 2003. –174 с.

4.     Сімута Р.Р. Визначення бінарних відношень обмеження рухливості деталей складальної одиниці в напрямках, які не є колінеарними головній системі координат // Наукові вісті НТУУ „КПІ”. – 2002. – №6. – С. 89-93 .