Усиление аудиосигнала для аналогового чтения — детектор огибающей
Я работаю над своим первым проектом Arduino, и у меня возникла проблема с чувствительностью.
Я создаю модуль для прослушивания аудиосигнала и запуска источника питания моего динамика с помощью реле. Кажется, все работает нормально, но если я уменьшаю громкость звука, аналоговый вывод не записывает значения (при максимальной громкости он достигает пика около 50, что немного).
Я думал о приобретении конденсатора, но я действительно не уверен в том, что я должен получить и как должна быть выполнена проводка.
@Alex Dupuis, 👍0
Обсуждение2 ответа
Похоже, что вы хотите определить минимальный порог звука, чтобы источник питания динамика мог включаться при воспроизведении аудиосигнала.
Вам необходимо усилить сигнал, избегая при этом напряжений, превышающих максимально допустимые входные характеристики, а также не становящихся отрицательными. Один из способов добиться этого — схема операционного усилителя (операционного усилителя). Определенный тип удовлетворяет всем трем требованиям. Операционный усилитель, который питается от одностороннего источника питания, например, +5 В и земли, предотвратит отрицательное напряжение и ограничит максимальное напряжение, превышающее то, что может выдержать Arduino.
Для вашего приложения вам не нужно делать высококачественный аудиоусилитель. Вы заботитесь о том, чтобы не исказить сигнал (музыку), который вы контролируете, и определить пороговый уровень. Операционные усилители хороши тем, что они имеют входы с высоким импедансом (они не потребляют много (или вообще) тока от вашего музыкального сигнала) и работают с небольшим количеством внешних компонентов.
Классическим учебником по электронике является Горовиц и Хилл. Кроме того, вы можете найти ссылки на схемы в Интернете с помощью соответствующего поиска. Для любого операционного усилителя, который вы покупаете, вы можете получить техническое описание, в котором рассказывается, как его использовать. В следующем справке подробно (возможно, слишком подробно) рассказывается об ампер
Схемы (и условия поиска), которые могут оказаться полезными, включают повторитель операционного усилителя, однополярное питание, смещение и емкостную связь. Вам нужно будет купить компоненты. Хорошим поставщиком является DigiKey. DigiKey имеет онлайн-каталог, который позволяет выполнять параметрический поиск для определения необходимых компонентов. Вам понадобится макетная плата, резисторы, конденсаторы и операционный усилитель в двухрядном корпусе (DIP).
Один search фильтрует список возможных вариантов от десятков тысяч до разумного числа. Техническое описание LM833 является разумным выбором.
Тестовое оборудование, такое как генератор и осциллограф, может оказаться очень полезным при сборке усилителей. Возможно, вы сможете оцифровать усиленный сигнал с помощью Arduino, если у вас нет доступа к тестовому оборудованию.
То, что вы ищете, называется пиковым детектором или, возможно, лучше в вашем случае - детектором огибающей. Пропустите это через операционный усилитель с регулируемым усилением, чтобы вы могли настроить свою чувствительность. R3 - ваш потенциометр позволит вам отрегулировать чувствительность. Ваше усиление будет
.
Установите для Vdd значение 5 В и общую землю с Arduino.
Маловероятно, что ваш источник звука генерирует слишком большое напряжение, поскольку вы говорите, что он не регистрируется, но в маловероятном случае, когда напряжение превышает 5 В, подключите стабилитрон с обратным смещением параллельно конденсатору, чтобы зафиксировать напряжение на уровне 5 В
Нажмите "Имитировать", чтобы увидеть, что дает игра со значениями!
Извините, это заняло какое-то время, здесь все было закрыто... Я только что получил все необходимые детали. Проблема, которая у меня сейчас есть, заключается в том, что TL081 всегда дает мне одно и то же чтение на arduino, даже когда я убираю разъем с платы, я удаляю все с моего Vin, но я продолжал читать с аналогового IN. Есть какие-нибудь идеи о том, что может вызвать это?, @Alex Dupuis
- Генерация истинного аналогового сигнала с помощью Arduino
- Проблемы с использованием модуля мини-микрофона с AliExpress
- Хочу создать Bluetooth audio control (увеличение/уменьшение громкости, воспроизведение, пауза и т.д.) для смартфона
- Как подключить ардуино к разъему для наушников?
- Подключить Arduino к телефонной линии?
- DFPlayer Noise: исследован, испытан и бип бип бип бип
- Генерация белого шума звуковой частоты с помощью Arduino Mini Pro
- Транзисторный усилитель для управления динамиком с использованием ШИМ Arduino
Аналоговый вход на Arduino может работать только с напряжением от 0 до 5 В постоянного тока. Он не терпит отрицательного напряжения. Аудиосигналы представляют собой сигналы переменного тока. Их напряжение быстро меняется с положительного на отрицательное. Используемые отрицательные напряжения могут повредить ваш Arduino. Подключать источник звука напрямую таким образом небезопасно., @Delta_G
Оооо, спасибо за это, я знал, что кое-чему научусь, но не то, чтобы я мог поджарить свой Arduino ;) У вас есть какие-либо предложения о том, что я мог бы сделать, и что это безопасно? Я полагаю, что диодный мост может решить эту проблему, поскольку меня действительно не волнует содержание сигнала?, @Alex Dupuis
Если вы хотите только определить, существовал ли сигнал или нет, вы можете использовать фильтр нижних частот (в основном через диод и резистор для зарядки конденсатора), чтобы получить выходной сигнал, близкий к постоянному, и снизить его до соответствующего уровня. скажем, 2,5 В, и просто прочитайте его с помощью AnalogRead()., @hcheung