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

 
 
> Определение скважности по спектру
Waso
сообщение Dec 13 2010, 09:13
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 268
Регистрация: 4-11-05
Пользователь №: 10 470



Имеется радиосигнал, модулированный прямоугольными импульсами переменной скважности и немного зашумленный. Сигнал подвергается 2048-точечному БПФ и по полученному спектру я должен определить текущую скважность сигнала. Если смотреть на спектр чистого импульсного сигнала, то первый минимум огибающей (который рядом с максимумом) соответствует частоте, обратной величине ширины импульсов. Я пока написал дубовый алгоритм, который перебирает кратные гармоники и приблизительно определяет этот минимум. Но когда в сигнал добавляется шумок, спектр начинает дрожать. Основная частота определяется четко, а вот по скважности моя програмулина начинает давать шнягу...

Подскажите, пожалуйста, как решить эту задачу грамотно. По идее надо делать корреляцию с ожидаемой функцией огибающей, но огибающая же плавает....
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 27)
AlexeyW
сообщение Dec 13 2010, 09:39
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



Мне кажется, можно еще так: если Вы четко знаете, что вид сигнала - прямоугольный, то скважность четко определяет амплитуду основной гармоники. Можно измерять отношение амплитуды основной гармоники к корню из суммы квадратов всех остальных гармоник (как бы энергетическая оценка).
Вообще, в зашумленных задачах хороши интегральные методы. Например, я как-то использовал цифровой осциллограф для измерения АЧХ. Сначала примитивно - прога считывает с осциллографа цифровые осциллограммы и находит максимум. Но намного точнее и устойчивее было, когда производилось интегрирование квадрата функции и т.д. (не забыв о сдвиге нуля).

Цитата(Waso @ Dec 13 2010, 12:13) *
По идее надо делать корреляцию с ожидаемой функцией огибающей, но огибающая же плавает....

Огибающая ожидаемой функции плавает вместе со скважностью, являясь ее функцией. Соответственно, при корелляционном методе нужно искать максимум корелляции F(экспериментальной) с F(теоретической как функции от скважности).
Go to the top of the page
 
+Quote Post
Waso
сообщение Dec 13 2010, 10:45
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 268
Регистрация: 4-11-05
Пользователь №: 10 470



Вот именно, что функция от скважности. Получается я должен задать несколько форм огибающих - для каждого возможного значения скважности - и проводить анализ с каждой формой. Потом искать среди них максимум. Очень медленно получается. Или есть способ попроще? Я просто не очень знаком с корелляционными методами...

Насчет энергетической оценки - надо попробовать, но мне кажется что шумы тут тоже попортят всю малину... У меня уровень шума сравним с уровнем сигнала, но присутствует не всегда. Помехи - цифровые посылки на соседних частотах.
Go to the top of the page
 
+Quote Post
тау
сообщение Dec 13 2010, 10:47
Сообщение #4


.
******

Группа: Участник
Сообщений: 2 424
Регистрация: 25-12-08
Пользователь №: 42 757



Цитата(Waso @ Dec 13 2010, 13:45) *
Очень медленно получается. Или есть способ попроще? Я просто не очень знаком с корелляционными методами...

тогда просто проинтегрируйте огибающую перед фурье - шум уменьшится.
Go to the top of the page
 
+Quote Post
AlexeyW
сообщение Dec 14 2010, 07:01
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



Кстати, а для чего Вам первоначальное Фурье-преобразование? Почему не хотите использоватьпросто сигнал, и работать с ним без особых сложностей?

Сообщение отредактировал AlexeyW - Dec 14 2010, 07:02
Go to the top of the page
 
+Quote Post
Waso
сообщение Dec 14 2010, 11:32
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 268
Регистрация: 4-11-05
Пользователь №: 10 470



Цитата
тогда просто проинтегрируйте огибающую перед фурье - шум уменьшится.
Это интересный вариант! Спасибо.
Цитата
Кстати, а для чего Вам первоначальное Фурье-преобразование? Почему не хотите использоватьпросто сигнал, и работать с ним без особых сложностей?
Ну оно так по ТЗ надо. Да и по другому легче не получится. Потому что сигнал плавает по амплитуде, шумы иногда бывают и посильнее... Так что тут как-то просто так фронты не выцепишь... Вернее выцепишь много лишнего. А так - знаешь примерно свою частоту. Ищешь в спектре там палку, от нее определяешь первый минимум и готово. Научиться чистить спектр и будет счастье!
Go to the top of the page
 
+Quote Post
AlexeyW
сообщение Dec 14 2010, 16:29
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



Цитата(тау @ Dec 13 2010, 13:47) *
тогда просто проинтегрируйте огибающую перед фурье - шум уменьшится.

А я, честно признаться, не совсем понял. До преобразования? А как именно?
Go to the top of the page
 
+Quote Post
Савинова Анна
сообщение Dec 15 2010, 06:09
Сообщение #8





Группа: Validating
Сообщений: 5
Регистрация: 14-12-10
Из: Томск
Пользователь №: 61 601



Не поняла: так есть только спектр и приблизительный вид сигнала?
Go to the top of the page
 
+Quote Post
Fast
сообщение Dec 15 2010, 06:24
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 216
Регистрация: 31-03-05
Из: Зеленоград
Пользователь №: 3 839



Цитата(AlexeyW @ Dec 14 2010, 22:29) *
А я, честно признаться, не совсем понял. До преобразования? А как именно?
суммируем на интервале T

а можно проинтегрировать по спектральным компонентам после FFT, усреднив несколько раз мгновенный спектр, я б так сделал

Go to the top of the page
 
+Quote Post
Waso
сообщение Dec 15 2010, 09:50
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 268
Регистрация: 4-11-05
Пользователь №: 10 470



Цитата(Савинова Анна @ Dec 15 2010, 15:09) *
Не поняла: так есть только спектр и приблизительный вид сигнала?
Вообще нужно анализировать только спектр. Но в принципе доступ к данным АЦП тоже есть.
Go to the top of the page
 
+Quote Post
тау
сообщение Dec 15 2010, 11:22
Сообщение #11


.
******

Группа: Участник
Сообщений: 2 424
Регистрация: 25-12-08
Пользователь №: 42 757



Цитата(AlexeyW @ Dec 14 2010, 22:29) *
А я, честно признаться, не совсем понял. До преобразования? А как именно?
да это я чушь предложил, не поможет.


Цитата(Waso @ Dec 15 2010, 15:50) *
Вообще нужно анализировать только спектр.

поскольку гармоники спектра соответствуют 2E/(pi*n)*sin(pi*n * t/T) , то организовав цикл по длительности (и по амплитуде Е если она не известна) предполагаемого импульса t в разумных пределах, ищете сумму среднеквадратических разностей между квадратами значений спектра идущих с интервалом 1/T и квадратом по формуле . Определяете наилучшее совпадение по минимуму суммы для всех итераций. Чтобы промежуточные бины спектра не мешались - в этих точках вычислений не производите. Можно к примеру отсеять по амплитуде >0.1 макс.
T (период) определите усреднением по "высоким" бинам , а длительность t по наилучшему совпадению . и затем скважность.

Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
AlexeyW
сообщение Dec 15 2010, 18:04
Сообщение #12


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



Цитата(Fast @ Dec 15 2010, 12:24) *
суммируем на интервале T

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

Цитата(тау @ Dec 15 2010, 17:22) *
то организовав цикл по длительности (и по амплитуде Е если она не известна)

не исключено, что можно обойтись и без цикла. Есть же такое понятие - поиск экстремали функционала. Кажется, тут именно то - поиск значения параметра, от которого зависит корелляционная функция, при котором она имеет экстремум.
Go to the top of the page
 
+Quote Post
Andrey_1
сообщение Dec 30 2010, 21:10
Сообщение #13


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

Группа: Участник
Сообщений: 131
Регистрация: 30-11-10
Пользователь №: 61 268



Цитата(AlexeyW @ Dec 16 2010, 00:04) *
увеличит такой метод шумовую погрешность или уменьшит (по сравнению с прямым обнаружением фронта и спада для измерения длительности), напрямую зависит от длительности фронта "прямоугольного импульса".


не исключено, что можно обойтись и без цикла. Есть же такое понятие - поиск экстремали функционала. Кажется, тут именно то - поиск значения параметра, от которого зависит корелляционная функция, при котором она имеет экстремум.


Измерьте спектр шума в отсутствии сигнала и тупо вычтете из спектра сигнал+шум
Go to the top of the page
 
+Quote Post
AlexeyW
сообщение Jan 8 2011, 15:56
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



Цитата(Andrey_1 @ Dec 31 2010, 03:10) *
Измерьте спектр шума в отсутствии сигнала и тупо вычтете из спектра сигнал+шум

Если б все было так просто, мы бы шум вообще победили sm.gif
Go to the top of the page
 
+Quote Post
Andrey_1
сообщение Jan 10 2011, 19:25
Сообщение #15


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

Группа: Участник
Сообщений: 131
Регистрация: 30-11-10
Пользователь №: 61 268



Цитата(AlexeyW @ Dec 14 2010, 22:29) *
А я, честно признаться, не совсем понял. До преобразования? А как именно?


ФНЧ
Go to the top of the page
 
+Quote Post
AlexeyW
сообщение Jan 11 2011, 18:24
Сообщение #16


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



Цитата(Andrey_1 @ Jan 11 2011, 01:25) *
ФНЧ

Кратко и емко sm.gif
И что это даст? Спектр домножится на АЧХ ФНЧ, в полосе пропускания ничего не изменится, за полосой - с таким же успехом можно просто проигнорировать часть спектра. Как и в предыдущем предложении, Вы хотите преодолеть фундаментальные вещи простыми действиями.
Go to the top of the page
 
+Quote Post
Andrey_1
сообщение Jan 12 2011, 12:04
Сообщение #17


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

Группа: Участник
Сообщений: 131
Регистрация: 30-11-10
Пользователь №: 61 268



Цитата(AlexeyW @ Jan 12 2011, 00:24) *
И что это даст? Спектр домножится на АЧХ ФНЧ, в полосе пропускания ничего не изменится, за полосой - с таким же успехом можно просто проигнорировать часть спектра. Как и в предыдущем предложении, Вы хотите преодолеть фундаментальные вещи простыми действиями.

Интергрировать (собственно ФНЧ это интегрирование в частотной области) предлагал не я - это раз
Опорный сигнал без шума доступен или нет? - это два
Фильтром Вмнера в частотной области не пытались вычистить? - это три
Собственно Вам тот кто дал ТЗ и платит - поэтому это Ваши проблемы
Go to the top of the page
 
+Quote Post
AlexeyW
сообщение Jan 12 2011, 16:19
Сообщение #18


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



Цитата(Andrey_1 @ Jan 12 2011, 18:04) *
Интергрировать (собственно ФНЧ это интегрирование в частотной области) предлагал не я - это раз

ФНЧ - интегрирование во временнОй области

Ну, исходный вопрос не я задавал sm.gif Поэтому на остальные вопросы ничего сказать не могу
Go to the top of the page
 
+Quote Post
Andrey_1
сообщение Jan 13 2011, 07:05
Сообщение #19


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

Группа: Участник
Сообщений: 131
Регистрация: 30-11-10
Пользователь №: 61 268



Цитата(AlexeyW @ Jan 12 2011, 22:19) *
ФНЧ - интегрирование во временнОй области

Ну, исходный вопрос не я задавал sm.gif Поэтому на остальные вопросы ничего сказать не могу


Правильно (думал про деление на jw в частотной) во временной

А чтоб обратное Фурье не взять и вычислять скважность по временному сигналу?
Go to the top of the page
 
+Quote Post
AlexeyW
сообщение Jan 14 2011, 05:37
Сообщение #20


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



Цитата(Andrey_1 @ Jan 13 2011, 13:05) *
А чтоб обратное Фурье не взять и вычислять скважность по временному сигналу?

Да вроде уже предлагали про исходный сигнал, но почему-то, говорит, заказчику неприемлемо. А делать туда потом обратно - наверное, затратно, не знаю. Я бы тоже взял исходный временной сигнал.
После преобразования Фурье сразу выходит основной вопрос точности измерения скважности - не более чем 1/число периодов подсчета. А во временном сигнале можно измерять длительность каждого импульса.
Go to the top of the page
 
+Quote Post
Andrey_1
сообщение Jan 14 2011, 07:32
Сообщение #21


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

Группа: Участник
Сообщений: 131
Регистрация: 30-11-10
Пользователь №: 61 268



Цитата(AlexeyW @ Jan 14 2011, 12:37) *
Да вроде уже предлагали про исходный сигнал, но почему-то, говорит, заказчику неприемлемо. А делать туда потом обратно - наверное, затратно, не знаю. Я бы тоже взял исходный временной сигнал.
После преобразования Фурье сразу выходит основной вопрос точности измерения скважности - не более чем 1/число периодов подсчета. А во временном сигнале можно измерять длительность каждого импульса.

Я бы усреднил мгновенные спектры во времени (чтобы уменьшить влияние случайного шума) и по усредненным данным вычислил значение первого минимума огибающей что даст длительность импульса
Потом сосчитал бы частоту основной гармоники - это частота повторения импульсов - точность будет определяться размером Фурье
Зная эти две частоты можно определить скважность
Go to the top of the page
 
+Quote Post
Waso
сообщение Jan 14 2011, 08:11
Сообщение #22


Местный
***

Группа: Свой
Сообщений: 268
Регистрация: 4-11-05
Пользователь №: 10 470



День добрый! Стараюсь не вмешиваться в полемику, поскольку в этой области я полный дилетант. Насчет известности исходного сигнала - не понятно. Я по Фурье вычисляю максимальный бин и по нему считаю частоту известной. Теперь еще надо найти скважность. И выдать ее в цифровом виде, а там уже заказчик извлекает свою информацию из частоты и скважности.

Можно ли считать опорным сигналом меандр с полученной частотой?

В двух словах - что даст фильтр Винера в частотной области?
Go to the top of the page
 
+Quote Post
AlexeyW
сообщение Jan 14 2011, 21:02
Сообщение #23


Знающий
****

Группа: Свой
Сообщений: 988
Регистрация: 3-11-10
Пользователь №: 60 636



А вообще, это для чего нужно? Быстро ли меняется искомая скважность относительно частоты меандра? Велик ли шум? От этих вещей зависит оптимальный алгоритм.
А про то, что Вы спросили - я тоже не гуру sm.gif
Go to the top of the page
 
+Quote Post
Andrey_1
сообщение Jan 16 2011, 03:33
Сообщение #24


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

Группа: Участник
Сообщений: 131
Регистрация: 30-11-10
Пользователь №: 61 268



Цитата
В двух словах - что даст фильтр Винера в частотной области?

Уберет (разумеется частично) шум если он близок по своеим статистическим свойствам к белому шуму с распределением Гаусса
Go to the top of the page
 
+Quote Post
Andrey_1
сообщение Jan 26 2011, 02:01
Сообщение #25


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

Группа: Участник
Сообщений: 131
Регистрация: 30-11-10
Пользователь №: 61 268



Цитата(Waso @ Jan 14 2011, 11:11) *
Можно ли считать опорным сигналом меандр с полученной частотой?


Думаю таки ДА

Если он есть тогда вычистить шум см:
- LMS adaptive filter (см МАТЛАБ)

Далее синхронное детектирование - перемножте грязный сигнал с опорным - далее ФНЧ - и огибающая у Вас в кармане.

Кроме этого а чтоб благородному дону не попробовать Moving Average Filter (see Google)?
Go to the top of the page
 
+Quote Post
Waso
сообщение Jan 26 2011, 10:57
Сообщение #26


Местный
***

Группа: Свой
Сообщений: 268
Регистрация: 4-11-05
Пользователь №: 10 470



Частота меандра прыгает примерно от 1кГц до 100кГц. Скважность от 2 до 5, меняется вместе с частотой. Результат я должен выдавать с частотой всего 50Гц. Думаю входной сигнал меняется не быстрее. Только что подумал что неплохо бы как-то синхронизоваться с изменениями сигнала.. Но оставим пока этот вопрос. АЦП 12-битный, семплирую с частотой 256кГц чтобы потом легко было делить на 256.

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

Нафик это надо я незнаю. Держат в секрете. Хотя вроде бы и не военная разработка.
Go to the top of the page
 
+Quote Post
gregory
сообщение Feb 7 2011, 09:56
Сообщение #27


Местный
***

Группа: Участник
Сообщений: 215
Регистрация: 10-06-05
Пользователь №: 5 887



Цитата(Waso @ Jan 26 2011, 15:57) *
Частота меандра прыгает примерно от 1кГц до 100кГц. Скважность от 2 до 5, меняется вместе с частотой. Результат я должен выдавать с частотой всего 50Гц. Думаю входной сигнал меняется не быстрее. Только что подумал что неплохо бы как-то синхронизоваться с изменениями сигнала.. Но оставим пока этот вопрос. АЦП 12-битный, семплирую с частотой 256кГц чтобы потом легко было делить на 256.

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

Нафик это надо я незнаю. Держат в секрете. Хотя вроде бы и не военная разработка.


Может накопить сам сигнал 20 раз с учетом озвученных чисел. Шум не белый, в каких то случаях сигнал\ шум улучшится больше , чем корень из 20. Потом все, что предлагают дополнительно попробовать. Например, домножить на экспоненту и тд
Go to the top of the page
 
+Quote Post
PVL
сообщение Feb 23 2011, 00:56
Сообщение #28


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 1-02-07
Пользователь №: 24 959



Спектр расширяется (растет амплитуда гармоник и их количество) когда скважность отклоняется от 50%. При скважности менее 50% фаза гармоник опережает друг друга снизу вверх, при скважности более 50% запаздывает снизу вверх.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 27th July 2025 - 01:20
Рейтинг@Mail.ru


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