Комплексное БРЭО

 
1 5 6 7 8 9 29
RU Alexeev Max #23.11.2010 14:02  @Брат-2#23.11.2010 13:52
+
-
edit
 

Alexeev Max

втянувшийся

A.M.>> Меня и настораживает, что это уже достаточно редкий экземпляр. ...
Брат-2> К сожалению ATmega8L нас покинула, дорабатываем то, что осталось в закромах. Поэтому целесообразно, да и своевременно сейчас найти ей замену, желательно доступную для всех.

Другую атмегу или вообще.... другого производителя например PIC. Второе совсем печально.... у меня уже 3Кб на асме написано.
 
UA Serge77 #23.11.2010 14:03  @Брат-2#23.11.2010 13:52
+
-
edit
 

Serge77

модератор

Брат-2> К сожалению ATmega8L нас покинула

Это касается именно этой модели, или все АВРы исчезают?
RU Alexeev Max #23.11.2010 14:55  @Serge77#23.11.2010 14:03
+
-
edit
 

Alexeev Max

втянувшийся

Брат-2>> К сожалению ATmega8L нас покинула
Serge77> Это касается именно этой модели, или все АВРы исчезают?

На офицальном сайте по этому поводу полный порядок
http://mymcu.ru/news/news.pl?a=1&idf=7&kod=Atmel

Новостей о снятии atmega8 нет, как и новостей о сворачивании производства.
 
UA pillot51 #24.11.2010 03:12  @Alexeev Max#23.11.2010 14:55
+
-
edit
 

pillot51

опытный

Если китайцы до сих пор выпускают аналог 561-ой серии,то снятие атмеги с пр-ва это звучит как-то абсурдно у нас её хватает в любом виде как в дипах так и СМД , может с поставками какая-то задержка,у нас с инет.магов скупают в два раза дешевле барыги и на радиорынок; там всего - всех мастей и расцветок, включая атмегу.Дак что здря переживаешь
 3.5.153.5.15
RU Alexeev Max #24.11.2010 09:50
+
-
edit
 

Alexeev Max

втянувшийся

Вопрос к участникам форума.
Надежный алгоритм прохождения апогея (max высоты). В цифровом виде - это минимум выдаваемый датчиком давления. У кого какие идеи.

Я думаю алгоритм примерно следующий.

Задаем погрешность на шум (2 значения АЦП, если значение 8 метров, то получаем 16 метров)

Анализируем входящее значение, запоминаем максимально достигнутое на данный момент.

Если очередное значение меньше (макимальное минус погрешность), то считаем что апогей пройден.

Это если анализировать высотомер.

Есть еще и акселерометр, там я так понимаю при апогее функция пересекает 0 и меняет знак.
 
Это сообщение редактировалось 24.11.2010 в 10:16
UA Serge77 #24.11.2010 10:41  @Alexeev Max#24.11.2010 09:50
+
-
edit
 

Serge77

модератор

A.M.> Если очередное значение меньше (макимальное минус погрешность), то считаем что апогей пройден.

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

A.M.> Есть еще и акселерометр, там я так понимаю при апогее функция пересекает 0 и меняет знак.

Нет, через 0 переходит после отработки двигателя, здесь становится отрицательным, в апогее доходит до нуля или почти до нуля, потом нарастает по модулю, оставаясь отрицательным, если ракета летит вниз носом вперёд.
Ловить апогей по акселерометру очень сложно, там очень пологий максимум.
RU Alexeev Max #24.11.2010 10:46  @Serge77#24.11.2010 10:41
+
-
edit
 

Alexeev Max

втянувшийся

Serge77>> Нет, через 0 переходит после отработки двигателя, здесь становится отрицательным, в апогее доходит до нуля или почти до нуля, потом нарастает по модулю, оставаясь отрицательным, если ракета летит вниз носом вперёд.

Т.е. по 0 акселерометра можно запаливать вторую ступень в случае двухступенчатой системы.

Serge77>> Ловить апогей по акселерометру очень сложно, там очень пологий максимум.

Можно на одной линейке времени нарисовать графики этих процессов, для наглядности.
 
+
-
edit
 

Xan

координатор

A.M.> Вопрос к участникам форума.
A.M.> Надежный алгоритм прохождения апогея

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

Тут можно ещё и выбросить те измерения, которые слишком сильно отклоняются от параболы.

Это решение "в лоб", но правильное. Эталон, можно сказать.
Можно и хитрее.


A.M.> Есть еще и акселерометр, там я так понимаю при апогее функция пересекает 0 и меняет знак.

В общем случае - нет.
Акселерометр простым образом для этого не применить.
 7.07.0
+
-
edit
 

Alexeev Max

втянувшийся

Xan> Надо брать теоретическую параболу и "прикладывать" к ней ряд последних измерений (десяток, несколько десятков): вычислять разницу в каждой точке, возводить разницу в квадрат, суммировать квадраты. И подкручивать параметры параболы так, чтоб сумма квадратов получилась минимальной.

Можно сразу реализацию алгоритма на asm, у меня там как раз несколько кб флеша осталось :)

Решение, конечно, красивое, но нужно что то более подходящее для жизни в Real-Time.

Плюс не совсем ясно как поступать при нештатной работе двигателя или аварии, когда теоретический максимум вообще не будет достигнут.
 
RU umbriel #24.11.2010 11:14  @Alexeev Max#24.11.2010 10:55
+
-
edit
 

umbriel

опытный

Xan>> Надо брать теоретическую параболу и "прикладывать" к ней ряд последних измерений (десяток, несколько десятков): вычислять разницу в каждой точке, возводить разницу в квадрат, суммировать квадраты. И подкручивать параметры параболы так, чтоб сумма квадратов получилась минимальной.
A.M.> Можно сразу реализацию алгоритма на asm, у меня там как раз несколько кб флеша осталось :)
A.M.> Решение, конечно, красивое, но нужно что то более подходящее для жизни в Real-Time.
A.M.> Плюс не совсем ясно как поступать при нештатной работе двигателя или аварии, когда теоретический максимум вообще не будет достигнут.

Зачем разницы возводить в квадрат? Есть ускорение по Y в каждый момент времени (есть же?), вычитать из него g, интегрировать и получать скорость vy. Когда она меньше +0.1м/с это и есть апогей... на асме десятка два строк
 
RU Alexeev Max #24.11.2010 11:27  @Oxandrolone#24.11.2010 11:14
+
-
edit
 

Alexeev Max

втянувшийся

umbriel> Зачем разницы возводить в квадрат? Есть ускорение по Y в каждый момент времени (есть же?), вычитать из него g, интегрировать и получать скорость vy. Когда она меньше +0.1м/с это и есть апогей... на асме десятка два строк

Алгоритм понял.

Желательно основной алгоритм на датчике давления, т.к. схема может быть без акселерометра - этот датчик более сложно достать нежели датчик давления.

И если с ускорением все ОК, но полет пошел в горизонт и в низ (нештатная работа).
 
RU umbriel #24.11.2010 11:57  @Alexeev Max#24.11.2010 11:27
+
-
edit
 

umbriel

опытный

A.M.> Желательно основной алгоритм на датчике давления, т.к. схема может быть без акселерометра - этот датчик более сложно достать нежели датчик давления.

Тогда нужно наоборот, дифференцировать высоту в скорость по высоте. Условие апогея такое же.

A.M.> И если с ускорением все ОК, но полет пошел в горизонт и в низ (нештатная работа).

Ну все равно же у этого полета есть апогей? :-D Только нужно именно ускорение по вертикали (у БРЭО предполагается гироскоп, или что-нибудь такое?)

Кроме того, можно показания акселерометра и высотомера корректировать с помощью друг друга, как написал Xan.
 
UA Serge77 #24.11.2010 12:00  @Oxandrolone#24.11.2010 11:14
+
-
edit
 

Serge77

