Самодельный стратостат. Часть 3б
Вот мы и подобрались к финалу сезона 2021 по запускам своего самодельного стратостата. Начало истории этого запуска в части "А", полная история, в виде серии постов, в хронологическом порядке - у меня в профиле. Больше запусков в этом году не будет!
Результаты
Ну наконец-то. Давайте посмотрим, что же нам притащили ребята из части "А", ценой таких неимоверных усилий. Для начала еще раз взглянем на фото из заголовка (⬆).
Первое, за что цепляется глаз — две шкалы высот. Да, я решил вставить 2, потому что они расходятся. Не трудно догадаться, что "GoPro Alt" — это показания GoPro, а "RPI Alt" — показания нашего самописца полученные от GPS HAT.
Максимальное значение на шкале GP — 12109м, на RPI — 35794м. Это очень большая разница. Что-то тут не так! Что именно не так — я не смог узнать (хотел написать в саппорт GP, но не успел). Если у кого-то есть догадки — пишите в комментариях. У меня есть только теория. Которая основывается на подсказанной в комментариях к первой статье ссылке — COCOM Limits. Суть ее сводится к следующему: у GPS приемников есть некоторые искусственные ограничения на фиксируемую высоту и скорость. В данном случае, опираясь на статью из вики, это 18000м по высоте.
Тут есть два "НО". Во-первых: у нас 12км, а не 18. Во-вторых: организация, занимающаяся контролем этих ограничений, вроде как упразднена. Я закину еще одно предположение: возможно эта функция была делегирована другой организации, а лимиты были изменены (в меньшую сторону).
Вы все еще можете думать: ой, да это не GP наврала и лимитов никаких нет. Это твой китайский GPS HAT врет. Но у меня есть еще аргумент в пользу верности показаний RPI — давление!
Существует несколько способов вычислить относительную высоту. Я использовал барометрическую формулу. Суть ее в том, что с набором высоты плотность воздуха и, соответственно, давление падает. А, зная давление "на поверхности", мы можем, зная давление "на высоте", вычислить саму высоту. Проблема тут только одна — нужно знать температуру окружающей среды. В чем проблема, спросите вы? А вы помните, что наш градусник не фиксирует температуру ниже -40С? Вот в этом и проблема. Вторая проблема - барометрическая формула впринципе плохо работает для высот >10км. Как вариант, я попробовал использовать показания внутреннего термометра (который в Sense HAT). Я упоминал, что мы проделали слишком большое отверстие в крышке полезной нагрузки и через нее поступал забортный воздух. Вот я и подумал, что, возможно, там была более "реальная" температура. На самом деле нет. Все эти цифры абсолютно не годились для расчета высоты. И я покажу это на графике:
Видите? Пока была высота, где термометр давал ± реальные данные и высота была до 10км — графики не сильно расходились. Но, со временем, разница выросла в критическую.
Ну а где же пруф с высотой по давлению? В самом давлении! Давайте вспомним, какие показания давления у нас были ранее и сравним с давлением сейчас:
Как видите — давление в последнем запуске зафиксировано намного меньшее, чем в предпоследнем. Да, зависимость не линейная, это видно даже без графика, но зависимость есть и она точно не в пользу показаний с GoPro. Вот, посмотрите на график:
Итак, вы можете поверить, что при давлении 0.49 миллибар там было всего 12км, как говорит GoPro? Убедительно? Убедительно. С этих самых пор, мы стали считать, что нами достигнута высота 35794м
Т.е. ваш шар поднялся до высоты 35794м?
На самом деле — нет :-) Шар, скорее всего поднялся даже выше!
Давайте вспомним тот баг с пропажей GPS сигнала и NRE в коде. Добавим к этому видео с камеры (не обращая внимания на ее телеметрию). И посмотрим график высоты по показаниям RPI:
Оранжевый сегмент — это отсутствие данных. Но, так как строчки в логе идут одна за одной (баг же), то нет разрыва по времени. Разрыв я вам показывал — почти полчаса. Итак...
После 35794 у нас есть период неизвестности. Что делал шар в эти полчаса — в логи (в явном виде) не попало. Но мы можем пытаться экстраполировать имеющиеся данные! Я сделаю это очень грубо, т.к. не вижу смысла в очень точных расчетах в данном случае.
Рассчитаем и возьмем вертикальную скорость шара перед пропажей сигнала: 1.4м/с.
Рассчитаем и возьмем вертикальную скорость шара после появления сигнала: -45.2м/с (я не беру в расчет значение 6.11м/с, так как это значение, посчитанное для промежутка потери сигнала).
Допустим, что эти скорости корректны и для отсутствующего отрезка. Теперь главный вопрос: до какой высоты X успеет подняться шар, чтобы через полчаса (учитывая и время подъема с заданной скоростью — 1.4м/с) его высота была равна 24864м?
Честно вам скажу — я заленился это считать, так что просто прикинул в голове, что это где-то 1.8-1.9км дополнительно. Итого, с оооочень большим допущением, мы получим максимальную высоту ~38км. И, сюрприз-сюрприз, это как раз регламентированная максимальная высота для этого шара. Нет, конечно, с такими расчетами мы не можем себе приписать 38км, но мы можем похвалить производителя шаров: с высокой долей вероятности — он не соврал (а мы правильно накачали и запустили).
Раз уж затронули вертикальную скорость — давайте построим и ее график. В конце концов, она для нас тоже важна, особенно на этапе снижения, чтобы оценить эффективность парашютов. Сначала "общий план":
Что меня тут радует — это относительно "ровная" скорость на подъеме. Она держалась в пределах 3-7м/с, что нас более чем устраивает (в полетном плане мы указываем скорость подъема 5м/с). Не смотрите на эти пики — это кратковременное пропадание сигнала GPS так сказывается. Да, потеря его на 1-2 сек — это вполне нормальное явление.
Что меня не радует — очень медленное гашение скорости на спуске. Давайте посмотрим поближе:
Мда… На этом графике хорошо видно, как наша нагрузка отчаянно боролась за жизнь. Нет, ну я конечно понимаю, что на 30+ км почти нет воздуха (давление 0.5мбар), но даже к моменту достижения 10км (лучше видно на общем графике) скорость была больше 10м/с. А там уже с атмосферой намного получше и самолеты летают. Но, надо отдать должное, почти у самой земли парашюты все же справились и "загасили" скорость до приемлемых 7-8м/с. Пусть это будет напоминанием тем, кто считает, что 2 парашюта всегда лучше, чем один.
На этом аномалии не заканчиваются. Следующая головная боль — внутренняя температура.
Замерз наш RPI, не побоюсь этого слова — в труху! Если кто не помнит, обычно он у нас в полете функционирует при температуре +30С и выше. А тут он замерзал до -16С! Это нам (и всем тем, кто решит сделать свой стратостат) хороший урок — уделяйте особое внимание планированию воздушных потоков в коробе. Отверстия должны быть сбоку, но никак не сверху. Схема правильной климатизации в первой части статьи. А тут, напомню, мы второпях просто поставили дырявую крышку. Вот, что из этого получилось. Да, хоть RPI и работал при -16С, но элементы питания выдержали весь полет. Могу сказать, что нам просто повезло. Вы так не делайте ;-)
Я так же пытался найти закономерность между внутренней температурой и вертикальной скоростью (раз уж она посчитана):
Кто-то видит закономерность? Я — не особо. Меня интересует зависимость температуры от скорости подъема. Но график скорости ± ровный, в то время как температура "скачет". Ну что же, видимо это связано не с вертикальной скоростью. На спуске (там где скорость уходит резко вниз) мы, ожидаемо, видим падение температуры и потом быстрый нагрев. И такое поведения вполне естественно. Так что извините, но я все еще не вижу вины скорости в переохлаждении нашей коробки.
Ладно, это была "так себе аномалия". Понятно, что в дырявом коробе будет "дуть". Но сейчас вы увидите кое-что покруче:
Влажность. Да-да, отрицательная влажность. -3?! На самом деле наиболее вероятный ответ был дан в комментах на хабре:
Relative Humidity sensor (accurate to ±4.5% in the 20-80%rH range, accurate to ± 0.5 °C in 15-Отсюда: datasheet
40 °C range)
Это, фактически, означает, что при относительной влажности ниже 20% и температуре ниже +15C - этот сенсор может выдавать хоть гороскоп на среду.
По поводу "закрашенных" областей у меня такое предположение — мы где-то нацепляли воды "по дороге". Может в облаках. И эта капелька росы, как-то всю дорогу портила нам показания (ранее на таких высотах этот сенсор вел себя корректно). Возможно с этим связаны и отрицательные значения. Возможно.
Ну что же. Это была сама сложная часть анализа телеметрии. Перейдем к "дежурным" и очевидным данным.
Давление:
Очередной рекорд в наших запусках: 0.49мбар! Похлопаем ему и идем дальше.
Температура за бортом:
Тоже без сюрпризов, но и без рекордов. Да, внешний градусник надо менять в первую очередь. Но с этим есть некоторые технические сложности, с которыми мы пока разбираемся. Надеюсь на следующий запуск полетит нормальный градусник.
На этом все. Я, как обычно, оставляю ссылки на всю телеметрию, для желающих покопаться самостоятельно:
Видео
Не самое лучшее наше видео, но, технически — это видео. Видео с высоты 30+ км в 4k, как мы и обещали. Да, 99% тут просто телеметрия поверх черного фона. Но, все же, есть пара интересных моментов:
1. Максимальная высота, зафиксированная RPI (дальше мы потеряли сигнал GPS, но видно, что зонд еще не падает): 2:07:10
2. Момент взрыва шара: 2:38:13
Я мог немного напортачить с синхронизацией телеметрии (GoPro vs RPI) и из-за бага в самописце — это сложно установить. Фактически, я могу синхронизировать только по старту: в момент разрыва шара GPS от RPI еще не появился, а до момента приземления не дожила камера. То, что происходит с показаниями RPI после потери сигнала — особенности поведения софта наложения телеметрии. Он, почему-то, решает сгладить резкие перепады и снижает плавно все показатели до 0, хотя их там нет совсем. Это поведение мне победить не удалось.
Выводы
По ходу прочтения статьи, вы уже могли сделать все правильные выводы. Давайте подведем итог:
1. Не используйте стропные парашюты
2. Используйте только 1 парашют. Диаметр купола зависит от массы спускаемой нагрузки. Для нагрузки до 1.5кг рекомендуется диаметр купола 1.2-1.4м. Можно больше (если найдете). Это по желанию
3. Пишите юнит-тесты к своему ПО
4. Уделяйте внимания отверстиям на коробе. Не должно быть ничего, кроме предусмотренных климатизацией. Рекомендую использовать схему охлаждения из первой статьи (или что-то получше)
5. Не запускайте в темное время суток
Вот, пожалуй, и все. Из планов на будущее обозначу следущие:
1. Мы хотим сделать еще как минимум 1 запуск и привезти нормальное видео. Запуск этот будет не раньше апреля 2022
2. Будут некоторые изменения в полезной нагрузке. Надеюсь за каникулы я успею сделать задуманное. Но, по-прежнему, не ожидайте запуска спектроанализатора :-)
Как минимум, мы повозимся вот с этим (система оповещения о сближении для авиации):
Также, попробуем добавить камер (скорее всего HQ RPI Camera или аналоги)
3. Ожидайте скорый выход статьи по легализации этих запусков. Мы прошли этот долгий путь, чтобы сделать его коротким для вас
Вот теперь точно все. Fly safe, cmdr!