реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> АРУ, нужен алгоритм
uriy
сообщение Nov 14 2007, 18:26
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 429
Регистрация: 30-11-05
Из: Ижевск
Пользователь №: 11 606



Нужен алогоритм АРУ или может даже исходник у кого-нибудь есть. Также не помешает почитать про аналоговые АРУ. Ничего толкового в нете найти не удалось. Буду рад если ткнете пальцем в книгу.
Go to the top of the page
 
+Quote Post
petrov
сообщение Nov 15 2007, 12:40
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937



http://rapidshare.com/files/45943139/%%202...Nezami.rar.html
Go to the top of the page
 
+Quote Post
dtsar
сообщение Nov 15 2007, 15:26
Сообщение #3





Группа: Новичок
Сообщений: 11
Регистрация: 21-10-07
Пользователь №: 31 558



В прошлом году делал АРУ. есть несколько алгоритмов. если еще нужно, могу поискать, даже исходники выслать. только на С.
Go to the top of the page
 
+Quote Post
uriy
сообщение Nov 15 2007, 18:38
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 429
Регистрация: 30-11-05
Из: Ижевск
Пользователь №: 11 606



dtsar
Да конечно, если не сложно поищите пожалуйста. А то что на С, это приветствуется.
Go to the top of the page
 
+Quote Post
Yura_K
сообщение Nov 15 2007, 19:40
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 185
Регистрация: 5-05-06
Из: Ekaterinburg, Russia
Пользователь №: 16 821



Цитата(dtsar @ Nov 15 2007, 20:26) *
В прошлом году делал АРУ. есть несколько алгоритмов. если еще нужно, могу поискать, даже исходники выслать. только на С.

Уважаемый dtsar, если Вас не затруднит, вышлите исходники на yuramail@k66.ru. Заранее спасибо.


--------------------
Чудес не бывает - бывает мало знаний и опыта!
Go to the top of the page
 
+Quote Post
Stanislav
сообщение Nov 15 2007, 20:39
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987



Братцы, а что такое "алгоритм АРУ"? 07.gif


--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
Go to the top of the page
 
+Quote Post
rezident
сообщение Nov 15 2007, 20:53
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(Stanislav @ Nov 16 2007, 01:39) *
Братцы, а что такое "алгоритм АРУ"? 07.gif

Видимо это алгоритм по которому нужно крутить ручку "громкость".
Код
while(1)
{ if (volume<MOI_LUBIMIY_UROVEN_GROMKOSTI) volume++;
  else
     if (volume>MOI_SOSED_UZHE_STUCHIT_PO_BATAREE) volume--;
     else lovim_kaif();
}
Go to the top of the page
 
+Quote Post
uriy
сообщение Nov 16 2007, 05:10
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 429
Регистрация: 30-11-05
Из: Ижевск
Пользователь №: 11 606



Цитата
Братцы, а что такое "алгоритм АРУ"?

По крайне мере в моем понимании есть несколько видов АРУ.
- с прямым регулированием;
- с обратным регулированем;
- АРУ с садержкой;
- АРУ без задержки;

rezident
в вашем случае когда сосед не стучит по батарее, выполняется вот это
if (volume<MOI_LUBIMIY_UROVEN_GROMKOSTI) volume++;
т.е. громкость будет возрастать и стремится к бесконечности. Это же не есть гуд, когда по батарее никто не стучит. Значит надо предусмотреть минимальный уровень громкости, который еще не надо усиливать.
У АРУ есть еще один неприятный момент: если мы негромко говорим в микрофон, а затем повышаем голос, то на выходе АРУ будет всплеск, т.к. коэффициент усиления АРУ еще не успел адаптироваться. И в противном случае когда с громкого голоса понижаем его, будет провал, т.к. коэффициент усиления еще был мал. Чтобы уменьшить длительность этих всплесков нужно уменьшать интервал усреднения энергии сигнала. Но если уменьшить интервал до одного сэмпла модуляция исчезнет напрочь, АРУ просто сгладит входной сигнал.
Именно от этих всплексок я не могу избавится, АРУ пока валяю в Simulink.
Go to the top of the page
 
+Quote Post
Stanislav
сообщение Nov 16 2007, 13:34
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987



Цитата(urasinov @ Nov 16 2007, 08:10) *
По крайне мере в моем понимании есть несколько видов АРУ.
- с прямым регулированием;
- с обратным регулированем;
- АРУ с садержкой;
- АРУ без задержки;
Понятно. С натяжкой, принять можно. Правда, вместо слова "алгоритм"
лучше использовать выражение "способ реализации".
Не мешало бы выложить сюда условия Вашей задачи. Тогда можно было бы посоветовать что-то конкретное.

Цитата(urasinov @ Nov 16 2007, 08:10) *
У АРУ есть еще один неприятный момент: если мы негромко говорим в микрофон, а затем повышаем голос, то на выходе АРУ будет всплеск, т.к. коэффициент усиления АРУ еще не успел адаптироваться. И в противном случае когда с громкого голоса понижаем его, будет провал, т.к. коэффициент усиления еще был мал. Чтобы уменьшить длительность этих всплесков нужно уменьшать интервал усреднения энергии сигнала. Но если уменьшить интервал до одного сэмпла модуляция исчезнет напрочь, АРУ просто сгладит входной сигнал.
Именно от этих всплексок я не могу избавится, АРУ пока валяю в Simulink.
В ряде случаев для сжатия динамического диапазона речевого сигнала допустимо использование (динамического) амплитудного ограничения.


--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
Go to the top of the page
 
+Quote Post
uriy
сообщение Nov 16 2007, 13:55
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 429
Регистрация: 30-11-05
Из: Ижевск
Пользователь №: 11 606



Да вы правы возможно амплитудного ограничителя будет достаточно. Не вижу необходимости усиливать слабый сигнал, требуется подавлять сильный.
Так вот.
Дано:
Электретный микрофон, с номинальным выходным напряжением 12 мВ, кодек со встроенным операционником и процессор.
Коэффициент усиления ОУ 22 дебила (или в 13 раз если память не подводит). Максимальное напряжение с микрофона может достигать 60 мВ. Когда напряжение с микрофона возрастает до 20-30 мВ и выше его требуется поддерживать на этом же уровне.
Go to the top of the page
 
+Quote Post
rezident
сообщение Nov 16 2007, 13:59
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(urasinov @ Nov 16 2007, 10:10) *
в вашем случае когда сосед не стучит по батарее, выполняется вот это
if (volume<MOI_LUBIMIY_UROVEN_GROMKOSTI) volume++;
т.е. громкость будет возрастать и стремится к бесконечности. Это же не есть гуд, когда по батарее никто не стучит. Значит надо предусмотреть минимальный уровень громкости, который еще не надо усиливать.

Гы, не-а smile.gif Это типичный алгоритм подростка-меломана. Врубает громкость на полную (его любимую). Когда соседи начинают бренчать по батарее уменьшает громкость до приемлимой. Затем через непродолжительное время забывает про соседей и опять начинает увеличивать громкость. А вообще, конечно в приведенном алгоритме работа от конкретных значений MOI_LUBIMIY_UROVEN_GROMKOSTI и MOI_SOSED_UZHE_STUCHIT_PO_BATAREE зависит. Если они перекрываются (и реакция соседа тоже постоянно присутствует), то уровень между ними изменяется. Если же соседа нет дома, то уровень достигает значения MOI_LUBIMIY_UROVEN_GROMKOSTI и на этом изменение его прекращается.
Go to the top of the page
 
+Quote Post
Stanislav
сообщение Nov 16 2007, 20:25
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987



Цитата(urasinov @ Nov 16 2007, 16:55) *
Да вы правы возможно амплитудного ограничителя будет достаточно. Не вижу необходимости усиливать слабый сигнал, требуется подавлять сильный.
К этому вопросу нужно подходить осторожно.
Например, если после оцифровки предполагается "сжимать" речь средне- низкоскоростным вокодером, амплитудный ограничитель и даже достаточно быстродействующая АРУ способны его "развалить" (появятся крайне неприятные призвуки, или даже неустойчивость анализатора). Поэтому, не мешало бы выяснить, что Вы собираетесь делать с сигналом после оцифровки.

Цитата(urasinov @ Nov 16 2007, 16:55) *
...Электретный микрофон, с номинальным выходным напряжением 12 мВ, кодек со встроенным операционником и процессор.
Коэффициент усиления ОУ 22 дебила (или в 13 раз если память не подводит). Максимальное напряжение с микрофона может достигать 60 мВ. Когда напряжение с микрофона возрастает до 20-30 мВ и выше его требуется поддерживать на этом же уровне.
Я бы всё-таки попытался уменьшить усиление ОУ или, на худой конец, уровень сигнала с микрофона в 2-3 раза (последнее можно сделать, уменьшив номинал резистора нагрузки соответственно). "Быстрые" АРУ и ограничители существенно ухудшают качество исходного сигнала, а динамического диапазона современных 16-битных кодеков более чем достаточно для поддержания приемлемого отношения С/Ш даже при низких уровнях сигнала с электретного микрофона без АРУ.
Какой именно кодек Вы юзаете, тоже интересно было бы знать.
В крайнем случае, можно сделать пороговую АРУ, где к-т усиления начинает плавно уменьшаться, начиная с какого-то определённого уровня входного сигнала. Но искажений при этом не избежать, и я этот способ всё-таки не рекомендую Вам брать на вооружение...

ЗЫ. При работе с аудиокодеками я всегда использовал внешний усилитель микрофонного сигнала, а на встроенном усилителе выставлял Ку ~= 2 для нормального уровня (а не 1, чтобы компенсировать избыточную чувствительность некоторых экземпляров микрофонов программно).


--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
Go to the top of the page
 
+Quote Post
Alechin
сообщение Nov 17 2007, 10:05
Сообщение #13


Частый гость
**

Группа: Свой
Сообщений: 158
Регистрация: 27-06-05
Из: Химки, Моск.обл.
Пользователь №: 6 334



не забывайте еще про такие параметры как время срабатывания (единицы мсек - что довольно жесткое ограничение) и время отпускания (до десятков секунд). Я видел в некоторых требованиях к АРУ даже параметры на вид графика функции "отпускания".
Go to the top of the page
 
+Quote Post
uriy
сообщение Nov 19 2007, 05:16
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 2 429
Регистрация: 30-11-05
Из: Ижевск
Пользователь №: 11 606



Цитата
что Вы собираетесь делать с сигналом после оцифровки.
Именно то что вы написали, дальше сигнал поступает на вокодер.
Кодек AD73322 16-битный, отношение S/N 78 db итого 12 эффективных разрядов.
У этого кодека имеется ОУ на входе ноги которого выведены наружу. Тут резисторами выставлен коэффициент усиления 6 db. Кроме этого в кодеке имеется PGA (ОУ с программируемым коэффициентом усиления) 0...38db, на нем выставлено 18 db. Такой большой коэффициент усиления, потомучто на выходе кодека требуется амплитуда 0,5 В.
Go to the top of the page
 
+Quote Post
Stanislav
сообщение Nov 21 2007, 01:00
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987



Цитата(urasinov @ Nov 19 2007, 08:16) *
Именно то что вы написали, дальше сигнал поступает на вокодер.
Тогда о всяческих АРУ и ограничителях лучше забыть.
Какой вокодер применять думаете, кстати?

Цитата(urasinov @ Nov 19 2007, 08:16) *
...Кодек AD73322 16-битный, отношение S/N 78 db итого 12 эффективных разрядов.
Ближе к 13, по-моему. smile.gif
Вообще-то, этот кодек - отстой. Если есть возможность, стоит подумать о его замене на более приличный.
Кстати, оцифровку на нём нужно делать с передискретизацией и последующим прореживанием: цифровой ФНЧ там тоже паршивый.

Цитата(urasinov @ Nov 19 2007, 08:16) *
...У этого кодека имеется ОУ на входе ноги которого выведены наружу. Тут резисторами выставлен коэффициент усиления 6 db. Кроме этого в кодеке имеется PGA (ОУ с программируемым коэффициентом усиления) 0...38db, на нем выставлено 18 db.
Ну, так уменьшите просто - и все дела. smile.gif

Цитата(urasinov @ Nov 19 2007, 08:16) *
...Такой большой коэффициент усиления, потомучто на выходе кодека требуется амплитуда 0,5 В.
А это ещё как? 07.gif


--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 6th July 2025 - 19:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01555 секунд с 7
ELECTRONIX ©2004-2016