Як отримати + 5V за гучний шум, 0v за тишу від Electret Microphone (або інших компонентів)?


12

Я задав тут кілька питань, щоб перейти до належного, початкові запитання, які я задав, пов'язані в кінці. Я використовував Фрітцінга, щоб скласти деякі схеми своїх початкових думок, але, принаймні, мені потрібна допомога зі значеннями компонентів, які я лише розпливчасто розумію і вибрав те, що здається розумним або загальним.

В основному, у мене є Arduino, який має 6 аналогових входів. Він використовує 10-бітний АЦП для зчитування напруги на будь-якому з аналогових штифтів, тому 0 = 0v, 511 = 2.5v та 1023 = 5V, і всі значення між ними. Це робить LINEAR DC читання, тому я тут не шукаю логіки 1-0.

У мене це підключено до світлодіодних світильників, і я хочу, щоб вони відповідали музиці. Те, що я хочу, - це максимальна роздільна здатність з мінімальними компонентами, і я думаю, що я використовую WAY занадто багато компонентів і роблю цей спосіб занадто складним. Можливо, мікрофони Electret - це не те, чого я хочу тут, я відкритий до чогось іншого. Я вважаю за краще використовувати не підсилювачі для економії місця на моїй платі.

Що я хочу - це простий датчик рівня шуму. Я не хочу відтворювати аудіо чи мати чіткість чи щось, але я хотів би, якнайближче:

  • Ідеальна тиша = максимально наближена до 0 В постійного струму (стабільна, не змінна)
  • Середній шум = близько 2,5 В постійного струму (стабільний, не змінного струму)
  • Гучний шум = максимально наближений до 5 В постійного струму (стабільний, не змінного струму)

З BJT я розумію, що найкраще, що я можу отримати, - це 0,6 до 4,4 В, але це досить прийнятно. Однак це не половина хвилі, 0,6 до 2,5 В. Здається, це втрачає половину моєї доступної резолюції без причини. Однак якщо є інші налаштування, ніж BJT, які можуть наблизити мене до 0v-5v, я був би зацікавлений у тому, щоб їх зняти; поки вони прості.

Ось простіший, що я сподіваюся, що це можливо, але він вимагає, щоб сигнал електрики мав достатню амплітуду для керування конвектором конвертів (діод, резистор та конденсатор), щоб отримати лише позитивну половину. Я не думаю, що це може через падіння переднього діода, але, можливо, це можна переставити або зробити перед вихідним ковпаком? Якими мають бути значення детектора оболонки та резисторів підсилювача? Чи повинен бути розміщений потенціометр чутливості на сигналі, або RE, або RL, і яке його значення має бути? Лінійний чи логарифмічний?

Простий

Однак, можливо, на виході електрета не витримає сповіщувач конвертів, чутливість чутливості та все-таки привід транзистора NPN. Якщо ні, ось більш складна версія. Чи потрібно мені пройти цей маршрут? Чи справді потрібний вихід з схеми дійсно вимагає всіх цих компонентів?

Складні

Ось деякі з минулих питань, які я задавав, перш ніж я більш повно зрозумів, що я намагався сформулювати, для отримання більш детальної інформації. Ось що «належить» зробити детектор конвертів, і я не впевнений, як налаштувати його на вихід електрореалу:

Детектор конвертів Кругова діаграма


Я думаю, це все ще досить широко. Питання, яке ви повинні задати собі, "що означає, щоб звук був гучним?" Сприйняття людиною голосності є складним і може залежати від частоти, тривалості звуку, настрою, споживання кави тощо. Сприйняття людиною "тиші" також сильно залежить від навколишнього середовища та зовнішнього шуму. Вам доведеться перевести ці суб'єктивні сприйняття в більш об'єктивні визначення, перш ніж ви зможете реалізувати електричне коло для їх вимірювання.
Філ Мороз

Ось кілька пошукових термінів, які допоможуть: "піковий детектор" "RC ланцюг" "константа часу" "кутова частота" "фільтр низьких частот" "dB SPL"
Phil Frost

У мене є такий потенціометр чутливості в дизайні, щоб враховувати це (він повинен бути досить широким, щоб він міг бути "ефективно всі безшумні" або "завжди голосні", і я можу звідти налаштуватися). Я не знаю, чи повинен він бути замість RL, RE (керуючий посилення чи щось таке) або маневровий сигнал, хоча. Я не знаю, як ще я можу бути більш конкретним, ви могли б допомогти уточнити, що ще потрібно?
Егрик

1
Якщо ви зміните опорну напругу АЦП контролера на смугу 2V56, вам не потрібна вихідна напруга 0-5В. Ви отримаєте повну роздільну здатність від 0 - 2,56 В. Залежно від точного контролера, ви можете використовувати різні етапи напруги в діапазоні напруг.
jippie

1
Знайдіть "випрямляч малого сигналу" та знайдіть схему на зразок techonlineindia.com/Libraries/tol/Signal3.sflb.ashx, яка виводить по рівняння порогову напругу діода.
jippie

Відповіді:


27

Хоча ви могли б зробити все це за допомогою лише підсилювача і мікроконтролера (Arduino), наскільки я бачу, ви хочете зробити аналоговий варіант. Я спробував створити схему, яка виводить рівень голосу на мікрофон. Діапазон - від 0В до 4В. Однак ви можете легко оновити його до 0В до 5В, просто змінивши OP-AMP. Тепер перейдемо до цього;

Перш за все, я замінив транзисторний підсилювач на OP-AMP. Ось що я придумав;

введіть тут опис зображення

Це простий інвертуючий підсилювач із коефіцієнтом посилення 100. Ось формула для обчислення коефіцієнта підсилення;

Vout=RfRinVin=100kRinVin=100Vin

Як бачите, U1 приймає вхідний сигнал, інвертує його і потім помножує на 100. Ви можете змінити R2 або R3, і ви побачите, що посилення U1 змінюється. Інверсія вхідного сигналу тут не має значення, як ви зрозумієте далі. Давайте подивимось на вихід цього підсилювача, і ви побачите, що на вхідному сигналі спостерігається великий ріст.

введіть тут опис зображення

На наведеній графіці ви побачите, що вихід має напругу зміщення постійного струму 2,5 вольт. Це через використаний нами віртуальний грунт. Якщо ми створимо віртуальну землю, це означає, що ми переносимо землю на інший рівень напруги. У цьому випадку ми перенесли його на 2,5 В. За допомогою нової конфігурації ми створили щось, що виглядає як ланцюг -2,5 В, 0 В і 2,5 В. Для досягнення цього мені довелося створити нову напругу напругою 2,5 вольт. Оскільки ця напрямна напруга не подаватиме багато енергії (менше 1 мА), її легко створити;

введіть тут опис зображення

Зауважте негативні відгуки про вищевказану схему. Це дасть OP-AMP наказ зробити . OP-AMP зробить все можливе для досягнення цього рівняння. Таким чином, вихід буде 2,5 В, або іншими словами, половиною напруги живлення. І це наша нова суть.V+=V

Після посилення слід подати сигнал на «детектор конвертів» або іншими словами, «послідовник конверта». Це отримає рівень сигналу, як ви хочете, і як ви показали на малюнку у своєму запитанні. Ось як виглядає базовий підписник конвертів:

введіть тут опис зображення

Все це чудово виглядає, проте зауважте, що D3 - це діод, і він опускається приблизно на 0,6 В на себе. Отже, ви втрачаєте напругу. Щоб подолати це, ми будемо використовувати те, що називається «супер-діод». Це супер, оскільки падіння напруги майже 0В! Для того, щоб досягти цього, ми включаємо OP-AMP з діодом, і це все! OP-AMP компенсує падіння напруги діода, і у вас буде майже ідеальний діод;

введіть тут опис зображення

Оскільки в цій конфігурації є негативні відгуки, U5 постарається зробити . Отже, кожен раз, коли вхід скаже 3В, він зробить свій вихід 3,6 В, щоб компенсувати падіння напруги на 0,6 В на D3. Отже, вихід цього супер-діода, отже, вхід буде дорівнює його вхідній напрузі . Однак, коли вхід негативний, D3 не дозволить U5 зробити висновок негативним. Також зауважте, що негативна рейка для U5 - це GND, який дорівнює 0 В. Він уже не зможе опуститися нижче 0 В у будь-якому випадку. Він працює як ідеальний діод!V+=VVVV+

Тепер змініть D3 у вищевказаній схемі послідовника конвертів на супер-діод, і у вас є кращий послідовник конвертів! Давайте подивимось на наш результат;

введіть тут опис зображення

Ми наближаємось. Як бачите, вихід послідовника конверта, який є червоною лінією, може переходити від 2,5 В до 4 В. 2,5 В - не звуковий, 4 В - гучний, а 3,25 В - для середнього звуку. Щоб масштабувати це до того, що ви хотіли, ми можемо відняти напругу зміщення 2,5 В і масштабувати його. Отже, коли ви віднімаєте 2,5 В, це стає; 0 V - для звуку, 1,5 V - гучного звуку, а 0,75 - для середнього звуку тощо. Після цього, якщо ви помножите це приблизно на 3, ви отримаєте те, що точно хочете. 0 В для відсутності звуку, 2,5 В для середнього звуку та 5 В для гучного звуку. Щоб резюмувати, що ми хочемо, це це;

Vout=(Vin2.5V)3

Для досягнення цього ми будемо використовувати диференціальний підсилювач або іншими словами « віднімач ».

введіть тут опис зображення

Коли резистори R1 = R2 і R3 = R4, функцію передачі диференціального підсилювача можна спростити до наступного виразу:

Vout=R3R1(V2V1)

Якщо ви зробите співвідношення V1 = 2.5V і R3 / R1 3, то отримаєте бажаний вихід.

Ось повна схема, яка буде робити те, що ви хочете:

введіть тут опис зображення

Я використовував LM324 OP-AMP тут для цілей моделювання. Це обмежить максимальну вихідну напругу до 4В. Для того, щоб мати повний діапазон, слід використати вихідний напрямок OP-AMP. Я б запропонував MCP6004 . Змінюйте R1 і R2, поки не отримаєте бажаний результат. Ось що я отримав з моделювання:

введіть тут опис зображення

Тепер, вимірюючи ці значення в АЦП, ви не отримаєте лінійного сенсу , натомість звук краще розуміється логарифмічним, оскільки наші вуха чують саме так. Отже, слід використовувати децибели . Якщо ви не знайомі з децибелами, ось чудовий відеоурок про це.

Наприклад, тиха кімната вимірюється приблизно 40 дБ. Вечірка в кімнаті зробить рівень кімнати до 100 дБ, а може, і 110 дБ. У цьому веб-сайті ви можете знайти чудову інформацію про нього, звідки я також вклав зображення нижче. Подумайте про рівні децибелів і експериментуйте з напругою на виході ланцюга. Потім обчисліть роздільну здатність АЦП, яка вам знадобиться. Ймовірно, вам буде добре з 12-бітним АЦП.

введіть тут опис зображення


5
Це феноменальна відповідь; якби у SE була зала слави, я би його висунув. Дякую за те, що ви дуже точні та пояснювальні! Як ви створюєте ці знімки, знімок із оцилоскопа, програмного забезпечення для ПК чи алгоритму вирішення?
Егрик

1
@Ehryk Спасибі, але ви перебільшуєте :). Це LTSpice , що я використовую.
abdullah kahraman

@Ehryk Я оновив свою відповідь і додав більше інформації про вимірювання звуку.
абдулла кахраман

Використовуйте схему, щоб мати можливість ділитися і мати можливість людям просто запускати моделювання! Я дам тобі 50 реп.
Кортук

1
@Kortuk Я не зміг її правильно імітувати .. CircuitLab Link
abdullah kahraman

7

Ви, здається, на правильному шляху. Для цього потрібно багато дискретних компонентів. Ви можете мені не повірити, але використання підсилювачів може зробити все це простішим і меншим. Я впевнений, що ви можете знайти ще більш конкретні ІС, які роблять більше того, що вам потрібно в меншому пакеті. Б'юсь об заклад, там є ІС, який робить саме те , що вам потрібно. Однак ви дізнаєтесь більше, якщо продовжите без них, навіть якщо тільки для академічної цінності.

Ви також можете зробити щось простіше, перемістивши логіку в мікропроцесор. Виявлення конвертів у програмному забезпеченні просте, і залежно від того, наскільки точно вам потрібно бути, і чутливості мікрофона, ви навіть можете піти з опущення підсилювача за мікрофоном і покласти його вихід прямо в АЦП. Це не дасть вам 0V-5V, але це має значення? Ви можете помножити його на константу в програмному забезпеченні. Те, що ви втрачаєте, - це точність наявності повного спектру АЦП, але, можливо, це не так важливо, як простота. Тобі вирішувати.


Я не вірю вам, що підсилювачі можуть зробити це простіше, я намагався мінімізувати нерухомість на друкованій платі. Однак стає болісно очевидним, що 8-контактний занурення LM358 буде ДРАСТИЧНО простішим. Мені також цікаво, чи електричний мікрофон також поганий вибір; здається смішним, що таке просте бажання (почуття гучності, 0V-5V) є безглуздо складним.
Егрик

Електрет сам по собі дає ~ 20 мВ пік. З АЦП Arduino мова йде про різницю двох: від ідеально тихого до найгучнішого (роздільна здатність 4,9 мВ, якщо 511 при безшумності, 513 до 509 при повному вибуху). Я хочу хороших діапазонів чутливості, а не "Безшумний / Середній / Гучний", як єдиний градієнт, і це гадає, що лінія була повністю стабільною.
Егрик

@Ehryk, якщо ви просто хочете, щоб речі були невеликими, я впевнений, що ви можете знайти LM358 (або будь-який інший загальний підсилювач) у великому пакеті для монтажу на поверхні, наприклад SOIC . Дуже легко паяти вручну з хорошими інструментами, і не потрібно свердлити отвори. Окрім придбання датчика, який вже робить саме те, що вам потрібно, я сумніваюся, що ви зробите простіше, ніж електронний мікрофон, і переміщувати все, крім зміщення та посилення, в мікроконтролер.
Філ Мороз

4

По-перше, ардуїно вам не потрібно, якщо вам не потрібно більше обробити - все, що ви дійсно хочете, це підсилювач (підсилювач підсилювача, навантаження основних мікросхем по всій googles) для підвищення виходу мікрофона в діапазоні 0-5v. Якщо ви не надто переживаєте за точність (як це для розваги, а не для наукового вимірювання), ви можете використовувати досить основну схему відсікання, передавати вихід на тригер шмітта або використовувати LM3914 для створення дисплея.

Трохи більше витонченості можна було зробити, зробивши ланцюг AGC, щоб автоматично збільшити коефіцієнт посилення вгору і вниз середнім рівнем.

Як би там не було, ви отримуєте головну позитивну карму, скидаючи ардуїно і роблячи його аналогом так, як передбачалося природою;

Редагувати: Цілком ймовірно, що в Інтернеті також є багато мікросхем попереднього підсилювача, ймовірно, чип 0,10 SOT23, щоб зробити це за вас сьогодні ...


Ардуїно керує світлодіодним масивом за допомогою 5-ти його ШІМ-штифтів, і я змушую його блимати різними літерами / візерунками при яскравості різних фракцій шумового входу. Отже - ардуїно потрібно, і мені потрібно якось сказати, з хорошою роздільною здатністю, наскільки він голосний, щоб він міг ШІМ використовувати картину з різним ступенем яскравості музики. Я не знаю, що ти робиш без схеми.
Егрик

Не одержимо діаграми схем, я описую схеми, які є основними складовими елементами, які містяться в кожному підручнику, швидкий google повинен створити основні схеми для різних функцій (передпідсилювач, AGC, кліпер і т.д.), а також більше дискотек (графічні схеми еквалайзера, драйвери дисплея, світлові органи тощо), які були предметом електроніки хобі з часу винайдення Disco.
Джон У

Проблема полягає в тому, що є занадто багато прикладів з різними компонентами та 'особливостями', розпливчасто описаними або зовсім не описаними. Конкретні діаграми з деяким поясненням того, чому були обрані певні компоненти та досягнуто значення, - це те, що я вважаю найбільш корисним, і що я зазвичай задаю в своїх питаннях. Наприклад, ця відповідь була феноменальною і надзвичайно корисною.
Егрик

Ви просите лего, я пропоную грудку пластику і скальпель, це просто інший підхід.
Джон У

2
... і я відповідаю тим, що в мене вже є 10 грудочок пластику та власний скальпель, і я можу отримати сотні ще більше шляхом пошуку. Крім того, я спеціально попросив лего у запитанні, а ви говорите: "Не чекайте лего".
Егрик
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.