Алгоритм Герцеля при обнаружении короткого импульса

spirit_1
Сообщения: 36
Зарегистрирован: 10 июл 2018, 10:08

Re: Алгоритм Герцеля при обнаружении короткого импульса

Сообщение spirit_1 »

А сорри не понял . Думал вообще спрашиваете. Сейчас работает STM32 c внешней ацп. Для получения импульса надо собрать передачкик , синхронизацию итд
Поэтому увы. Импульс это Ринг эффект высокодобротного колебательного контура почле возбуждения РФ импульсом(~8mhz). Этот сигнал сделан на симуляторе по реальному сигналу на осцилографе и в точности соответствует реальному
Вложения
5us-delta-graph_input.png
5us-delta-graph_input.png (11.33 КБ) 4188 просмотров

spirit_1
Сообщения: 36
Зарегистрирован: 10 июл 2018, 10:08

Re: Алгоритм Герцеля при обнаружении короткого импульса

Сообщение spirit_1 »

это еще до всех аналоговых фильтров а это его теоретический спектр
Вложения
after10meg_spectr.png

Аватара пользователя
Бахурин Сергей
Администратор
Сообщения: 1114
Зарегистрирован: 05 окт 2010, 19:55
Контактная информация:

Re: Алгоритм Герцеля при обнаружении короткого импульса

Сообщение Бахурин Сергей »

Ну данные в цифре можно получить для анализа?

spirit_1
Сообщения: 36
Зарегистрирован: 10 июл 2018, 10:08

Re: Алгоритм Герцеля при обнаружении короткого импульса

Сообщение spirit_1 »

это схема с симулятора. В центре тот контур L1C1 эксперементально добротность подобрана резистором 10к как у реального устройства
возбуждаю импульссом 10мкс и отключаю передатчик S2 ключом, далее получаем тот резонанс который принять надо . На время действия передатчика блокирую приемник ключом s1 Больше увы ничего нет.
Вложения
5us-delta.png

Аватара пользователя
Бахурин Сергей
Администратор
Сообщения: 1114
Зарегистрирован: 05 окт 2010, 19:55
Контактная информация:

Re: Алгоритм Герцеля при обнаружении короткого импульса

Сообщение Бахурин Сергей »

Ну а где АЦП, отсчеты, порог обнаружения и т.д.?

spirit_1
Сообщения: 36
Зарегистрирован: 10 июл 2018, 10:08

Re: Алгоритм Герцеля при обнаружении короткого импульса

Сообщение spirit_1 »

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

По поводу обратного преобразования мне кажется в данном случае не поможет. Поправьте меня если я не прав.
Рассуждения таковы
Есть сигнал некоторой частой имеющий макимум в начале и минимум в конце окна выборок, т.е неравномерный и вторая частота с несущей , обычная синусоида равномерная по амплитуде. После ФФТ мы получаем наборы спектров. Если теперь выполнить обратное преобразование
то мы получим это же временное окно но первый синал , тот что был неравномерен по времени теперь станет такой равномерной синусоидой со своей частотой. Да, по спектру будет все то но вырезать тот кусок где был основной сигнал мы уже не смоем


Из всего что приходит в голову в моем варианте и моими скудными познаниями ДСП это такое
1. Вычисляем FFT нашу помеху на длинном окне
2.Делим окно пополам и вставляем наш импульс в средину окна
3.Фильтруем сигнал на том же длинном окне, при этом первые и последние выборки равные длинне фильтра будут потеряны.

главная проблема на мой взгляд это использовать фильтр минимальной длинны и посмотреть какая реакция будет на разлом синусоиды помехи

Аватара пользователя
Бахурин Сергей
Администратор
Сообщения: 1114
Зарегистрирован: 05 окт 2010, 19:55
Контактная информация:

Re: Алгоритм Герцеля при обнаружении короткого импульса

Сообщение Бахурин Сергей »

Если сделать fft и потом сделать ifft ничего не меняя то получите ровно то что было до fft. Если в спектре обнулить один бин, то после ifft из сигнала исчезнет или почти исчезнет колебание с частотой бина. Так если есть сумма двух сигналов один короткий другой колебание, то вырезав один бин на частоте УП помехи вы почти не исказите импульс. Я поэтому и прошу сигнал с АЦП в виде цифровых отсчетов, потому что это легко промоделировать и посмотреть

spirit_1
Сообщения: 36
Зарегистрирован: 10 июл 2018, 10:08

Re: Алгоритм Герцеля при обнаружении короткого импульса

Сообщение spirit_1 »

вы в матлабе моделируете?


spirit_1
Сообщения: 36
Зарегистрирован: 10 июл 2018, 10:08

Re: Алгоритм Герцеля при обнаружении короткого импульса

Сообщение spirit_1 »

Я вчера поставил Оctave нарисовал свой сигнал и пропробовал его пропустить через фильтр.
Честно говоря я ожидал получить потери какие то из за некоторого времени нужного на заполнение фильтра.Это несколько раз мне попадалось
в статьях про фильтры что нормально начинает работать после заполнения всех ячеек сигналом. Но он вроде как ничего не теряет по факту
я думаю это вас должно устроить.

clear
clc
%формируем выборки c частотой Fc затухающего импульса с заполнением f
f = 8000000; % рабочая частота заполнеия
Fc= 25000000; % частота АЦП
Tsamplers = 1/Fc;
N = 1:200; %длинна окна выборки
sig_8_meg = sin(2 * pi() * f * Tsamplers * N);
exp_8_meg = (exp((N * 100) /4000).*sig_8_meg);
exp_8_meg = exp_8_meg(end:-1:1);% разворачиваем последовательность
%рисуем исходный импульс до всех фильтров
figure
plot(exp_8_meg)

%----------------------------FIR_________
%пропускаем импульс через полосовой фильтр
f1 = 7500000/(25000000/2);
f2 = 8500000/(25000000/2);


dB = 40;

Nf=100;

hc = fir1(Nf, [f1 f2]);
y2 = filter(hc,1,exp_8_meg);
%рисуем сигнал полсле фильтрации
figure
plot(y2)
exp_8_meg = y2;
%----------------FIR end_______________________




%смотрим АЧХ после фильтрации
F=fft(exp_8_meg);

F1=fftshift(abs(F));
F1 = F1(max(size(N))/2+1:max(size(N))); %Discard Half of Points
f_x = Fc*(0:max(size(N))/2-1)/max(size(N)); %Prepare freq data for plot

figure,plot(f_x,20*log10(F1)); % преобразование Фурье
%axis([, , -60 10])
xlabel('Frequency (Hz)')
ylabel('db')
title('Frequency Response ')
grid

Ответить