Полная версия этой страницы:
Разделение импульсов
Виталий_Ж
Jul 3 2008, 06:52
Уважаемые,нужна помощь(или на худой конец подсказка). Задача такова.
Имеем два разных в любой момент приходящих с АЦП на FPGA импульса, разной длительности и любой амплитуды - от 10 до 200 мВ.
В приближении эти сигналы- A*exp(-t). Их требуется разделить (различить) и затем посчитать.
Как это можно сделать. Помогите,срочно надо. Заранее благодарен за любую подсказку
Ваша формулировка вызывает кучу вопросов, нежели возможность что-то ответить. Импульс с вертикальным передним фронтом, а затем экспоненциальный спад? Какое соотношение между частотой дискретизации и длительностью импульса. Каую точность Вы хотите получить по амплитуде и времени?
Очевидно, что если импульсы полностью совпали, то их различить невозможно теоретически. Далее, если они сильно перекрываются, что-то получить можно, но тут вопрос соотношения получаемой точности и имеющейся у Вас в FPGA вычислительной мощности. Опять же, насколько разнятся у Вас импульсы от теоретической формулы, какой уровень шума АЦП.
Возможно, Вам подойдет тривиальное решение - дожидаетесь окончания одного импульса (амплитуда падает ниже порога), затем ловите следующий - амплитуда превысила порог, затем поиск максимума, возможно, усреднение по нескольким точкам вблизи максимума (это если Вам нужна амплитуда, а не интеграл от импульса).
Если Вы хотите разрешать наложенные импульсы и мое предположение о крутом переднем фронте было верным - считайте производную. Как только она превысит порог - пришел импульс, а дальше куча приведенных выше вопросов. После ответов на них можно попытаться подсчитать амплитуду второго импульса, вычтя из него аппроксимацию от хвоста первого.
Виталий_Ж
Jul 3 2008, 07:53
Время нарастания фронта примерно 50 нс, время спада у одного 250 нс у другого около 1 мкс.
а что если поставить два фильтра-один на одну длительность,другой-на вторую?
а насчет порога,мне неизвестна амплитуда каждого импульса. она имеет случайный характер.
Цитата(Виталий_Ж @ Jul 3 2008, 13:53)

Время нарастания фронта примерно 50 нс, время спада у одного 250 нс у другого около 1 мкс.
а что если поставить два фильтра-один на одну длительность,другой-на вторую?
а насчет порога,мне неизвестна амплитуда каждого импульса. она имеет случайный характер.
попробуйте поискать решения в построении оптимального фильтра по критерию С/Ш согласованного с вашим импульсом тут и время и форма импульса заложена.
Виталий_Ж
Jul 3 2008, 10:58
а что за критерий c/ш?
соотношение сигнал/шум, я думаю ))
оптимальный фильтр по отношению максимум сигнал/шум дает после прохождения всего сигнала через фильтр некий пичек- это значит сигнал был ил ничего (почти) не дает.
импульсная хар-ка фильтра должна быть зеркальна относительно формы сигнала или ачх фильтра должна быть комплексно сопряжена со спектром импульса.
успешно применял это для выдел прямоугольных импульсов из шумов
может что и для экспонент выйдет
Виталий_Ж
Jul 4 2008, 05:57
А не могли бы вы подкинуть подобный проект?
если у вас есть конечно
Про порог я имел в виду, что есть некоторый уровень, к которому все возвращается, когда импульсов нет. Дальше можно приподняться над ним на величину шума, чтобы не иметь ложных срабатываний, и запускать систему анализа импульса. Все что меньше - импульсом не считается. Мы делали такую штуку для измерения энергии и времени прихода гамма-квантов. Точность по времени - порядка 1/5 времени дискретизации АЦП.
Stanislav
Jul 4 2008, 20:59
Цитата(Виталий_Ж @ Jul 3 2008, 10:52)

Уважаемые,нужна помощь(или на худой конец подсказка). Задача такова.
Имеем два разных в любой момент приходящих с АЦП на FPGA импульса, разной длительности и любой амплитуды - от 10 до 200 мВ.
В приближении эти сигналы- A*exp(-t). Их требуется разделить (различить) и затем посчитать.
Как это можно сделать. Помогите,срочно надо. Заранее благодарен за любую подсказку
Не совсем понятна задача. Что значит "разделить и посчитать"?
Далее, приведите, пожалуйста, осциллограммы импульсов.
Если сигнал оцифрован, выложите последовательность отсчётов, содержащую оба импульса. Лучше несколько реализаций.
Цитата(Виталий_Ж @ Jul 4 2008, 11:57)

А не могли бы вы подкинуть подобный проект?
если у вас есть конечно
в каком виде Вам нужен проект прога на асме ряд ли поможет? есть модель в симулинк, там для прямоугольных импульсов, для др. формы придется еще постараться.
для более успешного решения Вашей задачи рекомендую очень четко сформулировать ее- станет понятнее и Вам и остальным).
не смог найти дома свою модель быстро состряпал это- на входе ОФ сигнал + шум, на выходе пила- максимум ее пика- максимум выхода ОФ, наступает после того как весь сигнал (в моем случае прямоуг импульс длино 80 сэмплов) пройдет через ОФ.
ts= 1/16000;
Виталий_Ж
Jul 7 2008, 05:58
Цитата(Alex11 @ Jul 4 2008, 23:42)

Про порог я имел в виду, что есть некоторый уровень, к которому все возвращается, когда импульсов нет. Дальше можно приподняться над ним на величину шума, чтобы не иметь ложных срабатываний, и запускать систему анализа импульса. Все что меньше - импульсом не считается. Мы делали такую штуку для измерения энергии и времени прихода гамма-квантов. Точность по времени - порядка 1/5 времени дискретизации АЦП.
В моем случае возможно наложение импульсов разной длительности друг на друга. по какому критерию тогда их отделять?
Цитата(Виталий_Ж @ Jul 7 2008, 09:58)

В моем случае возможно наложение импульсов разной длительности друг на друга. по какому критерию тогда их отделять?
Надо бы еще знать...
1. С какой точностью воспроизводятся постоянные времени.
2. С какой средней частотой приходят импульсы первого и второго сортов. Или распределение интервалов времени между импульсами этих двух сортов.
3. Функцию распределения амплитуд импульсов.
4. Шум...
5. Может, еще что нибудь...
Цитата(Виталий_Ж @ Jul 7 2008, 11:58)

В моем случае возможно наложение импульсов разной длительности друг на друга. по какому критерию тогда их отделять?
в таком случае тут попахивает вейвлет анализом...
Виталий_Ж
Jul 8 2008, 06:24
А кто нибудь слышал о разделении методом вычисления площади(интеграла) под оцифрованным сигналом?
Цитата(Виталий_Ж @ Jul 8 2008, 12:24)

А кто нибудь слышал о разделении методом вычисления площади(интеграла) под оцифрованным сигналом?
странно звучит... что такое "вычисления площади(интеграла) под оцифрованным сигналом" - значение интеграла на промежутке времени?, мгновенное значение интеграла? усредненное во временном окне (среднее за некоторый период)?
Виталий_Ж
Jul 11 2008, 06:39
Цитата(shf_05 @ Jul 9 2008, 15:41)

странно звучит... что такое "вычисления площади(интеграла) под оцифрованным сигналом" - значение интеграла на промежутке времени?, мгновенное значение интеграла? усредненное во временном окне (среднее за некоторый период)?
интеграл от точки до точки,то есть сумма "мгновенных" произведений
shf_05
Jul 11 2008, 06:49
Цитата(Виталий_Ж @ Jul 11 2008, 12:39)

интеграл от точки до точки,то есть сумма "мгновенных" произведений
еще непонятнее)))
какие точки, произведения чего?
Виталий_Ж
Jul 15 2008, 08:32
Цитата(shf_05 @ Jul 11 2008, 10:49)

еще непонятнее)))
какие точки, произведения чего?
по-Вашему,значение интеграла на промежутке времени
shf_05
Jul 15 2008, 11:35
Цитата(Виталий_Ж @ Jul 15 2008, 14:32)

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