Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.26;
Скачать: CL | DM;

Вниз

Расчет траектории при движении на орбите   Найти похожие ветки 

 
Orbital   (2004-08-17 13:49) [0]

Есть корабль, который находится в поле притяжения планеты. Известна сила притяжения и многие другие параметры. Как эффективней перейти на другую орбиту? Может кто ссылки посоветует?


 
Рамиль ©   (2004-08-17 13:59) [1]

А с решением системы дифуравнений в частных производных справишься?


 
DSA ©   (2004-08-17 14:23) [2]

Тяжелый случай. А тебе зачем это надо?


 
марсианин ©   (2004-08-17 14:48) [3]

тебе прям параметры орбиты нужны (что-то типа уравнений траектории)? или чтоб он просто вращался, моделировать полет не пойдет?

второе сделать проще. а первое ищи в гугле


 
NailMan ©   (2004-08-17 15:32) [4]

Вообще-то тут используются законы движения Кеплера и Ньютона. Нафик дифуры...

---
WBR, NailMan aka 2:5020/3337.13


 
Orbital   (2004-08-18 15:44) [5]

У меня есть спутник - движется по орбите, я могу придать ему ускорение в любом направлении. Изначально он стабилизирован - движется по орбите. Мне нужно перевести его на другую орбиту так, чтобы он потом там и остался.


 
марсианин ©   (2004-08-18 18:03) [6]

ага, тебе нужно понять в каком направлении работать двигателями, чтоб занять другую орбиту?

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

планета у тебя там 1?


 
}{enon ©   (2004-08-18 18:23) [7]

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


 
Orbital   (2004-08-19 11:11) [8]

[6] Да. Уравнения все есть. Мне нужно стабилизировать скорость. Т.е. я изменил расстояние до центры к звезде и мне нужно стабилизировать результирующую скорость так, чтобы я остался на этой орбите. Планета одна.
[7] Не понял, лучше объясни на пальцах. Орбита может быть любой формы, это зависит от того куда было приложено ускорение и на каком расстояние я от планеты.

Формулы для вычисления компонент:
d2:= x[i]*x[i]+y[i]*y[i];
d:= sqrt(d2);
u:= u + accel * cos(angle[i]);
v:= v + accel * sin(angle[i]);
u:= u - G*x[i]/d/d2;
v:= v - G*y[i]/d/d2;


u - компонента x
v - компонента y
angle - угол приложение ускорения равного accel
Вычисление перемещения в след точку:
x:= x + u;
y:= y + v;


Например, стабильное состояние:
x:=18, y:= 0, u:= 0, v:= -0,33


 
Думкин ©   (2004-08-19 11:36) [9]

1. Есть орбита.
2. Для нее есть энергия = кинетическая + потенциальня = const(можно посчитать не только для кругов, но и для других кривых второго порядка - в любом учебнике по аналитической механике).
3. Следовательно в любой точке орбиты мы можем посчитать скорость движения.
4. Когда ты выйдешь на нужную тебе орбиту - то в этой точке посчитай нужную скорость(скаляр) и направь ее по касательной к орбите.
5. все.


 
Думкин ©   (2004-08-19 11:39) [10]

> Когда ты выйдешь на нужную тебе орбиту

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


 
Orbital   (2004-08-19 12:15) [11]

Ускорение мгновенные, но есть ограничение - предел ускорения, то есть за единицу времени я не могу ускорится более чем на MAX_ACC


 
Orbital   (2004-08-19 12:16) [12]

Забыл в [8] const G=2;


 
Думкин ©   (2004-08-19 12:19) [13]

Мгновеные - я имел ввиду бесконечные. :) описАлся.


 
Orbital   (2004-08-19 12:37) [14]

[9] Допустим я совершил переход, я передал ускорение в направление к центру звезды. Как тогда можно стабилизировать скорость под орбиту не убирая это ускорение? Ведь если считать через потенциальную и кин. энергию по твоему методу, то не учитывается это ускорение. Еще следует помнить, что движение происходит по инерции.


 
Думкин ©   (2004-08-19 13:07) [15]

Э.... тебе тогда еще физику подучить надо. Какое ускорение?
Трудность в том чтобы удержаться на орбите. Для этого надо чтобы скорость соответствовала этой орбите в данной точке. Как только это произойдет - ты спокойно выключаешь все двигатели и летишь по этой самой орбите.
Но выйти так - очень трудно. Если втупую подлететь, то скорость не будет соответствовать - ни по величине, ни по направлению. Надо будет подправлять ее, но при этом ты будешь слетать с этой орбиты и опять подлетать при этом все это будет меняться.
Задача не так проста. Надо некоторое время подумать. Или поискать что-нибудь.
Проблема в центре притягивающем и ограничении на ускорение. Если без центра - то можно задать режим, чтобы при переходе от одной точки к другой изменить вектор скорости(величина и направление). Но так - .... :(


 
Orbital   (2004-08-19 13:13) [16]

Давайте разберем поэтапно.
1. Я нахожусь в двухмерном пространстве. Мои координаты - (18, 0). Центр звезды - (0, 0).
2. На меня действует сила притяжения равная G/d^2, где d - расстояние до центра звезды. Также у меня есть  есть своя собственная скорость направленная по касательной к орбите и равная корню G/d. Т.е. скорость стабилизированы и выполняется закон a_цс = V^2 / r, то есть движение происходит по окружности. Т.е. моя скорость стабилизирована так, что я я просто вращаюсь по орбите. При этом компоненты в начальной точке будут: kx = 0, ky = 0,333
3. Допустим я захотел перелететь на другую орбиту, дал газу.
4. Компоненты изменились: kx = kx + мощность*cos(направление),
ky = ky + мощность*sin(направление)
5. Я нахожусь в какой-то точке пространства и знаю компоненты скорости и свои координаты. Возникает вопрос.
6. Как стабилизироваться? Т.е. требуется сделать так, чтобы точка, в которой я нахожусь, принадлежала новой орбите (окружность). Т.е. я должен еще куда-то добавить ускорение, чтобы я смог летать вокруг планеты по кругу.
7. За раз я могу действовать только в одном направлении (ускоряться).


 
Думкин ©   (2004-08-19 13:44) [17]

> kx = kx + мощность*cos(направление),
> ky = ky + мощность*sin(направление)

А где сила притяжения?
G/d^2 - не сила. Или что такое G?


 
Orbital   (2004-08-19 13:51) [18]

Да, каждый турн действует сила, см. выше:
u:= u - G*x[i]/d/d2;
v:= v - G*y[i]/d/d2;


ну или формула принимает вид:
kx = kx + мощность*cos(направление) - G*x/d^3
ky = ky + мощность*sin(направление) - G*y/d^3

Сила тяжести - G/d^2


 
Думкин ©   (2004-08-19 13:56) [19]

Сила тяжести - m1*m2*G/d^2 - модуль.
Это понятно - но на пальцах не решишь.


 
Orbital   (2004-08-19 16:04) [20]

массы тут не учитываются, это модель :), только гимора это не отбавляет :(


 
Думкин ©   (2004-08-19 20:35) [21]

0. Нужно найти именно на окружности. - для простоты.
1. Лучше перейти к полярным координатам.
2. При движении по орбите радиальная составляющая скорости 0, для каждой орбиты - своя угловая скорость.
3. Скорости Vw(t) и Vr(t).
4. Ускорение из двух составляющих - угловая и радиальная - AW(t) и Ar(t).
5. AW = Aw1+Aw2. Aw1=Vr^2/R
6. Скорость на первом радиусе V1 на втором V2. Ускоряемся время T. Начальный момент 0. Первую космическую для радиуса R обозначим VR.
7. Тогда получаем следующие ограничения:

а. Интеграл от 0 до Т от Aw2(t) = V2-V1
б. Интеграл от 0 до Т от Ar(t) = 0
в. Интеграл от 0 до Т от Vr(t) = 0
г. sqrt((Aw2+(VR^2-Vr^2)/R)^2+Ar^2) < MAX_ACC

Исходя из этого и надо подбирать Aw,Ar,T. Решений много.

Возможно ошибаюсь, надо будет еще посмотреть более детально.


 
Думкин ©   (2004-08-19 20:40) [22]

Сорри, вечер - исправление:
4. Ускорение из двух составляющих - угловая и радиальная - Aw(t) и AR(t).
5. AR = Ar1+Ar2. Ar1=Vr^2/R

б. Интеграл от 0 до Т от Ar2(t) = 0
г. sqrt((Ar2+(VR^2-Vr^2)/R)^2+Aw^2) < MAX_ACC


 
марсианин ©   (2004-08-20 14:03) [23]

2[21] Думкин ©   (19.08.04 20:35)

зачем же так сложно? не, возможно все это правильно, но я просто не понимаю зачем?


Трудность в том чтобы удержаться на орбите. Для этого надо чтобы скорость соответствовала этой орбите в данной точке. Как только это произойдет - ты спокойно выключаешь все двигатели и летишь по этой самой орбите.


разве это так? т.е ч-з любую точку можно пролетать только с 1 скоростью (по орбите)?

2Orbital

что значит ДРУГАЯ орбтита? та, которую ты хочешь?

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

любую орбиту можно охарактеризовать
а) общей энергией (потенц + кинетич), как указали в [9] Думкин ©   (19.08.04 11:36)

б) моментом (вектором ес-но) орбиты.. т.е вообще говоря напрвлением куда вращаемся..

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

если знаешь всякие там апогеи и перигеи (их высоты и положение), то и энергию и момент можно вычислить...

кстати, что значит, что орбита устойчива?

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

б) оно не врежется в Землю. если радиус нашей планеты устремить к 0, то в нее никогда ничего не врежется и любая орбита, удовлетворяющая п. а) будет устойчива.

и еще в) если мах скорость на орбите не превысит скорсть света.. но это совсем другая история...


 
марсианин ©   (2004-08-20 14:07) [24]

литературный талант у меня, конечно, "хорош".. :)  если что не понятно, спрашивайте -- уточню)


 
Думкин ©   (2004-08-20 14:28) [25]

> [23] марсианин ©   (20.08.04 14:03)
> разве это так? т.е ч-з любую точку можно пролетать только с 1 скоростью (по орбите

Не совсем понял. но попробую.

Если мы в свободном полете - то мы летим по орбите в каждой точке которой имеем вполне определенное значение. Если вы имеете в виду скорсоть не только как модуль, но и вектор, то да - скорость в данной точке(при выключенном двигетеле) - полностью определяет траекторию полета. При этом это могут быть траектории:
1. Эллипс.
2. Парабола
3. Гипербола.
Рассматриваем движения без столкновения. Форма определяется именно:
общей энергией (потенц + кинетич).

И почему сложно? Рассматриваем движение в одной плоскости. Имеем 2 окружности - надо перейти с одной на другую. Если просто изменить характеристики - то нет гарантии что вы попадете на окружность - вы можете начать двигаться по эллипсу.


 
Orbital   (2004-08-21 23:12) [26]

Мдя, запутываться начинаю, видать придется что-от попроще делать :) Наверно, остановлюсь на просчете нескольких турнов вперед (рекурсия) и стабилизации на каждом шаге (+просчет), т.е. каждый турн я буду получается выравнивать скорость, выбирая наиболее пригодный вариант из тех, которые найдены. Пробный тест дает результат - 3 хода на стабилизацию. Конечно, хотелось маленько другого - задал орбиту, посчитал и там очутился :), но видать не выйдет.


 
Думкин ©   (2004-08-22 05:53) [27]

> [26] Orbital   (21.08.04 23:12)

Почему не выйдет? Все описано. Глаза боятся - руки делают.



Страницы: 1 вся ветка

Текущий архив: 2004.12.26;
Скачать: CL | DM;

Наверх




Память: 0.55 MB
Время: 0.038 c
14-1102339335
Flying Home
2004-12-06 16:22
2004.12.26
Что-то непонятное для меня в исходниках Indy


1-1102692366
hgd
2004-12-10 18:26
2004.12.26
Скажите про GPS


1-1103109012
Бульбаш
2004-12-15 14:10
2004.12.26
Принудительное закрытие узла в TreeView


14-1102490694
AlexG
2004-12-08 10:24
2004.12.26
Важно ваше мнение!


1-1102669656
korvin
2004-12-10 12:07
2004.12.26
Форма не держится "сверху"