реклама на сайте
подробности

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> Уточнение момента прихода сигнала
bahurin
сообщение Sep 6 2009, 12:50
Сообщение #16


Местный
***

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



Цитата(DMax @ Sep 4 2009, 23:25) *
Доброго времени суток всем!

Есть такая проблема: надо определить момент прихода сигнала с точностью выше, чем интервал сэплирования. Сигнал - заранее известная последовательность с хорошими корреляционными свойствами.


В навигации это классическая задача. Если корреляционный пик треугольный, то вычисляют текущую корреляционный пик, опережающий на полсивола ПСП и запаздывающий на полсимвола ПСП и далее добиваются равентсва опережающего и запаздывающего корреляционных пиков следящим контуром. См. Харрисов Перов Спутниковая навигационная система Глонасс.
Go to the top of the page
 
+Quote Post
Alex65111
сообщение Sep 6 2009, 17:49
Сообщение #17


Частый гость
**

Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729



Цитата(petrov @ Sep 6 2009, 12:57) *
в чём проблема сделать согласованный фильтр в 2 отсчёта на символ, импульсная характеристика которого в точности повторяет импульс передатчика?


А на самом деле как? Обычно при расчете фильтра его порядки получаются далеко не 2 отсчета?
Go to the top of the page
 
+Quote Post
des00
сообщение Sep 7 2009, 03:14
Сообщение #18


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(Alex65111 @ Sep 6 2009, 12:49) *
А на самом деле как? Обычно при расчете фильтра его порядки получаются далеко не 2 отсчета?


как я понял имелось ввиду расположение приемного фильтра в тактовом домене 2 отсчета на символ.


--------------------
Go to the top of the page
 
+Quote Post
Alex65111
сообщение Sep 7 2009, 04:29
Сообщение #19


Частый гость
**

Группа: Участник
Сообщений: 141
Регистрация: 25-10-07
Пользователь №: 31 729



Цитата(des00 @ Sep 7 2009, 07:14) *
как я понял имелось ввиду расположение приемного фильтра в тактовом домене 2 отсчета на символ.


Более наглядно можно?
Go to the top of the page
 
+Quote Post
alex_os
сообщение Sep 7 2009, 05:17
Сообщение #20


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030



Цитата(GetSmart @ Sep 6 2009, 12:25) *
Можно я тут сумничаю? smile.gif

Надо сделать ещё одну "кореляцию" кореляционной функции с треугольником. Шумы могут исказить вершину треугольника и тогда три верхних точки будут врать. Поэтому нужно использовать в расчётах как можно больше точек в окресности вершины, принадлежащих треугольнику. Короче, алгоритм должен "спозиционировать" опорный треугольник на функции кореляции так, чтобы был минимум квадратов отклонений. При этом все шумы (неровности на треугольнике) сгладятся и не повлияют на точность. В простом виде такой алгоритм заключается в нахождении двух линий - сторон треугольника слева и справа от вершины, и уже точку пересечения линий можно посчитать с высокой точностью, гораздо выше одного сэмпла.


Это не правильно, оптимальная оценка получается именно нахождением максимума коррелятора, это будет максимально правдоподобная оценка. Никакая дополнительная фильтрация и "корреляция корреляции" не нужна.


Цитата(DMax @ Sep 6 2009, 12:37) *
Она имеет вид треугольника в том случае, когда частота дискретизации совпадает с частотой манипулирования фазой. Попробуйте увеличить частоту дискретизации скажем раз в 10 и вы увидите, что (в зависимости от того как ляжет такт оцифровки) пик согласованного фильтра у вас расползется на 9-10 точек примерно одного уровня.


Если считать корреляцию в непрерывном времени, то для фазовой модуляции с мгновенными скачками фазы будет треугольник. В дискретном времени должен наблюдаться дискретизированный треугольник.
p.s. Вообще два отсчета на символ для "прямоугольно-треугольного" случая, наверное маловато будет ( тут вспоминается тов. Котельников smile.gif)

Прикрепленное изображение

Код
x = zeros(1000,1);
for i=1:10:1000
    if(randn()>0)     x(i:i+9) = 1;
    else        x(i:i+9) = -1;    end
end
y=xcorr(x,x+1*randn(1000,1));
plot(y(950:1050))


--------------------
ну не художники мы...
Go to the top of the page
 
+Quote Post
DMax
сообщение Sep 7 2009, 08:31
Сообщение #21


Частый гость
**

Группа: Свой
Сообщений: 161
Регистрация: 19-01-08
Из: Питер
Пользователь №: 34 234



