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

Аналог Lisp в Inventor или способы автоматизации построений в Inventor


Cергей

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

Доброго времени суток!

 

Уважаемые форумчане, подскажите пожалуйста, какие есть способы автоматизировать построения в Inventor, аналогичные Lisp'у в AutoCAD?

 

В частности одной из задач является автоматическое создание "Эскизов" и построение на них сечений, как на рисунке. Размеры сечений рассчитываются в математическом ПО и могут быть записаны в csv или excel файл.

 

Профили.jpg

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


что-то знакоемое... когда-то похожее здесь уже мелькало...

На счет Lisp. AI не нуждается в программировании для решения подобных задач.

 

 

Ссылка на сообщение
Поделиться на других сайтах
Александр_Бородаев
В 16.06.2017 в 12:45, Cергей сказал:

Размеры сечений рассчитываются в математическом ПО

По вашей картинке не совсем понятно для чего это нужно, в Инвенторе имеется достаточно мощный математический аппарат для управления параметрами. Поясните более подробно что вы хотите автоматизировать и какая математическая модель заложена в расчетах. Может быть достаточно создать форму ilogic и управлять параметрами без программирования. 

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

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

исходные данные - файл содержащий:

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

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

положение начальной точки профильной линии относительно системы координат эскиза и угол наклона касательной к первому элементу в его начальной точке (собственно что бы задать положение плоской кривой нужно указать координаты начальной точки и угловое положение);

z координата плоскости соответствующего сечения.

Фрагмент файла показан ниже:

Клеть m - сечение с порядковым номером m; x0, y0, b0 - координаты начальной точки и угол; s0 - толщина заготовки; z0 - положение плоскости сечения относительно С.К.; Ln, Rn, An - размеры n-ого элемента профильной линии.

«

Клеть 1                NaN       NaN

x0           -37.8539816339745         мм

y0           0             мм

b0           0             град

s0           1             мм

z0           0             мм

L1           15           мм

R1           0             мм

A1          0             град

L2           0             мм

R2           0             мм

A2          0             град

L3           45.707963267949             мм

R3           0             мм

A3          0             град

L4           0             мм

R4           0             мм

A4          0             град

L5           15           мм

R5           0             мм

A5          0             град

Клеть 2                NaN       NaN

x0           -35.7263688127496         мм

y0           8.16987298107781           мм

b0           -30         град

s0           1             мм

z0       420            мм

L1           15           мм

R1           0             мм

A1          0             град

L2           2.61799387799149           мм

R2           5             мм

»

 

В ‎17‎.‎06‎.‎2017 в 22:32, Александр_Бородаев сказал:

Поясните более подробно что вы хотите автоматизировать

 

автоматизировать нужно следующую процедуру:

1 построение плоскости параллельной XY с координатой z0;

2 создание эскиза;

3 в созданном эскизе построить профильную линию по размерам и положению начальной точки относительно С.К. эскиза прочитанным из файла;

4 к профильной линии построить две эквидистанты отстоящие от нее на величину s0/2;

5 концы построенных эквидистант замкнуть двумя отрезками, что бы образовать замкнутый контур.

 

Указанную последовательность действий выполнить m раз для каждого сечения.

 

 

Может в Inventor есть более подходящий способ?

 

 

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

Лично я совсем не понял зачем это нужно.:no_1: Здесь больше шансов, что Вас правильно поймут:smile:

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

Если программа, выдающая вам файл с отрезками и дугами - самописная, я бы заставил выводить ее в файл в одном из стандартных форматов - DXF или, в крайнем случае, текстовый формат Компаса. В противном случае вам писать процедуру прорисовки вашего специального формата данных в виде примитивов "дуга", "окружность", и засасывать это в эскиз (не уверен, что есть API на это в эскизнике Inventor). Я сам подобные вещи делал - программа писалась на Матлабе, файл выводился в текстовом формате древнего Компас и всасывался в него, откуда через нейтральный формат - в САМ.

 

Я мог бы написать читалку, но под Катию, при условии, что файл загонится как табличка Excel/txt. И результатом будет не эскиз (не помню - можно ли в эскиз через API писать), но сборка линий и дуг. Сделать 2 параллельные кривые и соединить можно штатно.

