¬аше окно в мир —јѕ–
 
Ќовости —татьи јвторы —обыти€ ¬акансии Ёнциклопеди€ –екламодател€м
—татьи

15 окт€бр€ 2010

—инхронна€ технологи€: попытка є 3

ƒмитрий ”шаковƒмитрий ”шаков

¬ одну телегу впр€чь не можно
 он€ и трепетную лань.
«абылс€ € неосторожно:
“еперь плачу безумствам дань...

ј.—. ѕушкин, «ѕолтава»

–едакци€ портала isicad.ru регул€рно выдел€ет ресурсы на тестирование новых возможностей последних версий попул€рных —јѕ– и не менее регул€рно делитс€ с читател€ми своими выводами о них (см., например, «3D шагает в массы с AutoCAD 2011», «Ќовинки в Inventor 2011», «ќнлайновый  ќћѕј— — в руках isicad»). ћы давно хотели написать обзор возможностей Solid Edge с синхронной технологией.   сожалению, наша попытка получить ознакомительную лицензию на этот продукт успехом не увенчалась: представители российского офиса Siemens PLM Software отказались выдать нам такую лицензию, указав на то, что сотрудники редакции isicad.ru одновременно работают в компании Ћ≈ƒј—, котора€ продает свои технологии и услуги многим —јѕ–-вендорам, включа€ конкурентов Siemens. (Ќадо заметить, что это не мешает Siemens плодотворно сотрудничать с нашим порталом, размеща€ у нас собственные рекламные и информационные материалы.)

  счастью, Siemens отказывает далеко не всем желающим протестировать его ѕќ. ¬ частности, это удалось сделать ƒилипу ћенезесу, главе компании SYCODE (котора€, кстати, в силу специфики разрабатываемых продуктов — модулей трансл€ции данных — находитс€ в самых тесных контактах со всеми разработчиками —јѕ–) и известному блогеру, активному участнику недавнего форума isicad-2010/COFES-–осси€. ƒилип выразил свои ощущени€ от Solid Edge ST3 (третьей реинкарнации синхронной технологии) в серии из 12 постов в своем блоге.

»нформации, которой он поделилс€ со своими читател€ми, достаточно, чтобы сделать выводы об ST3, что € и попытаюсь сделать ниже. ¬озможно, эта публикаци€ побудит компанию Siemens все-таки предоставить нашей редакции ознакомительную лицензию на Solid Edge.

—инхронна€ технологи€ третьего поколени€

»так, согласно ƒилипу (Menezes 2010), дерево конструктивных элементов в новой версии Solid Edge ST3 претерпело существенные изменени€. “еперь оно состоит из трех частей: упор€доченные элементы (Ordered), синхронные элементы (Synchronous) и упрощенное представление (Simplify). ѕерва€ часть традиционна дл€ всех систем, которые следуют концепции —емена √ейзберга, впервые реализованной в Pro/Engineer (и повторенной затем в CATIA, NX, Solid Edge, SolidWorks, Inventor и многих других —јѕ–). Ёто обычные параметрические конструктивные элементы (плоские эскизы, построенные на их основе призмы, отверсти€, фаски, скруглени€, карманы и т.п.) ¬се они образуют упор€доченное дерево, которое отражает историю их создани€ и зависимость друг от друга. –едактировать такие элементы можно с помощью специальных диалоговых форм (например, у отверсти€ можно изменить тип, диаметр, глубину, местоположение). ¬се это хорошо известно профессиональным пользовател€м машиностроительных —јѕ–.

¬ другой части дерева Solid Edge представлены синхронные элементы, впервые по€вившиес€ еще в первой реализации синхронной технологии. ќни выгл€д€т как обычные конструктивные элементы, но имеют важное преимущество перед ними — эти элементы можно мен€ть с помощью операций пр€мого редактировани€ геометрии, произвольно перетаскива€ мышкой грани трехмерного тела и мен€€ их форму. “ак это выгл€дит дл€ пользовател€.

“реть€ часть дерева Solid Edge (Simplify) содержит упрощенное представление модели, с помощью которого из модели можно легко удалить любую грань, регион, отверстие или скругление.   концепции делени€ элементов на упор€доченные и синхронные эта часть отношени€ не имеет.

— концептуальной же точки зрени€, упор€доченные (традиционные) и синхронные конструктивные элементы имеют различную природу. ѕервые представл€ют собой рецепт, по которому строитс€ (и перестраиваетс€) модель. ¬торые лишь группируют грани тела. Ќа самом деле, синхронные элементы представл€ют собой нечто большее, чем просто группировка граней.

