Предварительный усилитель с микропроцессорным управлением

Предварительный усилитель с микропроцессорным управлением

*****
О минусах бюджетной активной акустики
Концепция устройства
Первая реализация
Вторая реализация
Измерения и контрольное прослушивание
Программное обеспечение
Будет ли третья версия?
Заключение и конкурс


*****

О минусах бюджетной активной акустики

Если говорить о стереосистемах, предназначеных для озвучивания околокомпьютерного пространства, то очень во многих случаях требования к ним могут быть достаточно низкими, особенно, если для целей прослушивания-просмотра аудиовизуального контента уже имеется в наличии аппаратура класса Hi-Fi или дорогие мультимедийные комплекты (такие, как Dynaudio MC6xx, Focal Dome и пр.). Но, если «компьютерные» колонки — единственные, то вполне естественное желание - получить от них максимально возможное качество воспроизведения и хорошиий набор эргономических качеств.

Какие же преграды стоят на получении качественного звука за небольшие деньги? «Бюджетная акустика» — понятие растяжимое, но, в целом, можно сказать, что, как обычно, черт скрывается в мелочах. Конструкции динамических (или любых других типов) головок хорошо известны, лучшие схемотехнические решения также давно не секрет. Но все хорошее стоит дорого — многие работы защищены авторским правом, технологические процессы должны строго выдерживаться, на производстве (да и в целом в компании) должен быть внедрен профессиональный менеджмент качества. Но производитель бюджетной техники, как правило, из юго-восточной Азии, серьезными затратами себя не обременяет. И нехватка «по чуть-чуть» по всем направлениям оборачивается серьезной потерей общего качества изделия, включая надежность. Хотя внешний вид очень часто на высоте. Если вы чувствуете, что вам этого «чуть-чуть» не хватает, то есть шанс втянуться в неблагодарный и длительный процесс самостоятельных доработок, коими пестрит интернет. Но обклеить, обмазать, удобрить навозом, заменить неполярный электролит на пленку, и, самое главное, заменить китайский кабель - и «вот теперь зазвучало!» - это сказки для младшего школьного возраста.

Это не значит, что что-то улучшить невозможно в принципе. Можно, конечно. Если у вас есть соответствующие навыки и возможность инструментального контроля (например, получить АЧХ по звуковому давлению, до и после доработок). И есть возможность подбирать комплектующие, в первую очередь, парные динамические головки для левого и правого каналов, соответствующие к тому же расчетным частотам кроссовера. Или тогда уж подбирать и настраивать элементы кроссовера и ФИ под головки. Но повторяемости у таких доработок из-за гигантского разброса параметров, следовательно и эффекта у повторивших, в большинстве случаев не будет (а доработок с инструментальным контролем, а не просто восхищенные вздохи после «унаваживания», мне на просторах интернета не встретилось).

О проблемах мультимедийной акустики, на примере пары комплектов Microlab SOLO 6С и одного Microlab SOLO 4С, купленных в обычной рознице в разное время, можно почитать на моей ПС.

Еще раз повторюсь, дешевый набор комплектующих, дешевая рабочая сила и отсутствие надлежащего выходного контроля готовых изделий делают свое дело — разброс параметров динамических головок делает АЧХ и ФЧХ непредсказуемыми. Поэтому любое, даже незначительное, изменение элементов кроссовера, может внести серьезные изменения в итоговое звучание. Оно может сразу и понравиться, но очень стоит ознакомиться с основами психоакустики для понимания того, как человек воспринимает звук. Тем более, что, делая доработки и не имея возможности прослушивания одного и того же материала с «более правильно» звучащими АС немультимедийного класса, можно вообще уйти далеко не в ту степь.

Поэтому стоимость комплекса полноценной доработки, с подбором комплектующих, настройкой и проверкой, будет намного превышать первоначальную стоимость самого дорабатываемого устройства и вряд ли может быть оправдана. Впрочем, техническое творчество далеко не самое пустое времяпрепровождение, и с этой точки зрения любые доработки могут быть оправданы, да и эмоции от результатов собственного труда полезны с медицинской точки зрения.

Концепция устройства

После знакомства с Microlab SOLO 6С (пару лет назад), вышеперечисленные недостатки мультимедийной акустики не вдохновили меня на доработки, но появилось смутное желание расширить функциональность устройства. В то время это желание не переросло в импульс для практического воплощения. Но прошлой весной мне под руку попались микроконтроллеры AVR, потихоньку вернувшие меня на давно заброшенную стезю радиолюбителя. После полугодового изучения всевозможных 8-битных микроконтроллеров производства Atmel, решил устроить себе выпускной экзамен, создав какое-нибудь полезное в хозяйстве устройство. И разбросанные по всем углам узлы и детали, бывшие когда-то активными акустиками семейства Microlab SOLO, предопредилили выбор — было принято решение разработать альтернативный предварительный усилитель, который бы превосходил возможности оригинального.

Задачи были поставлены следующие:

-Вся конструкция собирается в пределах конструктива Microlab SOLO 6С, на задокументированной и широкодоступной элементной базе, технические характеристики не должны быть хуже, чем у предусилителя Microlab SOLO 6С.

-Должен быть отдельный усилитель для наушников, с питанием от своего источника, от того же источника получит питание предварительный усилитель и логика управления.

-Расширить число коммутируемых входов

-Должна быть удобная регулировка баланса

-Трансформатор основного усилителя должен быть отключаемым.

-Расширить функциональность индикатора на передней панели за счет возможности показа текущего времени и параметров усиления не в абстрактных числах, а в dB.

-Сохранять профиль настроек в энергонезависимой памяти.

-Управление всеми настройками производятся как с ИК пульта, так и с ПК

-Сделать возможность управления от любого ИК пульта

Ввиду того, что все активные компоненты — серийные интегральные микросхемы, повторяемость предусилителя должна получиться очень высокой и готовое изделие обеспечит заведомо известные параметры при установке в любую активную акустику или как часть интегрального усилителя.

Приступаем к проектированию и изготовлению.

Первая реализация

Эта и следующая глава изобилуют техническими деталями и, если вы не отличаете транзистор от тиристора и не дружите с паяльником, то смело посмотрите картинки и переходите к главе «Измерения и контрольное прослушивание», так как там проявилось весьма странное поведения предусилителя SOLO, возможно, и послужившее тому, что параметры использованного аудиопроцессора оказались засекреченными, а от представителей Microlab мир услышал, что эти колонки нужно слушать, отвернув от пользователя.

Итак, переходим к хронологии появления устройства ZP1 (Zauropod' Preamplifier №1), с описанием всех моих промахов и недостатков конструкции. Нам в этом мире уже некого бояться и нечего стыдиться.

Начнем с индикатора, он - «лицо» нового устройства, и оно должно быть шире, но в том же размере овального корпуса-светофильтра. Шире на два дополнительных индикатора. Беглый поиск по даташитам показал, что оптимальным размером для размещения четырех цифр являются 7-сегментные LED с высотой цифр 7мм. Оригинальные имеют высоту 10мм, но десятимиллиметровые перекрывают весь вертикальный размер и при 4-х знаках уже не остается места для ИК приемника. Четыре индикатора с меньшей высотой цифр тоже имеют проблему - внутренняя стойка у светофильтра не позволит разместить индикаторы горизонтально по центру, а размер ИК приемника не позволит отцентрировать индикаторы по вертикали. Но итоговое смещение влево и вниз на пару миллиметров (при взгляде на переднюю панель) почти не заметно.

В итоге выбираем 7-сегментные индикаторы от Lite-On типа LTS-2301AWC. На самом деле, учитывая десятичную точку, они 8-сегментные. Каждый индикатор имеет 10 выводов. Это создает дополнительные трудности — если счетверенный на заводе блок имел бы только 12 выводов, то у нас их будет 40. Места под разъем не останется, так как и число контактов разъема надо увеличивать на 3 (два дополнительных общих катода и сегмент десятичной точки, который в SOLO не задействовался). Миниатюрные разъемы стоят в десятки раз больше стандартных IDC с шагом 2.54мм, поэтому принимаем компромиссное решение — по краям платы втискиваем две контактных колодки, к которым уже и будет подсоединяться плата-переходник с полноценным IDC- гнездом. Вот что получилось в итоге:


На зеленой платке - оригинальный индикатор SOLO


Индикатор в сборе с переходной платой

При желании и умении, можно уменьшить высоту крепежных стоек светофильтра, это даст возможность более широких углов визуального обзора индикатора. Углы поля зрения ИК приемника это не повысит, так как приемник и так можно разместить вплотную к светофильтру.

Теперь индикатор надо оживить. Это будет делать управляющий микроконтроллер. Схема управления для 8-битных AVR я разработал сразу, как в моих руках появился первый MCU от этой фирмы. Но прямое управление 4-х разрядным индикатором требует на эти цели выделить 12 выводов. Учитывая, что в качестве MCU был выбран один из самых современных на то время (и дешевых), ATмega88 с планарным расположением своих 32 ножек, отдавать из них 12 на индикатор казалось чрезмерным, так как планировалась масса расширений, требующих внимания MCU. Поэтому в схему были добавлены две микросхемы логики — сдвигающие регистры SIPO (с последовательным входом и параллельным выходом) типа 74HC164. Одна — на 8-сегментов, вторая — на 4 общих катода (или анода, MCU за пару команд переконфигурируется на любой тип) и 4 дополнительных вывода расширения. Запись в регистры (сдвигом) происходит с частотой 500KHz (при тактовой частоте MCU 8MHz). Ограничительные резисторы сегментного тока выбирались из максимально возможного тока через общий катод 20mA (предел для 74HC164), что давало максимально возможный прямой ток около 3mA на сегмент. Таким образом, вместо 12 выводов, на индикатор получилось отдать только три с половиной. «Полвывода» - это потому, что подобное расширение было использовано и на ввод, с помощью еще одного сдвигающего регистра, но уже PISO (параллельный вход — последовательный выход), типа 74HC165 и вход тактовой частоты у них общий. 74HC165 управлял опросом 8-разрядного конфигурационного переключателя, на который заодно был подсоединен и энкодер регулировки громкости.

MCU работает от встроенного осциллятора 8MHz, так как включен режим асинхронного таймера и к выводам XTAL подсоединен часовой кварцевый резонатор, обслуживающий счетчик для обеспечения показаний текущего времени. Так как для MCU есть собственный невыключаемый блок питания, то это вполне приемлимое решение для регионов со стабильной электрической сетью.

Что касается цифровой части схемы, то присутствует и внешний EEPROM типа 24С04, с интерфейсом I²C. MCU имеет встроенный EEPROM, но необходимость внешней микросхемы обусловлена тем, что она должна была хранить альтернативные конфигурации ИК пультов, с возможностью установки на панель и легкой замены. А по большей части — просто для тренировки, так как до этого проверял только работу микросхем EEPROM с интерфейсом SPI.

Стоит упомянуть и о микросхеме FT232RL, конвертирующей USB интерфейс в пока еще более распространенный в мире 8 битных MCU интерфейс USART. Микросхема всем хороша, за исключением цены и того, что вовсю наступают на пятки конкуренты. В продаже уже появились подобные изделия от Microchip, стоимостью в три раза дешевле. Да и многие микроконтроллеры имеют встроенную поддержку USB и при этом тоже стоят намного дешевле. Безусловно, микросхема FT232RL постепенно уйдет с рынка, но, по крайней мере, под нее есть драйверы для любой операционной системы.

Все цифровые интерфейсы и оставшиеся свободными выводы MCU имеют выходы на контактные колодки, кроме того, установлен слот расширения под установку RF цифрового приемника.

Переходным звеном к аналоговому тракту служит мультиплексор на 4 стереовхода 74HC4052, используемый для коммутации четырех источников сигнала.

Дошла очередь и до выбора аналогового тракта. Но тут подход был один — доступность и наименьшая цена. Попались под руку новые, но старенькие TDA8424 и TDA8425. Последняя отличается только наличием встроенного коммутатора пары входов. Но коммутатор у нас уже есть, а TDA8424 имеется аж две штуки. Ставим TDA8424, управляется она по интерфейсу I²C.

Технические параметры аудиопроцессора - не хуже советской аудиоаппаратуры высшего класса. Не нравится заявленный разброс параметра по усилению, поэтому схему дополняем нормирующим усилителем на OPA2134UA, с питанием от оконечного усилителя, так как она нужна только при работе на громкоговорители, а усилитель наушников, собираемый на TDA8222M, в ней не нуждается.

Для пущей совместимости с SOLO, выходы ОУ OPA2134UA подключаем к транзисторным ключам, реализующим задержку размыкания входов оконечного усилителя, предотвращающих озвучивание переходных процессов в системе при ее включении. Впрочем, в нашем случае это можно сделать и через цифровую задержку и управление.

Так как многие узлы по отдельности уже были опробованы на макетной плате, а типовые решения из документации не представляют ничего сложного и легко запоминаются, то схема устройства изначально не рисовалась и работа началась сразу с разводки печатной платы. Но нарисовать все же пришлось, так как «в уме» нумерацию элементов проивести сложновато, да и в случае с ремонтом-заменой, которая может потребоваться, когда уже многие нюансы сотрутся из памяти, схема потребуется. Так что, правильнее ее рисовать и анализировать до разводки.

После разводки платы в компьютере, нужно успокоиться на сутки и свежим, незамыленным взглядом все перепроверить. Но, поскольку это была моя первая плата на smd-элементах, первая, разведенная на компьютере и вообще первая за последние 20 лет, то прорезалось детское нетерпение, и, нарушая все заповеди, после очередных исправлений сразу отправил на изготовление.


Первая компьютерная модель, в центре виден ошибочный типоразмер под микросхему FT232RL. Это было исправлено что мы и видим на нижнем фото готовой платы


Изготовленная плата


Монтаж окончен, полет нормальный

Спешка обернулась некоторыми пропущенными некритическими ошибками, которые пришлось исправлять, перерезая дорожки и устанавливая перемычки.


Исправляем свои ошибки

Невнимательность к типоразмерам разъемов тоже привела к необходимости изменений, в частности, разъем питания пришлось сделать угловым, иначе ответная часть не помещалась между разъемом USB и подстроечным резистором регулировки рефренсного напряжения.

Цифровая часть могла получать питание и от шины USB, но для аналоговой требовался отдельный источник. Был собран малогабаритный блок питания на плоском трансформаторе, содержащий две раздельных вторичных обмотки для питания цифровых и аналоговых цепей. Использовались двухполупериодные мосты и линейные стабилизаторы на 5V для цифровых и 12V(10V для второго экземпляра) для аналоговых цепей, с фильтрующими емкостями. Кроме того, на плате БП установлено твердотельное реле (SSR) S202S02 производства SHARP, для включения-выключения силового трансформатора питания оконечного усилителя. SSR управляется непосредственно микроконтроллером, с соответствующими цепями ограничения и защиты.


Блоки питания и трансформатор для ZP3

Изготовлено два блока питания на разных трансформаторах. Слева — трансформатор для следующего варианта предусилителя ZP3 (если это вообще произойдет)

Почему трансформаторы разные? Для TDA8424 минимальное рабочее напряжение составляет 10.5V. Шести вольт переменного тока на вторичной обмотке будет маловато. Теоретически. Поэтому для ZP1 выбран трансформатор с двумя вторичными обмотками по 9V, хотя лучше было бы иметь одну обмотку с более низким напряжением, для питания цифровых цепей. Но в каталоге Indel трансформаторы либо с одной, либо с двумя идентичными обмотками. Включаем в сеть и удивляемся — переменка около 18 на каждой обмотке, выпрямленное напряжение до стабилизатора - более 23V. Сначала подумал, что перепутал включение первичной обмотки (она также состоит из двух обмоток), перечитал руководство, да нет, все правильно. Кроме того, и на шильдике все написано — 230V 1-5, перемычка (по польски — zwora) 3-7, зеркально не перепутаешь там пустые ножки, то есть, по-другому и не включишь. Если две первички были бы включены параллельно, как для сети 127V, то такой выхлоп можно понять, но они соединены последовательно, да и не выдержали бы первички в этом случае. Сеть в норме. С интересом покупаю трансформатор со вторичкой 2x6V. Цоколевка у них одинаковая, печатные платы одинаковые. Кто угадает напряжение на вторичке? 10 Вольт переменки. Как то все это не очень понятно. Перемерял все остальные трансформаторы в хозяйстве — там что написано на шильдиках, то прибор и показывает. Купил еще один трансформатор от Indel, 2x6V, но мощностью меньше 2VA, пока не включал, пусть интрига сохранится. А может, я просто уже всю электротехнику забыл.
Тем не менее, оба трансформатора круглосуточно прекрасно работают , бесшумные и не греются. Только с первым трансформатором бесполезная мощность, рассеиваемая на стабилизаторах, близка к той экономии, которую планировалось получать отключением основного трансформатора.

После сборки и доработок программы микроконтроллера, вся цифровая часть была постепенно отлажена и планируемая функциональность была достигнута. Что и являлось главной целью. Замеченный негатив:

Перепутано соединение с RX-TX TX-RX на RX-RX TX-TX между микроконтроллером и FT242RL, причем один раз исправил на правильное, но перед отсылкой файла на изготовление, при очередной правке, опять исправил на неправильный вариант.

При переходе через три платы, на ИК приемнике оказалась обратная полярность.

Эти две ошибки разводки устраняются достаточно легко.

Аналоговая часть несколько омрачила ситуацию.

Звучание TDA8222M не было чистым, просматривались признаки самовозбуждения.
Отфильтровать наводки от цепей логики полностью не удавалось.
Без соединения аналоговой и цифровой земли, TDA8424 не желал понимать команды шины I²C.
Срабатывания контактов энкодера попадали в выходной сигнал.
Однополярного питания для мультиплексора недостаточно. У входного сигнала выше одного вольта начиналось таинство обрезания.

Выявилось еще несколько неудачных моментов, например smd-переключатель явно неудобен для частого пользования при отладке.

Пластмассовые телефонные гнезда «made in odessa» имели раскоряченные в разные стороны ножки, создавая уникальный для каждого разъема типоразмер из пригоршни себе подобных, некачественно были закреплены, и я не рискнул их использовать и распаивать на плату. Дешевки «made in china» ушли недалеко, вероятно, все наливалось из одной бочки.

Исходя из изложенного, снимать параметры с ZP1 было нецелесообразно. Сначала решил поставить на этом жирную точку, но получалась какая-то незавершенная пьеса, несмотря на то, что преследуемые цели были достигнуты.

Старая гвардия не сдается. Будем добиваться нормального звука. Переходим к ZP2.


Вторая реализация

Из комплекта узлов ZP1 не было претензий только к индикатору. Блок питания собирается на новом трансформаторе и оба узла переходят в ZP2.

Цифровую часть, по возможности, следует ужать. Так как хочется сделать все быстро, новейшие MCU с нативной поддержкой USB не рассматриваем, ввиду отсутствия наработок, сохраняем FT232RL. Всю мелкую логику выбрасываем, поэтому применим MCU с достаточным количеством выводов. Подходящим будет Atmega16, на нем и останавливаемся. От ATмega88, с точки зрения использованной программной модели, его отличает только таблица векторов прерываний и их размер, отсутствие регистров GPIORx и отсутствие внешних прерываний по любому выводу GPIO. Остальные нюансы несущественны с точки зрения переносимости уже разработанной программы. Хотя, на самом деле, не совсем — я сначала детально не прочитал руководство по Atмega16, и посчитал имеющиеся три внешних прерывания INT 0..2 равнозначными, и плата была изготовлена с подачей сигнала от ИК приемника на INT2. При переносе программы обнаружилоь, что INT2 воспринимает либо фронт, либо спад, а INT0 и INT1 могут быть настроены с реакцией на любое изменение. Поэтому пришлось в двух местах добавить по три строчки кода для перенастройки INT2 на нужный тип реагирования после приема очередного фронта импульса от ИК. Все остальное прошло более-менее гладко.

Меняем и звуковой процессор. Все-таки старичку TDA8424 более 20 лет. С моей точки зрения, на рынке стереопроцессоров грустновато, поэтому поставим TDA7439, который немножко моложе и имеет встроенный коммутатор на 4 стереовхода, более лучшие электрические параметры и втрое меньший потребляемый ток при меньшем напряжении питания.

Все же добавилась еще одна цифровая микросхема — часы реального времени DS1307Z с резервной батареей. Теперь сбои в электрической сети не страшны для показаний времени. Хотя сама установка времени занимает десяток секунд с пульта или один клик из GUI.

Итого — всего три микросхемы, вместо установленных на плате ZP1 аж 9 штук.

Обжегшись на молоке, дуем на воду — на плате ZP2 много вспомогательных деталей и контактных гнезд для настройки, отладки и предотвращения попадания помех в звуковой тракт. Даже корпус USB разъема подсоединен к цифровой земле через RC фильтр. Микроконтроллер загнан максимально в дальний от аудиопроцессора угол, для чего пришлось еще повернуть его на 45°. И были приняты еще некоторые меры.

Но, как говорится, если в одном месте прибыло, то в другом убыло. По ошибке, копируя ISP разъем с платы ZP1, подвод синим цветом, обозначающий сторону платы, автоматически принял за контакт с общим проводом. Ошибка не фатальная и для пользователя незаметная, но досадная. Так же как и вторая промашка - изготовителю платы вместо маски элементов верхней стороны был повторно послан файл маски по меди. В результате, верхняя сторона осталась без шелкографии. Но на этом неприятности с ZP2 закончились. Благодаря комплексу мероприятий, работает не только цифровая часть, но и к аналоговому тракту трудно было придраться. Таким образом, можно считать, что и с точки зрения функциональности предусилителя задачи, поставленные в главе «Концепция устройства» решены. С одним исключением - над усилителем для наушников еще надо поработать. Но для того он и сделан съемным, чтобы установить тот, который нравится. А кроме него, есть еще два слота расширения, на которые разведено по одному стереовходу, питание и GPIO MCU.


ZP2.Компьютерная модель. Маска элементов есть


Готовые PCB ZP2. Верхняя сторона осталась без маски элементов


Монтаж ZP2 окончен. Все работает, как задумано



Измерения и контрольное прослушивание

Давайте посмотрим, каких параметров нам удалось достичь в версии предусилителя ZP2.

Инструментарий и оборудование

Воспользуемся программой RMAA версии 6.2.3, для пущей интриги, сравним между собой три предусилителя — ZP2, NADC355 и SOLO-4C (он идентичен во всем модельном ряду 4С/5С/6С/7С). Измерительной базой будет служить старенький компьютер на материнской плате K8SLI-eSATA2, с аудиокартой ESI Juli@ (драйвер 1.23), так как встроенный в материнскую плату кодек ALC662 показал совсем уж никакие параметры. ОC – Windows XP SP3 со всеми обновлениями.

Будем использовать три кабеля, пронумеруем их - короткий RCA-RCA (1), длинный RCA-RCA(2) и длинный RCA-миниджек 3.5(3).
(1) — из комплекта от проигрывателя NADT535
(2),(3) — производства Monster Cable.

К аудиовыходам плат ZP2 и SOLO-4C короткими (10см) неэкранированными проводами подпаиваются идентичные сдвоенные RCA-гнезда.

Методика измерений

Все измерения в RMAA делаются с калибровкой. Вместо рекомендованного уровня -1...-2dB используется уровень около -3dB. Причина в том, что усиления предварительного усилителя от SOLO не хватает для обеспечения нормального уровня измерительного сигнала, кроме того при показаниях уровня (по индикатору SOLO) выше 47 наблюдается резкий рост уровня нечетных гармоник. В связи с этим, при измерениях параметров ZP2 и SOLO, для сравнимости результатов, сигнал с выходов предварительных усилителей подается на вход предварительного усилителя NADC355, и уже с его выхода — на вход Juli@.

Все остальные тестируемые устройства обеспечивают нормальное восприятие уровня измерительного сигнала -1dB.

Поэтому поставим двоечку перегрузочной способности предусилителя SOLO (а нам и не обещали ее - заявлено только о входном сигнале 400mV, технические данные используемой микросхемы засекречены; у ZP2 уровень допустимого входного сигнала более 2.5V).
Вот как это выглядит у SOLO на графиках спектра:


Рекомендованный уровень входного сигнала -1dB, с дополнительным усилителем, - при любых настройках уровней записи/воспроизведения нечетные гармоники взлетают до небес


Лучший возможный вариант, сигнал -3dB, с манипулированием микшером, уровнем SOLO и последовательным включением дополнительного усилителя

По этой причине и выбран уровень около -3dB для всех измерений — надо подстроиться под самое слабое звено для сопоставимости получаемых данных, впрочем, это не существенное отклонение от требований RMAA и, к примеру, получающееся небольшое завышение по шумам нам не принципиально.

Переходим к измерениям, с выставлением уровня примерно -3dB. Все параметры тембров в нуле, у NADC355 темброблок отключен.

Для Juli@:
Входы и выходы Juli@ соединяем кабелем (1). Результаты - в слот RMAA №1.

Для NADC355:
Выход Juli@ соединяем кабелем (3) со входом на передней панели «MP» усилителя NADC355.
Выход «Preamp» усилителя NADC355 соединяем со входом Juli@ кабелем (2).Результаты - в слот №2.

Для ZP2 и SOLO:
Выход Juli@ соединяем кабелем (1) со входом тестируемого предусилителя. Выход предусилителя соединяется со входом на передней панели «MP» усилителя NADC355 кабелем (3). Выход «Preamp» усилителя NADC355 соединяем со входом Juli@ кабелем (2). Результаты - в RMAA слот №3 и №4 для ZP2 и SOLO соответственно.

Повторяемость результатов хорошая, поэтому нет необходимости высчитывать среднеарифметические параметры, тем более, нас интересует качественный результат. Вот типовой комплект измерений:


Сводная таблица результатов

Уровни шумов и динамического диапазона ограничены снизу выбранным для показанного теста 16-битным сэмплированием (и погрешностью занижения расчетного входного сигнала на 1..2db), естественно, при 24 битном формате можно будет увидеть параметры, близкие к заявленным для конкретного оборудования. Например, уровень шумов для Juli@ производитель определяет в -114dB, для NADC355 -106dB, столько же для аудиопроцессора, используемого в ZP2. Но искать предельные значения для ZP2 и SOLO не имеет смысла — в измерительном тракте 4.5 метра проводов, и два дополнительных устройства, хоть и выше классом. Поэтому важнее сравнить между собой ZP2 и SOLO, так как измерения проходили в абсолютно идентичных условиях и разница между полученными параметрами определяется в этом случае только за счет различия параметров самих устройств ZP2 и SOLO.

Что можно увидеть из приведенной таблицы? Во-первых, ZP2 имеет лучшие параметры во всех тестах. Хотя, конечно, такую разницу по шумам услышать будет трудновато даже самым золотым ушам. То же относится и к искажениям, хотя у ZP2 они и ниже примерно в 2 раза. Но и у SOLO очень хороший уровень. Существенно хуже у SOLO дело обстоит с разделением каналов, но, во-первых, об этом заявлено в технических характеристиках, а, во-вторых, этого опять же, вполне достаточно даже для большинства несжатых музыкальных композиций.

Самым неожиданным для меня явился спад AЧХ предварительного усилителя SOLO на ВЧ, плавно начинающийся с 1KHz и достигающий -4dB к 20KHz. Уже давно, чтобы сделать нелинейную АЧХ по напряжению в звуковом диапазоне для аудиоустройств, надо очень постараться. (если, конечно, вы заведомо не ставите частотно-корректирующих цепей).


АЧХ тестируемых устройств

Не это ли причина того, что компания Renesas (производитель аудиопроцессора, применяемого во всей линейке Microlab SOLO 4С/5С/6С/7С) очень постаралась, а потом засекретила параметры аудиопроцессора, и вскоре сняла его с производства, хотя для подавляющего большинства ее микросхем даташиты свободно доступны на сайте?
В связи с этим как-то подозрительно звучат заявления представителей Microlab по поводу завышенной отдачи на ВЧ по звуковому давлению, которую все сразу заметили. По версии Microlab, это было сделано для компенсации потерь, если слушатель находится не на оси ВЧ динамика. Странная отмазка. То есть, чтобы нормально послушать музыку, сидя в кресле, колонки нужно не развернуть на себя, как это обычно делается, а наоборот, отвернуть? И так запланировано изначально? А, может, просто попытались компенсировать спад предусилителя на ВЧ и перестарались?
Вряд ли мы узнаем правду.

Какие еще могут быть причины такого спада?
К сожалению, живым из моих трех предусилителей SOLO остался только один, а до этого АЧХ предусилителя не снимались, так как считалось, что такого спада быть не может. Поэтому, возможен и банальный брак. Поведение отдельно взятого устройства может сильно отличаться от среднестатистического для группы таких же изделий.

Кроме того, возможно, что нулевое значение тембра ВЧ соответствует не плоскому значению АЧХ, а некоторому завалу на ВЧ. Аудиопроцессор TDA7439 в ZP2, например, при подаче питания не устанавливает все тембры в ноль — ВЧ по умолчанию ставится с подъемом на 2dB.

На сайтах, исследовавших Microlab SOLO, приводились кривые АЧХ по звуковому давлению, когда работают все компоненты, включая кроссовер, и эти АЧХ - с итоговым подъемом на ВЧ при нулевом положении тембра.

Но, в случае влияния темброблока, АЧХ обычно выгнута в другую сторону, хотя именно такая кривая — правильнее (но тудно рассчитывать в подобном устройстве на что-то правильное).

Так что, правду можно узнать, если кто-то еще решится снять АЧХ по напряжению со своего предусилителя и наберется статистика.

Подводя итог нашим небольшим измерениям, можно отметить, что параметры ZP2 находятся на вполне приемлемом уровне.

Контрольное прослушивание ZP2 происходило пока только через внешний усилитель NADC355 с выходом на акустику Focal JMLab Chorus 806V, так как все время дорабатывалась и прошивка MCU, и GUI. Использовались различные источники звука и всевозможные настройки. Но, в отличие от проведенного пару лет назад прослушивания Microlab SOLO 6С с пристрастием, на этот раз тонкие нюансы не выискивались и комплектные АС не подключались (да и практически нет уже SOLO, есть пассивная пара в корпусе от SOLO 6С с совершенно другими динамиками). Поэтому тему о прослушивании можно завершить фразой, что предусилитель, на первый взгляд (или слух) моим ушам звук не портит до такой степени, чтобы это почувствовать. При максимальном усилении (у ZP2 и NADC355) и открытом входе шум и фон не прослушиваются. В зависимости от блока питания ПК, некоторую гадость во время паузы (опять же, только при максимальном усилении), можно услышать при подключенном USB кабеле.

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


Программное обеспечение

ПО можно разделить на «firmware», то есть, прошивку MCU, и на графический интерфейс конечного пользователя для управления предусилителем с ПК.

Программирование производилось с чистого листа, без использования чьих бы то ни было наработок, примеров и библиотек (за исключением технического описания использованных элементов).

Для микроконтроллера программа делалась на ассемблере. Вся работа организована через внутренние и внешние прерывания, а основная программа представляет собой бесконечный пустой цикл. Размер программы во флэшпамяти 4КБ. Учитывая, что полкилобайта занимают константы, а слово двухбайтное, то программа содержит около 1700 ассемблерных команд. То есть, ресурсы MCU Atmega16 использованы на четверть и менее, если учитвать еще менее относительное задействование SRAM и EEPROM.

Интерфейсная программа написана на C# и представляет собой простенький GUI для обмена данными с MCU. Этот обмен происходит через любой свободный USB порт (шина питания не используется и не нагружается). На плате предусилителя установлена микросхема FT242RL, конвертирующая протокол USB в более простой USART, по которому, с точки зрения MCU, и происходит взаимодействие. Скорость асинхронного обмена фиксированная и составляет 0.5Mbps.


GUI

Для полноценной работы ZP2 подсоединение к ПК не обязательно, но в некоторых случаях связь с ПК может представлять более комфортные условия управления, так как доступ к некоторым операциям будет осуществляться быстрее.

В принципе, все управляющие действия можно выполнить как с ИК пульта, так и с ПК, но есть отличия.

В целях предотвращения переключения на альтернативный ИК пульт при задании неверных параметров, и, как следствие, невозможности переключиться обратно на оригинальный пульт без подключения к компьютеру, эта опция доступна исключительно с ПК. При этом адрес и команды действующего пульта видны на экране монитора, легко редактируются, сохраняются в файл или загружаются из файла, а оригинальный (или любой другой) пульт подключается одним кликом мыши.

Интерфейс простой и все функции очевидны.
Регулировка громкости и тембра сделана на ползунках, с реально используемым аудиопроцессором шагом и диапазоном. Регулировки из программы приводят к соответствующему изменению на индикаторе SOLO. Верно и обратное — любое изменение с помощью ИК пульта отображается в программе. Весь обмен данными можно видеть в окне терминала. Данные курсируют в ASCII формате, соответствующему реальному HEX-коду для управления аудиопроцессором. Данным предшествует префикс, обозначающий адрес канала, которому предназначены данные, к примеру, префикс для громкости - «V», для баса - «B», для средних частот - «M» и так далее. В окне терминала видны запросы из программы в виде «PC : xx» и ответы от SOLO (после исполнения запроса) в виде «ZP : xx» или описания ошибки. Если регулировки делаются с пульта, то видны только сообщения от SOLO вида «ZP : xx», посылаемые для корректного отображения текущего состояния.

На картинке видно, что выбран альтернативный ИК пульт (от NAD Т535, о чем говорит адрес 85 (HEX)). Альтернативный или родной пульт выбирается простым кликом, но для альтернативного нужно указать коды тех клавиш, которые будут использованы для управления.

Как их узнать? Сначала — маленькое пояснение.

Родной пульт SOLO может передавать 8 различных комбинаций (хотя у него и 12 клавиш, но 4 «дополнительных» дублируют канал громкости, по две на увеличение и уменьшение, для надежности). Все кнопки задействованы. Как же расширить функциональность?
Я сделал просто — кнопка MUTE, при коротких нажатиях действует так, как и положено — отключает или включает звук. Но при удерживании кнопки (более секунды) на индикаторе появляется бегущая полоса (последовательно, один за другим, зажигаются нижние сегменты индикатора), и, после загорания всей полосы, ZP2 переходит в системное меню и назначение клавиш будет другим.
Если, во время бегущей полосы, отпустить кнопку MUTE, то ничего не происходит (и реальные команды MUTE в этом случае тоже не исполняются).
Системное меню может содержать неограниченное число команд с любым уровнем вложенности, хотя это и не лучший вариант с 4-х знаковым семисегментным индикатором, так как он многие буквы не выговаривает.
В текущей версии прошивки команды меню следующие (прокрутка меню кнопками Volume) :
ti – (time) установка времени
tb – (timbre) регулировка тембра СЧ
PA - (PowerAmplifier) — включение-выключение основного трансформатора
bL – (balance) — регулировка баланса
Ir – (InfraRed) – просмотр кодов, передаваемых с ИК- пультов
PF — (ProFile) — запоминание всех текущих настроек и текущего ИК пульта, которые буду восстанавливаться при включении питания, или сброс профиля на установку параметров по умолчанию
GA – (Gain) – Коэффициент передачи предварительного усилителя, устанавливаемый от 0 до +30 dB с шагом 2 dB

При подключении шнура питания к сети на дисплее в течение двух секунд будет высвечиваться текущая версия прошивки, затем, если профиль активен, то он подключается, в противном случае устанавливается работа от ИК пульта SOLO, громкость -32dB, все тембры и баланс по нулям, вход PC, основной трансформатор выключен.

В режиме главного меню и показа версии прошивки крайний левый индикатор высвечивает «тройной минус», вот, например, опция для баланса:


Меню - опция установки баланса. В момент съемки внезапно выглянуло солнце. Даже на душе стало веселей

Выбор опции — нажатие кнопки «Treble +». При этом переходим на следующий уровень вложенности, в нашем случае — к непосредственной регулировке баланса:


Баланс в нейтрали

Двойная черта в центре означает, что баланс в нейтрали. Кнопками «Treble +/-» баланс смещается вправо-влево тремя шагами в каждую сторону с шагом 4dB (так мне показалось наиболее приемлимым, хотя это можно сделать настраиваемой опцией). При этом вертикальная черточка на индикаторе будет одинарной.

Возврат в предыдущее меню (или в обычный режим пульта ) - нажатие клавиши INPUT.

Теперь возвращаемся к определению кодов для альтернативного пульта.

В меню доходим до опции «Ir»:


Меню - опция показа кодов ИК пультов управления

Нажимаем кнопку «Treble +» и попадаем в режим показа IR кодов (в HEX формате) — на индикаторе горит только десятичная точка посередине. Теперь, если нажимать кнопки любого пульта стандарта NEC, на индикатое появятся два двузначных числа. Первое — адрес пульта, второе число — команда, соответствующая нажатой кнопке. К примеру, вот что показывается при нажатии кнопки «Vol -» на пульте NAD C 355:




Некоторые пульты имеют расширенный адрес (передаваемый вместо инверсного адреса), он игнорируется. Если данные не появляются, то пульт не поддерживает стандарт NEC, или пульт не исправен.

Определив пульт, его адрес и необходимые команды, которые будут соответствовать командам оригинального пульта, можно внести их в соответствующие поля в программе и выбрать альтернативный пульт. Теперь этот пульт будет управлять SOLO так же, как и родной. При необходимости, в любой момент можно вернуться на оригинальный, либо определить новый или загрузить его из файла.

При выходе из меню на дисплее будет отображаться текущее время — часы и минуты. В случае подачи команд с ИК пульта или с ПК, на дисплее отобразится соответствующая информация. Если в течение трех секунд больше никаких команд не поступит, на дисплее опять будет отображаться текущее время, но это правило не действует, если вы вошли в режим меню, из этого режима нужно выходить явно, нажав кнопку «Input» на ИК пульте.

Также дисплей сигнализирует и об активном режиме "Mute" - если звук запрещен, то у крайнего правого индикатора горит десятичная точка. Включение основного трансформатора приводит к понижению частоты мигания точки, разделяющей показания часов и минут с двух Hz до одного.


Будет ли третьей версия ?

Нет предела совершенству. Любую вещь можно тем или иным методом модернизировать и улучшить определенный набор характеристик.

Что касается ZP2, то его электрические параметры более, чем адекватны всей остальной начинке в Microlab SOLO. Поэтому дальнейшая модернизация может быть направлена на дополнительную миниатюризацию, расширение функциональности и снижение себестоимости.

Концептуально развитие проекта (ZP3) может быть следующим.

Схемотехника
Цифровая часть собирается на более продвинутом микроконтроллере, при котором отпадет необходимость в отдельной микросхеме часов реального времени и в микросхеме интерфейса USB. Первоначально выбор пал на Atmega32U4, но, вероятно, лучшим решением по цене и возможностям будет 32-битный ARM микроконтроллер на базе Cortex M3. На мой взгляд, самым выгодным решением сегодня будет MCU LPC1342 производства NXP. Или ее аналог, но с вдвое большим размером флэш памяти, LPC1343.

Видимо, интерфейс связи с индикатором претерпит изменения, с тем, чтобы поддерживать не только цифробуквенные индикаторы, но и графический дисплей.

Адекватной замены по нормальной цене уже не выпускаемому звуковому процессору TDA7439 мне не попалось, так что, остаемся, до исчерпания запасов на рынке, на TDA7439D или TDA7440D(который есть то же самое, но без регулировки средних частот). К вариантам-аналогам типа TDA7468D, добавляющим эффект объемного звучания и еще некоторые улучшайзеры, у меня отношение негативное, я за классическое чистое стерео.

Конструкция
ZP1 и ZP2 — это переходные модели, с массой компромиссных решеней и гибридным набором деталей (имеется в виду smd и обычное исполнение). ZP3 планируется полностью на smd элементах, возможно, с переходом пассивных элементов на основной формат 0603 вместо 0805.

Кроме того, блок входных разъемов Microlab SOLO имеет уникальный конструктив, и их проблематично найти на европейском рынке. Они будут заменены на одиночные прямые разъемы, при этом будет комплект из 8 штук, на 4 полноценных внешних стереовхода. Печатная плата предусилителя станет в два раза уже и будет располагаться не перпендикулярно, а параллельно радиатору.

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

Также нужен еще более малогабаритный трансформатор и SSR, что приведет к снижению площади PCB блока питания в два раза.

Вместо соединительных разъемов с шагом 2.54мм будут миниатюрные с шагом 1.27мм, хотя это сразу съест всю экономию, но, со временем, цены на них должны упасть.

Программное обеспечение
Главное — будет реализована возможность обновления прошивки MCU через интернет, то есть MCU будет поддерживать технологию DFU. И, скорее всего, разработка будет вестись уже не на ассемблере, а на С. Хотя как пойдет, с ARM я в самом начале пути. Если бы у меня уже были наработки под Cortex-M3, то однозначно был бы ассемблер. Так как их нет, и изучение с нуля, то нужно потратить около года, а уже анонсированы процессоры на ядре Cortex-M4...

Заключение и конкурс

ZP2, несмотря на некоторые шероховатости, оправдал возлагавшиеся на него надежды. Поскольку у меня осталась на руках еще одна плата, то решил собрать и второй экземпляр, без установки технологических разъемов и необязательных деталей (к примеру, не нужны пять светодиодов с ограничительными резисторами — в корпусе их все равно не видно).

Поскольку во многих местах, особенно в российиской глубинке, проблематично приобрести комплектующие детали и изготовить двусторонние печатные платы с отверстиями 0.3мм и такими же дорожками (а ZP3 уже планируется с 0.2мм), то этот вторй экземпляр, настроенный и работающий, будет отправлен победителю мини-конкурса (в комплекте с блоком питания, индикатором, ИК пультом, необходимыми шлейфами и документацией).

Для того, чтобы победить, достаточно лишь маленького креатива — напишите несколько строк или разместите фотографию по теме конкурса, перейдя по ссылке .

Комментарии, вопросы и предложения по материалам статьи можно оставить здесь.

Всем удачи!

16 марта 2010 года
Специально для overclockers.ru,
zauropod
Telegram-канал @overclockers_news - это удобный способ следить за новыми материалами на сайте. С картинками, расширенными описаниями и без рекламы.
Оценитe материал

Возможно вас заинтересует

Популярные новости

Сейчас обсуждают