|
Мтоды спектрального оценивания |
|
|
|
Jan 9 2010, 10:52
|
Группа: Участник
Сообщений: 8
Регистрация: 9-01-10
Пользователь №: 54 682

|
Здрасте. Задачка по радиолокации. Хочу реализовать в матлабе обработку сигналов с элементов линейной антенной решетки(АР). В результате нужно определить углы прихода сигналов, т.е. получить пространственный спектр и угловые координаты целей. Имеется N элементов АР, с них снимаем пространственные отсчеты комплексной огибающей, получаем вектор отсчетов X = [1, exp(j*2*pi*sin(tetta)*d/lambda), exp(j*2*2*pi*sin(tetta)*d/lambda).......exp(j*(n-1)*2*pi*sin(tetta)*d/lambda)]Т Где d - расстояние между элементами АР, lambda - длина волны (интересно только их соотношение), tetta - угол прихода сигнала. Пусть источник один. Для примера все амплитуды примем равными 1. Далее формируем пространственно-корреляционную матрицу: R=X*XH Дальше вводим опорный вектор, характеризующий плоскую волну волну с угла альфа: F0 = [1, exp(j*2*pi*sin(alpha)*d/lambda), exp(j*2*2*pi*sin(alpha)*d/lambda).......exp(j*(n-1)*2*pi*sin(alpha)*d/lambda)]Т alpha принимает по очереди все значения из заданного диапазона углов. И производим, к примеру, оценку Бартлета: PБ(alpha) = F0H*R*F0 (1) Значение РБ[/b](alpha) должно характеризовать мощность сигнала, распространяющегося в нвправлении tetta. Я строю получившуюся функцию PБ от alpha, и получаю график с размытым пиком, соответствующем заданному тетта и гиганскую погрешность, И абсолютную неспособность алгоритма разрешить две цели, находящиеся на любом угловом расстоянии. Если я задаю два угла тетта, то максимум функции Р один и соответствует углу, посередине между заданными. Кто-нибудь знает как реализуются такие методы? И какой физический смысл выражения (1)? Весь теоретический материал подчерпнут из книги Канащенкова "Защита радиолокационных систем от помех"
Сообщение отредактировал blondex - Jan 9 2010, 10:58
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 22)
|
Jan 9 2010, 18:40
|

Местный
  
Группа: Участник
Сообщений: 240
Регистрация: 20-09-08
Пользователь №: 40 347

|
чтото вы не так написали по ходу. Если есть массив X = [1, exp(j*2*pi*sin(tetta)*d/lambda), exp(j*2*2*pi*sin(tetta)*d/lambda).......exp(j*(n-1)*2*pi*sin(tetta)*d/lambda)]^T, то думается что аргумент любой из экспонент даст arg = (n-1)*2*pi*sin(tetta)*d/lambda). Поскольку n, d и лямбда известны то достаточно: sin(tetta) = arg*lambda/((n-1)*2*pi*d); ну и собсна tetta = asin от всего этого безобразия. Однако мне лично после фразы Цитата Значение РБ(alpha) должно характеризовать мощность сигнала, распространяющегося в направлении tetta. как то страшно за войска ПВО становиться
|
|
|
|
|
Jan 10 2010, 09:23
|
Группа: Участник
Сообщений: 8
Регистрация: 9-01-10
Пользователь №: 54 682