ƒилип в своем блоге цитирует ƒэна —тэплза (Staples 2008), директора по разработке Solid Edge, который указывает на р€д ключевых отличий синхронных элементов от упор€доченных. ¬ частности, синхронные элементы не основываютс€ на плоском эскизе. “очнее, такие элементы как призма, конечно же, стро€тс€ по эскизу, но затем их можно параметрически модифицировать, не мен€€ самого эскиза — это в корне отличаетс€ от традиционного подхода, который требует модификации исходного эскиза дл€ изменени€ формы основани€ призмы. Ѕлагодар€ отсутствию св€зи с эскизом, синхронный элемент можно свободно перемещать по модели, перенос€ его на другие грани, что, безусловно, €вл€етс€ одним из важнейших преимуществ этого подхода.

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

»з такого описани€ €сно следует, что синхронный элемент — это такой набор граней тела, в котором автоматически обеспечиваетс€ сохранение геометрических св€зей между ними.  ак разработчики Siemens добились этого? ” мен€ есть собственна€ гипотеза на этот счет, подробнее о которой — ниже.

ѕроцедурные и декларативные элементы

¬ообще, иде€ двух представлений конструктивных элементов не нова. ¬ монографии Shah & Mantyla 1995 описываютс€ два подхода к представлению параметрических конструктивных элементов: процедурный и декларативный. ¬ рамках первого, каждый конструктивный элемент кодируетс€ на процедурном €зыке и комбинирует определение свойств элемента и его отношений с другими элементами с процедурами дл€ вычислени€ этих свойств и отношений. ѕри декларативном определении конструктивные элементы задаютс€ на непроцедурном €зыке, где спецификаци€ свойств и отношений отделена от их вычислени€. ¬ частности, в рамках декларативного подхода свойства конструктивного элемента и его отношени€ с другими могут задаватьс€ с помощью правил и ограничений.

¬ обоих случа€х, конструктивные элементы (features) не замен€ют собой геометрию, а лишь дублируют ее на более высоком уровне. √еометри€ всегда создаетс€ и поддерживаетс€ в рамках системы геометрического моделировани€ (мы знаем, что Siemens использует Parasolid — одну из первых коммерческих систем геометрического моделировани€ на основе граничного представлени€ геометрии, разработанную компанией ShapeData в 1988 г.), а конструктивные элементы служат высокоуровневым интерфейсом между конечным пользователем и геометрическим €дром.

”пор€доченные элементы Solid Edge ST3 очевидно реализуют традиционный процедурный подход. ѕо сути, упор€доченна€ часть дерева этой системы представл€ет собой инструкцию дл€ построени€ геометрии: последовательный вызов процедуры построени€ дл€ каждого элемента в дереве в соответствии с их пор€дком позвол€ет обновл€ть модель при изменении параметров. ѕо другому обстоит дело с синхронными элементами.

я имею основани€ подозревать, что синхронные элементы Siemens реализуют декларативный подход, в рамках которого свойства элемента и его отношени€ с другими задаютс€ с помощью геометрических ограничений (скрытых от конечного пользовател€), а вычисление этих свойств и отношений (при модификации элемента) происходит с помощью решени€ системы ограничений (у Siemens есть соответствующие технологии дл€ этого — решатели D-Cubed, св€зь которых с синхронной технологией упоминаетс€ в пресс-релизах компании).

¬ своей монографии Shah и Mantyla описывают следующие области использовани€ ограничений дл€ задани€ конструктивных элементов:

  • зависимости внутри элемента,
  • композитные зависимости дл€ задани€ шаблонов (например, расположени€ одинаковых отверстий по кругу с заданным шагом),
  • зависимости между элементами в рамках детали,
  • зависимости между детал€ми в сборке.

¬се ограничени€ классифицируютс€ на две группы — дл€ задани€ ориентации элемента (параллельность, перпендикул€рность, заданный угол, копланарность, соосность) и дл€ задани€ положени€ (рассто€ни€). “аким образом, синхронный элемент Siemens — это скрытый от пользовател€ набор геометрических и размерных ограничений, св€зывающих подмножество граней тела (графически представл€ющих соответствующий элемент) между собой и с гран€ми других элементов.

„то происходит при пр€мом редактировании этих граней (перетаскивании их с помощью «мышки» в новое положение)? ѕри таком перемещении должна вызыватьс€ процедура динамического решени€ ограничений, котора€ обеспечивает в каждый момент времени сохранение конструктивной концепции элемента.

ѕоскольку декларативное задание конструктивного элемента основано на непроцедурном описании его свойств, становитс€ возможным переносить эти свойства на уже существующую геометрию. ѕоэтому система может легко распознавать типовые элементы (отверсти€, фаски, скруглени€) в модели без истории построени€ и представл€ть их в виде синхронных элементов дл€ последующего параметрического редактировани€.  роме того, становитс€ возможным осуществл€ть перегруппировку элементов модели без перестроени€ ее геометрии.

