Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Спираль
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Математика и Физика
Vokchap
Построил спираль, намотанную на тор.

t - переменная построения, меняется от 0 до 1
R1 - радиус спирали
R2 - радиус тора
N - количество витков







Нажмите для просмотра прикрепленного файла

Спираль круглого провиля, нужно получить профиль, близкий к прямоугольному. Идеально было бы контролировать радиус скругления на углах прямоугольника.
Самурай
Цитата(Vokchap @ Dec 19 2008, 23:22) *
Построил спираль, намотанную на тор.

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


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

Вот например что получается из круга радиусом R=10 для параметра m от 1 до 10 (круг зажимается в пределах +-2 по осям x и y):

xc = 2*atan[(10*cos(2*pi*t))/m] / atan(10/m);
yc = 2*atan[(10*sin(2*pi*t))/m] / atan(10/m);

Нажмите для просмотра прикрепленного файла

Аналогично для трехмерного тора получаем следующие уравнения (формулы получены быстрым методом "научного тыка", так что, могут быть некоторые "неправильности" smile.gif ):

x = sin(2*pi*t) * [R1n*atan(R1*cos(2*pi*N*t)/m)/atan(R1/m) + R2];
y = cos(2*pi*t) * [R1n*atan(R1*cos(2*pi*N*t)/m)/atan(R1/m) + R2];
z = R1n*atan[R1*sin(2*pi*N*t)/m] / atan(R1/m);

Конечно, это наверно не самый идеальный вариант, но вроде немного похоже на то, что требуетсяsmile.gif
Tanya
Цитата(Vokchap @ Dec 19 2008, 23:22) *
Построил спираль, намотанную на тор.

t - переменная построения, меняется от 0 до 1
R1 - радиус спирали
R2 - радиус тора
N - количество витков








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

Непонятно, что Вы хотите получить.. и зачем.
Vokchap
Цитата(Самурай @ Dec 20 2008, 01:46) *
Конечно, это наверно не самый идеальный вариант, но вроде немного похоже на то, что требуетсяsmile.gif

Спасибо, то, что нужно, в принципе получается.

Нажмите для просмотра прикрепленного файла

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

Нажмите для просмотра прикрепленного файла

Пытался разворачивать спираль вокруг z через разложение меандра. Если не пытаться получить высокую "прямоугольность" профиля, то получается удовлетворительно, но с кол-вом членов в разложении более 100. При приближении к идеальному прямоугольнику спираль начинает сильно осциллировать на углах. Кол-во членов в ряде ограничено, в этом проблема.

Нажмите для просмотра прикрепленного файлаНажмите для просмотра прикрепленного файла


Оптимально конечно точными выражениями описать. Самурай, по вашему рецепту хороший результат получается, как бы еще немного подогнуть вертикальные и радиальные сегменты у витка по направлению обхода, чтобы спираль была более плавная при малых радиусах на углах? Посоветуйте что ещё попробовать, пожалуйста. smile.gif


Цитата(Tanya @ Dec 20 2008, 14:25) *
Непонятно, что Вы хотите получить.. и зачем.

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

Нажмите для просмотра прикрепленного файлаНажмите для просмотра прикрепленного файла
Tanya
Цитата(Vokchap @ Dec 21 2008, 01:26) *
И радиуса в углах хорошо регулируются. Но при сильном уменьшении радиуса собственный поворот витка приходится полностью на углы профиля, т.к. внутренние и внешние сегменты витка становятся почти вертикальными, а верхние и нижние почти радиальными. Немного уродует, на картинке видно.


Пытался разворачивать спираль вокруг z через разложение меандра. Если не пытаться получить высокую "прямоугольность" профиля, то получается удовлетворительно, но с кол-вом членов в разложении более 100. При приближении к идеальному прямоугольнику спираль начинает сильно осциллировать на углах. Кол-во членов в ряде ограничено, в этом проблема.

Оптимально конечно точными выражениями описать. Самурай, по вашему рецепту хороший результат получается, как бы еще немного подогнуть вертикальные и радиальные сегменты у витка по направлению обхода, чтобы спираль была более плавная при малых радиусах на углах? Посоветуйте что ещё попробовать, пожалуйста. smile.gif



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

Почти догадалась (Вам нужно аналитическое выражение в декартовых координатах?), но не постеснялась спросить...
А почему бы Вам не записать сначала... Типа - движение угол=константа*время, движение по ближней стенке , движение по верхней, по задней, по нижней. За это время угол должен повернуться на 360/число витков. Это не даст, конечно, аналитического выражения, но кусочки даст...
Самурай
Цитата(Vokchap @ Dec 21 2008, 01:26) *
Оптимально конечно точными выражениями описать. Самурай, по вашему рецепту хороший результат получается, как бы еще немного подогнуть вертикальные и радиальные сегменты у витка по направлению обхода, чтобы спираль была более плавная при малых радиусах на углах? Посоветуйте что ещё попробовать, пожалуйста. smile.gif


Математически точное уравнение тора, которое позволило бы однозначно и независимо задавать как скругление профиля, так и углы радиальных и вертикальных сегментов витка, мне пока, к сожалению, получить не удалось, на волшебника я только учусьsmile.gif.

На самом деле, если в том методе что я предложил выше управлять степенью "арктангенциальности" по оси z независимо от осей x и y, то результат немного улучшаетсяsmile.gif.

Но наверно лучший вариант - это использовать разложение уравнений профиля тора в ряд Фурье. Только я использовал не меандр, а трапециидальную функцию по всем трем координатам. Осцилляции в точках разрыва в какой-то мере удается подавить, используя оконную функцию Хэмминга. Недостаток метода в том, что нет (или я не увидел) четкой взаимосвязи между количеством членов разложения и степени "трапециидальности" с получающимся результатом, все приходиться подбирать на "глаз" smile.gif. И, к сожалению, отсутствует возможность плавного регулирования углов сегментов витка, т.е. или строго радиальные по координате x(y), или вертикальные по координате z smile.gif.

Я прикрепил простенький скрипт для MatLabа и некоторое образцы тора для разных параметров.

Число членов разложения: 5,
коэф. задающие "трапециидальность" по осям x и y: pi/3, по оси z: pi/3
Нажмите для просмотра прикрепленного файла

Число членов разложения: 15,
коэф. задающие "трапециидальность" по осям x и y: pi/3, по оси z: pi/3
Нажмите для просмотра прикрепленного файла

Число членов разложения: 15,
коэф. задающие "трапециидальность" по осям x и y: pi/4, по оси z: pi/3
Нажмите для просмотра прикрепленного файла

Число членов разложения: 15,
коэф. задающие "трапециидальность" по осям x и y: pi/6, по оси z: pi/3
Нажмите для просмотра прикрепленного файла

Число членов разложения: 15,
коэф. задающие "трапециидальность" по осям x и y: pi/10, по оси z: pi/3
Нажмите для просмотра прикрепленного файла

Число членов разложения: 15,
коэф. задающие "трапециидальность" по осям x и y: pi/25, по оси z: pi/2.5
Нажмите для просмотра прикрепленного файла

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

А потом, например, перейти к прямоугольной системе координат. И такой переход делается, если мне не изменяет память, при помощи определителя Якоби.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.