[Усилитель Neptune] Релейный регулятор громкости и селектор. Макет
Для моего нового усилителя мне потребовался электронный регулятор громкости (РГ). Один из популярных вариантов - лестничный релейный регулятор громкости, или, как его еще называют, регулятор Никитина. Несмотря на обилие готовых решений в сети, собрать его я решил своими руками под свои "хотелки". Кроме РГ нужен был селектор на 4 входа с возможностью запоминать последний выбранный вход.
Оба этих устройства я объединил в одном модуле. Схема основана на микроконтроллере AVR.
Кнопка переключает входы, потенциометр - меняет уровень громкости. Именно благодаря электронному регулированию можно не применять сдвоенный потенциометр. Кроме этого его можно располагать в любом удобном месте усилителя не беспокоясь о наводках на входные цепи.
В целях экономии выводов МК для управления реле были использованы 8-битные сдвиговые регистры. По факту я решил взять мощные регистры от TI TPIC6B595. Функционально они аналоги регистров типа 74HC595, но имеют выходы с открытым стоком и допустимым током до 150 мА на каждый выход (при условии соответствующей трассировки платы, о чем сказано в даташите). Это позволило не ставить транзисторные ключи или специальные драйверы типа ULN2003.
Отладка работы устройства проводилась на МК ATtiny13, но в конечном устройстве планируется применить более мощный МК.
Из-за ограничений по габаритам конструкцию пришлось разделить на две платы.
Левая плата является основной - на ней расположены входные разъемы, реле селектора и микросхемы регистров. Правая плата устанавливается на нее этажеркой и на ней расположены реле и резисторы релейного РГ. Электрически они связаны разъемами типа PLD.
Также можно не устанавливать верхнюю плату РГ. В таком случае выходной сигнал берется с разъема OUT вверху платы.
Так как в усилителе будет применяться один МК для управления всеми сервисными функциями, то на данном модуле его нет. Имеется лишь разъем входа управления (CTRL), который будет соединен с платой МК. Но был также оттрассирован вариант нижней платы с МК ATtiny13. Это позволит применять модуль автономно.
Логика переключений реле РГ довольно проста. Для оцифровки сигнала с потенциометра применяется 10-битный АЦП, встроенный в МК. Реле управляются двоичным кодом. Поэтому достаточно просто взять 6 старших бит результата оцифровки (т.к. реле 6 штук) и вывести их в регистр, к которому подключены реле.
Платы первой ревизии:
Сборка и испытания макета показали работоспособность программы.
Естественно, не обошлось без ошибок:
1. Программные глюки.
2. Оказалось, что купленные реле имеют полярность включения. РГ работал (тут я "угадал" с полярностью), селектор - нет. Пришлось править дорожки.
3. Конструктивный недочет - реле верхней платы и разъем CTRL немного мешают друг другу. Поставил угловой разъем, частично помогло.
В процессе испытаний уяснил для себя несколько моментов:
1. Шаг регулировки нужен меньше. Сейчас 1,5 дБ. А то слишком большой диапазон получается.
2. Нужно как-то усреднять значения с АЦП. Бывают самопроизвольные пощелкивания.
3. Плавное увеличение громкости скорее всего нафиг не надо. Трескотня никакого шарма не добавляет. Пока убрал.
4. Щелчков при регулировке нет. Подключал ухоусь, поэтому слушал в наушниках. Придерживался "инверсной" схемы включения реле:
QuoteЧтобы устранить этот неприятный эффект при использовании обычных реле, достаточно поменять разомкнутые и замкнутые группы контактов местами, а сигналы управления реле проинвертировать.
Источник: http://radiopages.ru/nikitin2.html#ixzz4d6tHAZcU
Итого, функционал модуля следующий:
- управление громкостью потенциометром с линейной характеристикой регулировки;
- 64 ступени регулировки, при шаге 1,5 дБ дают ослабление от 0 до -94,5 дБ;
- четыре входа селектора;
- переключение одной кнопкой "по кругу";
- запоминание последнего выбранного входа;
- задержка при включении (2 c);
- mute между переключениями каналов.
В планах - исправить все косяки и добавить возможность управления энкодером с кнопкой.
UPD: Видео работы РРГ:
26 Комментариев
Рекомендуемые комментарии
Присоединяйтесь к обсуждению
Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.