Перейти к публикации

Связанные 2D-сетки в Siemens NX


tuly666

Рекомендованные сообщения

Доброго времени суток, уважаемые форумчане!) Столкнулся с проблемой, описание которой представляю ниже:

 

Рассматривается тонкостенный элемент (толщина стенок значительно меньше габаритных размеров тела), соответственно для тепловых расчетов на гранях рассматриваемой модели строится 2D-связанная (с ребрами элемента) сетка типа QUAD4. Далее задается орбитальный (он был взят просто ради примера) нагрев тела. Задается он таким образом, что верхняя грань тела (плоскость X0Y, положительное направление оси 0Z) все время направлена на Солнце, а вектор 0X в любой момент времени совпадает с нормалью орбиты.

 

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

Неужели все тепловые связи для каждого тела необходимо проставлять вручную?) Без заданных вручную тепловых связей наблюдался резкий скачок температуры при переходе с верхней грани на боковые (ну не бывает мгновенного перехода от +40 до -35...) 

 

Ниже выложены скрины геометрии (верхний слева), тепловых связей (4 шт справа наверху для описания взаимных связей всех граней- правильно ли?), а также результатов расчета (для установившегося решения брал 5 орбит, брал малый шаг интегрирования по времени, погрешность по температуре- не более 1 градуса.

 

Никак не пойму, с чем связана асимметричность распределения температуры на верхней грани... Видно, что справа на рисунке с результатами есть резкий переход от +49 до -40 (белый цвет переходит в фиолетово-синий), чего быть не может, хотя тепловая связь-то там и задана...

 

post-44861-0-49539200-1419495263_thumb.jpg

 

Заранее благодарю Вас за ответ =)

Ссылка на сообщение
Поделиться на других сайтах


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

Каким образом должна осуществляться теплопередача? Контакт через прокладку или непосредственный, сварка, монолит (в общем есть тепловое сопротивление или нет)?

Вообще то если сетки связанные (имеют общие узлы), то теплопередача должна быть по умолчанию. Может быть достаточно просто объединить сетки?

Ссылка на сообщение
Поделиться на других сайтах

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

Каким образом должна осуществляться теплопередача? Контакт через прокладку или непосредственный, сварка, монолит (в общем есть тепловое сопротивление или нет)?

Вообще то если сетки связанные (имеют общие узлы), то теплопередача должна быть по умолчанию. Может быть достаточно просто объединить сетки?

0Q0, большое спасибо за оперативный ответ)

Только что специально провел расчет без тепловых связей ("Тип объекта симуляции" -> "Тепловая связь"), результаты представлены на изображении ниже:

 

post-44861-0-77854600-1419504143_thumb.jpg

 

Увы, но просто так это не работает....)

Двумерные сетки для граней и крышки принадлежат к одному коллектору сеток и представляют собой единую сетку: 

post-44861-0-96463100-1419504303.jpg

Но по какой-то причине эти сетки все же не являются связанными в режиме теплового расчета)

Для задания тепловых связей использовалась функция: "Тепловая связь"

post-44861-0-58145200-1419504436_thumb.jpg

 

Тело представляет собой тонкостенную монолитную оболочку, в команде выше выбрался параметр "Полная электропроводность", хотя по размерности это явная теплопроводность =\

В том же меню есть, к сожалению, помимо "полной электропроводности теплопроводности" только параметр "Коэффициент теплопередачи")

 

Есть идеи?)

Ссылка на сообщение
Поделиться на других сайтах

А толщина оболочки какая задана?


При создании сетки вот эти опции были включены? Или использование тепловой связи - принципиальный момент?

post-23582-0-77212600-1419510401_thumb.jpg

Ссылка на сообщение
Поделиться на других сайтах

Толщина стенок- 1 мм.

 

Благодарю Вас за совет!) Поставил 2 вышеуказанные галочки- заработало все! =)

Спасибо)

Быстро провел расчет для 2-х орбит, увеличил дискретизацию, вот то, что получилось, если активировать "соответствие ребер" и "объединение ребер":

post-44861-0-18426800-1419512726_thumb.jpg

 

Также для сравнения результатов поместил внутрь этой оболочки еще одно тело, где вышеописанная опция у двумерной сетки деактивирована:

post-44861-0-20200300-1419512843_thumb.jpg

 

То есть принципиальная разница между ними есть) Большое спасибо, теперь спокойно можно упразднить ручное задание тепловых связей между ребрами и перейти к вопросу многоуровневых оболочек) Еще раз благодарю за оперативный ответ =)

 

 

Ссылка на сообщение
Поделиться на других сайтах

Всегда пожалуйста.

Если будете создавать сетки отдельными командами, при наличии совпадающих в пространстве узлов (с допуском), можете воспользоваться этой командой:

post-23582-0-33848000-1419514235.jpg

Ссылка на сообщение
Поделиться на других сайтах

И снова доброго времени суток, уважаемые форумчане!) Всех с наступающим!    *< : )

А теперь по делу:

Ради примера для задачи орбитального нагрева была выбрана модель подобной конфигурации: 1000мм х 1000мм х 1500мм

 

post-44861-0-42628900-1419936122_thumb.jpg

 

Тело задано двумерными гранями, геометрия "серых"  компонентов замкнута без зазоров, "фиолетовые" компоненты модели отстоят от "серых" на 1мм.

После генерации 2D-связанной сетки (были включены параметры "соответствие ребер" и "объединение ребер" ) КЭ-модель выглядит подобным образом:

(показана только сетка для верхнего "фиолетового" слоя для упрощения просмотра результата)

 

post-44861-0-84223300-1419936104_thumb.jpg

 

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

Этот факт ведет к ошибке в расчетах:

 

post-44861-0-99828700-1419936244_thumb.jpg

 

Т.е. опять наблюдается отсутствие теплопередачи между смежными ячейками сетки, чего быть не может)

Отдельно смею заметить, что при общих узлах ячеек для боковых граней теплопередача идет адекватно (пример с кубом можно наблюдать в сообщениях выше): ну например с днища корпуса на все боковые грани, с задней грани тела на боковые. Не передается тепло только от "Крышки" к боковым граням и от передней стенки к боковым =\

 

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

Однако в книге, найденной на просторах рунета, все адекватно работает в примере( стр. 103-104) - goncharov_p_s_artamonov_i_a_halitov_t_f_denisihin_s_v_sotnik.pdf

 

В чем может быть косяк \ ошибка?

Изменено пользователем tuly666
Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...

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

Это бывает, если она (грань) моделировалась отдельно. Если бы это были грани твердого тела, то они сшивались бы автоматически. Для решения этой проблемы есть следующие варианты:

1) Уровень исходной геометрии. Эти грани можно сшить еще в моделинге. Чаще всего операцией "Сшивка граней". Иногда просто процедурой построения (например построение поверхности по сетке кривых на базе ребер уже имеющихся поверхностей). Тогда "хвостик", торчащий вправо, будет отдельной поверхностью. По идее это самый правильный вариант, поскольку в дальнейшем в теории позволит автоматически перегенерить сетку при изменении размеров базовой геометрии.

2) Уровень генератора сетки FEM. Тут имеется три подварианта:

а) подобрать на сопрягаемых поверхностях размер сетки таким образом, чтобы узлы совпадали с определенным допуском и выполнить команду "Дубликаты узлов". На мой взгляд - самый неудачный вариант, поскольку чреват ошибками. Но как экспресс решение - вполне.

б) воспользоваться специальными командами редактирования фасетной геометрии непосредственно в генераторе сетки. Меню со списком этих команд на рисунке ниже.

post-23582-0-15058700-1420832009_thumb.jpg

В Вашем случае достаточно будет воспользоваться командой "Сшить ребра" метод - автоматически, геометрия для сшивки - оба, Тела выберете все сразу рамочкой, Допуски поставьте такие,чтобы не сшивались филетовые и серые, тоесть меньше 1мм

в) Вариант для мазохистов - вручную сдвигать узлы командами "Изменить/Узел/Перенос" и подобными, а затем "Дубликаты узлов"

3) Вариант в симуляции - делать тепловой контакт, как Вы и делали в самом начале, но тут скорее контакт между ребрами элементов, а не контакт между гранями. Хотя контакт по граням элементов тоже работает (Вы выше это продемонстрировали), но там нужно делать мельче сетку, играть опциями перекрытия элементов, коэффициентами теплопроводности и т.д.

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

Ссылка на сообщение
Поделиться на других сайтах
0Q0благодарю Вас за столь исчерпывающий ответ на интересующий вопрос) Все действительно работает так, как нужно =)

Для "фиотетовых" компонентов: 

post-44861-0-16578500-1421152413_thumb.jpg

Ссылка на сообщение
Поделиться на других сайтах
  • 3 недели спустя...
Alexwwwest, рекомендую проверить параметры орбиты для 2D-сетки, в частности вектор ориентации пластины на Солнце, так как явно что-то не то с нагружением пластины)

Какие свойства 2D элементов задавались?

 

В своей задаче, что описана выше, параметры пластины задавал таким образом:

 

post-44861-0-18543300-1422867210.jpg

 

Т.е. при создании коллектора сеток для двумерных элементов для пластины выбирался тип "Нулевая оболочка" с заданными термооптическими свойствами, теплопередачей и тп. 9см. рисунок)

Ссылка на сообщение
Поделиться на других сайтах
  • 3 месяца спустя...

Доброго времени суток, уважаемые форумчане!) В очередной раз обращаюсь к Вам за советом)

 

Суть проблемы: При генерации 2D-сетки вручную на заранее созданных из твердого тела срединных поверхностях программа отказывается подгружать данные о толщине (гипотетической) срединных поверхностей (СП).

 

Для примера привожу 2 детали из одной сборки, на которых были комбинированно построены 2D-сетки в автоматическом режиме и вручную:

post-44861-0-61674600-1431448652_thumb.jpg

Сетка в коллекторе "Shell1" построена вручную (вручную создавались узлы и элементы на гранях срединных поверхностей), в коллекторах "Shell2" и "Shell3"- в автоматическом режиме командой "2D-сетка", везде в параметре коллекторов "Ассоциативные данные сетки" принято значение "Источник для толщины- срединная поверхность", "Тип расчета толщины- в каждом узле", также стоят "галочки" на параметрах "Использовать связанные данные элемента" и "Экспорт сетки в решатель". 

Однако с вышеописанными параметрами при использовании команды "Отрисовка контуров толщины" наблюдается такая картина:

post-44861-0-92828300-1431449084_thumb.jpg

 

Из рисунка видно, что толщина всех ячеек, за исключением принадлежащих к коллектору "Shell2", равна нулю, чего быть не может. Точнее, это не то, что нужно получить)

Отдельно замечу, что параметры всех коллекторов сеток идентичны, свойства тонкостенной оболочки берутся непосредственно из определяющей ее срединной поверхности. (ведь так?)

post-44861-0-52657800-1431449353_thumb.jpg

 

Также вижу, что уж очень странно отображаются грани, на которых уже сгенерирована сетка... Такое ощущение, что идет совмещение двух разных поверхностей. Обычно при создании сетки в автоматическом режиме грань, на которой происходит генерация узлов и ячеек, скрывается. Тут же такое не происходит =\

post-44861-0-17529000-1431449992_thumb.jpg

Драйвера видеокарты самые новые, на них точно не стоит грешить)

Проблему никак не могу решить, прошу Ваших советов по вышеописанному вопросу)

------------------------------------------------------------------------------------------------------------------------------

 

Сам нашел неудовлетворяющий меня, в силу своей топорности и отсутствия автоматизации, вариант решения: использование команды "Создать связи узла вручную". 

При использовании этой функции ячейка "подсасывает" параметры срединной поверхности и соответствующей ей толщине, однако приходиться вручную выделять каждую грань и соответствующие ей узлы ячеек. Получается, что вначале создается вручную сетка, а потом еще вручную привязывается, повторно проходя по тем же самым узлам) Не верю =)

post-44861-0-59484100-1431450113_thumb.jpg

Доказано, работает.)

post-44861-0-30307800-1431450192_thumb.jpg

Но привязывать так все узлы сетки к граням вручную в сборке- это уже перебор) Есть ли у Вас идеи решения проблемы?

Ссылка на сообщение
Поделиться на других сайтах

Похоже у Вас сетка по какой то причине не проассоциировалась к фасетной грани.

То что Вы делаете с узлом можно сделать сразу со всей сеткой. Заодно там же проверить ассоциативность.

post-23582-0-73254900-1431548593_thumb.jpg

Можно еще попробовать вот это:

post-23582-0-89274100-1431548634.jpg

 

 


 

 

Отдельно замечу, что параметры всех коллекторов сеток идентичны, свойства тонкостенной оболочки берутся непосредственно из определяющей ее срединной поверхности. (ведь так?)

 

По идее - да. Но посредником наверное служит фасетная поверхность в FEM файле.

 

 

Также вижу, что уж очень странно отображаются грани, на которых уже сгенерирована сетка... Такое ощущение, что идет совмещение двух разных поверхностей. Обычно при создании сетки в автоматическом режиме грань, на которой происходит генерация узлов и ячеек, скрывается. Тут же такое не происходит =\

У меня аналогично. Там действительно накладывается фасетная грань и грани сетки. Так что вроде так и должно быть.

Просто скрываю лишнее если мешает и работаю.

 

 

При использовании этой функции ячейка "подсасывает" параметры срединной поверхности и соответствующей ей толщине, однако приходиться вручную выделять каждую грань и соответствующие ей узлы ячеек. Получается, что вначале создается вручную сетка, а потом еще вручную привязывается, повторно проходя по тем же самым узлам) Не верю =)

Не совсем так. Наследование идет через узел. Такова формулировка КЕ. Узел ассоциируется по принципу близости к поверхности. Допуск близости можно подправить, узлы можно пододвинуть в ручную или почти автоматом (картинки с соответствующими меню в предыдущем посте).

Ссылка на сообщение
Поделиться на других сайтах
0Q0, Благодарю Вас за столь оперативный ответ- информация действительно помогла) Однако смущает тот факт, что работает это не всегда, а именно:

Как уже была сказано выше, в процессе упрощения геометрии детали создавались срединные поверхности (СП) , однако по какой-то причине в меню "Отобразить\Скрыть" у части деталей сборки они отображаются не как полигональные тела со срединной поверхностью, а как обычные полигональные листовые тела.

post-44861-0-37541900-1432118058_thumb.jpg

В случае с полигональными листовыми телами (которые получались путем создания срединных поверхностей из детали-родителя) указанные Вами способы решения проблемы к сожалению не работают- программа вполне закономерно отображает нулевую толщину. Никак не могу понять причину ошибки- почему же все элементы не отображаются как СП? Никаких модификаций по упрощению модели не производилось, мастер-деталь была импортирована из ProE... Вручную задавать все толщины в коллекторах сеток- это очень тяжело) Есть ли какие-то идеи по этому поводу? 

 

Также вылезает косяк с объединением граней: по какой-то причине не все из них можно объединить, хоть отверстия зашивались непосредственно в NX командой "заполнить поверхность"(?).

post-44861-0-76319000-1432118551_thumb.jpg

Ссылка на сообщение
Поделиться на других сайтах
Также вылезает косяк с объединением граней: по какой-то причине не все из них можно объединить, хоть отверстия зашивались непосредственно в NX командой "заполнить поверхность"(?).

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

 

 

 

какой-то причине в меню "Отобразить\Скрыть" у части деталей сборки они отображаются не как полигональные тела со срединной поверхностью, а как обычные полигональные листовые тела.

А вот с этим я вряд ли смогу разобраться не ковыряя 3D модель. Что то ничего в голову не приходит полезного. Разве что, при редактировании фасетной геометрии в FEM файле, исходные срединные поверхности подменяются?

В ручную задавать толщины конечно не кошерно.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • lem_on
      ну с дуру известно что сломать можно.
    • Viktor2004
      руку привязки так сломать легко
    • lem_on
      По моему вполне логично если станок вывалится в ошибку если рука не доехала до места. У меня так же если кулачки или деталь на пути, просто пихаеш ее до места и станок опять активен. Но нынешние пановья даже не могут написать модель станка.
    • Viktor2004
      Я согласен что скорее всего проблема механическая Но если логика прописана криво и возможно не предусмотрела остановку в промежуточном состоянии, разве не логично будет попробовать принудительно подав напряжение дернуть эту руку вверх-вниз? Возможно то что туда попало выпадет  
    • Guhl
      Если оставить за скобками вопрото том, что до м19 работает нормально, а после нет, то вы не считали сколько у него реально импульсов на оборот? с помощью стороннего плк, например  А если ориентацию м5 снимать, а не м20?
    • lem_on
      Что это за станок такой в котором сразу ладер ковырять надо, даже не смотря на возможность механической проблемы? Или профдеформация?
    • Viktor2004
      не сразу я понял в чем вопрос. Долго соображал что такое режим управления скоростью. При завершении ориентации PMC снимает сигнал G70.6 ? И если он после снятия сигнала продолжает удерживать шпиндель, при каких условиях эта ориентация все же снимается? После нажатия аварийного грибка или еще как?
    • Viktor2004
      Ладдер пришлите. Будем принудительно пробовать поднимать и опускать
    • streamdown
      Коллеги приветствую! IPS 8. Подскажите пожалуйста, кто какое серверное железо использует? Интересуют параметры при одновременной работе, ну например, 400 пользователей онлайн
    • gudstartup
      так он так и позиционируется по m19 pmc выдает g70.6 а чпу отвечает f45.7 но ориентацию и смещение в 4077 он отрабатывает нормально шпиндель встает ровно и смена происходит хорошо. вопрос почему после ввода команды управления скоростью он все еще продолжает контролировать число импульсов между нуль метками хотя в принципе уже должен отменить позиционный контроль и просто считать обороты по 0 метке как он это делает без М19? это все понятно но почему оно продолжает проверять это после завершения ориентации мне непонятно
×
×
  • Создать...