Ссылка на сообщение
Поделиться на других сайтах
4 часа назад, zerganalizer сказал:

Если программа, выдающая вам файл с отрезками и дугами - самописная, я бы заставил выводить ее в файл в одном из стандартных форматов - DXF

Так и есть, программа самописная на Матлабе и данные могут быть представлены в любом формате. И научиться работать с dxf было бы полезно, потому что в дальнейшем планируется передача геометрии из CAD приложения обратно в Matlab. Можете посоветовать примеры или другие материалы для изучения структуры этого формата?

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

К сожалению, этот формат не юзал, показался сложным (надо было быстро). Как вариант - если сможете вывести в ЧПУ-формате любого станка (G1 X_Y_Z G2/3 X_Y_R) и открыть CIMCO edit правильно - можно перевести в DXF.

 

Но для удобного обмена туда-сюда лучше, вероятно, DXF или IGES. Гугл вам в помощь.

 

Почему про катию вспомнил - у меня есть наработка, ассоциативно читающая файл с Excel/TXT (только линии/сплайн пока что), и фича воспринимает изменения файла сразу, с перестроением всего остального в катии. Есть ли подобное в Инвентор - не в курсе.

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • fenics555
      это каждый раз что-то ковырять при установке, не вариант.
    • maxx2000
      @fenics555, я никогда не задавался таким вопросом, а можно ли отключить авторегенрацию компонентов или заморозить? Если прям опции нет, может через Тулкит или Апи?
    • fenics555
      штифты разрезные- понятно, что примонтаже изменяют размер по отверстию.  Резиновое кольцо уплотнительное- оно меняет не только диаметр наружный и внутренний, но и толщину. именно долго открываются сборки, содержащие эти изделия.  можно конечно и без нее обходиться, но мы уже привыкли. Только грузятся сборки очень долго, но это врятли из-за гибкости.
    • Viktor2004
    • UkulyAlex
      Добрый день. Работаю в t-flex 16. Имеется приспособление в котором более 150 позиций деталей, спецификация сделана по структуре изделия. Возникла необходимость изменения конструкции, некоторые детали из середины списка пришлось удалить. После обновления отчёта позиции сдвигаются, как сделать чтобы оставались на месте, т.е. был пропуск позиций в середине раздела "Детали"? 
    • статист
      Спасибо за цитату, полезная для меня   Я знал до этого способ использовать атрибуты LATT для задания направления, но они применялись только к построенным линиям. Если например рассматривать созданный элемент E, 1, 2, где для задания применяются только два узла, то тут уже никак не поменяешь положение третьего узла, так как его нет. Нужно тогда создавать отдельно направляющий узел  и задавать его через EMODIF,EID, 3, NID.   Но получается без создания узла, задать направление нельзя. В настране по крайней мере так можно. А в ансисе нужно плодить лишние узлы. Грустно)
    • FROST_R6
      Есть монорельса размером 12м. Хочу проверить перемещение при нагрузке на середину в 2 тонны. Саму монорельсу фиксировать не нужно, поэтому я поставил ее на 2 призмы и зафиксировал их. Расчет не получается провести - сначала программа пишет, что "деформация в данном исследовании слишком значительная и нереалистичная, хотите остановить программу и перезапустить исследование с меньшими нагрузками или с более жесткой моделью?". Я выбираю "нет". После долгого процесса расчета появляется сообщение о том, что "Состояние равновесия не было достигнута" и "Анализ больших смещений был остановлен до сохранения результата", появляется надпись о сбое расчета. 
    • maxx2000
      подгружаются при повторном открытии сборки или при первой вставке? Ну и гибкость сначала вызвала вопрос, но я не заметил существенной задержки при выборе способа вставки с ней или без неё.
    • Ветерок
      Я не понял зачем в этих деталях задана гибкость. При том, что новые значения размеров определяются не измерением, а вводом вручную.
    • BOJIOD9I
      Добрый день! Подскажите куда внести изменения на стойке fanuc 0i, чтобы когда вводишь коррекцию в графу износа она не отображалась на координатах. Пример: Резец точит размер 100 мм, по факту получается 101мм. В графе износ вносишь -1.0 мм. В итоге по координатам будет показано что резец точит 99мм, а по факту станет 100мм как нужно было.
×
×
  • Создать...