обработка сигнала
-
- beginner
- Сообщения: 11
- Зарегистрирован: 28 фев 2015, 19:56
- Версия LabVIEW: 2014(x64)
- Откуда: Калининград
- Контактная информация:
обработка сигнала
Здравствуйте, с лабью только наичнаю знакомиться. Нужно сделать следующее
Есть сигнал в формате csv, сейчас надо его
1) нарисовать
2) взять БПФ
3) Из БПФ взять участок 22-24 МГц для дальнейшей обработки
Подскажите или помогите, за помощь готов заплатить
Есть сигнал в формате csv, сейчас надо его
1) нарисовать
2) взять БПФ
3) Из БПФ взять участок 22-24 МГц для дальнейшей обработки
Подскажите или помогите, за помощь готов заплатить
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: обработка сигнала
Чтобы прочитать csv файл, нужно знать его структуру - т.е. в каких колонках какие данные, и т.д. Читается он при помощи функции Read Spreadsheet File.vi. Прочитанные данные можно проанализировать функцией FFT.vi, например - или еще какой-то, благо, их в палитре Transformation хватает. А выхватить нужный диапазон - это работа с массивами. Скиньте пример файла, можно будет набросать пример.
Мы делили апельсин - много наших полегло...
-
- beginner
- Сообщения: 11
- Зарегистрирован: 28 фев 2015, 19:56
- Версия LabVIEW: 2014(x64)
- Откуда: Калининград
- Контактная информация:
Re: обработка сигнала
Спасибо большое) Прикрепляю два файла, один без доп информации (1), а второй с доп информацией(2)
доп инфа на русском
длина записи
интервал дискретизации
уровень синхронизации
единицы вертикальной шкалы
коэффициент отклонения
единицы горизонтальной шкалы
коэффициент развертки
тип осцилографа
заводской номер
версия внутреннего ПО
доп инфа на русском
длина записи
интервал дискретизации
уровень синхронизации
единицы вертикальной шкалы
коэффициент отклонения
единицы горизонтальной шкалы
коэффициент развертки
тип осцилографа
заводской номер
версия внутреннего ПО
-
Kosist
- expert
- Сообщения: 1236
- Зарегистрирован: 21 фев 2011, 23:44
- Награды: 2
- Версия LabVIEW: 2013-2020
- Благодарил (а): 23 раза
- Поблагодарили: 30 раз
- Контактная информация:
Re: обработка сигнала
Вот самый простой пример считывания и анализа данных - при помощи экспресс VIs. Извращение, правда - но на скорую руку сгодится. Я не специалист по анализу сигналов - так что не знаю, правильно ли его посчитало, но идею, я надеюсь, Вы поймете. Поиграйтесь с функциями, немного почитайте - и все решится.
- Вложения
-
- FFT.vi
- (107 КБ) 179 скачиваний
Мы делили апельсин - много наших полегло...
-
- beginner
- Сообщения: 11
- Зарегистрирован: 28 фев 2015, 19:56
- Версия LabVIEW: 2014(x64)
- Откуда: Калининград
- Контактная информация:
Re: обработка сигнала
Огромное спасибо) Очень просто и более менее понятно(для только начинающего знакомиться с лабвью)
Можно вопросы?
В чём разница между красным и белым слева?
Ограничение в 0.5 по Х можно обойти? (потыкался, можно растянуть, но график так заканчивается в 0.5)
Как сделать, чтобы после Run он просил не файл формата .lvm, а all files?
Можно вопросы?
В чём разница между красным и белым слева?
Ограничение в 0.5 по Х можно обойти? (потыкался, можно растянуть, но график так заканчивается в 0.5)
Как сделать, чтобы после Run он просил не файл формата .lvm, а all files?
Re: обработка сигнала
Насколько понял, красным цветом отображен исследуемый сигнал, а белым - результат БПФ.
Обойти порог 0,5 скорее всего не получится, т.к. ход кривой будет зеркален. Вызвано это самим преобразованием (перенос спектра при частотах выше 0,5 частоты дискретизации)
Обойти порог 0,5 скорее всего не получится, т.к. ход кривой будет зеркален. Вызвано это самим преобразованием (перенос спектра при частотах выше 0,5 частоты дискретизации)
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: обработка сигнала
В правом нижнем углу диалога выбора файлов есть выпадающий список, выберите там All Files (*.*). Или используйте дополнительно File Dialog для выбора файла.Как сделать, чтобы после Run он просил не файл формата .lvm, а all files?
-
- beginner
- Сообщения: 11
- Зарегистрирован: 28 фев 2015, 19:56
- Версия LabVIEW: 2014(x64)
- Откуда: Калининград
- Контактная информация:
Re: обработка сигнала
1) Как работает Array Subset с двумерным массивом?
С одномерным вот так легко http://attila.sdsu.edu/me205/modules/1l ... w_0160.jpg
А с двумерным всё никак не могу зависимость понять.
2_ Как сделать, чтобы если например а>b, то на индикаторе выводилось 1, а иначе 0? Через булевские кнопки это легко делается, но там только "горит" и "не горит". Пробовал через Case Structure, типа если истина, то приравнивал индикатору значение констранты 1, а иначе констарну 0, но тогда выдало ошибку про "member is cycle".
С одномерным вот так легко http://attila.sdsu.edu/me205/modules/1l ... w_0160.jpg
А с двумерным всё никак не могу зависимость понять.
2_ Как сделать, чтобы если например а>b, то на индикаторе выводилось 1, а иначе 0? Через булевские кнопки это легко делается, но там только "горит" и "не горит". Пробовал через Case Structure, типа если истина, то приравнивал индикатору значение констранты 1, а иначе констарну 0, но тогда выдало ошибку про "member is cycle".
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: обработка сигнала
Первые два параметра index и length отвечают за строки, вторые - за столбцы (устоявшаяся традиция - сперва строки, затем столбцы). Параметр index - с какой строки/столбца начать выбор, length - сколько строк/столбцов требуется выбрать. Про те случаи, когда часть параметров не подключена, можно почитать во встроенном хэлпе.Dampir писал(а):1) Как работает Array Subset с двумерным массивом?
Инструмент Boolean To (0,1) не подходит?Dampir писал(а):2_ Как сделать, чтобы если например а>b, то на индикаторе выводилось 1, а иначе 0?
-
- beginner
- Сообщения: 11
- Зарегистрирован: 28 фев 2015, 19:56
- Версия LabVIEW: 2014(x64)
- Откуда: Калининград
- Контактная информация:
Re: обработка сигнала
dadreamer, большое спасибо за помощь.
Нашёл ошибку, у меня почему-то одномерный массив, когда его подрубаю к Array Subset, то он становится как для двумерного.
И вроде наоборот, сначала за столбцы, потом за строки.
Спасибо, инструмент Boolean To (0,1) то,что нужно)) А то что у меня не получилось с case structure, если бы и получилось, было бы слишком громозко, а тут так компактно),
Есть вопросы:
1) Почему после чтения сигнала из csv файла формата "секунды(запятая)вольты" на Waveform Graph вместо метки Time на Х становится пустота, которую нельзя изменить на,например, Frequency?
2) В csv файле примерно 12200 точек, а на графике спектра http://labviewportal.org/viewtopic.php? ... 025#p62796 от 0 до 0.5
Что это за единица измерения? И почему так мало?
Хотя, после того как я извлекаю массив из этого графика, рисую массив, то получаю тот же график, но вместо 0.5 получаю 6144.
3) Почему массив одномерный после Spectral Measurement? Хотя график двумерный?
Не умею прикреплять файлы, поэтому заливаю на яндекс https://yadi.sk/d/Bv7diznigRQWe и csv файл https://yadi.sk/d/Hh3PQjgFgRQbf
Некоторые единицы измерения на графиках я сам увеличил множитель.
Нашёл ошибку, у меня почему-то одномерный массив, когда его подрубаю к Array Subset, то он становится как для двумерного.
И вроде наоборот, сначала за столбцы, потом за строки.
Спасибо, инструмент Boolean To (0,1) то,что нужно)) А то что у меня не получилось с case structure, если бы и получилось, было бы слишком громозко, а тут так компактно),
Есть вопросы:
1) Почему после чтения сигнала из csv файла формата "секунды(запятая)вольты" на Waveform Graph вместо метки Time на Х становится пустота, которую нельзя изменить на,например, Frequency?
2) В csv файле примерно 12200 точек, а на графике спектра http://labviewportal.org/viewtopic.php? ... 025#p62796 от 0 до 0.5
Что это за единица измерения? И почему так мало?
Хотя, после того как я извлекаю массив из этого графика, рисую массив, то получаю тот же график, но вместо 0.5 получаю 6144.
3) Почему массив одномерный после Spectral Measurement? Хотя график двумерный?
Не умею прикреплять файлы, поэтому заливаю на яндекс https://yadi.sk/d/Bv7diznigRQWe и csv файл https://yadi.sk/d/Hh3PQjgFgRQbf
Некоторые единицы измерения на графиках я сам увеличил множитель.
-
- doctor
- Сообщения: 2211
- Зарегистрирован: 28 июн 2012, 09:32
- Награды: 3
- Версия LabVIEW: 2009..2020
- Откуда: город семи холмов
- Благодарил (а): 27 раз
- Поблагодарили: 27 раз
Re: обработка сигнала
по второму пункту обратите внимание на то, что разделитель дробной части по умолчанию - определен операционной системой. Если вы используете точку вместо запятой, то дробная часть не определяется, а в дробную уходит следующее число. Для явного использования разделителя используйте в формате функции код "%.;" или "%,:" . Например, для распознавания числа типа "123.34" должно быть "%.;%f"
-
- beginner
- Сообщения: 11
- Зарегистрирован: 28 фев 2015, 19:56
- Версия LabVIEW: 2014(x64)
- Откуда: Калининград
- Контактная информация:
Re: обработка сигнала
При чтении сигнала с помощью Read from measurement file стоит эта настройка, а в waveform graph выставил настройки как Вы сказали и ничего не поменялось.Borjomy_1 писал(а):по второму пункту обратите внимание на то, что разделитель дробной части по умолчанию - определен операционной системой. Если вы используете точку вместо запятой, то дробная часть не определяется, а в дробную уходит следующее число. Для явного использования разделителя используйте в формате функции код "%.;" или "%,:" . Например, для распознавания числа типа "123.34" должно быть "%.;%f"
Появился вопрос, как мне измерить RSSI (мощность(уровень) сигнала)? В виртуальных приборах labview не нашёл.
И какие есть в лабвью VI, которые могут численно охарактеризовать сигнал и/или его спектр?
-
- beginner
- Сообщения: 11
- Зарегистрирован: 28 фев 2015, 19:56
- Версия LabVIEW: 2014(x64)
- Откуда: Калининград
- Контактная информация:
Re: обработка сигнала
Можно ли получить сишный код моего виртуального прибора? И/или выгрузить код на плату ardruino или razzberi?
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: обработка сигнала
Можете попробовать модуль NI LabVIEW C Generator, но там на выходе часто такой код, что проще самому написать.
-
- beginner
- Сообщения: 11
- Зарегистрирован: 28 фев 2015, 19:56
- Версия LabVIEW: 2014(x64)
- Откуда: Калининград
- Контактная информация:
Re: обработка сигнала
Скачал, пытаюсь установить и пишет, что нужна 2013 32бит версия лабвью, а у меня 2014 64бит.dadreamer писал(а):Можете попробовать модуль NI LabVIEW C Generator, но там на выходе часто такой код, что проще самому написать.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение