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

Аналог 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 пользователей

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




×
×
  • Создать...