|
Цитата(bahurin @ Jan 9 2010, 21:40)  чтото вы не так написали по ходу. Дело в том, что то, что я написала в векторе Х - это некая модель входных отсчетов. То есть таким образом я задаю (моделирую) входные сигналы на элементах АР. Тут нет шумов, и источник излучения всего один. Если в выражение добавить все остальное, предположить, что число источников равно К, все они разной мощности, добавить шумы, некоррелированные в разных каналах, то вектор входных отсчетов примет следующий вид: X = [A 1*exp(fi 1)*(exp(j*2*pi*sin(tetta 1)*d/lambda)+exp(j*2*pi*sin(tetta 2)*d/lambda)+.....+exp(j*2*pi*sin(tetta К)*d/lambda)); A 2*exp(fi 2)*(exp(j*2*pi*sin(tetta 1)*d/lambda)+exp(j*2*pi*sin(tetta 2)*d/lambda);.......] Короче, выражение усложняется, число неизвестных растет, да и на приемной стороне этого всего неизвестно, ни числа источников, ни отношения шумов, ни случайных фаз fi i, которые генерируются randomом. Кстати, со своей проблемой я наполовину разобралась, если увеличить число элементов АР до астрономических значений, то алгоритм все же работает и разрешает сигналы с близких направлений, вот только число элементов у меня 100 - многовато. Может кто знаком с реализацией одного из методов, таких как MUSIC, метод максимального Правдоподобия, Прони и тд? Цитата как то страшно за войска ПВО становиться А че с ними будет? Не за тех боитесь)
|
|
|
|
|
Jan 10 2010, 13:21
|

Группа: Участник
Сообщений: 4
Регистрация: 20-02-07
Из: Microsoft
Пользователь №: 25 529

|
Цитата(blondex @ Jan 10 2010, 12:23)  Может кто знаком с реализацией одного из методов, таких как MUSIC, метод максимального Правдоподобия, Прони и тд? Может кто и знаком http://dsp-book.narod.ru/marpl.htm
|
|
|
|
|
Jan 10 2010, 13:38
|
Группа: Участник
Сообщений: 8
Регистрация: 9-01-10
Пользователь №: 54 682

|
Цитата(Bill G8s @ Jan 10 2010, 16:21)  Я читала марпла. Кстати, на этом сайте ссылки на все главы битые. Все методы там описаны подробно,но книжку не попросишь объяснить, поделиться опытом и не спросишь почему программа не работает
Сообщение отредактировал blondex - Jan 10 2010, 13:39
|
|
|
|
|
Jan 10 2010, 15:11
|

Группа: Участник
Сообщений: 4
Регистрация: 20-02-07
Из: Microsoft
Пользователь №: 25 529

|
Цитата(blondex @ Jan 10 2010, 16:38)  Я читала марпла. Кстати, на этом сайте ссылки на все главы битые. Все методы там описаны подробно,но книжку не попросишь объяснить, поделиться опытом и не спросишь почему программа не работает Действительно... эта ссылка устарела На этом сайте есть и нормальная ссылка - тут http://dsp-book.narod.ru/books.htmlНеужели Вы думаете, что на форуме могут объяснить метод лучше чем в классической монографии эксперта?
Сообщение отредактировал Bill G8s - Jan 10 2010, 15:12
|
|
|
|
|
Jan 10 2010, 18:32
|
Участник

Группа: Участник
Сообщений: 26
Регистрация: 25-06-06
Пользователь №: 18 344

|
Может поможет книжка "Narrowband Direction of Arrival Estimation for Antenna Arrays" http://www.filefactory.com/file/04fe51/n/15s7_rar На стр 56 там есть какой-то матлаб-код: % Simulation of MUSIC, ESPRIT, MVDR, Min-Norm and Classical DOA % algorithms for a uniform linear array. Цитата Все методы там описаны подробно,но книжку не попросишь объяснить, поделиться опытом и не спросишь почему программа не работает На мой взгляд, самое главное - это не советы, а тестовая среда в которой можно моделировать работу алгоритмов в разных условиях, и сравнивать их между собой. Если есть такая среда, то можно считать что большая часть работы уже сделана: добавлять алгоритмы по одному и снимать данные - это просто вопрос времени... Если что-то не получается, то самые общие советы - это во-первых отлаживать по частям, а во-вторых - визуализировать ключевую информацию (в данном случае - зависимость мощности от направления), Т.е. начать с одного источника без шума, получить при помощи самого простого алгоритма диаграмму направленности, убедиться что сама тестовая среда работает правильно, а потом уже добавлять шум, помехи, источники и другие алгоритмы.
|
|
|
|
|
Jan 12 2010, 08:20
|

Местный
  
Группа: Свой
Сообщений: 202
Регистрация: 2-10-06
Из: Петербург
Пользователь №: 20 881

|
Цитата(blondex @ Jan 9 2010, 13:52)  Хочу реализовать в матлабе обработку сигналов с элементов линейной антенной решетки(АР). В результате нужно определить углы прихода сигналов, т.е. получить пространственный спектр и угловые координаты целей. Кто-нибудь знает как реализуются такие методы? Чтобы упростить себе задачу представьте, что спектральная обработка в пространственной области при выполнении условия, что расстояние между элементами решетки меньше половины длины волны сигнала, ничем не отличается от обычной спектральной обработки сигналов во временной области. Возьмите две комплексные синусоиды и поэкспериментируйте с разными методами спектрального оценивания при помощи функций из Signal Processing Toolbox или при помощи пакета для MATLAB, который называется SALP (он лежит здесь - http://www.comtec.e-technik.uni-kassel.de/salp/index.html). Меняйте разнос между частотами сигналов, их уровень относительно шума, количество отсчетов в анализируемой выборке (эквивалент количества элементов решетки) и т.д. Так вы быстрее почувствуете разницу между методами. А потом, если будет желание и необходимость, можете уже сами все через матрицы переделать. Цитата(blondex @ Jan 9 2010, 13:52)  И какой физический смысл выражения (1)? Это эквивалент преобразования Фурье в матричной форме. В соответствии с теоремой Винера-Хинчина спектральная плотность мощности равна преобразованию Фурье от автокорреляционной функции. У вас вместо автокорреляционной функции фигурирует ее оценка в виде корреляционной матрицы. Пики в выходной функции будут соответствовать углам прихода сигналов, если Бартлетт их может различить (поскольку Бартлетт - это классический метод спектрального оценивания на основе БПФ, то разрешающая способность у него не ахти какая). Цитата(blondex @ Jan 9 2010, 13:52)  Весь теоретический материал подчерпнут из книги Канащенкова "Защита радиолокационных систем от помех" IMHO Марпл все-таки лучше для вас на данном этапе, а еще лучше поискать какую нибудь информацию по теме оценки DOA (Direction of Arrival) на английском, не так перегруженную математикой.
|
|
|
|
|
Jan 12 2010, 09:31
|

Гуру
     
Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874

|
Цитата(blondex @ Jan 10 2010, 16:38)  Все методы там описаны подробно,но книжку не попросишь объяснить, поделиться опытом и не спросишь почему программа не работает Это непростая область. Нужно понимать используемую математику. Во временной области ваши сигналы от целей коггерентны или нет? Это один из ключевых вопросов для выбора методов решения задачи. Пока не поняли почему - Вы не понимаете ничего.
--------------------
Пишите в личку.
|
|
|
|
|
Jan 16 2010, 09:07
|
Группа: Участник
Сообщений: 8
Регистрация: 9-01-10
Пользователь №: 54 682

|
AndeyP, Цитата Может поможет книжка "Narrowband Direction of Arrival Estimation for Antenna Arrays" http://www.filefactory.com/file/04fe51/n/15s7_rarНе поняла как скачать. Цитата Если что-то не получается, то самые общие советы - это во-первых отлаживать по частям, а во-вторых - визуализировать ключевую информацию (в данном случае - зависимость мощности от направления), Т.е. начать с одного источника без шума, получить при помощи самого простого алгоритма диаграмму направленности, убедиться что сама тестовая среда работает правильно, а потом уже добавлять шум, помехи, источники и другие алгоритмы. Спасибо, пока так и делаю. hobgoblin, спасибо, вы кое что прояснили, с оценкой Бартлета понятно. А вот к примеру выражение для мощности максимального правдоподобия принимает следующий вид P=( F0H* R-1* F0) -1 (2) В чем физ смысл преобразования Фурье от обратной КМ? Почему получается лучше разрешение? Цитата Во временной области ваши сигналы от целей коггерентны или нет? Сигналы от целей в разных каналах когерентны, шумы нет.
|
|
|
|
|
Jan 18 2010, 07:54
|

Гуру
     
Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874

|
Цитата(blondex @ Jan 16 2010, 12:07)  Сигналы от целей в разных каналах когерентны, шумы нет. Это сильно усложняет Вашу задачу. Соболезную. PS Для понимания математики антенных решеток рекомендую Van Trees "Optimum Array Processing, Part IV of Detection, Estimation, and Modulation Theory" PPS Я спрашивал не про коггерентность сигналов от одной цели в разных каналах приёма (без этой коггерентности нет решетки), а про коггерентность сигналов от разных целей во временной области. Возможно, я Вам рано соболезновал.
--------------------
Пишите в личку.
|
|
|
|
|
Jan 18 2010, 18:28
|
Группа: Участник
Сообщений: 8
Регистрация: 9-01-10
Пользователь №: 54 682

|
Наверное соболезновали вы мне рано, и вообще зря, т.к. сигналы от разных целей некогерентны.
|
|
|
|
|
Jan 18 2010, 18:57
|

Гуру
     
Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874

|
Цитата(blondex @ Jan 18 2010, 21:28)  Наверное соболезновали вы мне рано, и вообще зря, т.к. сигналы от разных целей некогерентны. Рад за вас. DOA для некоггерентных целей гораздо проще. Только не забудьте, что суммировать нужно не входные сигналы от разных целей, а корреляционные матрицы от разных целей. Перекрестные корреляционные члены от различных целей должны быть равны нулю, так как осредняются до нуля при накоплении корреляционной матрицы во временной области. Ну или для чистоты теста накопите корреляционные матрицы просуммировав большое количество отсчетов с различными случайными фазовыми множителями у целей.
--------------------
Пишите в личку.
|
|
|
|
|
Jan 19 2010, 20:03
|
Участник

Группа: Участник
Сообщений: 26
Регистрация: 25-06-06
Пользователь №: 18 344

|
Цитата Может поможет книжка "Narrowband Direction of Arrival Estimation for Antenna Arrays" http://www.filefactory.com/file/04fe51/n/15s7_rar На стр 56 там есть какой-то матлаб-код: Прикрепил код из книжки.
Прикрепленные файлы
doa.zip ( 1.12 килобайт )
Кол-во скачиваний: 36
|
|
|
|
|
Jan 24 2010, 10:03
|
Группа: Участник
Сообщений: 8
Регистрация: 9-01-10
Пользователь №: 54 682

|
Цитата(Oldring @ Jan 18 2010, 21:57)  Только не забудьте, что суммировать нужно не входные сигналы от разных целей, а корреляционные матрицы от разных целей. Пожалуйста поясните. Когда я моделирую сигнал от нескольких целей, то мне нужно сложить сигналы с соответствующими амплитудами и фазами в каждом канале, и потом я могу найти корреляционную матрицу для как раз суммы сигналов с разных целей вместе с шумами и т.д. Как мне сложить корреляционные матрицы от разных целей? Я же по идее не знаю сколько сигналов и разделять их собираюсь по результатам работы алгоритма? Цитата Прикрепил код из книжки. AndeyP, спасибо, а всю книжку можно?  Ну пожалуйста))
Сообщение отредактировал blondex - Jan 24 2010, 10:07
|
|
|
|
|
Jan 24 2010, 13:55
|
Местный
  
Группа: Участник
Сообщений: 336
Регистрация: 7-03-07
Из: Петербург
Пользователь №: 25 961

|
Цитата(blondex @ Jan 24 2010, 14:03)  сигнал от нескольких целей Естественно, для чего всё и делается - пространственным полосовым фильтром выделить нужные сигналы. Во входном сигнале от решётки сигналы от множественных источников суммированы и в ковариационной матрице источники от разных целей уже смешаны (как в принципе суперпозиции волн :). Есть ещё одна проблема, связанная с диффракционными максимумами - это пространственный аналог наложения частот. В широкополосном сигнале могут появляться ложные максимумы, поэтому нужно согласовывать период решётки и полосу и фильтровать входные сигналы. Книжка 7MB, не приаттачить. Переписал сюда: http://electronix.ru/forum/index.php?showt...st&p=692733
|
|
|
|
|
Jan 25 2010, 08:47
|

Гуру
     
Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874

|
Цитата(blondex @ Jan 24 2010, 13:03)  Пожалуйста поясните. Когда я моделирую сигнал от нескольких целей, то мне нужно сложить сигналы с соответствующими амплитудами и фазами в каждом канале, и потом я могу найти корреляционную матрицу для как раз суммы сигналов с разных целей вместе с шумами и т.д. Как мне сложить корреляционные матрицы от разных целей? Я же по идее не знаю сколько сигналов и разделять их собираюсь по результатам работы алгоритма? Но ведь для моделирования Вы сами эти сигналы готовите? Запишите более подробно как Вы готовите сигналы для теста и как потом считаете корреляционную матрицу, чтобы разговор был предметным. Возможно Вы и так делаете всё правильно, просто не поняли моё замечание. Но из написанного Вами ранее возможны и другие варианты, поэтому я и предупредил. Должно быть R=sum( Xi* XiH)
--------------------
Пишите в личку.
|
|
|
|
|
Jan 26 2010, 17:24
|
Группа: Участник
Сообщений: 8
Регистрация: 9-01-10
Пользователь №: 54 682

|
Цитата(Oldring @ Jan 25 2010, 11:47)  Но ведь для моделирования Вы сами эти сигналы готовите?
Запишите более подробно как Вы готовите сигналы для теста и как потом считаете корреляционную матрицу, чтобы разговор был предметным. Возможно Вы и так делаете всё правильно, просто не поняли моё замечание. Но из написанного Вами ранее возможны и другие варианты, поэтому я и предупредил.
Должно быть R=sum(Xi*XiH) Для моделирования действительно сигналы готовлю сама, но на приемной же стороне я вроде как не знаю что мне пришло, сколько сигналов, с какой амплитудой. Цитата R=sum(Xi*XiH) , Ведь Xi - это же не сигнал от i-го источника? Я моделирую так: Если у меня M целей, то на k-м элементе антенной решетки у меня есть сигнал: X k =sum(A j*exp(i*(k-1)*2pi*d*sin(tetta j))); где A j - амплитуда, tetta - фаза j-го сигнала. d - база, j = 1...M. Потом еще накладываю шум. То есть на каждый антенный элемент приходит сумма сигналов со своими фазами. Я считаю корреляционную матрицу: R=< Xi* XiH>, где <*> - это усреднение, т.е. R=sum( Xi* XiH)/N, где N - это число временных отсчетов, а Xi[sup] - это вектор пространственных отсчетов с каждого элемента АР в один момент времени, Xi+1[sup] - в следующий момент времени. AndrewN, Цитата В широкополосном сигнале могут появляться ложные максимумы, поэтому нужно согласовывать период решётки и полосу и фильтровать входные сигналы. Не смотря на вполне очевидную аналогию обработок временных и пространственных отсчетов, второе для понимания дается мне гораздо сложнее. Фильтр в данном случае, - это что-то вроде диаграммы направленности? А полоса - это ширина ДН? Как это увязано с тем, что это все-таки одновременный обзор и физически мы не перемещаем зондирующий узкий луч по сектору сканирования, а освещаем его целиком? Что здесь фильтр? Сама обработка? PS Спасибо за книжки
Сообщение отредактировал blondex - Jan 26 2010, 17:29
|
|
|
|
|
Jan 26 2010, 21:10
|

Гуру
     
Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874

|
Цитата(blondex @ Jan 26 2010, 20:24)  Я моделирую так: Если у меня M целей, то на k-м элементе антенной решетки у меня есть сигнал: Xk =sum(Aj*exp(i*(k-1)*2pi*d*sin(tettaj))); где Aj - амплитуда, tetta - фаза j-го сигнала. d - база, j = 1...M. Потом еще накладываю шум. То есть на каждый антенный элемент приходит сумма сигналов со своими фазами.
Я считаю корреляционную матрицу: R=<Xi*XiH>, где <*> - это усреднение, т.е. R=sum(Xi*XiH)/N, где N - это число временных отсчетов, а Xi[sup] - это вектор пространственных отсчетов с каждого элемента АР в один момент времени, Xi+1[sup] - в следующий момент времени. Верно. Только в каждом векторе отсчетов решетки Xi, соответствующему временному отсчету i, фазы всех целей tettaj должны быть независимыми случайными величинами tettaij. Если цели некоггерентны. Да и амплитуды сигналов целей могут быть случайными величинами, но это уже не принципиально. Точнее, неверно. В этой формуле tetta j - это не фаза сигнала цели, а азимут цели. Амплитуда сигнала каждой цели A j должна быть независимой комплексной случайной величиной A ij.
--------------------
Пишите в личку.
|
|
|
|
|
Jan 28 2010, 16:51
|
Группа: Участник
Сообщений: 8
Регистрация: 9-01-10
Пользователь №: 54 682

|
Цитата(Oldring @ Jan 27 2010, 00:10)  Точнее, неверно. В этой формуле tettaj - это не фаза сигнала цели, а азимут цели. Амплитуда сигнала каждой цели Aj должна быть независимой комплексной случайной величиной Aij. Принимаю поправку, написала неправильно. И все же, вопрос: Что вы имели ввиду под сложением корреляционных матриц от разных целей? Я моделирую суммарный сигнал, какие корреляционные матрицы от разных целей?
|
|
|
|
|
Jan 28 2010, 17:52
|
Местный
  
Группа: Участник
Сообщений: 336
Регистрация: 7-03-07
Из: Петербург
Пользователь №: 25 961

|
Цитата(blondex @ Jan 26 2010, 20:24)  Не смотря на вполне очевидную аналогию обработок временных и пространственных отсчетов, второе для понимания дается мне гораздо сложнее. Фильтр в данном случае, - это что-то вроде диаграммы направленности? А полоса - это ширина ДН? Как это увязано с тем, что это все-таки одновременный обзор и физически мы не перемещаем зондирующий узкий луч по сектору сканирования, а освещаем его целиком? Что здесь фильтр? Сама обработка? Я еще добавил два издания Даджеон-Мерсеро - 1988 рус и 1995 англ. Посмотрите в гл 6. Плоская волна с еденичной амплитудой описывается комплексной экспонентой exp (i*(omega*t - < k, x>)), k - волновой вектор, его модуль (волновое число) | k| = 2*pi/lambda показывает сколько периодов укладывается в 2*pi едениц длины. lambda и omega связаны волновой скоростью c = omega*lambda = omega/| k|. Для простоты хорошо допустить, что дисперсия (зависимость скорости от длины волны) d c / d lambda = 0. Если зафиксировать все переменные, кроме k, то поворачивая его, можно получить равные комплексные аргументы. Луч - полосовой фильтр - формируется цифровым способом. В зависимости от типа антенны, луч или излучается - активная антенна, или принимается - пассивная антенна. И луч в самом деле перемещается при сканировании. Не очень складно, но не хочется пересказывать Д-М :)
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|