Jump to content

Программное создание STEP-файла со сплайном


Recommended Posts

ETEMA

Сейчас я занимаюсь программной генерацией stp-файлов содержащих набор сплайнов. Но к своему удивлению обнаружил что форматом step передаются только B-Spline-ы. Неделю копал документацию и интернет. Генерировать b-spline получается, но b-spline строится по узлам, а задача построить сплайн, проходящий через заданные точки. Нашел книгу Springer The NURBS Book вроде бы там есть алгоритм описывающий нахождение узлов b-spline по набору точек. Но он описан не достаточно подробно. И поэтому возник вопрос, быть может в формате step есть инструкции описывающие сплайн, проходящий через заданные точки.

Link to post
Share on other sites


UnPinned posts
Ветерок
18 минут назад, ETEMA сказал:

Но к своему удивлению обнаружил что форматом step передаются только B-Spline-ы.

Я вот прямо сейчас создал новый файл (в Крео, если имеет значение). Нарисовал в нем один сплайн. Сохранил в СТЕП. Открыл этот Степ - там этот сплайн.
СТЕП-файл прилагаю.

 

18 минут назад, ETEMA сказал:

Сейчас я занимаюсь программной генерацией stp-файлов содержащих набор сплайнов.

ЗАЧЕМ?

qethqej.stp

Edited by Ветерок
Link to post
Share on other sites
ETEMA

Да всё верно, файл генерируется. Но он использует описание сплайна по узлам B_SPLINE_CURVE_WITH_KNOTS. И найти узлы b-сплайна проходящего через заданные точки не является тривиальной задачей. И да такое действие я проделал уже много раз и в разных системах моделирования. Все системы при генерации stp используют именно B_SPLINE_CURVE_WITH_KNOTS. Хотя в спецификации step существует такие инструкции как b_spline_curve. Но почему-то не получается создать рабочий файл.

1 час назад, Ветерок сказал:

Я вот прямо сейчас создал новый файл (в Крео, если имеет значение). Нарисовал в нем один сплайн. Сохранил в СТЕП. Открыл этот Степ - там этот сплайн.
СТЕП-файл прилагаю.

 

ЗАЧЕМ?

qethqej.stp 5 \u041a\u0431 · 0 скачиваний

Конечная цель - большая красная кнопка). Текущая задача - автоматизированное построение поверхности на основании расчетов в программном модуле.

Link to post
Share on other sites
Ветерок
19 минут назад, ETEMA сказал:

Текущая задача - автоматизированное построение поверхности на основании расчетов в программном модуле.

По-моему, вы пытаетесь решить задачу "в лоб".

Что является результатом расчета?

В каком софте будет использоваться (или строиться) полученная поверхность?

 

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

 

Более того, иногда имеет очень существенное значение - даже принципиальное значение - метод построения поверхности. Если это кинематически изменяемое по определенному закону сечение, то достаточно описания этой кривой и закона её изменения.

Можно ведь и конус строить по сотне сечений, каждое из которых построено сплайном по сотне точек. А можно просто прокрутить образующую вокруг оси.

Но многие автоматизаторы не понимают таких элементарных вещей. Просто потому что они думают совсем о другом.

Edited by Ветерок
Link to post
Share on other sites
ETEMA

результат расчета - набор точек, через которую должна проходить поверхность. Ну или хотя бы сплайн.

Link to post
Share on other sites
Ветерок
1 минуту назад, ETEMA сказал:

результат расчета - набор точек, через которую должна проходить поверхность

Жуть, конечно, но, если так хочется, то стройте стразу поверхность через эти точки. Без всяких сплайнов. Разберитесь как это построить без участия человека.

 

Но мне доводилось работать с такой таблицей - 26 точек, каждая координата с шестью знаками после запятой. Таким образом была задана дуга окружности, для которой достаточно всего трех значений.

Link to post
Share on other sites
Ветерок
18 минут назад, ETEMA сказал:

результат расчета - набор точек

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

А если выяснится, что и метод построения поверхности достаточно простой (типа поверхности вращения), то всё станет ещё на порядок проще.

 

Допускаю, что для разных случаев могут быть разные условия. Поэтому надо иметь полную картину возможных вариантов.

 

Какого рода поверхности? Лопатки турбин? Крыло самолета?

 

И ещё. Задание поверхности по набору точек - это тянется со времен кульмана. Когда только огромной таблицей с координатами точек можно было описать форму поверхности.

Сейчас, если поверхность "рассчитана", значит есть математическое описание этой поверхности. И лучше всего получить воплощение этой поверхности, используя именно это исходное математическое описание, а не таблицу с точкам, как сто лет назад.

Edited by Ветерок
Link to post
Share on other sites
ETEMA

Сложная кривая произвольной формы или "произвольная кривулина" . Можно сказать в общем виде.

И еще раз: по узлам сплайн получается строить, но он проходит только через первую и последнюю точки, а необходимо чтобы походил через все заданные. Поэтому и обратился на форум. Здесь должны быть люди, которые со step-ом на ты. И смогли бы мне подсказать куда копать. А так-то да - сейчас копаю во всех направлениях и построение поверхностей, и рассматриваю другие форматы обмена данных. Но пока дальше всего в stp продвинулся.

Link to post
Share on other sites
maxx2000

@ETEMA т.е. ты пишешь свой интерпретатор облака точек в поверхность?

Link to post
Share on other sites
Ветерок
1 минуту назад, ETEMA сказал:

по узлам сплайн получается строить

Ну так надо чтобы в той мученической таблице были координаты узлов, а не самих точек. Ведь есть математическое описание поверхности. Пусть его преобразуют в узлы, а не в точки.

Но выше я добавил абзац.

Link to post
Share on other sites
ETEMA
1 минуту назад, maxx2000 сказал:

@ETEMA т.е. ты пишешь свой интерпретатор облака точек в поверхность?

Да, всё верно

Согласен. Это было одной из первых мыслей. И в теме я про это написал. Сложный алгоритм какой-то. Вот думаю может проще можно сделать.

всё в одну кучу написал. Ну вы поняли..)

Link to post
Share on other sites
Ветерок
4 минуты назад, ETEMA сказал:

Сложный алгоритм какой-то.

Так ведь и поверхности сложные. Или простые, типа конуса?

Link to post
Share on other sites
ETEMA

сложная крученая аэродинамическая поверхность с постоянно меняющимся профилем

Link to post
Share on other sites
Ветерок
7 минут назад, ETEMA сказал:

сложная крученая аэродинамическая поверхность с постоянно меняющимся профилем

Думается, Туполв, Сухой и прочие уже давно решили эту задачу. Ещё на ЭВМ с перфокартами. Причем, даже с учетом деформации крыла в воздухе.

 

Разжую ещё. Даже если по сечениям. Каждое сечение лучше строить не по точкам, а по уравнению. Ведь можно получить уравнение каждого сечения.

Edited by Ветерок
Link to post
Share on other sites
maxx2000

@ETEMA может и усложняешь

Скачать видео

 

Link to post
Share on other sites
Kelny
20 минут назад, ETEMA сказал:

Согласен. Это было одной из первых мыслей. И в теме я про это написал. Сложный алгоритм какой-то. Вот думаю может проще можно сделать.

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

 

Думается, что алгоритмы преореобразования облака точек в поверхности ещё не достигло нужных высот, что бы программа сама всё делала хорошо, обычно САПР предлагают такой вариант взаимодействия с участием человека:

Overview_Flowchart.gif

https://help.solidworks.com/2023/russian/solidworks/scanto3d/c_scanto3d_overview.htm

Link to post
Share on other sites
GS

Стандарт STEP 203 -  он же -

ISO 10303-203:2011

Industrial automation systems and integration — Product data representation and exchange — Part 203: Application protocol: Configuration controlled 3D design of mechanical parts and assemblies

на сайте ISO.org - https://www.iso.org/standard/44305.html  имхо далее в - магазин там же за швейц франки (STORE) 

-----

Российский стандарт - ГОСТ Р ИСО 10303-203-2003

Скачать - https://files.stroyinf.ru/Data2/1/4294814/4294814830.pdf

+ на сайте фонда https://docs.cntd.ru/document/1200034272 - в виде текста и таблицы, более читабельно 

-----

+ сопутствующий 242-й

ISO 10303-242:2020

Industrial automation systems and integration — Product data representation and exchange — Part 242: Application protocol: Managed model-based 3D engineering

на сайте ISO.org - https://www.iso.org/standard/66654.html    +магазин

------

Российский стандарт - ГОСТ Р ИСО 10303-242-2019 

Скачать - https://files.stroyinf.ru/Data2/1/4294814/4294814830.pdf

===

Скрытый текст

IGES-ом интересуетесь ? Есть 5.3 и 6?? 

:dirol:

 

Link to post
Share on other sites
ETEMA

Спасибо. Да, построение поверхности по облаку точек в cad  системе - это уже пройденный этап. Хочется же чтобы Большая Красная Кнопка была.) 

Link to post
Share on other sites
Kelny
1 минуту назад, ETEMA сказал:

Да, построение поверхности по облаку точек в cad  системе - это уже пройденный этап. Хочется же чтобы Большая Красная Кнопка была.) 

Ну тогда осталось дело за малым и просто СОЗДАТЬ СВОЙ САПР, который будет в том числе создавать STEP файлы из рассчитанной математической модели.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.




  • Сообщения

    • миталник
      Шпонка, передавая крутящий момент, работает на срез и смятие. Исходя из этого и подбирается (рассчитывается) размер шпонки.
    • AlexKaz
      Под результатами ессно надо понимать экономию времени и денег. Если покупка более дорогой и худшей по качеству услуги выливается в тотальный геморрой и не приводит ни к какой экономии ресурсов - нафиг не нужны такие услуги...
    • AlexKaz
      IMHO, не по Сеньке шапка. Софт англосаксов - это следствие диверсификации их экономик. Софт - это сфера услуг, призванная экономить деньги. А вот деньги зарабатывать можно только на товарном производстве (рынок акций, депозитов, и прочие финансы - это только обслуга реального сектора). Толкая софт впереди паровоза экономики как её драйвер есть риск не добиться ни-че-го, кроме довольных рож софтописателей. Во-первых, эти редиски ломят цену за софт внутри РФ словно уже живут за бугром и получают з.п. как бугром. Во-вторых, рынок РФ они не ставят приоритетным, РФ для них - это 1/50 мирового пирога - так себе полигон для отработки технологий. Соответственно, эти люди не понимают в массе что нужно миру - потому как в РФ экономика откровенно не выдающаяся и всех тонкостей и нужностей силами спецов РФ не создать и не описать. Как следствие, на выходе имеем большой пшик - деньги влиты, а результаты мир не устраивают.   Лунная же миссия и будущий Марс - это резервирование человеческой популяции, и чем раньше сделать бэкап - тем лучше. В глобальном смысле. В локальном же смысле эти проекты есть уйма заказов на железо. А железо можно и без софта создать или использовать примитивные софтины... Чёт Королёв без CAD/CAE обходился (но не без вычислитетелей). Вот ведь странный человек - ни одной CAD-шараге не забашлял...
    • Александр1979
      Такое бывает если фазы на синхронный двигатель перепутаны.
    • lublu_abs
      понял посмотрите для одного диаметра вала b и h   Посмотрите на b и h для одного диаметра вала, например 20 и 45. гост на конические концы валов Гост шпоночные соединения: Как не сложно заметить, размеры отличаются  
    • irbitsky
      Могут быть любыми. Имеется ввиду на условном виде сверху. Это касается узких торцов паза. А вот  Они идентичны    Или я просто не заметил разницы. Укажите конкретно, какие размеры отличаются. Обоими. Могут быть любыми. Имеется ввиду на условном виде сверху. Это касается узких торцов паза. А вот  Они идентичны    Или я просто не заметил разницы. Укажите конкретно, какие размеры отличаются. Обоими.
    • Viktor2004
      Ну, рассказываю все по порядку Купили манагеры глобусный стол но без двигателей. Так дешевле Потом где-то по объявлению купили два движка и привод. И сказали собирать. Тут уже в качестве юмора постили картинку где вместо шин постоянного тока кусок кабеля ВВГ примерно 25 кв мм. Так вот я вместо шин скрутил в несколько слоев кабель ВВГ 2,5 кв мм. Оптические пачкорды у меня были, а вот соединители CXA2A --- CXA2B пришлось поискать. Вроде в ЧИП и ДИПе они на сайте есть, но в реалии не оказалось. С трудом достали. Там же достали разъемы кабелей 4-5 осей. Осталось сварганить кабели. Купили контрольный электрический кабель. Спаяли, подключили, а он не работает. SV0368 Заземление эффекта не дало. Поехал искать витую пару, да такую, что бы каждая жила была многожильной. Нашел на рынке. Витую пару подключил только на линию данных. 5-6 контакт энколера. Остальные провода оставил от контрольного кабеля. У него сечение побольше. Ошибка SV0368 ушла. Затем оказалось что цоколевка разъемов энкодера 4 и 5 оси разная. Конечно на двигателях и на приводе она одинаковая, а на промежуточном разъеме оси она разная. Пришлось перепаивать. Подключил. Тут оказалось что энкодер одного двигателя не обнуляется и не отслеживает положение вала. Менял местами двигатели, отдельно энкодеры, не работает именно тот энкодер. Стал пытаться запускать все по очереди. Забил параметры как указал выше и стал проверять сначала на 4-й оси, потом на 5-й. Поочередно отключая то одну, то другую. При движении от маховичка вначале ось страгивается с места, потом начинает гудеть, а двигатель греться. Иногда дергается так что аж подпрыгивает. На обеих каналах ведет себя одинаково что один, что другой движок, когда исправный энкодер на них вешаю.    
    • lem_on
      че за бред, сам сначала влез, а потом я ему пишу оказывается.
    • статист
      Никогда этой версии не ставил. Попробуйте 21 версию поставить. С ней таких проблем не наблюдалось
    • Maik812
      Я переименования файла с разными свойствами решал так.  Все го то сделать нужно плагин который писать будет через апи свойство в фаил. На прямую он пишет но ссылка то на имя старое. Создать библиотеку с именами в файлах со свойствами различными в любом порядке и тд за пару кликов.. На данном фото переименовании по габаритам и по имени папки где лежат файлы. Все сохраняется по шаблону и просто выбирается.
×
×
  • Create New...