Создать параметризованные сценарии Phython в космическом корабле для создания профилей распределительного вала

Join the forum for Designers!

Your expertise is vital to the community. Join us and contribute your knowledge!

Join the Forum Now

Share, learn and grow with the best professionals in the industry.


Краткое содержание

Цель этого блога в два раза. Во -первых, чтобы успешно автоматизировать генерацию профиля доли распределительного вала, используя сценарии Python в ANSYS Spaceclaim. Во -вторых, научиться избегать определенных ловушек, связанных с сценариями Python в ANSYS Spaceclaim.

Подробности

Теперь давайте поговорим о «почему», которое нужно будет автоматизировать генерацию доли распределительного вала?

В пределах 4-XXINGENTING INTERNINGENS Внутренний сгорание выступает за открытие и закрытие впускного и выпускного клапана по сравнению с вращением коленчатого вала двигателя. Распредвой вал является частью «клапана», которая представляет собой систему компонентов, которая определяет, когда эти клапаны открываются и закрываются, как далеко они открываются, и скорость, с которой этот клапан открывается и закрывается. В зависимости от конфигурации Valvetrain, могут быть связаны разные компоненты, и все эти компоненты должны быть оценены вместе, чтобы понять детали события времени клапана. Создание профиля доли распределительного вала не является полностью произвольным, а иногда может быть довольно сложным. Автоматизация процесса генерации этого профиля позволяет впоследствии оценивать событие времени времени клапана более ускорительно во время процесса проектирования клапана.

Что мы будем делать сейчас?

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

Далее мы «попытаемся» использовать тот же код в новом случае космического корабля, чтобы узнать, какие препятствия представляют себя, и предписывают средства для этих препятствий. Затем успешно используйте сценарии Python, чтобы воспроизвести нашу первоначально спроектированную долю распределительного вала.

Наконец, мы параметризуем сценарии Python, чтобы он мог быстро генерировать новые вариации этого профиля.

Наш профиль распределительного вала

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

Мы начнем с базового круга 38 мм, и носовой круг 26 мм, а центр расположен на 14 мм над центром базового круга. Нашим первым действием будет открытие космического корабля, а затем получить доступ к интерфейсу сценариев.

По умолчанию режим «записи» будет активным.

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

В частности, мы видим, что была определена плоскость эскиза, тогда был сгенерирован круг, тогда было сгенерировано ограничение. Давайте скопируем этот же код Python в новый экземпляр космического корабля и узнаем, сможем ли мы успешно запустить его?

Ответ «нет»Полем Почему? Из -за того, как обычно выбирает плоскость эскиза. Давайте закроем этот экземпляр космического корабля и откроем новый экземпляр. Мы внесем изменения в то, как мы записываем наш сценарий, генерируем новый круг и повторим наш тест.

Во -первых, мы активируем вариант записи «словес».

Далее мы изменим, как выбор записывается из «Smart Variable» на «Ray».

Наш записанный сценарий после добавления нашего базового круга теперь выглядит по -разному.

Управление этим новым сценарием в новом экземпляре космического корабля Теперь успешно генерирует наш базовый круг!

Как насчет других действий, добавляя носовой круг и две касательные линии?

Успех! Копирование этого нового сценария в новый экземпляр космического корабля повторяет нашу геометрию. Все идет нормально. Однако мы столкнемся с проблемами, если попытаемся параметризовать нашу геометрию. Я изменю диаметр круга носа с 26 мм до 20 мм, чтобы продемонстрировать.

Мы столкнулись с этими проблемами, связанными с «Выбор» Объекты в нашей модели. Оказывается, что выбор будет нашей самой большой проблемой. Поэтому я предлагаю, чтобы мы как можно больше уменьшили «выборы» для этой геометрии. Следует избегать выбора таких предметов, как линии и круги. Для этого мы создадим геометрию различными способами. Вместо того, чтобы добавлять круги и делать касательные линии для их подключения, мы создадим дуги, затем подключим концы дуги от основания к носу. Этот метод требует, чтобы мы должны были быть гораздо более вдумчивыми в построении нашего сценария.

Обзор блоков сценариев

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

# Эскет -Круг

Origin = point2d.create (мм (0), мм (0))

Результат = SketchCircle.Create (Origin, MM (19))

BASESEL = SELECTIONPOINT.CREATE (getRootPart (). DatumPlanes[0].Curves[0].Getchildren[ICurvePoint]()[0])

targetsel = selectionpoint.create (getRootpart (). DatumPlanes[0].Getchildren[IDatumLine]()[0])

result = constraint.createcoincident (basesel, targetsel)

# Endblock

Мы видим, что определены две точки: «Происхождение» и «ММ (19)». Следовательно, функция «sketchcircle.create» требует определения происхождения и радиуса. Все остальное в этом блоке связано с Выбор предмет, который мы создали, и ограничивание это в самолет. Я предложу, чтобы этот последний раздел не требовался успешно генерировать нашу геометрию. Поэтому я рекомендую удалить эти лишние команды и просто запустить следующий сценарий.

# Эскет -Круг

Origin = point2d.create (мм (0), мм (0))

Результат = SketchCircle.Create (Origin, MM (19))

# Endblock

И … это работает!

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

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

Используя эти параметры, будет сгенерирована следующая геометрия.

Загрузите этот скрипт И начните исследовать дизайн профиля распределительного вала … и узнайте о практических сценариях Python для космического корабля, пока вы в этом! 😊


Join the forum for Designers!

Your expertise is vital to the community. Join us and contribute your knowledge!

Join the Forum Now

Share, learn and grow with the best professionals in the industry.