Оцифровывание и обработка аналогового сигнала.

Захват, обработка и генерирование сигнала
vladislaw789
beginner
beginner
Сообщения: 17
Зарегистрирован: 03 май 2013, 14:59
Версия LabVIEW: 8.6
Контактная информация:

Оцифровывание и обработка аналогового сигнала.

Сообщение vladislaw789 »

Необходимо оцифровать и обработать аналоговый сигнал. Возникли следующие проблемы: Оцифрованный сигнал в среде Labview имеет различные скачки, в виде каких то шумов. Мне необходимо подсчитать количество периодов этого сигнала. Пользовался Peak detektor, но он не считает периоды сигнала, выдает единицу. Также возможен вариант получения числового массива и из него получить количество максимумов сигнала( периодов). Подскажите пожалуйста, как мне подсчитать количество периодов оцифрованного сигнала.
Аватара пользователя
Andrew Lunev

Activity Professionalism
VIP
VIP
Сообщения: 957
Зарегистрирован: 11 дек 2010, 12:31
Награды: 2
Версия LabVIEW: 2014-2021
Откуда: Москва
Благодарил (а): 4 раза
Поблагодарили: 10 раз

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение Andrew Lunev »

Какой вид/тип сигнала? Обычно для определения периода ищется переход через ноль в определенную сторону. Ну а дальше надо просто посчитать кол-во таких переходов.
vladislaw789
beginner
beginner
Сообщения: 17
Зарегистрирован: 03 май 2013, 14:59
Версия LabVIEW: 8.6
Контактная информация:

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение vladislaw789 »

По техническим причинам я не могу показать вам сигнал, получаемый при оцифровки, но изначально, наблюдаемый аналоговый сигнал выглядел следующим образом: http://hdd.tomsk.ru/desk/wrqxmzdu# При оцифровке, я наблюдаю последовательность таких сигналов, а также между этими сигналами появляются небольшие скачки в виде каких то шумов. Вот при данной реализации мне необходимо подсчитать количество периодов получаемого сигнала при оцифровки.
Аватара пользователя
Andrew Lunev

Activity Professionalism
VIP
VIP
Сообщения: 957
Зарегистрирован: 11 дек 2010, 12:31
Награды: 2
Версия LabVIEW: 2014-2021
Откуда: Москва
Благодарил (а): 4 раза
Поблагодарили: 10 раз

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение Andrew Lunev »

Да уж, жуткий сигнал. Я бы сначала пропустил этот сигнал через полосовой фильтр, близкий к частоте основной гармоники. Он бы убрал постоянную составляющую и высокочастотные скачки. Получили бы сигнал близкий к синусоидальному и центрированный относительно нуля. В таком сигнале уже можно искать и пики нормально и пересечения с нулем.
vladislaw789
beginner
beginner
Сообщения: 17
Зарегистрирован: 03 май 2013, 14:59
Версия LabVIEW: 8.6
Контактная информация:

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение vladislaw789 »

Дело в том, что мне необходимо произвести повышение точности измерения микроволнового уровнемера на однопродной линии. Повышение точности производится путем специальной калибровки, которая и заключается в подсчете периодов сигнала. Этот метод спец. калибровки мне необходимо автоматизировать. Поэтому нужно работать с реальным сигналом в реальном времени, и изменять его нельзя. А на примере я пробовал уже работать с синусоидальным сигналом и Peak detektor отлично считает периоды.
Аватара пользователя
Andrew Lunev

Activity Professionalism
VIP
VIP
Сообщения: 957
Зарегистрирован: 11 дек 2010, 12:31
Награды: 2
Версия LabVIEW: 2014-2021
Откуда: Москва
Благодарил (а): 4 раза
Поблагодарили: 10 раз

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение Andrew Lunev »

Так где в сигнале сидит информация, которая вам необходима? Если именно в кол-ве периодов, то почему нельзя изменять сигнал? Или еще и форма его важна?
Применение фильтра и пик-детектора или пересечения с нулем вполне возможно в реальном времени и с реальным сигналом. В чем проблема то?
vladislaw789
beginner
beginner
Сообщения: 17
Зарегистрирован: 03 май 2013, 14:59
Версия LabVIEW: 8.6
Контактная информация:

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение vladislaw789 »

Да, количество периодов соответствует определенному расстоянию. Возможно Вы правы, попробую сделать так.
vladislaw789
beginner
beginner
Сообщения: 17
Зарегистрирован: 03 май 2013, 14:59
Версия LabVIEW: 8.6
Контактная информация:

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение vladislaw789 »

В общем не подходит мне такой метод. Я пробовал даже считать периоды нормального синусоидального сигнала, который был оцифрован( сигнал был подан с отдельного генератора), все равно не считает, выдает единицу и все. Такой алгоритм, по которому я провожу подсчет правильный?: Сначала открываю осциллограф в Labview, далее с его выхода сигнал поступает на пик детектор, далее через Array size подключен индикатор. Когда сигнал подаю через Simulate signal, то все считается. Что я делаю не так? Возможно мне не стоит открывать осциллограф в лабвю, есть какие то другие способы работы с оцифрованным сигналом в самой программе Labviw?
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5467
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 28 раз
Поблагодарили: 88 раз

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение IvanLis »

vladislaw789 писал(а):.........все равно не считает, выдает единицу и все.
.......
Что я делаю не так?
Есть такой анекдот..
Вы не любите кошек?! Вы просто не умеете их готовить!
Так и у Вас :crazy:
Там есть такой параметры: width и threshold.
Вы о них ни разу не сказали, поиграйте с их значением и увидите разницу.

Посмотрите еще Threshold Detector VI, т.е. если порог у Вас примерно постоянен, то может его лучше использовать.
Прочтите:
http://www.ni.com/white-paper/3770/en
http://zone.ni.com/reference/en-XX/help ... _detector/
http://zone.ni.com/reference/en-XX/help ... _detector/
Посмотрите картинки, там много нюансов.

----------------
Напишите пользователю Kvanto, он с этим разбирался: http://www.labviewportal.org/viewtopic.php?f=81&t=5576
Мы к сожалению переписку через личку вели, по этому на у меня информации не осталось, а разжевывать сейчас времени нет.
vladislaw789
beginner
beginner
Сообщения: 17
Зарегистрирован: 03 май 2013, 14:59
Версия LabVIEW: 8.6
Контактная информация:

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение vladislaw789 »

Большое спасибо :super:
vladislaw789
beginner
beginner
Сообщения: 17
Зарегистрирован: 03 май 2013, 14:59
Версия LabVIEW: 8.6
Контактная информация:

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение vladislaw789 »

Да. что то считает, но не совсем точно, необходимо произвести сглаживание, как оно проводится?
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5467
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 28 раз
Поблагодарили: 88 раз

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение IvanLis »

vladislaw789 писал(а):Да. что то считает, но не совсем точно, необходимо произвести сглаживание, как оно проводится?
Не понятно, что под сглаживанием Вы понимаете?
Для меня например это фильтрация...
vladislaw789
beginner
beginner
Сообщения: 17
Зарегистрирован: 03 май 2013, 14:59
Версия LabVIEW: 8.6
Контактная информация:

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение vladislaw789 »

Да в принципе все получилось, только возникла такая проблема: сигнал мой постоянно плывет, нужна синхронизация, т.к мне необходимо конкретно посчитать периоды моего сигнала, но он постоянно чередуется в измерительном интервале. Следовательно такой вопрос: как синхронизировать сигнал в измерительном интервале? Возможна синхронизация внешним сигналом? И еще такой вопрос: Параметр width в пик детекторе позволяет задавать ширину измеряемого периода?
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5467
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 28 раз
Поблагодарили: 88 раз

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение IvanLis »

vladislaw789 писал(а):И еще такой вопрос: Параметр width в пик детекторе позволяет задавать ширину измеряемого периода?
width determines the minimum width, in number of samples, that the input sequence X must remain at or above the threshold value for the candidate peak to be considered valid. width must be greater than zero. If width is less than or equal to zero, the VI sets count to zero and returns an error. The default is 1.
т.е. width минимальное количество отсчетов при котором фиксируется пик
vladislaw789
beginner
beginner
Сообщения: 17
Зарегистрирован: 03 май 2013, 14:59
Версия LabVIEW: 8.6
Контактная информация:

Re: Оцифровывание и обработка аналогового сигнала.

Сообщение vladislaw789 »

по поводу синхронизации, ни чего не можете посоветовать?
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Обработка сигнала»