TViT 0 20 декабря, 2011 Опубликовано 20 декабря, 2011 (изменено) · Жалоба Народ подскажите пожалуйста, есть микрофон он подключен к МК через усилок max9814, все отлично работает , но хочу усилить высокочастотную составляющую программно. Как это сделать чтобы усиление сигнала было ровно по всему спектру в зависимости от того какой сигнал оцифровывается в текущий момент пропорционально поднималось усиление. Своего рода АРУ с частотной компенсацией. Примерно как на графике или линейно если возможно. Изменено 20 декабря, 2011 пользователем TViT Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
qxov 0 20 декабря, 2011 Опубликовано 20 декабря, 2011 · Жалоба Создайте фильтр с нужной АЧХ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SPACUM 0 20 декабря, 2011 Опубликовано 20 декабря, 2011 · Жалоба в зависимости от того какой сигнал оцифровывается в текущий момент пропорционально поднималось усиление 1. Невразумительный график. По частоте линейный? логарифмический?. По амплитуде это сколько раз? 2. А частотная характеристика должна быть неизменной? только усиление? 3. А если на микрофон 2 частоты попадут - он путаться не должен? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TViT 0 20 декабря, 2011 Опубликовано 20 декабря, 2011 (изменено) · Жалоба SPACUM 1. Невразумительный график. По частоте линейный? логарифмический?. По амплитуде это сколько раз? Можно линейный, но лучше не линейный поскольку и мощность в зависимости от расстояния до микрофона не линейно снижается. 2. А частотная характеристика должна быть неизменной? только усиление? Только усиление от 1 до например в 2-3 раза на 10кГц 3. А если на микрофон 2 частоты попадут - он путаться не должен? При смешанном сигнале усилиться должны частоты тем больше чем ближе они к 10кГц - примерно в соответствии с графиком. qxov Создайте фильтр с нужной АЧХ. Я расчитывал разные только стандартные фильтры в Scilab, как расчитать фильтр с произвольной АЧХ понятия не имею, тем более нужно без FFT, так как это должно быть оч быстрое простое решение чтобы не создавать задержи между тактами оцифровки, иначе придется уменьшать частоту дескретизации. Примерно представление у меня такое нужно сделать что-то типа обратной связи в ОУ чтобы высокие на выходе подавались обратно на вход, в простейшем случае это конденсатор, а как это математически расчитать для коэф. свертки незнаю. Изменено 20 декабря, 2011 пользователем TViT Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SPACUM 0 21 декабря, 2011 Опубликовано 21 декабря, 2011 · Жалоба Только усиление от 1 до например в 2-3 раза на 10кГц То, что Вы хотите называется фильтр. И никакого отношения к АРУ не имеет. Я бы посоветовал применить полосовой БИХ фильтр второго порядка на частоту 10 кГц с добротностью 1 и коэффициентом передачи 1-2 раза. И просуммировать его выход с основным сигналом. Как раз 2-3 раза на 10 кГц и получится. Но правильнее включить его в аналоговом виде в микрофонный предварительный усилитель - шумов меньше будет. Я делал такое устройство для одного певца, которому не нравился собственный голос записанный на аппаратуре с линейной АЧХ. Добавление такого фильтра на частоту 15 кГц было признано идеальным решением. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TViT 0 21 декабря, 2011 Опубликовано 21 декабря, 2011 · Жалоба То, что Вы хотите называется фильтр. И никакого отношения к АРУ не имеет. Я бы посоветовал применить полосовой БИХ фильтр второго порядка на частоту 10 кГц с добротностью 1 и коэффициентом передачи 1-2 раза. И просуммировать его выход с основным сигналом. Как раз 2-3 раза на 10 кГц и получится. Но правильнее включить его в аналоговом виде в микрофонный предварительный усилитель - шумов меньше будет. Я делал такое устройство для одного певца, которому не нравился собственный голос записанный на аппаратуре с линейной АЧХ. Добавление такого фильтра на частоту 15 кГц было признано идеальным решением. Хорошо спасибо попробую сделать обычный фильтр, делал через ВЧ фильтр, но он что-то давит сильно сигнал нужно поднимать усиление чтобы выйти из минуса в единицу, а на высоких чтобы больше единицы было, незнаю не делал такого, попробую А вот что привлекло внимание так это функция yulewalk в matlab, Scilab она как я понял для этих целей как раз оч подходит буду пробовать. В начале тоже поставлю железный фильтр на ОУ просто ради интереса пробую повсякому :rolleyes: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ToR_TDA 0 17 января, 2012 Опубликовано 17 января, 2012 · Жалоба Хорошо спасибо попробую сделать обычный фильтр, делал через ВЧ фильтр, но он что-то давит сильно сигнал нужно поднимать усиление чтобы выйти из минуса в единицу, а на высоких чтобы больше единицы было, незнаю не делал такого, попробую Можно попробовать и просто КИХ фильтр на 2 - 4 коэффициента. Подобрать коэффициенты можно вручную по схеме на рисунке, затем привести к каноническому виду. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TViT 0 23 июня, 2012 Опубликовано 23 июня, 2012 · Жалоба А еще народ подскажите, а как нелинейно усиливать или ослабить например массив данных от 10 до 100? Данные должны передаваться на алгоритм который вернет пересчитанные нелинейно данные. Например 100 максимум ослабление нет (*1), а минимальные данные 10 нужно ослабить (например * 0.02). И желательно чтобы можно было менять кривизну ослабления (нелинейности). Через Логарифм непойму как сделать Log(x) просто степень возвращее, как это испоьзовать для ослабления данных непойму. Простите за простые вопросы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Uuftc 0 27 июня, 2012 Опубликовано 27 июня, 2012 · Жалоба Например 100 максимум ослабление нет (*1), а минимальные данные 10 нужно ослабить (например * 0.02). Попробуйте F(x) = x^n, где n = 2 Для signed степень (n) нечетная, или четная с домножением на знак x Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
TViT 0 27 июня, 2012 Опубликовано 27 июня, 2012 · Жалоба Попробуйте F(x) = x^n, где n = 2 Для signed степень (n) нечетная, или четная с домножением на знак x Uuftc Спасибо мне тут уже разжевали )) http://forum.sources.ru/index.php?showtopic=359860 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться