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

пьезоэлектрика


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

Всем привет,

 

у меня такая проблема. Имеется деталь которая под воздействием пьезоэлектрика начинает вибрировать. На эту деталь действует ещё сила. Мне надо рассчитать деформацию этой детали. При этом когда пьезоэлектрик вызывает резонанс у детали.

Для этого думаю использовать transient модул.Через APDL-команду "d,name selection,volt,напряжение" я даю на пьезоэлектрик напряжение.

Теперь чтобы вызвать у детали резонанс, мне надо задать напряжение в виде функции "1000V * sin(2 * Pi * f * t)".

Кто нибудь знает как это сделать? Или кто то знает более легкий и быстрый способ?

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


Почему transient?

Нельзя ли воспользоваться суперпозицией НДС от гармонического воздействия пьезоэлектрика и статического(если оно статическое, конечно) действия силы?

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

Почему transient?

Нельзя ли воспользоваться суперпозицией НДС от гармонического воздействия пьезоэлектрика и статического(если оно статическое, конечно) действия силы?

Всем доброго дня и здравствуйте, Александр. У меня возник схожий вопрос в задании функционального ГУ Voltage на границе пьезоэлектрика. Необходимость возникла это сделать, для моделирования колебания пьезоэлектрика в жидкости с помощью двухстороннего FSI анализа Mechanical - CFX. Скажите, пожалуйста, возможно ли такое сделать? Я пробовал так как указано ниже, 

 
!constant setup
pi=4*atan(1)
!Applied voltage
V=100
!Applied Frequency
!Freq=20
!Time steps used in solution
!Tstep=1/(20*Freq)
 
d, ground, volt, 0
d, qwerty, volt, V*sin(Time*2*pi/0.3e-5)
 

..на что мне решатель пишет

 *** WARNING ***                         CP =       1.264   TIME= 15:42:59

 Unknown parameter name= TIME.  A value of 7.888609052E-31 will be used. 

И продолжает считать с этим значением

 

Притом я знаю, что, скажем в Transient Thermal, можно использовать переменную по умолчанию Time для задания ГУ.

 

Спасибо!

Ссылка на сообщение
Поделиться на других сайтах
Притом я знаю, что, скажем в Transient Thermal, можно использовать переменную по умолчанию Time для задания ГУ.

Где использовать? в APDL коде? Или все-таки в интерфейсе Mechanical? :wink:


Необходимость возникла это сделать, для моделирования колебания пьезоэлектрика в жидкости с помощью двухстороннего FSI анализа Mechanical - CFX. Скажите, пожалуйста, возможно ли такое сделать?

Звучит вызывающе) успехов!

Возможно всё, лишь бы стоило того.

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

Vocha сказал(а) 15 Апр 2014 - 16:13:snapback.png

Притом я знаю, что, скажем в Transient Thermal, можно использовать переменную по умолчанию Time для задания ГУ.

Где использовать? в APDL коде? Или все-таки в интерфейсе Mechanical?  :wink:

 

 

 

Vocha сказал(а) 15 Апр 2014 - 16:13:snapback.png

Необходимость возникла это сделать, для моделирования колебания пьезоэлектрика в жидкости с помощью двухстороннего FSI анализа Mechanical - CFX. Скажите, пожалуйста, возможно ли такое сделать?

Звучит вызывающе) успехов!

Возможно всё, лишь бы стоило того.

 

 

В интерфейсе, в APDL коде не пробывал, может и можно)

 

 

 

Спасибо) Звучит как сарказм или мне кажется!?...Может есть более простые варианты, просто у меня опыта маловато, что бы всё оценить?!

Изменено пользователем Vocha
Ссылка на сообщение
Поделиться на других сайтах
В интерфейсе, в APDL коде не пробывал, может и можно)

а в коде создавайте перменную TIME. ее нет, потому и ругается и принимает нулевое значение.

 

Звучит как сарказм или мне кажется!?

2-way FSI само по себе не просто, а с прикрученными пьезоэлектриками - реально вызов. успехов желаю искренне)

 

Может есть более простые варианты, просто у меня опыта маловато, что бы всё оценить?!

Может быть. Но чтобы знать, надо задачу обсуждать, а не техническую реализацию.

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

Vocha сказал(а) 15 Апр 2014 - 16:47:snapback.png


Звучит как сарказм или мне кажется!?

2-way FSI само по себе не просто, а с прикрученными пьезоэлектриками - реально вызов. успехов желаю искренне)


 


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


 


Vocha сказал(а) 15 Апр 2014 - 16:47:snapback.png


В интерфейсе, в APDL коде не пробывал, может и можно)

а в коде создавайте перменную TIME. ее нет, потому и ругается и принимает нулевое значение.


 


А как называется переменная, которая отвечает за расчётное время (время текущего подшага в расчёте). Или на него никак "не опереться", что бы собственно была не стационарная нагрузка?!


Ссылка на сообщение
Поделиться на других сайтах
А как называется переменная, которая отвечает за расчётное время (время текущего подшага в расчёте). Или на него никак "не опереться", что бы собственно была не стационарная нагрузка?!

Кажется, Вы не до конца улавливаете логику использования APDL-кода. И я не до конца понимаю, с какого конца объяснить.

Вы раньше с кодом работали? В классике, например?

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

Вполне возможно...только на дипломной работе бакалавра года 4 назад и то, не то чтобы код писал, а просто использовал классический интерфейс. Я в любом случае уже подзабыл. Подскажите немного, если не трудно.

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

Commands Object выполняется после применения всех граничных условий, но ДО выполнения команды SOLVE.

Шаги по времени отсчитываются командой SOLVE. Перед каждым SOLVE выполняется команда TIME, N где N текущее время. Эту переменную называете как угодно и используете как хотите.

По факту, можно перехватить управление на APDL-код и выполнить весь transient расчет в нем, в цикле выполняя

*DO

TIME

SOLVE

*ENDDO

Может быть, что-то понятно.

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

Вообщем надо мне лезть в APDL код созданного проекта)) Надо изучать всё, но идея понятна. Спасибо огромное, всего хорошего!)

Ссылка на сообщение
Поделиться на других сайтах
Вообщем прописывание этого дела в команды Transient Structural решает вопрос описанный в этой теме.

 

mpdel,all,matid

 

et,matid,226,1001

! hex 2 порядка, пьезоэлектрический элемент

 

/SOLU

ALLSEL,ALL

 

 

!////////Создаём функцию 2-го синуса в APDL, для получения импульсного сигнала\\\\\\\\

 

 

*DEL,_FNCNAME   

*DEL,_FNCMTID   

*DEL,_FNC_C1

*DEL,_FNC_C2

*DEL,_FNCCSYS   

*SET,_FNCNAME,'topvolt' 

*DIM,_FNC_C1,,1 

*DIM,_FNC_C2,,1 

*SET,_FNC_C1(1),10  

*SET,_FNC_C2(1),3.1415926535897932384626433832795   

*SET,_FNCCSYS,0 

! /INPUT,funcsinsin.func,,,1

*DIM,%_FNCNAME%,TABLE,6,19,1,,,,%_FNCCSYS%  

!   

! Begin of equation: VOL*sin((2*{Pi}/(1/110000))*{time})*sin((2*

! {Pi}/(1/330000))*{time})  

*SET,%_FNCNAME%(0,0,1), 0.0, -999   

*SET,%_FNCNAME%(2,0,1), 0.0 

*SET,%_FNCNAME%(3,0,1), %_FNC_C1(1)%

*SET,%_FNCNAME%(4,0,1), %_FNC_C2(1)%

*SET,%_FNCNAME%(5,0,1), 0.0 

*SET,%_FNCNAME%(6,0,1), 0.0 

*SET,%_FNCNAME%(0,1,1), 1.0, -1, 0, 2, 0, 0, 18 

*SET,%_FNCNAME%(0,2,1), 0.0, -2, 0, 1, -1, 3, 18

*SET,%_FNCNAME%(0,3,1),   0, -1, 0, 1, 0, 0, 0  

*SET,%_FNCNAME%(0,4,1), 0.0, -3, 0, 110000, 0, 0, -1

*SET,%_FNCNAME%(0,5,1), 0.0, -4, 0, 1, -1, 4, -3

*SET,%_FNCNAME%(0,6,1), 0.0, -1, 0, 1, -2, 4, -4

*SET,%_FNCNAME%(0,7,1), 0.0, -2, 0, 1, -1, 3, 1 

*SET,%_FNCNAME%(0,8,1), 0.0, -1, 9, 1, -2, 0, 0 

*SET,%_FNCNAME%(0,9,1), 0.0, -2, 0, 1, 17, 3, -1

*SET,%_FNCNAME%(0,10,1), 0.0, -1, 0, 2, 0, 0, 18

*SET,%_FNCNAME%(0,11,1), 0.0, -3, 0, 1, -1, 3, 18   

*SET,%_FNCNAME%(0,12,1), 0.0, -1, 0, 1, 0, 0, 0 

*SET,%_FNCNAME%(0,13,1), 0.0, -4, 0, 330000, 0, 0, -1   

*SET,%_FNCNAME%(0,14,1), 0.0, -5, 0, 1, -1, 4, -4   

*SET,%_FNCNAME%(0,15,1), 0.0, -1, 0, 1, -3, 4, -5   

*SET,%_FNCNAME%(0,16,1), 0.0, -3, 0, 1, -1, 3, 1

*SET,%_FNCNAME%(0,17,1), 0.0, -1, 9, 1, -3, 0, 0

*SET,%_FNCNAME%(0,18,1), 0.0, -3, 0, 1, -2, 3, -1   

*SET,%_FNCNAME%(0,19,1), 0.0, 99, 0, 1, -3, 0, 0

! End of equation: VOL*sin((2*{Pi}/(1/110000))*{time})*sin((2*{Pi}/(1/330000))* 

! {time})   

  

!Задаём напряжения на пьезоэлектрике

 

/com,

/com,***********  Voltage ground ***********

/com,

 

CMSEL,S,qwerty

*GET,NTOP,NODE,,NUM,MIN

_isCP = 0

*GET, _isCP, NODE, NTOP, CPS, VOLT

*IF, _isCP, EQ, 0, THEN

CP,NEXT,VOLT,ALL

*ENDIF

D,NTOP,VOLT,%topvolt%,0

ALLSEL,ALL

OUTRES,ALL,ALL

 

/com,

/com,***********  Voltage 2 ***********

/com,

 

CMSEL,S,ground

*GET,_NUMMIN,NODE,,NUM,MIN

_isCP = 0

*GET, _isCP, NODE, _NUMMIN, CPS, VOLT

*IF, _isCP, EQ, 0, THEN

CP,NEXT,VOLT,ALL

*ENDIF

D,_NUMMIN,VOLT,0,0

ALLSEL,ALL

OUTRES,ALL,ALL

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Пингвинчик
      Да, в 7.0 тоже есть в инфо эта строка. И при попытке добавить параметр "ptc_actual_pat_members" он пишет что тот зарезервирован.  Но на чертёж его вызвать невозможно, и в параметрах он не отображается (пытался через &ptc_actual_pat_members:FID_...)
    • kkk
      Благо в свойствах Солида появились уравнения, решил изменить записание Обозначения. Хотел сделать, чтобы при конфигурации 00 в обозначение шло бы только имя файла, при других конфигурациях - "имя файла"-"имя конфигурации".     Попробовал так: if ( $PRP:"SW-Имя конфигурации" = 00 , $PRP:"SW-File Name" , $PRP:"SW-File Name"-$PRP:"SW-Имя конфигурации"), пишет ошибка синтаксиса. Если во второй части подставить цифры, то работает, если буквы, то нет. Вот и думаю, это я что-то неправильно делаю, или функция IF работает только с цифрами?
    • zeppelin
      Только через инфо об элементе получилось узнать, но вытянуть через параметр, не нашел.
    • Пингвинчик
      Где? количества всех компонентов не вижу ни в одном массиве, только количество по параметрам (по 2 направлениям, по окружности и тд)   Выше массив по точкам, размеры вижу только позиционные для точек
    • 5axisCNC
      Такие радиуса я обычно делаю фрезой например ф10r0.5(с радиусом при основании 0,5 или 1) Zlevel  погружение по форме между уровнями, можно и Area mill
    • Black Rock
      Всем привет. Я не особо в теме, но когда то юзал учебную версию Тефлкс 2011. Теперь опять хочу вспомнить детство и для этого есть всё ещё живой Мак бук про 2015. Понимаю, что вопрос простой и поэтому может будет лучше послать меня туда где уже написано про мой случай. В общем хочу в торенте скачать Тефлекс 2011 учебный и установить на Макбук. Видимо для этого нужна будет винда 7 или симулятор 7й винды или что то, что бы Тефлекс можно было запустить на окаянном Макбуке. Пожалуйста подскажите пошагово, как мне снова стать счастливым.   
    • Ветерок
      Да ладно вам! Ещё в ПроЕ так делалось. Щелкаете на массив - отображаются его размеры: шаг и количество. Щелкаете на количестве - вот он. Можно посмотреть его имя, оно начинается с буквы p. И не надо искать ни по каким окнам.
    • zeppelin
      Да, такую возможность ввели в С10
    • Клиент
      Участок УП, где ошибка вылазит выложите
    • Пингвинчик
      Там выведен параметр массива со всеми подуровнями, так выглядит по умолчанию 
×
×
  • Создать...