Научная статья на тему 'Автоматизированное проектирование электронных макетов элементов сборочной оснастки посредствам программного модуля NX/Open API'

Автоматизированное проектирование электронных макетов элементов сборочной оснастки посредствам программного модуля NX/Open API Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
695
127
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АВТОМАТИЗАЦИЯ / СБОРОЧНАЯ ОСНАСТКА / CAD/CAE СИСТЕМЫ / ТЕХНОЛОГИЧЕСКАЯ ПОДГОТОВКА ПРОИЗВОДСТВА / NX/OPEN API / CAD/CAE SYSTEM / AUTOMATION / ASSEMBLY EQUIPMENT / TECHNOLOGICAL PREPARATION OF PRODUCTION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Лаврентьева Мария Вячеславовна, Чьен Ха Ван

Широкое распространение CAD/CAE систем при решении большинства конструкторских и технологических задач дает возможность для развития систем автоматизированных проектирования. В данной статье описываются два метода автоматизации проектирования сборочной оснастки с использованием средств NX: Siemens PLM Software, NX/Open API. Применение подобной системы позволяет оптимизировать трудовые затраты инженера.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Лаврентьева Мария Вячеславовна, Чьен Ха Ван

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

AUTOMATED ELECTRONIC MODELS OF ELEMENTS OF ASSEMBLY EQUIPMENT BY MEANS OF THE PROGRAM NX/OPEN API MODULE

The wide spread occurance of CAD/CAE systems at solution the majority of design and technological tasks gives the chance for development the systems of automated design. In this article two methods of automation the design of assembly equipment with use of NX means are described: Siemens PLM Software, NX/Open API. Use of similar system allows to optimize the labor costs of engineer.

Текст научной работы на тему «Автоматизированное проектирование электронных макетов элементов сборочной оснастки посредствам программного модуля NX/Open API»

УДК 658.512, 004.942

АВТОМАТИЗИРОВАННОЕ ПРОЕКТИРОВАНИЕ ЭЛЕКТРОННЫХ МАКЕТОВ ЭЛЕМЕНТОВ СБОРОЧНОЙ ОСНАСТКИ ПОСРЕДСТВАМ ПРОГРАММНОГО МОДУЛЯ NX/OPEN API

© 2013 М.В. Лаврентьева, Х.В. Чьен

Национальный исследовательский Иркутский государственный технический университет

Поступила в редакцию 15.11.2013

Широкое распространение CAD/CAE систем при решении большинства конструкторских и технологических задач дает возможность для развития систем автоматизированных проектирования. В данной статье описываются два метода автоматизации проектирования сборочной оснастки с использованием средств NX: Siemens PLM Software, NX/Open API. Применение подобной системы позволяет оптимизировать трудовые затраты инженера.

Ключевые слова: автоматизация, сборочная оснастка, CAD/CAE системы, технологическая подготовка производства, NX/Open API

Технологической подготовке сборки самолета всегда уделялось наибольшее внимание ввиду ряда факторов:

- окончательная точность самолета напрямую зависит от качества выполнения сборочных процессов;

- наличие большого числа и разнообразие типов сборочных приспособлений;

- небольшой процент автоматизации при сборке планера самолета и технологической подготовке сборочного производства;

Разработка системы автоматизированного проектирования (САПР) сборочных приспособлений позволяет сократить время, затрачиваемое инженером-конструктором на разработку сборочной оснастки в разы, так как практически вся проектная часть будет записана в программном коде и станет требовать от пользователя лишь указания базовых плоскостей, осей, а также габаритных размеров каждого элемента сборочного приспособления. Автоматизация проектно-конструкторских работ является процессом достаточно сложным, так как требует владения не только инженерными знаниями, но и навыка программирования, притом программирования не в чистом виде, а с использованием средств NX: Siemens PLM Software, точнее один из его программных модулей NX/Open API (Application Program Interface), имеющий в своем арсенале Program Interface), имеющий в своем арсенале