ќ том, как успешно можно примен€ть геометрические и размерные ограничени€ дл€ параметризации трехмерных тел в граничном представлении, мы в компании Ћ≈ƒј— знаем непонаслышке. “акой подход мы развиваем в рамках своей технологии вариационного пр€мого моделировани€ (Ushakov 2008). Ќаша иде€ состоит в том, что конечный пользователь работает непосредственно с геометрией — без промежуточного уровн€ в виде конструктивных элементов. ¬ частности, наш пользователь может вручную задать любое геометрическое или размерное ограничение между любыми элементами модели без истории построени€. ≈ще важнее то, что наша система способна автоматически распознавать большинство геометрических ограничений (параллельность, перпендикул€рность, копланарность, соосность, касание, равенство рассто€ний и радиусов) и учитывать их при операци€х пр€мого редактировани€ модели. ∆елающие могут загрузить свежую бета-версию плагина RhinoDirect и убедитьс€ в том, насколько эта концепци€ проста в использовании и как сильно она экономит врем€, необходимое дл€ внесени€ в модель параметрических изменений с сохранением ее конструктивной концепции.

Ќо вернемс€ к Solid Edge ST 3.

 ак сочетать два подхода в рамках одной системы?

»так, пользователь Solid Edge ST3 стоит перед выбором: создава€ очередной конструктивный элемент, он может сделать его традиционным (упор€доченным) способом или синхронным. Ётот выбор очень важен, и вот почему. ¬ Solid Edge ST 3 конструктивные элементы можно переносить из упор€доченной части дерева в синхронную.

ƒействительно, концептуально в этом нет ничего сложного — просто автоматически мен€етс€ способ определени€ элемента: от процедуры построени€ система переходит к набору геометрических и размерных ограничений на граничных элементах. ѕроблема в том, что обратна€ операци€ невозможна: любой элемент в упор€доченной части дерева имеет свое место в иерархии — такова природа процедурного подхода, в то врем€ как все синхронные элементы равноправны, они могут образовывать не только иерархические, но и циклические зависимости (последнее, впрочем, нуждаетс€ в проверке, которую мы сделать не можем в силу отсутстви€ лицензии на Solid Edge).

 стати, и пр€мой перенос не так прост и очевиден дл€ пользовател€ — дело в том, что при переносе элемента из упор€доченной части в синхронную Solid Edge автоматически переносит вслед за ним все родительские элементы (от которых зависит переносимый). Ёто косвенно говорит о том, что синхронна€ часть модели в Solid Edge обрабатываетс€ до упор€доченной части.

»з этого, кстати, следует еще один недостаток текущей реализации синхронной технологии: когда пользователь создает новый элемент в синхронной части дерева, все упор€доченные элементы исчезают из модели! ѕон€тно, что они стро€тс€ на основании синхронной части, котора€ может изменитьс€, но не€сно, что мешает их отображению и автоматическому пересчету в этот момент. ¬прочем, этот недостаток не мешает пользоватьс€ операци€ми пр€мого редактировани€ геометрии с участием граней синхронных элементов при работе с упор€доченной частью. ¬ частности, можно св€зывать параметры элементов из двух частей дерева с помощью формул.

«ависимости между параметрами

‘ормульные зависимости — не новость в машиностроительных —јѕ–. ƒействительно, одним из преимуществ параметрического моделировани€ €вл€етс€ возможность определ€ть параметры друг через друга. Ќапример, при создании очередной призмы можно зафиксировать, что ее высота будет вдвое больше высоты ранее созданной призмы. “акие зависимости между параметрами могут быть сколь угодно сложными, включать в себ€ не только арифметические операции, но и произвольные функции (в том числе, определ€емые пользователем или внешней программой), можно использовать свободные переменные, инженерные таблицы, правила и т.п. — одним исключением: параметры не должны циклически зависеть друг от друга. ¬ частности, параметр конструктивного элемента, который расположен в дереве выше другого элемента, не может зависеть пр€мо или косвенно от его параметров.

ѕоскольку в Solid Edge ST3 синхронные элементы стро€тс€ раньше упор€доченных, параметры последних можно св€зать формулами с параметрами первых. “огда, в частности, можно будет наблюдать удивительные эффекты при операци€х пр€мого редактировани€, которые в таком случае будут мен€ть форму упор€доченных элементов вслед за изменением синхронных.

ћы в компании Ћ≈ƒј— считаем, что параметрическое моделирование с помощью формул слишком ограничивает пользовател€ в выразительных возможност€х. ¬ частности, далеко не все зависимости можно выразить в €вном виде, ведь в общем случае параметры могут быть св€заны не€вным уравнением (например, x^2+y^2=1) или даже системой уравнений. Ѕолее того, четкое выделение в каждой формуле лишь одного выходного параметра вынуждает пользовател€ полностью переделывать спецификацию при переходе от пр€мой задачи к обратной. ¬ рамках технологии вариационного пр€мого моделировани€ инженерные переменные могут св€зыватьс€ друг с другом не формулами, а уравнени€ми. ѕри этом не будет никаких ограничений на отсутствие циклических зависимостей между параметрами, равно как не потребуетс€ переписывать уравнени€ при изменении набора входных параметров задачи.

«аключение

ƒавайте задумаемс€ над тем, что на самом деле получили пользователи Solid Edge с синхронной технологией. — одной стороны, разработчики Siemens реализовали весьма мощную и простую в использовании концепцию конструктивных элементов с декларативным заданием свойств (такие элементы они называют синхронными). ’от€ самой концепции декларативных элементов на основе ограничений уже почти двадцать лет (см. Balakrishnan 1993 и Ali 1994), в попул€рном коммерческом продукте она была реализована впервые.

—инхронна€ технологи€ позвол€ет пользовател€м —јѕ– оперировать в терминах традиционных конструктивных элементов, задава€ и редактиру€ их привычным способом. Ќар€ду с этим, она обеспечивает полноценное пр€мое редактирование геометрии, перенос конструктивного элемента в любое место модели, а не только в пределах плоскости эскиза, независимость каждого элемента от ранее созданных, возможность перегруппировки граней в другие типы элементов. ¬се это открывает новые возможности параметрического моделировани€, освоив которые, пользователи смогут вносить изменени€ в модели намного быстрее.

— другой стороны, попытка представить в одном дереве элементы двух типов (процедурные и декларативные, т.е. упор€доченные и синхронные в терминах Siemens) выгл€дит ненужным усложнением дл€ пользовател€. ќдним махом специалисты Siemens добились того, что дерево стало выгл€дит в два раза сложнее, с нетривиальной семантикой копировани€ элементов между разными его част€ми (что-то можно скопировать, что-то нельз€, что-то пот€нет за собой другие элементы и т.п.) ¬озможно, разработчиками двигало желание помочь пользовател€м, привыкшим к традиционному подходу на основе истории построени€, освоить новую синхронную технологию. ¬озможно, в следующих верси€х Solid Edge упор€доченна€ часть дерева исчезнет навсегда. ¬едь единственным преимуществом подхода на основе истории построени€ перед подходом на основе ограничений €вл€етс€ скорость пересчета модели при изменении параметров. ќднако, с развитием методов решени€ ограничений и по€влением все более производительных компьютеров это преимущество сходит на нет и остаютс€ одни недостатки: невозможность задани€ циклических зависимостей между параметрами, необходимость повторного проектировани€ модели при отсутствии в дереве нужного параметра, ограниченность средств пр€мого редактировани€ модели.

«а синхронной технологией будущее, но зачем это будущее подавать в одной св€зке с устаревшим аппаратом параметрического моделировани€ на основе истории? Ёти два подхода очень плохо стыкуютс€ друг с другом из-за серьезных концептуальных различий, в результате комбинированное решение получаетс€ противоречивым и неестественным дл€ пользовател€. Ќе получитс€ ли так, что Siemens разочарует своих пользователей чрезмерной сложностью комбинированного решени€? Ќе лучше ли было оставить синхронную технологию в чистом виде — без какой-либо св€зи с традиционным подходом? “еперь ответов на эти вопросы мы не узнаем, зато своим решением Siemens открыл дорогу другим вендорам, которые могут предпочесть иные стратегии вывода аналогичного аппарата на рынок. ѕоживем — увидим. ћы в компании Ћ≈ƒј— намерены прин€ть активное участие в этом процессе.

Ѕиблиографи€

ƒобавить комментарий

„итайте также:


¬акансии:

јктуальное обсуждение

RSS-лента комментариев

ƒавид Ћевин
ƒавид Ћевин
ќт редактора: —емь советов молодым инженерам
ѕроект ЂЌародное —јѕ–-интервьюї

—лучайна€ стать€:

isicad Top 10

—амые попул€рные материалы

   ‘орумы isicad:

isicad-2010 isicad-2008
isicad-2006 isicad-2004

ќ проекте

ѕриглашаем публиковать на сайте isicad.ru новости и пресс-релизы о новых решени€х и продуктах, о проводимых меропри€ти€х и другую информацию. јдрес дл€ корреспонденции - info@isicad.ru

ѕроект isicad нацелен на

  • укрепление контактов между разработчиками, поставщиками и потребител€ми промышленных решений в област€х PLM и ERP...
ѕодробнее

»нформаци€ дл€ рекламодателей


¬се права защищены. © 2004-2019 √руппа компаний «Ћ≈ƒј—»

ѕерепечатка материалов сайта допускаетс€ с согласи€ редакции, ссылка на isicad.ru об€зательна.
¬ы можете обратитьс€ к нам по адресу info@isicad.ru.