ВНИМАНИЕ! Наша конференция посвящена космической тематике и компьютерным играм. Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!
|
» Блок Л для семерки | страница 7 |
|
|
|
Канал Orbiter: «Блок Л для семерки» |
|
|
igel 100 EGP
Рейтинг канала: 4(86) Репутация: 14 Сообщения: 755
Зарегистрирован: 12.06.2006 |
|
Через какое-то время после выведения она да, должна довернуться на Землю. Но не знаю, через какое. Вряд ли сразу. Ей это более на апогейной части важно. Поэтому я в демо-сценарии собственно Молнии-1, где она в апогее, ее развернул как надо (как ее чаще всего рисуют) и остановил. Можно, конечно, добавить ей код для автостабилизации на Землю (самодельный, ибо в Орбитер такой не встроен). Но это сложно, долго и неинтересно: ну кто это вообще найдет, задействует и оценит? Может, когда-нибудь, после лунных проектов... Ну или если такой код для чего-то более важного появится (для Луны-3?), и можно будет его просто "забесплатно" перенести. В Блоке Л даже было что-то подобное, для самодельного prograde/retrograde, можно будет прикинуть... но это дело десятое.
Фермы... а шут ее знает, я их вообще не трогал, взял тот сценарий запуска Молнии, что уже был, и его правил. Только время старта ввел, чтобы не кнопкой запускать, а чтобы прямо само все запускалось. Если там есть получше фермы, надо поменять. Вообще эволюция ферм на семерковых площадках - это отдельная песня. Недавно попалось "восходовское" фото - там вообще нижний пояс какой-то жиденький, зато наверх такая кривулина невообразимая ведет! С одной стороны только, не с двух, как теперь - но зато наверху охватывает всю ракету разом. В отведенном положении очень сюрно выглядит! Интересно, на Востоке тоже такая же была?
|
|
|
Thorton 87 EGP
Рейтинг канала: 3(36) Репутация: 12 Сообщения: 696 Откуда: Томск Зарегистрирован: 15.05.2006 |
|
Но у меня она на Землю не доворачивается, в апоцентре вообще КДУ к земле разворачивается.
|
|
|
igel 100 EGP
Рейтинг канала: 4(86) Репутация: 14 Сообщения: 755
Зарегистрирован: 12.06.2006 |
|
Пардон, неточно выразился. Сейчас перечитал свое сообщение - и в самом деле звучит двусмысленно. Исправляюсь и перефразирую.
Настоящая Молния-1 - должна ориентироваться на Землю. Модель этого не делает. Пока не делает или совсем никогда не будет, не знаю: сделать это дорого (Орбитер штатно такое не поддерживает), а оценит мало кто. Но если будет время, и если можно будет утащить код такой ориентации с какого-нибудь другого аппарата - почему бы и нет. А пока модель просто летит после отделения произвольно и неориентированно. Для демо-сценария (где она сразу в апогее) я ее вручную сориентировал, остановил и так оставил.
|
|
|
Bloodest 155 EGP
Рейтинг канала: 3(40) Репутация: 18 Сообщения: 944 Откуда: Питерские мы Зарегистрирован: 07.10.2004 |
|
Эт правильно, что она должна вращаться. Вообще орбита выбрана так, что апоцентр висит все время в одной географической точке (на новостях косманавтики поднимался этот вопрос). Соответственно должна вращаться так чтобы кадый апоцентр смотрела на Землю.
Ориентация.. ну как сказать штатно - интерфейсом юзера-чайника - нет - АПИ - полностью, позволяет тока встроенными функциями пользуясь.
Ну на пальцах.
Есть две системы координат - глобальная (самая общая в Орбитере)СКГ и связанная - СК космоаппарата (ССККА). Дык в АПИ есть функция преобразования вектора из СКГ СККА - global2local.
Требуем два вектора координат в СКГ - КА и Земли (oapiGetGlobalPos).Вычитаем из КА Землю - получаем вектор направления с КА на Землю в СКГ. Ну и подсовываем его в global2local. Получаем вектор направления на Землю в связанной СК.
Усе дело в шляпе - гыгы всего 4 строчки кода.
Ну если дальше двигаться до движков то эт уж посложнее будет.
Для простоты, на пальцах, опятьже.
есть две такие инлайн функции в АПИ - dot и crossp - скалярное и векторное произведения векторов. Ну если вышку учил то для двух векторов единичной длинны - скалярное произведение - скаляр равный косинусу угла между векторами. векторное - вектор - перпендикулярный обоим и длинной равной синусу угла между ними.
Значится имеем два вектора в ССККА - антенны и направление на Землю.
Используем обе - определяем косинус, из него арккосинусом получаем полный угол рассогласования (в диапазоне 0 - 180 градусов без направления).
Дальше хитрее векторное произведение даст вектор - он обладает тем свойством что если аппарат вращать вокруг него, то он будет совмещать (по кратчайшему пути!) вектор первого аргумента этой функции ко второму против часовой стрелки если смотреть против направления этого вектора.
Ну дык берем ось антенны векторно множим на направление на Землю, нормируем этот вектор (normalize), множим на угол рассогласования и определяем проекции на оси ССККА (считываем компоненты по осям). ГЫ длинны этих проекций и есть командные угловые рассогласования (d) для каждых групп двигателей.
Уровень тяги двигуна
U= A*d + B*dd
IF(U>1) U=1
IF(U<-1) U=-1
dd - скорость вращения по этой оси.
Собственно так сделано в орбитере для всех стандартных мод ориентации. Изложил просто алгоритм формирования ситуационной моды.
А вот чего нет в орбитеровских модах
- Командные рассогласования надо опять согласовывать в ходе работой двигунами.
- Четко учитывать Массу Инерцию Моменты управления.
Без этого будет работать ток колбасить может время от времени аппарат - потому как величины рассогласований это одно а скорость и ускорение вращения эт несколько другое...
|
|
|
igel 100 EGP
Рейтинг канала: 4(86) Репутация: 14 Сообщения: 755
Зарегистрирован: 12.06.2006 |
|
Спасибо! Я примерно как раз так и подхожу к автопилотам ориентации, когда не хватает встроенных режимов, и надо построить свой. Собственно, и в блоке Л пришлось реализовывать собственные prograde-retrograde, поскольку Орбитер не умеет сам рулить качающимся двигателем. Единственное, что мне не нравится во встроенных функциях Орбитера - он считает "слишком" точно, слишком чисто, слишком идеально. Реальные процессы всегда остаются до какой-то степени инерционными, стохастическими, колебательными... Поэтому я в своих реализациях всегда либо останавливаюсь "чуть раньше идеала", чтобы оставить несовершенство, либо вообще специально ввожу погрешности, если остаточных явлений кажется недостаточно. В общем, мой учитель, гуру и кумир - Дэн Маас
Так что ориентация Молнии - дело довольно тривиальное. И не хочу я им сейчас заниматься именно потому что "не хочу" . На это надо потратить столько-то часов работы, а "на кульмане" - сразу несколько dll-ек для Луны-9. Там речь уже идет не о часах, а о неделях. И задачи внутри прячутся довольно сложные. Больше всего меня сейчас беспокоит коррекция на пути к Луне. Ведь то, что делает Лайка - это стыд и срам: во-первых, она просто подправляет траекторию "по местному горизонту", без ускорения-замедления (это в 60 Мм от Луны!), во-вторых, разматывает углы Эйлера по одному, вместо того, чтобы определять целевой вектор ориентации и приходить в него сразу. Но что годилось для простой модельки, не подойдет для исторической, да и Луне-9 просто топлива не хватит на подобные выкрутасы. Я знаю, что TransX умеет делать то, что мне надо, и даже ковырялся немножко в ее кодах, но в прошлый раз не хватило времени доразобраться. А теперь вот придется волей-неволей.
Так что пусть Молния-1 подождет, пока Луна-9 не обретет форму. Ибо ей (и блоку Л) светит еще один вектор изменений, вызванных "Луной": разрушаемость. Для "Луны" она весьма естественна (как и для Лайки), и изначально закладывается в проект. Но когда она будет сделана, будет иметь смысл "задешево" распространить ее на Молнию и блок Л (про остальную семерку пока говорить слишком рано). Вот тогда и можно будет вернуться к ориентации.
добавлено спустя 37 минут:
Посмотрел Молнию-ракету с союзовскими стартовыми фермами. Они чуть длиннее самой ракеты. Но это, наверное, так и есть на самом деле - вряд ли они меняют фермы под каждую ракету А по времени Молния конечно более с Союзом пересекается, чем с Востоком. Думаю, и поздний Восток с союзовкими фермами изрядно пересекался во времени.
Так что переделаю все сценарии Молнии на союзовские фермы, и новые сразу с ними буду делать. По-хорошему фермы вообще должны быть автоматической функцией даты сценария . Ну может еще номера площадки, если апгрейды шли неравномерно...
Последний раз редактировалось: igel (19:21 26-10-2007), всего редактировалось 1 раз |
|
|
Bloodest 155 EGP
Рейтинг канала: 3(40) Репутация: 18 Сообщения: 944 Откуда: Питерские мы Зарегистрирован: 07.10.2004 |
|
Гы стахаститики (непостоянство по шагу) в орбитере хватает. Как раз уравновешивает математичность.
|
|
|
igel 100 EGP
Рейтинг канала: 4(86) Репутация: 14 Сообщения: 755
Зарегистрирован: 12.06.2006 |
|
Ну, мне так совсем не хватает . Например, движки ориентации в Орбитере (на встроенных авторежимах) - постоянного действия, но переменной тяги. Для алгоритмов так, конечно, удобнее, кто спорит. Но на практике так почти никогда не делают, сложно. Куда чаще видишь импульсно-ударные двигатели. И это только один пример. К счастью, с таким отличным API все это можно обойти, было бы время и силы . Так что я не очень жалуюсь...
|
|
|
Bloodest 155 EGP
Рейтинг канала: 3(40) Репутация: 18 Сообщения: 944 Откуда: Питерские мы Зарегистрирован: 07.10.2004 |
|
Ну алгоритмы, реальные, как раз и ведут к ударным движкам.
Орбитеровская формулка U= A*d + B*dd - так себе, чистый эмпиризм ни чем математически не подкрепленный. Гы, алгоритмы оптимальные как по быстродействию так и по точности приводят к необходимости импульсного управления.
|
|
|
astronavt 86 EGP
Рейтинг канала: 1(3) Репутация: 35 Сообщения: 403 Откуда: Новочеркасск Зарегистрирован: 11.01.2006 |
|
О, вижу жизнь идет! Очень рад, но патч пока не выложил вот я, негодяй. А косяки с отделением Лайки я ликвидировал еще летом... Некогда, извините ребята. Но я обязательно вернусь. Рад что для моей "Семерки" делают такие важные штуки
_________________ Я бы изменил этот мир, но Бог не дает мне исходников... |
|
|
igel 100 EGP
Рейтинг канала: 4(86) Репутация: 14 Сообщения: 755
Зарегистрирован: 12.06.2006 |
|
Ничего страшного, ждем . Ясно же, что у каждого много и других жизней, помимо Орбитера. У меня вот тоже доступность строго сезонная, только зимой...
|
|
|
Eraser_stp 60 EGP
Рейтинг канала: 1(9) Репутация: 2 Сообщения: 177
Зарегистрирован: 14.06.2007 |
|
Интересно, на сайте НПОЛ читал про ранние "Венеры". Написано что использовались блоки ВЛ и НВЛ. Последний был получен из ВЛ доработкой баков, увеличившей их ёмкость на 140 кг. А в чём отличия ВЛ от Л?
|
|
|
igel 100 EGP
Рейтинг канала: 4(86) Репутация: 14 Сообщения: 755
Зарегистрирован: 12.06.2006 |
|
Скорее всего, отличия были не такие, чтобы были значимы для нашей модели, чтобы были заметны глазу. Так что можно будет нынешний Л и до Венеры доработать когда-нибудь.
|
|
|
|
|
|
Канал Orbiter: «Блок Л для семерки» |
|
|