Лаврентьева Мария Вячеславовна, аспирантка. Email: mira.amazon@gmail.com

Ха Ван Чьен, аспирант. E-mail: maimaibe-nem_0113@yahoo.com

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

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

Основная цель разработки САПР заключается в создании программного продукта, способного самостоятельно создавать электронный макет сборочного приспособления, в идеале без участия, но под контролем конструктора. В данной работе будут рассмотрены два метода автоматизированного проектирования на примере простой прямоугольной рамы и нестандартной опоры сборочного приспособления.

Первый метод представляет собой процесс, полностью повторяющий традиционное проектирование рамы, написанный на языке С++. Рама сборочного приспособления относится к группе несущих элементов сборочного приспособления (СП), образующих его каркас. Как правило, рама состоит из балок, каждая балка представляет два сваренных между собой швеллера либо трубу квадратного сечения. Для начала работы необходимо выделить элементы КЭМ, используемые для создания рамы, которые должен в обязательном порядке иметь файл сборки: плоскость симметрии рамы (datum plane); горизонтальная плоскость рамы (datum plane); поперечная плоскость рамы (datum plane); продольная ось рамы (datum axis); вертикальная ось рамы (datum axis); поперечная ось рамы (datum

axis). Наличие данных базовых элементов, имитирующих систему координат самолета, обеспечивает необходимое положение рамы в пространстве. Все перерасчеты координат система должна производить относительно этой СК. Таким образом, выявив все необходимые составляющие, можно приступить к построению.

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

/** Создание эскиза */

theSession-5-Prefегепсез {> -»Sketch() ->SetCreateInferredCon3traint3 (true) ; theSession-»Prefегепсез{)-»Sketch()-»SetCont inuousAut оDimens i oning(false);

theSession->Preferences{>-»Sketch()->SetDimensionLabel(Preferences : : SketchPreferences :¡DimensiohLabelTypeExpression); theSe53ion->Preferences{)->Sketch()->SetTe.stSizeFiaed{true) ;

cheSession->Prefегепсез{)-»Sketch ()-»SetFisedTeatSize(4.0); L

theSession->Prefегепсез{)-»Sketch О->SetDisplayObjectColor(false);

Sketch *nullSfcetch(HULL);

Ske tchlnPlaceBuilde г * з ke с chlnPlaceBuilde г;

sketchlnPlaceBuilder - workPart-»Sketches ()->Create№wSketchInPlaceBuilder(nullSketch) ; зке tchlnPlaceBuilde r->S etCre aceInt e rmedi at eDanumCs уз(false); sketchInPlaceBuilder-»SetMakeOriginAssociative(false)t

DatumPlane *datiuoPlane = framePlane;

sketchlnPlaceBuilder->PlaneOrFace()->SetValue(datumPlane)t

sketchlnPlaceBuilder-»Axis{)->SetValue(dynami c_cast<DatumAxiз *>(bases[3])); 3ketchInPlaceBuilder-»SetReverseAxis(false);

ske tch= (dynami c_cas t<Sketch * » ( s ke t chlnPl aceBui lde r-XTonmiC ())).-

Fe ature s : : Fe acute * зке t chFeature; sketchFeature = sketch-»Feature(); sketch-»Activate(Sketch::ViewReorientFalse); 3ketchInPlaceBuilder-»Destroy {)."

a)

Рис. 1. Процесс создания эскиза сборочного приспособления: а - программный код построения эскиза, б - эскиз рамы сборочного приспособления

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

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

используя одну разработанную в соответствии со всеми предъявляемыми предприятием требованиями модель (рис. 4), копировать ее в рабочую папку конструктора с заданными им габаритными размерами. Все зависимости (связи) между элементами опоры задаются в ЫХ рис. 5, а сам процесс клонирования записан в программном коде (рис. 6). Такой подход является универсальным, поскольку позволяет работать с любыми элементами конструкции при условии, что все возможные связи будут заданы непосредственно в физическом файле ЫХ. Однако таким образом можно работать лишь с типовыми моделями, чья конструкция не требует изменения или доработки.

sed: :veccoixinoReverseDir;// по cjrrai квгщ>атной тщбы ощну$еляет с какой ctojíohej от линии б^ег посг^оеш1я (bhjttjjm switch (fEaine->frame_type) // тип рдт-ты, швеллер; или квадрат

Refs [0]=sJcetchLine [О] ; Ref3[l]=sketcIiLine [О] ; Refs[2]=this->bases[51; Refs[3]=this->bases[21 ; ReverseDir.resize{1); ReverseDir[0] =2,-

mCreateProfile(2,Refs,ReverseDir,offsetbufM,*0W); ReverseDir [0 ] =1,-

mCreateProfile{2,Refs,ReverseDir,offset bufM,"0");

Refs[G]=sketchLine[1]; Refs [1]=sketchLine [1] ; Refs [2]=this->bases[5] Refs[3]=this->bases[21.-ReverseDir.resize(1): ReverseDir [0 ] =2,-

mCreatePrafile{2,Refs,ReverseDir,offset bufM,offsetV) ReverseDir[0]=lr

mCreateProfile(2,Refs,ReverseDir,offsetbufH,offsetV)

Refs[0]=sketcbLine[2]; Refs[l]=sketchLine[2]; Refs[2]=this->bases[51; Refs[3]=this->bases [21 ; ReverseDir.resize{1); ReverseDir [0 ] =2r-

mCreateProfile{2,Refs,ReverseDir,offset_bufM,offsetV) ReverseDir [01 =1,-_

Рис. 2. Построение рамы сборочного приспособления

S::ASSV::FrameBuilder

»1 CreateSketchQ

std: : vector<NXOb:ject*>Refs {3) :

í

сазе 0 :

Рис. 3. Рама сборочного приспособления

V

Рис. 4. Модель нестандартной опоры

Список выражений в

|ВС= И. hl

Имя Формула * Значе... Един... Тип Коммента... Проверки

Ь (5КЕТСН_000:Эскиз(3) Горизонтальный разм,,. b_otv+2*b_otst 2600 мм Число

р614 (5КЕТСН_003:Эскиз[35} Горизонтальный... Ь_рг 180 мм Число

р701 (SKETCH_005:3ckh3(57) Горизонтальный... Ь_рг 180 мм Число

р709 (SKETCH_006:3ckh3(59) Горизонтальный... Ь_рг 180 мм Число

al [Простое отверстие{25} Вертикальный раз... Ь_рг/2 90 мм Число

Ь1 (5КЕТСН_000:Эскиз(3) Горизонтальный раз... Ь_рг/2 90 мм Число

р54б (Вытягивание[28) End Limit} Ьрг/2-10 100 мм Число

D_gor [Простое отверстие[61} Diameter) d 17 мм Число

а (5КЕТСН_000:Эскиз(3) Вертикальный размер ... h-h-120 -120 мм Число

hi (5КЕТСН_000:Эскиз(3} Вертикальный разме... h-h-500 -500 мм Число 1

h_pr (SfCETCH_000:3cKra{3) Перпендикулярны... if[b_pr= =50)32... 70 мм Число

ч 1 1» .1 ►

Рис. 5. Задание связей в системе NX

|ая oimactb) -

□void ST0318::CloneBuilder:¡Clone{Product 'product,const char *assy) {

UF_initialize{): char аззуЫате[255^1];

UF_CLOHE_set_def_action (UF_CLOHE_clone) ;

UF_CLOHE_set_def_directory [BXSpplication: :proiectData->GetProiectDir{> . c_atc{) > ; UF_CLOHE_set_def_naming [UF_CLOHE_user_name) ; UF_CLOHE_set_famil?_treatment [UF_CLOHE_treat_as_lost> r

UFCAIi [UF_CLOHE_initiali3e {/*UFCLOHE_edit_operation*/CF_CLOHE_clone_ope ration} } UFPARTloadstatust loadstatus.-

UF_CfiIi £UF_CLOHE_add_assembly (assy, 41oad_status) )

if(load_3taCu3.failed)

I

string fileName=this->component-5GetPraduct О-SGetPratatvpePartMame О . c_3tr{) for(int i=Or i<load_status.n_parts; ++i) I

if [fileName = stringtloadstatus.filenames[il) ) return;

)

>

char *oldlTame;

UF_CLOHE_part_state_t stater 3td: :vector<string>Co]iiplete,"

UF_CLOHE_start_iterationO ."

do {

UFCAIi [UFCLOMEiterate {ioldUame) ) :

if (oldHame) {

UF_CLOHE_a3t_part_3tat;e (oldHame, K3tate ) r-if {3tate=UF_CLOHE_present_state) I

Complete.push_bac]t:{oldlJame) r

>

else

Рис. 6. Реализация метода клонирования

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

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

/** Рана */

Frame* Frame=new FrameQr" Fr ame ^Common1 Ii 1:. () ;

Component* componentFrame=new Component (NULL, Frame) : Matrix4ti mat rix ; mat rix« 0,0,1,0, 1,0,0,0, 0,1,0,0, 50,100,300,1,-component Frame - >S e tLo cat ion {mat rix) ,-

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Рис. 7. Определение пространственного положения рамы

Представленная в рамках данной статьи работа проводится при финансовой поддержке правительства Российской Федерации (Минобрнауки России) по комплексному проекту 2012-218-03-120 «Автоматизация и повышение эффективности процессов изготовления и подготовки производства изделий авиатехники нового поколения на базе Научно-производственной корпорации «Иркут» с научным сопровождением Иркутского государственного

технического университета» согласно постановлению Правительства Российской Федерации от 9 апреля 2010 г. №218.

СПИСОК ЛИТЕРАТУРЫ:

1. Ахатов, РХ. Выбор опорных базовых точек при определении схемы базировании сборочной единицы / Р.Х. Ахатов, Х.В. Чьен // Вестник МАИ. 2013. Том 20. №3. С. 110-118.

2. Григорьев, В.П. Приспособления для сборки узлов и агрегатов самолетов и вертолетов /

В.П. Григорьев, Ш.Ф. Ганиханов - М.: Машиностроение, 1977. 138 с.

3. Камаев, ВА. Технология программирования / ВА. Камаев, В.В. Костерин - М.: Высшая школа, 2005. 360 с.

4. Краснов, М. Unigraphics для профессионалов / М. Краснов, Ю. Чигишев - М.: Издательство «Лори», 2004. 274 с.

5. Официальный сайт компании Siemens PLM Software (UGS) [Электронный ресурс] - Режим доступа: http://www.plm.automation.siemens.com.

AUTOMATED ELECTRONIC MODELS OF ELEMENTS OF ASSEMBLY EQUIPMENT BY MEANS OF THE PROGRAM

NX/OPEN API MODULE

© 2013 M.V. Lavrentyeva, H.V. Chyen National Research Irkutsk State Technical University

The wide spread occurance of CAD/CAE systems at solution the majority of design and technological tasks gives the chance for development the systems of automated design. In this article two methods of automation the design of assembly equipment with use of NX means are described: Siemens PLM Software, NX/Open API. Use of similar system allows to optimize the labor costs of engineer.

Key words: automation, assembly equipment, CAD/CAE system, technological preparation of production, NX/Open API

Лаврентьева Мария Вячеславовна, аспирантка. E-mail: mira. amazon@gmail. com Ха Ван Чьен, аспирант. E-mail: maimaibenem_0113@yahoo.com

i Надоели баннеры? Вы всегда можете отключить рекламу.