модератор

umbriel> Зачем разницы возводить в квадрат? Есть ускорение по Y в каждый момент времени (есть же?), вычитать из него g, интегрировать и получать скорость vy. Когда она меньше +0.1м/с это и есть апогей... на асме десятка два строк

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

Можно поставить акселерометр с пределами измерений 1-2 g, тогда может быть и хватит точности для ловли апогея. Но тогда показания будут зашкаливать во время работы двигателя.
UA Serge77 #24.11.2010 12:02  @Oxandrolone#24.11.2010 11:57
+
-
edit
 

Serge77

модератор

umbriel> Тогда нужно наоборот, дифференцировать высоту в скорость по высоте. Условие апогея такое же.

Какой в этом смысл, если апогей вычисляется прямо из высоты?
RU Alexeev Max #24.11.2010 12:10  @Oxandrolone#24.11.2010 11:57
+
-
edit
 

Alexeev Max

втянувшийся

umbriel> Тогда нужно наоборот, дифференцировать высоту в скорость по высоте. Условие апогея такое же.

Поле для экспериментов вычислять скорость по акселерометру и по высотомеру. Надо смотреть, что покажут оба прибора.

A.M.>> И если с ускорением все ОК, но полет пошел в горизонт и в низ (нештатная работа).
umbriel> Ну все равно же у этого полета есть апогей? :-D Только нужно именно ускорение по вертикали (у БРЭО предполагается гироскоп, или что-нибудь такое?)

В этом БРЭО нет. На будущее при удачной разработке возможна установка трех осного акселерометра. Но пока все буду отрабатывать на этой схеме.

umbriel> Кроме того, можно показания акселерометра и высотомера корректировать с помощью друг друга, как написал Xan.

Первый шаг - это посмотреть на две скорости от разных датчиков. Накопление ошибки не избежать.
 
RU Alexeev Max #24.11.2010 12:12  @Serge77#24.11.2010 12:00
+
-
edit
 

Alexeev Max

втянувшийся

Serge77> Можно поставить акселерометр с пределами измерений 1-2 g, тогда может быть и хватит точности для ловли апогея. Но тогда показания будут зашкаливать во время работы двигателя.

На будущее можно продумать вариант с двумя акселерометрами для грубой и точной оценки.
 
+
-
edit
 

SashaPro

аксакал

Serge77> Ловить нужно именно максимум показаний акселерометра, но его сложно поймать из-за очень пологого максимума и довольно большого шума акселерометра.

А мне казалось достаточно просто условия: Сумма значений ускорений разгона и торможения равна 0 при достижении апогея.
А ещё лучше определиться с высотой раскрытия парашюта, ведь через интегрирование ускорения можно узнать на какой высоте будет ракета во время уже свободного падения...
+
-
edit
 

umbriel

опытный

Serge77> Не годится. Во-первых, по акселерометру скорость вычисляется весьма неточно, потому что накапливается ошибка интегрирования.

Насколько неточно?

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

umbriel>> Тогда нужно наоборот, дифференцировать высоту в скорость по высоте. Условие апогея такое же.
Serge77> Какой в этом смысл, если апогей вычисляется прямо из высоты?

Но ты же не знаешь, какая высота будет у апогея? Известно только что скорость по вертикали поменяет знак. Кроме того, зная скорость можно отбрасывать ошибочные данные с высотомера.
 
RU Alexeev Max #24.11.2010 12:32  @Oxandrolone#24.11.2010 12:25
+
-
edit
 

Alexeev Max

втянувшийся

umbriel> Вообще, нужно мерить ускорение по вертикали. Его можно получить из ускорения по местной вертикали ракеты и ориентации ракеты.

На данном этапе и в данном проекте технически нереализуемо. Ускорение измеряется относительно корпуса ракеты строго параллельно корпусу. Зависит только от установки акселероментра, таковы технические ограничения. Возможности контролировать ориентацию в пространстве НЕТ.

И потом, во всей ветке подробно описано про создаваемое БРЭО. Соответственно обсуждение ведется в рамках этой идеи и ровно в рамках тех решений которые в эту схему заложены.

Идея абсолютно круглой ракеты в вакууме и гипотетического БРЭО (с трехстепенным гироскопом, трехосевым акселерометром и мощнейшей ЭВМ на борту) здесь не рассматривается.

Итого.
Акселерометр измеряющий ускорение относительно центральной оси ракеты, оцифровка 10бит.
Высотомер, оцифровка 10бит.
Микроконтроллер 8бит, 8мгц, 8кб. Код программы на ASM.

В рамках такой техники и решается задача поиска апогея. ВСЕ.
 
Это сообщение редактировалось 24.11.2010 в 12:50
RU umbriel #24.11.2010 12:59  @Alexeev Max#24.11.2010 12:32
+
-
edit
 

umbriel

опытный

A.M.> Акселерометр измеряющий ускорение относительно центральной оси ракеты, оцифровка 10бит.
A.M.> Высотомер, оцифровка 10бит.
A.M.> Микроконтроллер 8бит, 8мгц, 8кб. Код программы на ASM.
A.M.> В рамках такой техники и решается задача поиска апогея. ВСЕ.

Мыло да мочало - начинай сначала %) Извиняюсь вобщем что влез :)
 
RU Alexeev Max #24.11.2010 13:08  @Oxandrolone#24.11.2010 12:59
+
-
edit
 

Alexeev Max

втянувшийся

umbriel> Мыло да мочало - начинай сначала %) Извиняюсь вобщем что влез :)

То что "влез"... правильно сделал :)

Идея мерить скорость с двух приборов отличная, для первых экспериментов очень интересно.

Основной прибор - это высотомер
Вспомогательный - акселерометр

Пришли к тому, что надо выделять максимум по высотомеру.
 
UA Serge77 #24.11.2010 13:15  @SashaMaks#24.11.2010 12:16
+
-
edit
 

Serge77

модератор

SashaPro> А мне казалось достаточно просто условия: Сумма значений ускорений разгона и торможения равна 0 при достижении апогея.

Так это и есть определение апогея интегрированием, про ошибки которого я писал.
UA Serge77 #24.11.2010 13:19  @Oxandrolone#24.11.2010 12:25
+
-
edit
 

Serge77

модератор

Serge77>> Не годится. Во-первых, по акселерометру скорость вычисляется весьма неточно, потому что накапливается ошибка интегрирования.
umbriel> Насколько неточно?

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

umbriel> Но ты же не знаешь, какая высота будет у апогея? Известно только что скорость по вертикали поменяет знак.

А ещё известно, что после апогея высота начинает уменьшаться. Поэтому точную высоту полёта заранее знать не надо. Достаточно просто делать то, о чём было написано чуть выше.
+
-
edit
 

umbriel

опытный

Serge77> А ещё известно, что после апогея высота начинает уменьшаться. Поэтому точную высоту полёта заранее знать не надо. Достаточно просто делать то, о чём было написано чуть выше.

Ты сам написал:
>при переходе через скорость звука в обе стороны датчик давления показывает кратковременное падение давления, а значит МК подумает, что это апогей. Это основная проблема для барометрических датчиков апогея.

А если считать по скорости и отбрасывать данные с датчика, соответствующие отрицательным ускорениям больше g, то такой проблемы нет.
 
+
-
edit
 

SashaPro

аксакал

SashaPro>> Сумма значений ускорений разгона и торможения равна 0 при достижении апогея.
Serge77> Так это и есть определение апогея интегрированием, про ошибки которого я писал.

И сколько эта ошибка составляет от максимально измеряемого ускорения датчиком? 1/2, 1/4, 1/10, 1/20, 1/50, 1/100 или 1/1000?

А так принципиально важно, чтобы апогей был определён для выброса парашюта точно метр в метр? Почему не подходит вариант немного погодя после прохождения апогея?
1 5 6 7 8 9 29

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru