Elite Games - Свобода среди звезд!
.
  » РН "Союз ФГ/У" | страница 1
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 1 из 10
На страницу: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10  След. | Все страницы
Поиск в этой теме:
Канал Orbiter: «РН "Союз ФГ/У"»
Thorton
 85 EGP

Рейтинг канала: 3(36)
Репутация: 12
Сообщения: 696
Откуда: Томск
Зарегистрирован: 15.05.2006
Всем привет!
Готова первая публичная бета первого расширения к "Семерке". А именно - современные версии РН «Союз» в вариантах У и ФГ.
Это совместный проект с Андреем (Igel).

Скачать можно отсюда: http://members.shaw.ca/atil12/Orbiter/Soyuz.0.3b.100204.zip

Необходимые аддоны:
1. Ранние «Семерки»: http://www.orbithangar.com/searchid.php?ID=4419
2. КК «Союз» и «Прогресс» (временно выделены в отдельный пакет для этапа тестирования Союзов): http://members.shaw.ca/atil12/Orbiter/SoyuzTMAProgress.1.1.100204.zip


Что нового:
- полностью обновлены все меши ракеты и стола
- автопилот Блока И с хорошей точностью по наклонению
- корректная циклограмма полета, соответствующая современному Союзу
- поддержка «фич» из ранних «Семерок», таких как запись треков в кмл-файл, передача звуков между изделиями, аварии (на Блоке И не доделаны пока), дренажи и т.д.

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

На этапе бета-тестирования сценарии пакета поставляются во временной директории _Soyuz_SZ.
На текущий момент доступно 2 сценария:
Soyuz FG (TMA) - пилотируемая версия РН с КК «Союз ТМА»
Soyuz U (Progress) – РН с КК «Прогресс М1»

Веселых полетов!
    Добавлено: 12:46 05-02-2010   
Eraser_stp
 60 EGP

Рейтинг канала: 1(9)
Репутация: 2
Сообщения: 177

Зарегистрирован: 14.06.2007
Здорово! Качаю. Аж в пляс тянет...
    Добавлено: 16:05 05-02-2010   
Eraser_stp
 60 EGP

Рейтинг канала: 1(9)
Репутация: 2
Сообщения: 177

Зарегистрирован: 14.06.2007
Несколько интересных эффектов связанных с частицами.
1) При нормальном запуске газы от двигателя расползаются по кругу, при аварийном - в три струи, как это сделано на ранних Семерках. Можно узнать об аварии уже во время запуска двигателя. Улыбка
2) Сперва я сломал систему управления, а потом, уже при maxQ поджог двигатель. Улыбка Дым от горящего двигателя и инверсионный след шли в разные стороны, по моему так быть не может.
А так, очень круто. Особенно сброс САС, не могу дождаться когда увижу её в работе.
З.Ы. Вот бы Курс смоделировать.

Последний раз редактировалось: Eraser_stp (08:58 06-02-2010), всего редактировалось 1 раз
    Добавлено: 08:56 06-02-2010   
Eraser_stp
 60 EGP

Рейтинг канала: 1(9)
Репутация: 2
Сообщения: 177

Зарегистрирован: 14.06.2007
Похоже разница в газах все-таки не связана с аварийностью. Осталось понять с чем она связана.
Ещё вопрос к igel'у: когда разваливается пакет семерки, то баланс ведь сбивается? Одни боковые блоки уже отпали, а другие ещё передают нагрузку на ЦБ. Тогда ракету по идее должно резко заворачивать. Ну это так, размышления - если сочтешь мелочными придирками, то ладно. Улыбка

Последний раз редактировалось: Eraser_stp (10:42 06-02-2010), всего редактировалось 1 раз
    Добавлено: 10:28 06-02-2010   
Thorton
 85 EGP

Рейтинг канала: 3(36)
Репутация: 12
Сообщения: 696
Откуда: Томск
Зарегистрирован: 15.05.2006
1) С дымами там хитрее, этот глюк еще от Семерки переехал, стол ведь её используется. Я у себя например не вижу четкой зависимости от аварии и вида дымов. У меня и при нормальном полете получается разброс в дымах, когда как.
2) Специально ломал Улыбка или оно само? По идее аварии должны довольно редко случаться. Сдымом посмотреть надо, но низ от Семерки почти полностью переехал в Союз.

САС скоро не обещаем, но впланах есть Подмигиваю

З.Ы. Это да, Курс тоже бы очень хотелось, но сложен он очень и его пока в планах нет, даже отдаленных. Тут уже надо привлекать тяжелую артиллерию, Романа (Bloodest) например.
    Добавлено: 10:46 06-02-2010   
Eraser_stp
 60 EGP

Рейтинг канала: 1(9)
Репутация: 2
Сообщения: 177

Зарегистрирован: 14.06.2007
Thorton :
2) Специально ломал Улыбка или оно само? По идее аварии должны довольно редко случаться. Сдымом посмотреть надо, но низ от Семерки почти полностью переехал в Союз.

Сделал отдельный сценарий, в котором выставил RELIABILITY в ноль на всех блоках. Множественные отказы это так увлекательно. Гы-гы Над дымом я ещё понаблюдаю, может и не глюк это вовсе, а наоборот суровая реальность.
Thorton :

З.Ы. Это да, Курс тоже бы очень хотелось, но сложен он очень и его пока в планах нет, даже отдаленных. Тут уже надо привлекать тяжелую артиллерию, Романа (Bloodest) например.

Я Гугл уже не в первый раз пытаю в поисках алгоритма или хотя бы схемы работы Курса, но пока безуспешно, везде только общие фразы. Рыдания.
    Добавлено: 11:07 06-02-2010   
Thorton
 85 EGP

Рейтинг канала: 3(36)
Репутация: 12
Сообщения: 696
Откуда: Томск
Зарегистрирован: 15.05.2006
Eraser_stp :

Сделал отдельный сценарий, в котором выставил RELIABILITY в ноль на всех блоках. Множественные отказы это так увлекательно. Гы-гы Над дымом я ещё понаблюдаю, может и не глюк это вовсе, а наоборот суровая реальность.


До орбиты то хоть раз добрался? Ой, не могу!..
    Добавлено: 11:23 06-02-2010   
Eraser_stp
 60 EGP

Рейтинг канала: 1(9)
Репутация: 2
Сообщения: 177

Зарегистрирован: 14.06.2007
Thorton :
До орбиты то хоть раз добрался? Ой, не могу!..

Нет конечно. Улыбка Правда Союзу один разок удалось успеть открыть солнечные батареи. Супер! Но счастье было так недолго... Гы-гы
    Добавлено: 11:34 06-02-2010   
Bloodest
 151 EGP


Рейтинг канала: 3(40)
Репутация: 18
Сообщения: 897
Откуда: Питерские мы
Зарегистрирован: 07.10.2004
Eraser_stp :
Я Гугл уже не в первый раз пытаю в поисках алгоритма или хотя бы схемы работы Курса, но пока безуспешно, везде только общие фразы. Рыдания.

Сайт разаработчика
http://www.niitp.ru/directions/02/info/

Цитата:
... многопараметрические высокоточные измерительные системы, позволяющие определять вектор взаимного состояния КА.


Реализуется в орбитере парой встроенных функций. Ну а затем, например, алгоритм "свободных траекторий".
//Линейное сближение методом свободных траекторий
Код:
int M1::DokingRUL(char * targetN, VECTOR3 & offset,double simdt)
{
//targetN - имя пассивного корабля
//offset - вектор "конечного положения относительно внутренней системы
// координат пассивного корабля (стыковочного узла _V(0,0,-.566))
//Неявные аргументы-переменные (через класс)
//Tc - время сближения
//Phase - фаза (2) - висение в точке offset.

   OBJHANDLE target  = oapiGetVesselByName (targetN);
   VESSEL    * tVESSEL = oapiGetVesselInterface (target);
   VECTOR3 tPointGlobal;  tVESSEL->Local2Global(_V(0,0,-.566)+offset,tPointGlobal);
   VECTOR3 tVelosGlobal;  tVESSEL->GetGlobalVel(tVelosGlobal);
/////////////////////////////////////////////////////////////////
   OBJHANDLE  hEarth = oapiGetGbodyByName ("Earth");
   ORBITPARAM op;
   ELEMENTS el;
   tVESSEL->GetElements (hEarth,el,&op);
//Угловая скорость вращения системы траекторий
   double Om = 2*PI/op.T;

/////////////////////////////////////////////////////////////////////////
   VECTOR3 cPointGlobal;   Local2Global(_V(0,0, .918),cPointGlobal);
   VECTOR3 cVelosGlobal;   GetGlobalVel(cVelosGlobal);
///////////////////////////////////////////////////////////////////////////
   VECTOR3 ePointGlobal;   oapiGetGlobalPos (hEarth, &ePointGlobal);
   VECTOR3 eVelosGlobal;   oapiGetGlobalVel (hEarth, &eVelosGlobal);

///////////////////////////////////////////////////////////////////////////
   VECTOR3 tNorm = Normalize(tPointGlobal-ePointGlobal);
   VECTOR3 tZ    = Normalize(crossp(tNorm,tVelosGlobal-eVelosGlobal));
   VECTOR3 tTan  = Normalize(crossp(tZ,tNorm));
   VECTOR3 P0 = cPointGlobal-tPointGlobal;
   VECTOR3 V0 = cVelosGlobal-tVelosGlobal;
   VECTOR3 P0o,Vto,V;
//// Параметры относительного движения
   P0o.y = dotp(P0,tNorm);
   P0o.x = dotp(P0,tTan);
   P0o.z = dotp(P0,tZ);
   V.y   = dotp(V0,tNorm);
   V.x   = dotp(V0,tTan);
   V.z   = dotp(V0,tZ);
////
   double L = length(P0);
   double Vs = dotp(V0,P0)/L;
   if (phase == 2) Tc = 1;
   else if(L>1e3) Tc =  L/10;
   else Tc =L/(L/1000*10+3);

//Метод свободных траекторий   
   double sinOT = sin(Om*Tc);
   double cosOT = cos(Om*Tc);
   double Zn =  3*Om*Tc*sinOT-8*(1-cosOT);
   Vto.x = Om*(P0o.x*sinOT+P0o.y*(6*Om*Tc*sinOT-14*(1-cosOT)))/Zn;
   Vto.y = Om*(2*P0o.x*(1-cosOT)+P0o.y*(4*sinOT-3*Om*Tc*cosOT))/Zn;
   Vto.z = -Om*P0o.z*cosOT/sinOT;
   VECTOR3 Vto1 = Vto - V;    
   VECTOR3 VT = tNorm*Vto1.y + tTan*Vto1.x + tZ*Vto1.z;
   



////Реакция двигателей
   VECTOR3 VTl;
   Global2Local(cPointGlobal+VT,VTl);
   double F = length(VTl)/(simdt*3.)*GetMass();
   if (F > 50 ) F=50;
   VECTOR3 B = Normalize(VTl)*F/50;
   SetAttitudeLinLevel (B);


   if(oapiGetFocusInterface () == this)
      {
         
         sprintf(oapiDebugString(),"S7F%d %.3f  Vt%.2f  eVt %.3f  Tc %.1f ||"
            "  %.3f %.3f %.3f", phase,
            length(P0)/1000,length(Vto),length(VTl), Tc,
            GetPropellantMass (ph_satelite_m),
            GetPropellantMass (ph_satelite_u),
            GetPropellantMass (ph_satelite_b));

      }

   if(L<3) phase =2;

}

Сущность метода состоит в том что весь процесс сближения соотносится к некоторой системе координат( глобальной, орбитальной, неинерциальной пассивного корабля), далее СКПК.
Тогда уравнения движения активного корабля описываются системой уравнений имеющей аналитическое решение.
Неинерциальность учитывает только вращение пассивного корабля вокруг планеты (Оm).
Вычисляются относительное положение и скорость активного корабля относительно пассивного (что и делает Курс)P0 V0 в глабальной СК.
Далее строится орты СКПК tNorm tZ tTan в глобальной СК.
Относительное движение проецируется на орты СКПК. Получаем P0o и V - в СКПК.
Теперь задачу можно решить методом свободных траекторий.
Решение - Vto1 - потребное изменение скорости в СКПК.
Нужно перевести Vto1 из СКПК в локальную систему активного корабля.
Что и делаем - сперва проецируя через орты СКПК в глобальной - получаем потребное изменение в глобальной СК (VT). Затем из глобальной в локальную активного - VTl.
Ну затем, несколько упрощенно, из VTl определяется B - вектор управления для двигателей линейного перемещения.
Особенности:
Tc - время сближения, в общем случае в методе свободных траекторий отдается на откуп конкретной реализации. В данном случае при дальности более 1 км время коррелирует скорость сближения примерно линейно 100 км- 100 м/с 1 км 3-м/с, менее 1 км 10/с.
Вообще, в методе свободных траекторий, есть фича-глюк - каждой дистанции соответствует некоторое время сближения при котором скорость сближения равна нулю. Достаточно зафиксировать время сближения и корабль "зависнет" на некотором расстоянии от цели. Это реализовано в фазе 2 - 1 секунда, ~2 метра.
В данной реализации поведение будет зависеть от ориентации цели (смещение цели забито через локал) и не будет зависеть ориентации активного корабля.
Гыг Я этим алгоритмом собирал "в автомате" дюжину Мартлетов - для полета на Луну...
    Добавлено: 17:32 08-02-2010   
igel
 97 EGP

Рейтинг канала: 4(86)
Репутация: 14
Сообщения: 755

Зарегистрирован: 12.06.2006
Всем привет! Я тут сразу после беты на несколько дней в глубокий аут ушел, и только сейчас выныриваю помаленьку. Пропустил всю "союзную" дискуссию, а в ней, как сейчас бегло заметил, есть уймища интересного! Сейчас внимательно все перечитаю, и буду комментировать уже по делу.
    Добавлено: 07:30 09-02-2010   
Eraser_stp
 60 EGP

Рейтинг канала: 1(9)
Репутация: 2
Сообщения: 177

Зарегистрирован: 14.06.2007
Bloodest :
Сущность метода состоит в том что весь процесс сближения соотносится...

Круто. Улыбка Но я вот о чём речь веду: когда Прогресс сближается со станцией он не просто выполняет задачу сближения, он действует по определенному алгоритму, выполняет облет, зависание, хотелось бы знать конкретные цифры. К тому же я так понимаю метод свободных траекторий не даёт гарантии, что корабль не столкнется с конструкциями МКС при подлете? В Курсе это вроде обходят при помощи жестких алгоритмов.
В принципе можно задавать вектор конечного положения не от стыковочного порта, а на некотором удалении от него, чтобы корабль сперва вышел на финишную прямую, завис, а потом спокойно подошел к порту. Подозреваю, что чтото в этом духе и происходит.
З.Ы. Или это удаление и задается через offset?

Последний раз редактировалось: Eraser_stp (08:01 09-02-2010), всего редактировалось 3 раз(а)
    Добавлено: 07:43 09-02-2010   
igel
 97 EGP

Рейтинг канала: 4(86)
Репутация: 14
Сообщения: 755

Зарегистрирован: 12.06.2006
Ну что, начну по-порядку.

1. Глюк "шапка дыма".

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

Итак, дано: два аппарата в сравнительной близости от земной поверхности. Должны ли эти аппараты отвечать каким-то еще условиям, не знаю. Но: если с одного аппарата выпускается поток частиц, и хоть одна частица касается земли до того как исчезнет, то впоследствии выпущенный со второго аппарата поток частиц при касании земли уже не "скользит" вдоль нее, а намертво "прилипает".

В случае старта Семерки или Союза первым, "инициирующим" аппаратом является Блок А (либо блок И Союза), а его частицами - предстартовые пары кислорода, падающие вдоль ракеты. "Пострадавшим" аппаратом является стартовый стол - именно его частицы дымов "прилипают" к точке выброса.

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

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

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

В Ранней Семерке есть еще одно место, где эта проблема показывает себя - и показывает также, что два аппарата из моего гипотетического примера совсем не обязаны находиться рядом - они могут быть и в разных полушариях! Место это - растекающийся дым у подножия ядерного взрыва. Точнее, не растекающийся. Параметры частиц взрыва я настраивал, как можно дгадаться, куда дольше и тщательнее, чем стола: в конце концов, кроме частиц там вообще ничего нет. И сделал красивый, растекающийся дым. Но увы: полюбоваться им можно только следующим способом: подлететь к цели на боеголовке, сохранить сценарий, отредактировать его, удалив все другие изделия, и перезапустить снова. Тогда после взрыва дымные клубы столба не прилипнут к его основанию.

Можно создать и совершенно пакостный эффект: удалить из сценария "дымящие" элементы (во время подлета боеголовки это будут обломки разбившихся боковушек) - но оставить стол и летящий центральный блок. Тогда первые дымы в сценарии образуются до ядерного взрыва, от распада центрального блока при входе в атмосферу, в полете на большой высоте. И тогда ядерный взрыв унаследует их "высотную легкость", и частицы дымного столба, коснувшись земли, будут радостно и высоко подпрыгивать. Полная задница: код один, а вариантов поведения как минимум три! Расстройство

Ну вот, пока успел на один только пункт ответить, зато подробно. Ладно, дальше посвободнее будет...
    Добавлено: 08:22 09-02-2010   
Eraser_stp
 60 EGP

Рейтинг канала: 1(9)
Репутация: 2
Сообщения: 177

Зарегистрирован: 14.06.2007
Может сделать какой-нибудь финт ушами - например приподнять стол над условной земной поверхностью, и замаскировать это подняв и несколько километров окружающей местности?
Кстати на новом Орбитере та же беда. Может стоит заполнить багрепорт? Кто знает, вдруг это легко можно исправить.

Последний раз редактировалось: Eraser_stp (09:28 09-02-2010), всего редактировалось 1 раз
    Добавлено: 09:17 09-02-2010   
igel
 97 EGP

Рейтинг канала: 4(86)
Репутация: 14
Сообщения: 755

Зарегистрирован: 12.06.2006
А под бомбой тоже поднимать на километры? Улыбка Не, это лечение насморка гильотиной, а такие вещи надо правильно, на уровне движка фиксить. А я вообще еще не знаю, документирован ли этот баг, и баг ли это... Надо, наверное, четкие тестовые сценарии-условия сделать, и запостить в форум Орбитера. Ну а пока обход в основном достаточно легкий, чтоб тяжелую артиллерию задействовать. Орбитер все-таки старая платформа, у него хватает ограничений и проблем, и эта далеко не самая тяжелая. Подстроить время жизни частиц куда проще, чем поднимать виртуальную поверхность.
    Добавлено: 09:27 09-02-2010   
Eraser_stp
 60 EGP

Рейтинг канала: 1(9)
Репутация: 2
Сообщения: 177

Зарегистрирован: 14.06.2007
Eraser_stp :
Кстати на новом Орбитере та же беда. Может стоит заполнить багрепорт? Кто знает, вдруг это легко можно исправить.

igel :
А я вообще еще не знаю, документирован ли этот баг, и баг ли это... Надо, наверное, четкие тестовые сценарии-условия сделать, и запостить в форум Орбитера.

Сходные мысли. Гы-гы Так и стоит сделать.
    Добавлено: 09:30 09-02-2010   
igel
 97 EGP

Рейтинг канала: 4(86)
Репутация: 14
Сообщения: 755

Зарегистрирован: 12.06.2006
Записал в списочек, сделаю баг-репорт на базе уже выпущенной Семерки, наверное, как раз на примере подлетного сценария - он очень наглядный!

А вообще, спасибо большущее за помощь тестированием. У меня день кончился, так что на сегодня я прерываюсь, а завтра продолжу с остальными комментариями.
    Добавлено: 09:36 09-02-2010   
Thorton
 85 EGP

Рейтинг канала: 3(36)
Репутация: 12
Сообщения: 696
Откуда: Томск
Зарегистрирован: 15.05.2006
Да там и в самой 2009 бете что-то не так с дымами. У Полёта к примеру, частицы отрубаются на главных движках и движках вертикального перемещения. У моего Прогресса, точно также, пробовал его скомпилить под 2009 СДК, но глюк с дымами не прошел.
    Добавлено: 11:01 09-02-2010   
igel
 97 EGP

Рейтинг канала: 4(86)
Репутация: 14
Сообщения: 755

Зарегистрирован: 12.06.2006
Я почитал требования, предъявляемые к баг-репорту Орбитера, не такое это просто дело оказалось Улыбка (и хорошо, что непростое, все требования абсолютно разумные). В общем, надо бы попробовать сначала воспвроизвести глюк дымов не на Семерке, а на встроенных изделиях Орбитера, в голой минимальной установке. ДГ, шатлы... А если еще и во встроенном сценарии, то еще круче, но это не знаю, получится ли. Нам, конечно, так больше работы, зато Мартину будет на порядок легче. Это если глюк там, а не в том, как дымы генерю (может, как-нибудь нестандартно).
    Добавлено: 19:23 09-02-2010   
Eraser_stp
 60 EGP

Рейтинг канала: 1(9)
Репутация: 2
Сообщения: 177

Зарегистрирован: 14.06.2007
igel :
В общем, надо бы попробовать сначала воспвроизвести глюк дымов не на Семерке, а на встроенных изделиях Орбитера, в голой минимальной установке. ДГ, шатлы...

Хм, если подумать... А на Атлантисе разве не должен был бы проявлятся тот же эффект? там два источника частиц от SRB.
Может с багрепортом пока не спешить, а описать проблему на оффоруме?

Последний раз редактировалось: Eraser_stp (19:29 09-02-2010), всего редактировалось 1 раз
    Добавлено: 19:27 09-02-2010   
igel
 97 EGP

Рейтинг канала: 4(86)
Репутация: 14
Сообщения: 755

Зарегистрирован: 12.06.2006
Ну да, прежде чем шум поднимать, надо убедиться, что повод реальный. Только не знаю пока, как скоро у меня дойдут руки, глюк-то очень мелкий и редкий, не мешает совершенно...
    Добавлено: 19:50 09-02-2010   
Канал Orbiter: «РН "Союз ФГ/У"»
На страницу: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10  След. | Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Спасибо всем. Нихрена не помогает.(Kyznechik)

  » РН "Союз ФГ/У" | страница 1
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18