Чи можу я використовувати транзистор PNP з мікрофоном Electret, щоб отримати неінвертуючий вихід для мого Arduino?


9

Я хочу просто прочитати загальний рівень звуку з мікрофона Electret. Я бачив ряд схем з NPN-транзисторами, які забезпечать перевернутий вихід (~ 5 В, коли тихо, ~ 0 В при гучному, лінійному режимі між ними).

Ось приклад:

Простий аудіопідсилювач

Однак, я хотів би неінвертований вихід (лінійна робота, над тихим входом дає ~ 0 В, супер гучний вхід дає ~ 5 В). Я усвідомлюю, що міг би легко виправити це в програмному забезпеченні, але це мені здається певним чином відсталим, і я не можу знайти жодного прикладу неінвертуючого виходу з транзистором PNP.

Чи є причина цього, крім того, що є нечастою? Якщо це можливо, хтось може надати схему електронного мікрофона та транзистора PNP, що дасть ~ 0 В, коли тихо і ~ 5 В, коли голосно?

Далі, чи є якась причина, чому це так рідко чи небажано? NPN, здається, використовується набагато частіше, ніж PNP, чому це так?

Редагувати

Здається, я був досить розгублений у тому, що я отримав би як вихід з предусилителя NPN, який буде 0В для тиші, і +/- Vin / 2. Ось що я хочу замість цього:

0В при безшумному звуку, ~ 2,5 В при середньому рівні звуку, ~ 5 В при максимальному рівні звуку. Це може бути прочитане АЦП легко в "рівень звуку", без особливої ​​роботи. Однак я не можу подавати напруги <0 В або> 5 В на аналоговий компаратор. Схоже, я хочу сказати вище з детектором конвертів, однак це могло б отримати від 0 до 2,5 В. Як змусити його змінювати повний 0V до 5V, 0V "тихий", а 5V "гучний", причому все між лінійними?


На жаль, ця схема не буде генерувати напругу постійного струму, якщо вихід буде взято праворуч від С2. Він генеруватиме змінна напруга. Це через конденсатори. Конденсатори не дозволяють постійному струму проходити через них.
абдулла кахраман

У Arduino є 6 аналогових входів, які читають 0-1023 для 0V-5V. АС - це те, що я б там шукав, правда? Можливо, мені знадобиться діод, щоб не передавати негативну напругу аналоговому компаратору?
Егрик

Так, але діод впаде на 0,6 В на себе. Можливо, вам слід спробувати зробити напругу живлення 5В. Напруга живлення - це позначення "+3 до 9 Вольт". Потім видаліть С2. Потім прочитайте аналогове значення на колекторі Q1. Експериментуйте з різними рівнями звуку, наприклад, плескайте, говоріть, кричіть, будьте тихими, шепотіть і дивіться, як змінюється аналогове читання. Однак це буде синусоїда, що додається зі значенням постійного струму.
abdullah kahraman

Читаючи ваше запитання та коментарі, виявляється, що ваш запитання чітко не вказує, що ви хочете. Здається, що ви хочете, щоб рівень змінного струму зменшувався по мірі збільшення вхідної напруги. Якщо це так, вам потрібно це чітко заявити. Якщо це не так, чи можете ви пояснити, "я не шукаю логіки 0-1, аналогові входи Arduino мають 10-бітний АЦП, який дає 0-1023 для 0V-5V відповідно" відповідно. || ...
Рассел Макмахон

... Якщо ви говорите про рівні постійного струму, питання все ще незрозуміле. Сигнал змінного струму буде зосереджений на точці зміщення постійного струму. Це відносно фіксується з силою сигналу. Чи можете ви дуже чітко і просто кажучи пояснити ТОЧНО, що ви хочете, щоб зробити висновок, оскільки сигналізація входу переходить від 0VAC до Max Vin AC.
Рассел Макмахон

Відповіді:


9

Наскільки я зрозумів, ви намагаєтеся зробити якийсь детектор рівня звуку, який дозволить вам виявити, чи є звук з певною гучністю чи ні. Ви можете зробити це за допомогою незначних змін у вашій схемі. Але перед цим слід зрозуміти схему.

Давайте розірвемо цю схему. Насамперед частина з мікрофоном.

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

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

Тепер давайте розглянемо сам підсилювач. Уявіть, що немає нічого іншого, крім наведеної нижче схеми:

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

У цій конфігурації транзистор зміщений у лінійну область. Він знаходиться в краю включення або вимкнення, але це не те. Якби він був повністю ВКЛ, він був би насиченим. Якби він був повністю ВИМКНЕНО, він би взагалі не проводив. Але вона знаходиться в середині, яку називають лінійною областю.

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

Що робити, якщо ми поєднаємо два згадані схеми. Упереджений електретний мікрофон з конденсатором виведе невеликі зміни щодо звуку. Транзистор посилить ці невеликі зміни, щоб їх можна було легко переглядати:

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

Зауважте, що я змінив C1 на 1uF. Ви можете використовувати значення до 100uF. Можливо, вам знадобляться електролітичні конденсатори. Також зауважте, що вихідного конденсатора більше немає. Це означає, що у вас буде вихідна напруга десь від 0 до 5 В, залежно від рівня звуку. Якщо у вас осцилограф, перегляньте форму сигналу на виході. Якщо цього немає, спробуйте засвітити світлодіод, якщо аналоговий показник вище, ніж, наприклад, 750. Експериментуйте з різними значеннями, ніж 750, тоді повідомте мені про результати.


Я розумію більшість із цього, дякую. Тепер, оскільки він використовує транзистор NPN, вихід буде приблизно ~ 5 В, коли тиха / амплітуда входу низька, і ~ 0 В при високій амплітуді входу. Це здається відсталим. Чи є спосіб змінити його так, щоб він поводився так, як вище, у лінійній області, причому ~ 0V означає "тихо", а ~ 5 В означає "голосно"?
Егрик

@Ehryk Ні, вихід буде десь від 0 до 5V. Якщо ви візьмете автомобільну сирену і покладете її біля електронного мікрофона, це буде синусова хвиля від пікової до пікової амплітуди 5Впп з частотою близько 300 Гц. 5Vpp означає, що він піде на 5V і повернеться до 0V із синусоїдальною формою. Погляньте на це . Коли відбувається шепіт, амплітуда піку до піку буде приблизно 1 Впп із зміною частоти через мовлення. Це означає, що він піде на 1V і повернеться до 0V.
abdullah kahraman

Однак мій коментар вище ігнорує зміщення постійного струму.
абдулла кахраман

Чи є спосіб зробити це ~ 0 В для тихого, ~ 5 В для гучного? Невже конденсатор не зробив би цього, якби я якось перевернув негативну частину хвилі, а потім згладив її? З можливо, мостовим випрямлячем / діодним мостом? ( en.wikipedia.org/wiki/Diode_bridge )
Егрик

@Ehryk Так, ви можете додати вихідний конденсатор і детектор конвертів. При правильних значеннях компонентів ви зможете мати рівень аналогової напруги залежно від амплітуди звуку. Однак я не впевнений у цьому. Вам слід експериментувати. Отримавши результати, просто зробіть умову програмного забезпечення if-else в залежності від значення АЦП, яке ви прочитали.
abdullah kahraman

3

Поширений підсилювач класу A випромінювачів завжди інвертується, навіть якщо ви використовуєте PNP, єдина відмінність полягає в тому, що ви інвертуєте полярність джерела живлення. Якщо ви використовуєте аудіо-трансформатор замість конденсатора, ви можете змінити фазу сигналу за своїм бажанням. Але це, ймовірно, обійдеться дорожче, ніж використання двох BJT. Щоб вирішити своє остаточне питання все одно, вам доведеться виправити вихід (навіть за допомогою одного діода) і застосувати результат до навантаження (резистор буде добре) і подати це на аналоговий вхід arduino. Інвертувати сигнал взагалі немає підстав.


Тоді що є найпростішим неінвертуючим підсилювачем без ІС (незалежно від класу чи загальновипромінювача)?
Егрик

Загальний колектор, але я вважаю, що це неправильно використовувати в цьому випадку, оскільки вам потрібно посилення напруги
Felice Pollano

Загальна база, якщо вам потрібно посилення напруги (але її струм посилення = 1). Зауважте, що ви можете додати другу інверсію в цьому випадку, просто обмінявшись R1 та мікрофоном. Не потрібно PNP. Однак інвертування чи ні, НЕ вирішить заявлену проблему - генеруючи логіку 1 або 0 залежно від гучності.
Брайан Драммонд

Я не шукаю логіки 0-1, аналогові входи Arduino мають 10-бітний АЦП, який дає 0-1023 для 0V-5V відповідно. Чи можете ви дати для цього схему?
Егрик

1

Цей підсилювач інвертує сигнал, але ви не повинні дбати про звуковий сигнал. Що у вас буде на виході - це змінного струму, конденсатор блокує постійний струм. Отже, ви не можете сказати ~ 0 В для тихого шуму і ~ 5 В для гучного. Якщо вам потрібен датчик рівня звуку, один простий спосіб - додати після вихідного ковпака ланцюг під назвою "демодулятор" або "піковий детектор", легко реалізований навколо діода та декількох пасивних компонентів.


Чи можете ви додати схему цього? Крім того, чи не буде варіюватися піковий детектор від -2,5 до 2,5 В? Я хотів би, щоб ~ 0 В було тихо, а ~ 5 В - найгучнішим, як це зробити?
Егрик

0

Просто переверніть вихід вдруге, використовуючи двоступеневий підсилювач. ( Дивіться цю сторінку для отримання додаткової інформації про два етапи та неінвертуюче транзисторне підсилення. Дуже проникливий )

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

Одні й ті ж значення резисторів і конденсаторів, той же транзистор 2n3094, доданий до виходу існуючої схеми, забезпечив би другу інверсію.

Але хтось мене виправить, якщо я помиляюся, але на вашій схемі показаний простий упереджений підсилювач, так що ви б справді мали 2,5 В як тихий діапазон, а форма хвилі збільшується з більшим звуком? У вас буде пік ± 2,5 В до піку. Ви б мали середню гучність 1В / 3В.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.