спектроанализатор с выводом в программу на ПК

madguitar
Offline
Зарегистрирован: 17.06.2011

после изучения курса "Цифровая обработка сигналов" появилась идея замутить семе спектроанализатор. Может быть кто-то  уже делал или поможет советом? как строятся спектры, я думаю, знают все, меня же интересует аппаратная часть (прием сигнала микроконтроллером) ну и программная соответственно (как и на чем писать для ПК модуль ну и соответственно скетч для дуины)

Adessit
Adessit аватар
Offline
Зарегистрирован: 12.04.2011

Мне это тоже интересно)

Много чего зубрил и изучал, но толком ничего пока не понял с этими алгоритмами фурье;)

Есть непростой код программы анализатора, 8ми битный алгоритм преобразования Фурье. от 20 до 500Гц на аналоговый вход ардуино. Есть вариант обрабатывать всё на компе и через юсб на ардуину данные отправлять для вывода но что-то.

Я себе выбрал самый простой вариант на одной микросхеме))) 7мь полос фиксированных, полностью цифровая обработка и управление и проста как полено) MSGEQ7 называется, проблема только в том что я её смог купить только через ебай. Цена в принципе нормальная 10$ за 2 с доставкой))) Уже имею две но пока не дошли до неё руки 

Adessit
Adessit аватар
Offline
Зарегистрирован: 12.04.2011

Кстате на той микросхемке можно построить и без ардуино 7ми полсный спектроанализатор. Понадобятся еще 7 микросхем led dotbar driver.

madguitar
Offline
Зарегистрирован: 17.06.2011

 спасибо, что откликнулись)

мой мозг пока вынашивает проект такого характера - по аналоговому входу подавать сигнал, далее контроллером делать быстрое преобразование фурье для разложения в спектр, а потом этот массив значений спектральной плотности отправлять через какие то промежутки времени (100-500 мс) в СОМ-порт. Ну а там его перехватит прога и выведет гистограмму (ну и соответственно будет обновлть график через такие же промежутки времени). Как думаете, осуществимо?

Adessit
Adessit аватар
Offline
Зарегистрирован: 12.04.2011

Скорости и разрешения АЦП ардуино не хватит на спектр полный от 20 до 20кГц.

Есть готовая библиотека преобразований до 500Гц для ардуино, вытягиваний значений частот и т.д.)

Теперь еще одно сигнал музыкальный это синусоида тоесть и плюс и минус, а ардуино принимает только плюс, от 0 до 5В

madguitar
Offline
Зарегистрирован: 17.06.2011

 вот об этом я как раз и не подумал) а если использовать диодный мост, предварительно усилим сигнал входной? тогда будем иметь, так сказать, fabs(sin(x)) - или не прокатит?

P.S. вчера для развлечения написал простенький осциллограф, правда форму сигнала можно построить в экселе)) ща разбираюст с работой C++ с СОМ-портом (хочу выводить график в прогу на компе), о результатах буду писать тут.

P.S.S. как лучше отправлять данные в ком-порт - по одному или массивом (если возможно)? с построением графика, думаю, проблем не возникнет

Adessit
Adessit аватар
Offline
Зарегистрирован: 12.04.2011

Тут ни чем не смогу помочь, знаний пока не хватает. Вот тут в первой теме есть проект http://arduino.ru/projects а от него по ссылкам доберешься до источников библиотеки анализатора спектра 

madguitar
Offline
Зарегистрирован: 17.06.2011

 пока сделал считывание данных по компорту в прогу (на билдере написал), как думаете, лучше будет так - записал массив считанных значений, сделел преобразование ФурьЁ, вывел. и так, например, раз в секунду. потом конечно можно скорость компорта выше выставить, но это уже другая история))

kikia99
Offline
Зарегистрирован: 22.03.2011

 

силами дуино можно только один поток сформировать  тут нужно смотреть в сторону ПЛИСины http://www.seeedstudio.com/depot/gameduino-a-game-adapter-for-microcontr... в таком тандеме другое дело  

madguitar
Offline
Зарегистрирован: 17.06.2011

ну это мне пока не по карману, пока так попробую, не получится - так не получится, мне пока интересней сопряжение девайсов низкого уровня и высокого, хотя бы просто для обмена данными))

kikia99
Offline
Зарегистрирован: 22.03.2011

задачку для начала вы выбрали не простую  пробывать наверно всетаки луч с медленно тякущих процессов 

взять например датчик тока через дуино завести данные в комп а там екселем ращитывать сколько денег в режиме он лайн потребляет прибор или даж вся квартира по электричеству 

 

madguitar
Offline
Зарегистрирован: 17.06.2011

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

kikia99
Offline
Зарегистрирован: 22.03.2011

 http://www.kernelchip.ru/articles/KA011.php вот вам пригодится я на этих примерах учился http://www.pcports.ru/Articles.php