Цитата(petrov @ Sep 6 2009, 12:57) *
Надо не дублировать, эталонная последовательность должна быть так же сглажена как и последовательность в передатчике, в чём проблема сделать согласованный фильтр в 2 отсчёта на символ, импульсная характеристика которого в точности повторяет импульс передатчика?


Мне уже приходила в голову такая мысль. Но как узнать импульс передатчика? С какой точностью он должен быть измерен? Я просто понятия не имею про аналоговую часть передачтика.
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Sep 7 2009, 09:08
Сообщение #22


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Цитата(alex_os @ Sep 7 2009, 11:17) *
Это не правильно, оптимальная оценка получается именно нахождением максимума коррелятора, это будет максимально правдоподобная оценка. Никакая дополнительная фильтрация и "корреляция корреляции" не нужна.

Моя версия ближе к истине чем у других. Я навёл справки у ребят, которые занимались аналогичной задачей. Только они находили период (то есть расстояние между пиками кор.функции) сложного сигнала методом кореляции с точностью намного выше одного сэмпла. В присутствии больших шумов вершина треугольника становится размазанной. От этого не избавиться никакой разумной фильтрацией. Алгоритм точного нахождения вершины заключается в следующем. Когда вершина размазана, как ни странно, но стороны треугольника на их средних уровнях очень прямые. Так вот требуется найти две точки на одинаковых (допустим правых) сторонах треугольника на одном горизонтальном уровне (примерно посередине высоты треугольника) и по этим точкам вычислить расстояние между ними для определения точного периода. Разумеется, две точки не будут иметь одинаковый уровень, поэтому одну из точек нужно будет интерполировать до соседней, при этом как раз позиция по Х второй точки на втором треугольнике будет дробной. Так вот, расстояние между точками (X2-X1) будет точным периодом.

Применительно к этой поставленной задаче - нужно искать не пик корреляции, там неверное значение.


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
alex_os
сообщение Sep 7 2009, 09:10
Сообщение #23


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030



Цитата(DMax @ Sep 7 2009, 12:31) *
Мне уже приходила в голову такая мысль. Но как узнать импульс передатчика? С какой точностью он должен быть измерен? Я просто понятия не имею про аналоговую часть передачтика.


Спектр сигнала можете измерить? Если да, сделайте коротенький sqrt raised cosine фильтр с похожим ачх,
коэффициент скругления(rolloff) подбирать чтобы было примерно похоже. Matlab fdatool Вам поможет. Особая точность не нужна.


--------------------
ну не художники мы...
Go to the top of the page
 
+Quote Post
petrov
сообщение Sep 7 2009, 09:21
Сообщение #24


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(DMax @ Sep 7 2009, 12:31) *
Мне уже приходила в голову такая мысль. Но как узнать импульс передатчика? С какой точностью он должен быть измерен? Я просто понятия не имею про аналоговую часть передачтика.


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


Цитата(GetSmart @ Sep 7 2009, 13:08) *
Моя версия ближе к истине чем у других. Я навёл справки у ребят, которые занимались аналогичной задачей. Только они находили период (то есть расстояние между пиками кор.функции) сложного сигнала методом кореляции с точностью намного выше одного сэмпла. В присутствии больших шумов вершина треугольника становится размазанной. От этого не избавиться никакой разумной фильтрацией. Алгоритм точного нахождения вершины заключается в следующем. Когда вершина размазана, как ни странно, но стороны треугольника на их средних уровнях очень прямые. Так вот требуется найти две точки на одинаковых (допустим правых) сторонах треугольника на одном горизонтальном уровне (примерно посередине высоты треугольника) и по этим точкам вычислить расстояние между ними для определения точного периода. Разумеется, две точки не будут иметь одинаковый уровень, поэтому одну из точек нужно будет интерполировать до соседней, при этом как раз позиция по Х второй точки на втором треугольнике будет дробной. Так вот, расстояние между точками (X2-X1) будет точным периодом.

Применительно к этой поставленной задаче - нужно искать не пик корреляции, там неверное значение.


Писали вам уже что неправильно это, если мксимум размазан то и не определить его точно никакими ухищрениями в принципе.
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Sep 7 2009, 09:33
Сообщение #25


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Цитата(petrov @ Sep 7 2009, 15:21) *
Писали вам уже что неправильно это, если мксимум размазан то и не определить его точно никакими ухищрениями в принципе.

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

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

Сообщение отредактировал GetSmart - Sep 7 2009, 09:40


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
alex_os
сообщение Sep 7 2009, 09:35
Сообщение #26


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030



Цитата(GetSmart @ Sep 7 2009, 13:08) *
Моя версия ближе к истине чем у других. Я навёл справки у ребят, которые занимались аналогичной задачей. Только они находили период (то есть расстояние между пиками кор.функции) сложного сигнала методом кореляции с точностью намного выше одного сэмпла. В присутствии больших шумов вершина треугольника становится размазанной. От этого не избавиться никакой разумной фильтрацией. Алгоритм точного нахождения вершины заключается в следующем. Когда вершина размазана, как ни странно, но стороны треугольника на их средних уровнях очень прямые. Так вот требуется найти две точки на одинаковых (допустим правых) сторонах треугольника на одном горизонтальном уровне (примерно посередине высоты треугольника) и по этим точкам вычислить расстояние между ними для определения точного периода. Разумеется, две точки не будут иметь одинаковый уровень, поэтому одну из точек нужно будет интерполировать до соседней, при этом как раз позиция по Х второй точки на втором треугольнике будет дробной. Так вот, расстояние между точками (X2-X1) будет точным периодом.

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


--------------------
ну не художники мы...
Go to the top of the page
 
+Quote Post
petrov
сообщение Sep 7 2009, 09:45
Сообщение #27


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



Цитата(GetSmart @ Sep 7 2009, 13:33) *
В том то и фишка, что определить. Люди тестировали свои алгоритмы на промышленном оборудовании. Я же не просто так рассказал.


Почитайте книжки по радиолокации, максимум на выходе согласованного фильтра это и есть самый луший обнаружитель, лучше в принципе сделать невозможно что бы там ребята не говорили.
Go to the top of the page
 
+Quote Post
alex_os
сообщение Sep 7 2009, 09:48
Сообщение #28


Знающий
****

Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030



Цитата(GetSmart @ Sep 7 2009, 13:33) *
В том то и фишка, что определить. Люди тестировали свои алгоритмы на промышленном оборудовании. Я же не просто так рассказал.

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

Дык, ни кто не говорит что это не работает, просто это не есть оптимальная оценка. Кстати у треугольника есть еще левая сторона smile.gif, можно находить время пересечения порога с левой стороной и момент пересечения с правой и усреднять.


--------------------
ну не художники мы...
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Sep 7 2009, 09:53
Сообщение #29


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Цитата(alex_os @ Sep 7 2009, 15:35) *
Так крутые фронты дрожат не меньше чем вершина.

Это по-вашему, гипотетически. Ну а практически - реально меньше.

Цитата(petrov)
Почитайте книжки по радиолокации, максимум на выходе согласованного фильтра это и есть самый луший обнаружитель, лучше в принципе сделать невозможно что бы там ребята не говорили.

Может оказаться так, что реализация подходящего согласованного фильтра будет черезмерно сложной (если не гипотетической), по сравнению с предложенным мной алгоритмом. Я говорю о том, что информация о пике/максимуме находится не только на вершине, но и на склонах треугольника. И просто взглянув на график кор.функции очень зашумлённого сигнала можно будет понять откуда проще и точнее вытащить информацию о максимуме.

Цитата(alex_os @ Sep 7 2009, 15:48) *
Кстати у треугольника есть еще левая сторона smile.gif, можно находить время пересечения порога с левой стороной и момент пересечения с правой и усреднять.

Только у этого треугольника может быть ещё наклон, который всё подпортит smile.gif Но пораскинув мозгами можно и эту проблему решить.

Сообщение отредактировал GetSmart - Sep 7 2009, 10:27


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
fontp
сообщение Sep 7 2009, 10:13
Сообщение #30


Эксперт
*****

Группа: Свой
Сообщений: 1 467
Регистрация: 25-06-04
Пользователь №: 183



По первой части вопроса, есть теоретически достижимая оценка максимального правдоподобия
Крамера-Рао
http://www.cplire.ru/joined/mac/lection5/text.html
http://www.ndt.net/article/ultragarsas/63-...%20Dumbrava.pdf

Грубо говоря стандартное отклонение позиционирования во времени не может быть для одиночного импульса лучше чем
T / sqrt(SNR), T - продолжительность импульса, SNR - сигнал/шум
Для псевдослучайной последовательности длиной N должно получиться что-то ~ T/sqrt(N*SNR)

Поищите Крамера-Рао или CRLB в Гугле. Это в экзаменах есть ))
Go to the top of the page
 
+Quote Post

4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 15th June 2025 - 17:36
Рейтинг@Mail.ru


Страница сгенерированна за 0.01533 секунд с 7
ELECTRONIX ©2004-2016