0 / 0 / 0
Регистрация: 05.02.2019
Сообщений: 5
|
|
1 | |
БПФ для массива дискретных отсчетов, полученных с датчика тока10.03.2019, 22:21. Показов 1762. Ответов 7
Задача проста. Построить спектр одномерного массива данных, содержащего в себе 256 дискретных отсчетов с частотой дискретизации 4500 Гц. Проблема заключается в том, что во всей той литературе, которую я перелопатил и всей той инфе, которую нашел в интернете за основу берется какой-то реальный сигнал, описываемый формулой x(t)= (тут сама формула сигнала), либо он как-то генерируется. Но нигде не берут сигнал, который бы получился путем задания массива. Как видно во вложении один период сигнала равен 40 мс, следовательно, его частота равна 25 Гц, но при применении БПФ(FFT) в спектре сигнала эта частота по амплитуде такая же, как и все остальные. Так вот, хотелось бы разобраться что не так, и вообще какой бубен применять для такой ситуации ,чтобы эта гармоника на 25 Гц всё же появилась
0
|
10.03.2019, 22:21 | |
Ответы с готовыми решениями:
7
БПФ для датчика звука Выбор датчика тока Заполнить файл последовательного доступа N действительными числами,полученных с помощью датчика случайных чисел Нелинейность в показаниях датчика тока LA 125-P |
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
|
|
12.03.2019, 08:05 | 2 |
А почему Вы решили что по оси абсцисс на графике Гц.
И Вы где-то в функции вводили частоту дискретизации, или период сигнала? И как тогда БПФ может догадаться какова у Вас частота первой гармоники?
0
|
0 / 0 / 0
Регистрация: 05.02.2019
Сообщений: 5
|
|
12.03.2019, 17:32 [ТС] | 3 |
Частоту дискретизации вводил, просто она над графиками находится и в тот рисунок не влезла.
Другое дело, что может быть по оси абсцисс указал другую величину, но даже несмотря на это видно, что в частотном спектре есть только первая гармоника, наибольшая по амплитуде, вторая и третьи, которые чуть меньше, а также 4 и 5 гармоники, которые ещё меньше и всё. Даже если смотреть по номерам отсчетов, а не по частоте, то 25 Гц на спектре как-то не выходит. График
0
|
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
|
|
13.03.2019, 07:54 | 4 |
Вот это правильно. Осталось только выяснить а какова частота этой первой гармоники.
0
|
0 / 0 / 0
Регистрация: 05.02.2019
Сообщений: 5
|
|
13.03.2019, 11:34 [ТС] | 5 |
Частота дискретизации 4500 Гц, всего ардуино давал 256 отсчета. Значит как я понимаю частота первой гармоники = 1/(256/4500) это 17,6 Гц примерно. Но это же не 25.
0
|
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
|
|
13.03.2019, 12:26 | 6 |
Да, значит так.
Но для 25 Вы и не производите вычисления. Поймите главное, при разложении в ряд Фурье сигнал раскладывается на ряд гармонических составляющих. Причем ряд однозначно определяется интервалом разложения. У Вас это получилось примерно 17,6 Гц *i, где i=1,2...n Разложение в ряд Фурье не ищет составляющие сигнал гармоники.
0
|
0 / 0 / 0
Регистрация: 05.02.2019
Сообщений: 5
|
|
13.03.2019, 15:23 [ТС] | 7 |
Спасибо за информацию. В принципе я догадывался, но все же что делать. Дополнять массив нулями? Чтобы было в итоге не 17,6*I, a 1*I, или же использовать другие методы обработки сигнала?
0
|
3390 / 1913 / 571
Регистрация: 09.04.2015
Сообщений: 5,365
|
|
13.03.2019, 15:29 | 8 |
Это очень плохое решение.
Откажитесь от БПФ, а напишите свое. Ничего сложного нет, только дольше считает. И тогда Вы сможете обработать сигнал произвольной длины, и даже можно написать метод обрабатывающий сигнал с нефиксированным шагом.
0
|
13.03.2019, 15:29 | |
13.03.2019, 15:29 | |
Помогаю со студенческими работами здесь
8
Форматирование файла целых чисел, полученных с помощью датчика случайных чисел, нахождение контрольной суммы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |