Транзисторный усилитель для управления динамиком с использованием ШИМ Arduino

В последнее время я работаю над проектом, который использует Arduino для воспроизведения wav-файла с SD-карты. Я использую библиотеку TMRPCM, которая очень облегчила работу. Но проблема в том, что звук на выходе в динамике очень тихий. Я использую приведенную ниже схему с одним транзистором с моим Arduino для управления динамиком мощностью 1,2 Вт / 8 Ом. Но аудиовыход почти не слышен. И я пробовал много динамиков разной мощности, но результат тот же.

Мне интересно, что-то не так с Wav-файлом, который я использовал для своего проекта. Это кодировка PCM без знака с частотой 16000 Гц/8 бит. Итак, в двух словах, мои вопросы

1) Как я могу улучшить звук, получаемый из моего динамика, внеся изменения в схему транзисторного усилителя?

2) Был ли менее слышимый звук из-за используемого мной Wav-файла?

Пожалуйста, помогите мне, заранее спасибо.

, 👍4

Обсуждение

Я добился определенного успеха, используя [аудиоусилитель LM386](https://en.wikipedia.org/wiki/LM386) после полосового фильтра CRC (для удаления постоянного тока и частоты ШИМ). Это очень распространенный и дешевый (менее 1 доллара) усилитель, специально разработанный для управления динамиком. См. техническое описание для правильной проводки., @Edgar Bonet

Можете ли вы воспроизвести файл WAV на своем компьютере? Там тихо? Можете ли вы воспроизвести другой файл WAV или использовать другой источник звука?, @Code Gorilla

Привет @EdgarBonet, я попробовал подключить усилитель на базе LM386, но улучшений было очень мало. Может быть, я попробую использовать фильтр CRC, прежде чем подавать его на транзистор. Я не совсем уверен, тихо ли на ПК, я бы сказал, все в порядке. Другие wav-файлы также менее слышны. Однако я попробовал мелодии Arduino по умолчанию, которые звучат довольно хорошо с той же настройкой., @Frank Donald

вам нужно как минимум заблокировать компонент постоянного тока с помощью RC-фильтра. редактировать: в основном то, что показал Маженко., @dandavis

То же самое с @Edgar. За гроши доступны модули усилителей на базе Arduino LM386. Они могут управлять приличным динамиком., @SDsolar


4 ответа


5

Ваша схема усилителя в корне ошибочна. В данный момент вы «щекочете» верхний конец электромагнита в динамике — то есть вы подаете на него питание, когда Arduino выдает ВЫСОКИЙ уровень, и оставляете его включенным, чтобы он отключился сам по себе, когда Arduino выдает НИЗКИЙ уровень. В сочетании с тем фактом, что файл PCM выводит ШИМ с несущей частотой, намного превышающей частоту функцииtone() (и в идеале выше частот человеческого слуха), в динамике практически ничего не происходит.

Классический усилитель класса А имеет другое устройство:

schematic

При таком расположении транзистор и R1 образуют простой инвертор RTL. Размер R1, чтобы обеспечить выходной ток, необходимый для вашего динамика (меньше резистор = больше мощности = больше тепла = также больший транзистор). R3 и C2 устраняют высокочастотное переключение ШИМ (вы также можете заменить R3 подходящим дросселем, если хотите уменьшить потери на резисторе). C1 удаляет смещение постоянного тока из сигнала, чтобы обеспечить полную мощность динамика и предотвратить чрезмерное ограничение и нагрев.

Это ни в коем случае не эффективный дизайн. Лучшей «первой ступенью» (заменяющей R1 и Q1) был бы логический вентиль с высоким выходным напряжением (один из серии CD4000, поскольку он может работать от напряжения 12 В). Я видел использование логических элементов И раньше - это также дает то преимущество, что вы можете использовать второй вход логического элемента И в качестве сигнала MUTE. Остальное (R3, C1, C2) остается прежним.

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

Вместо динамика вы можете подключить к выходу C1 усилитель мощности звука, чтобы затем управлять более мощным динамиком. В этом случае вы, скорее всего, можете удалить первый каскад (Q1/R1/R2) и управлять RC-фильтром напрямую от Arduino.

,

Спасибо за схему. Пробовал, но не повезло, звук даже пропал. Дважды проверил, все ли правильно подключил. Также транзистор нагревается, есть идеи, почему это происходит?, @Frank Donald

Транзистор греется, потому что это крохотный 2N2222. Если вы посмотрите на настоящий аудиоусилитель, вы увидите транзисторы типа TO220 и большие радиаторы. В любом случае использовать звук PCM на Arduino довольно глупо. Вам следует приобрести подходящий звуковой экран или более мощный MCU, способный воспроизводить настоящий звук., @Majenko

Привет, мне интересно, смогу ли я услышать разницу в качестве звука между усилителем класса А и схемой, заданной OP? Подключив их оба, я не заметил разницы, но схема OP генерировала ту же «громкость» при токе 11 мА, которую усилитель класса А потреблял 110 мА. Схема OP кажется в 10 раз меньшей мощности при сопоставимой громкости. (Я не смог заметить разницу в качестве звука, используя динамик 8R, 3 Вт, при напряжении 5 В, играя «Иезу» Баха на Arduino), @Assad Ebrahim


1

Вы можете попробовать включить в схему аудиотрансформатор, а затем использовать фильтр нижних частот для сглаживания сигнала PCM. Вот фото подходящих недорогих трансформаторов (с сайта alexnld. com; но аналогичные трансформеры доступны на Ebay и т. д.):

Аудиотрансформатор 1300:8, около 1/2

Эффект трансформатора в схеме преобразует высокое напряжение и высокий импеданс на выходе схемы управления транзистором в низкое напряжение и низкий импеданс, необходимый для динамика. Соотношение импедансов трансформаторов на рисунке составляет от 1300 Ом до 8 Ом.

,

0

"Это 16000Гц"

Это довольно высокая частота. Достаточно ли для этого у тебя хороший слух? Многие люди этого не услышали.

,

0

Во-первых, не дайте себя обмануть тем, кто ответит, что 16 кГц — это довольно высокая, почти неслышимая частота. Здесь вы говорите о частоте дискретизации. Тогда 16 кГц — это довольно низкий уровень (хотя, возможно, это предел возможностей микроконтроллера, я не знаю, насколько это возможно).

Я бы порекомендовал ввести отрицательную шину питания в конструкцию Маженко, поскольку нельзя ожидать, что схема будет выдавать отрицательное напряжение (т.е. отрицательные полуволны аудиосигнала) без отрицательного питания...

Как уже отмечали другие, используемый вами транзистор — довольно плохой выбор. Руководство по выбору транзисторов доступно здесь. Там есть аудиораздел, обратите на него внимание!

,