AVR и активное шумоподавление инвертированием фазы

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
VladimirVladimirovitch
Встал на лапы
Сообщения: 126
Зарегистрирован: Чт мар 15, 2007 10:48:10

AVR и активное шумоподавление инвертированием фазы

Сообщение VladimirVladimirovitch »

Наушников, в которых реализовано активное шумоподавление, реализованное подмешиванием инвертированного сигнала шума "с улицы" в полезный сигнал развелось большое множество.

Однако хотелось бы это реализовать на AVR. Готовых проектов не нашел. Поэкспериментировал миксами в CoolEditPro. Оказалоь для достаточно эффективного шумоподавления допустимы и задержки до 8 микросекунд.

Т.е. вполне подъемно для ADC AVR.
Т.е. идея такая - получить по ADC байт - инвертировать - и отправить на ЦАП... Посоветуйте плз. ссылки, проекты, мысли...

Экспериментов програмно под виндами в реальном времени не делал - уверен в их бесперспективности - винды боюсь не дадут точности больше миллисекунды.
Аватара пользователя
Mamonth
Вымогатель припоя
Сообщения: 534
Зарегистрирован: Пн янв 16, 2006 08:00:17
Откуда: Иркутск

Сообщение Mamonth »

Начнем с того, что максимальная частота работы АЦП в АВРках - 15 кГц. Т.е. о высококачественном подавлении думать и не стоит ;) Хотя, можно извернуться
С инверсией сигнала думаю проблем не будет - просто изменить полярность сигнала на аналоговых компонентах - не проблема.
Today fine night...
VladimirVladimirovitch
Встал на лапы
Сообщения: 126
Зарегистрирован: Чт мар 15, 2007 10:48:10

Сообщение VladimirVladimirovitch »

Mamonth писал(а):Начнем с того, что максимальная частота работы АЦП в АВРках - 15 кГц. Т.е. о высококачественном подавлении думать и не стоит ;) Хотя, можно извернуться


А Clock на закладке ADC в CodeWizard AVR это что? Там от 31 до 1000KHz стоит... Я думал это и есть частота ADC...

Mamonth писал(а):С инверсией сигнала думаю проблем не будет - просто изменить полярность сигнала на аналоговых компонентах - не проблема.


Так может на аналоговых и собрать только? Ведь инвертирование только ведь и надо, ну и микшировать тоже. Зачем тогда парится с АЦП-ЦАП...
Аватара пользователя
Mamonth
Вымогатель припоя
Сообщения: 534
Зарегистрирован: Пн янв 16, 2006 08:00:17
Откуда: Иркутск

Сообщение Mamonth »

VladimirVladimirovitch писал(а):А Clock на закладке ADC в CodeWizard AVR это что? Там от 31 до 1000KHz стоит... Я думал это и есть частота ADC...

Рекомендую заглянуть в даташит ;)

VladimirVladimirovitch писал(а):Так может на аналоговых и собрать только? Ведь инвертирование только ведь и надо, ну и микшировать тоже. Зачем тогда парится с АЦП-ЦАП...

Вполне приемлимый вариант. Вообще не знаю зачем городить огород с МК...
Today fine night...
Аватара пользователя
moLCHec
Мявтор!
Сообщения: 825
Зарегистрирован: Вс дек 18, 2005 20:04:42
Откуда: Свердловская обл.
Контактная информация:

Сообщение moLCHec »

НУ если без МК то тему в другую ветку надо. А вообще на сколько я помню транзисторная схема с ОЭ сдвигает на 90 электрических градусов. Если на 180 надо то sin(a+180)=-sin(a) т.е. обычный инвертор. А вообще можно в Mathlab поэкперементировать там есть генератор белого шума и пр.
Настоящий кот всегда либо голоден,
либо невыспался ...
VladimirVladimirovitch
Встал на лапы
Сообщения: 126
Зарегистрирован: Чт мар 15, 2007 10:48:10

Сообщение VladimirVladimirovitch »

moLCHec писал(а):НУ если без МК то тему в другую ветку надо. А вообще на сколько я помню транзисторная схема с ОЭ сдвигает на 90 электрических градусов. Если на 180 надо то sin(a+180)=-sin(a) т.е. обычный инвертор. А вообще можно в Mathlab поэкперементировать там есть генератор белого шума и пр.


Можно и в другую ветку. Тока я сам не могу переносить.
А где можно аналоговую схемку посмотреть, чтобы инвертировала бы фазу?
Аватара пользователя
mr.Kirill
Мучитель микросхем
Сообщения: 438
Зарегистрирован: Вт сен 25, 2007 19:40:26
Откуда: Челябинск

Сообщение mr.Kirill »

moLCHec писал(а):А вообще на сколько я помню транзисторная схема с ОЭ сдвигает на 90 электрических градусов.
Хм, а мне память подсказывает что не на 90, а на 180!
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

Сообщение Aheir »

А можно все это на операционниках сделать. И инверсию, и суммирование потом.
Оптимизм х (Опыт + Знания) = const
lexmulya
Встал на лапы
Сообщения: 124
Зарегистрирован: Ср авг 29, 2007 10:42:31
Контактная информация:

Сообщение lexmulya »

Mamonth писал(а):Начнем с того, что максимальная частота работы АЦП в АВРках - 15 кГц. Т.е. о высококачественном подавлении думать и не стоит ;) Хотя, можно извернуться
С инверсией сигнала думаю проблем не будет - просто изменить полярность сигнала на аналоговых компонентах - не проблема.

В аверках АЦП до мегагерца вполне себя нормально чувствует, там есть бит точно не помню в каком из регистров, позволяет гнять АЦП. В даташите про него все подчистили но если внимательно вчитываться то можно зацепиться. Правда на таких частотах тока 8 значащих бит, дальше меньше. Посмотрите в интернете проект осцыла от bodja.
Аватара пользователя
ИРБИС
Держит паяльник хвостом
Сообщения: 978
Зарегистрирован: Пн ноя 27, 2006 07:52:01
Контактная информация:

Сообщение ИРБИС »

Советую посмотреть на такую штуку, как коррелятор. :wink: В нескольких темах упоминалось. :wink: Родственное — синхронный детектор. :wink:
Питаюсь копытными. Как исчезающий вид занесён в Красную книгу МСОП. Почему до сих пор не занесены в Красную книгу инженеры и учёные РФ?
Аватара пользователя
tych
Э...
Сообщения: 2792
Зарегистрирован: Ср апр 04, 2007 08:39:14
Откуда: Москва
Контактная информация:

Сообщение tych »

Mamonth писал(а):Рекомендую заглянуть в даташит ;)


Во-во !
Думайте сами, решайте сами ... а вот он-лайн перевод на корявый русский http://translate.ru
Scorpline
Открыл глаза
Сообщения: 45
Зарегистрирован: Пн окт 01, 2007 00:12:57
Откуда: СПб

Сообщение Scorpline »

VladimirVladimirovitch писал(а):Т.е. идея такая - получить по ADC байт - инвертировать - и отправить на ЦАП...

извиняюсь.... а что должно в результате данного двойного преобразования получиться? ...убрать помеху?
...и для чего инвертировать. Я предполагаю в принципе помеха сама по себе должна будет сгладится в результате преобразования(усредниться с полезным сигналом...так как шаг квантования будет достаточно большим при не большой разрядности АЦП...
Это только предположение..... :roll:
VladimirVladimirovitch
Встал на лапы
Сообщения: 126
Зарегистрирован: Чт мар 15, 2007 10:48:10

Сообщение VladimirVladimirovitch »

ИРБИС писал(а):Советую посмотреть на такую штуку, как коррелятор. :wink: В нескольких темах упоминалось. :wink: Родственное — синхронный детектор. :wink:


Коррелятор - это замечательно! Где бы посмотреть готовые схемки и принцип работы?
VladimirVladimirovitch
Встал на лапы
Сообщения: 126
Зарегистрирован: Чт мар 15, 2007 10:48:10

Сообщение VladimirVladimirovitch »

Scorpline писал(а):извиняюсь.... а что должно в результате данного двойного преобразования получиться? ...убрать помеху?


Я наверное не точно выразился. Хочется сделать нормальный активный шумоподавитель в наушниках. Т.к. шумоподавители наушников с ANC оставляют желать лучшего, проще говоря шум не подавляют, осебенно в метро. Первоначально рассматривал вариант с AVR, т.к. в аналоговой схемотехнике разбираюсь еще хуже чем в программировании. Однако как понял из обсуждения - гораздо лучше это получится если не использовать микроконтроллеры.
Аватара пользователя
moLCHec
Мявтор!
Сообщения: 825
Зарегистрирован: Вс дек 18, 2005 20:04:42
Откуда: Свердловская обл.
Контактная информация:

Сообщение moLCHec »

VladimirVladimirovitch
Поставте конкретнее задачу.
Например:
1 Сдвинуть сигнал на ... град
2 сложить с ....
3 усилить
Или что там еще нужно, а то венегрет какой-то, будет ясна задача будет схема :)
Настоящий кот всегда либо голоден,
либо невыспался ...
Аватара пользователя
ИРБИС
Держит паяльник хвостом
Сообщения: 978
Зарегистрирован: Пн ноя 27, 2006 07:52:01
Контактная информация:

Сообщение ИРБИС »

VladimirVladimirovitch писал(а):Коррелятор - это замечательно! Где бы посмотреть готовые схемки и принцип работы?
Тут книжки можно поискать: http://www.radiokot.ru/forum/viewtopic.php?t=466 Здесь вскользь упоминалось: http://www.radiokot.ru/forum/viewtopic.php?t=2625 Основной принцип: перемножение двух сигналов. В результате сигнал выделяется из довольно сильных помех.

Опять, же: какова ваша конечная цель? Может вам что-то другое, более простое и "земное" нужно? :wink:

Я не думаю, что вы дойдёте до маразма некоторых аудиофилов с "прогревом" проводов и поиском "правильного напраявления" проводов — http://www.radiokot.ru/forum/viewtopic. ... 6&start=40 :wink:
Питаюсь копытными. Как исчезающий вид занесён в Красную книгу МСОП. Почему до сих пор не занесены в Красную книгу инженеры и учёные РФ?
VladimirVladimirovitch
Встал на лапы
Сообщения: 126
Зарегистрирован: Чт мар 15, 2007 10:48:10

Сообщение VladimirVladimirovitch »

ИРБИС писал(а): Тут книжки можно поискать: http://www.radiokot.ru/forum/viewtopic.php?t=466 Здесь вскользь упоминалось: http://www.radiokot.ru/forum/viewtopic.php?t=2625 Основной принцип: перемножение двух сигналов. В результате сигнал выделяется из довольно сильных помех.

Спасибо! Буду читать.

ИРБИС писал(а): Опять, же: какова ваша конечная цель? Может вам что-то другое, более простое и "земное" нужно? :wink:


Конкретная цель очень простая:
Коробочка с пачку сигарет. С помощью которой будет (максимально) убиваться грохот метро при прослушивании аудиокниг и музыки в вагоне метро.

P.S. Пассивное шумоподавление - вещь хорошая, но будет еще лучше если ее дополнить активным.
VladimirVladimirovitch
Встал на лапы
Сообщения: 126
Зарегистрирован: Чт мар 15, 2007 10:48:10

Сообщение VladimirVladimirovitch »

moLCHec писал(а):VladimirVladimirovitch
Поставте конкретнее задачу.
Например:
1 Сдвинуть сигнал на ... град
2 сложить с ....
3 усилить
Или что там еще нужно, а то венегрет какой-то, будет ясна задача будет схема :)


1. Получить стерео сигнал с двух микрофонов, усилить
2. Сдвинуть на 180 градусов
3. Микшировать полученный сигнал с сигналом плеера
4. Подать микшированный сигнал в наушники
Аватара пользователя
Mamonth
Вымогатель припоя
Сообщения: 534
Зарегистрирован: Пн янв 16, 2006 08:00:17
Откуда: Иркутск

Сообщение Mamonth »

lexmulya писал(а):В аверках АЦП до мегагерца вполне себя нормально чувствует, там есть бит точно не помню в каком из регистров, позволяет гнять АЦП. В даташите про него все подчистили но если внимательно вчитываться то можно зацепиться. Правда на таких частотах тока 8 значащих бит, дальше меньше. Посмотрите в интернете проект осцыла от bodja.


В АВР используется АЦП последовательного приближения. А посему у него есть тактовая частота.
:) Не путайте тактовую частоту АЦП и максимальную частоту дискретизации - это разные вещи.

Тот же bodja использовал тактовую 8 МГц для МК, делитель тактовой для АЦП Ck/2, т.е. тактовая 4 МГц... Среднее количество циклов 1 преобразования 13 4МГц/13 = 307 кГц примерно. максимальная тактовая у меги - 16 Мгц. т.е. макс 614 кГц. В каком месте мегагерц?

Кроме того, снижается разрешающая способность АЦП. bodja использовал 6 бит. Да молодец, но работа АЦП в таком режиме не отличается стабильностью. И во многом зависит от техпроцесса, какой МК попался в партии и прочее-прочее... Для простенького осцилла - чтобы посмотреть что происходит - реальный вариант. Использовать 6 бит для звука - по-моему маловато.
Today fine night...
Аватара пользователя
moLCHec
Мявтор!
Сообщения: 825
Зарегистрирован: Вс дек 18, 2005 20:04:42
Откуда: Свердловская обл.
Контактная информация:

Сообщение moLCHec »

Что то вы переоцениваете возможности АЦП, максимальная рекомендуемая частота у него 200кГц, время преобразования 260мкс т.е. 3-4 кГц. при снижении точности до 8 бит в 2 раза поднять частоту можно.
Настоящий кот всегда либо голоден,
либо невыспался ...
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»