Kysymys:
Ääni PWM: n avulla, mikä on sen periaate?
quantum231
2016-06-06 18:42:11 UTC
view on stackexchange narkive permalink

Olen nähnyt kaavion PIC-kortista, joka käyttää suodatettua PWM: ää tuottamaan äänilähtösignaalin ääniliittimeen. Se näyttää PWM-ulostulon suodatettuna käyttämällä passiivisen RC-suodattimen 3 vaihetta, jota seuraa LM386-vaihe. Minulla on seuraavat kysymykset:

  1. Tavallisesti äänisignaalilla olisi useita taajuuksia yhteenlaskettuna. Kuinka PWM tekee sen?
  2. Onko äänenlaatu yhtä hyvä kuin PCM: n käyttö DAC: n, suodattimen ja vahvistimen kanssa?
  3. Koska tämä tekniikka näyttää ja on niin kätevää, miksi kaikki eivät äänilaitteet käyttävät tätä säästääkseen rahaa ja kustannuksia, mukaan lukien äänikortit tietokoneissa?
Haluat ehkä lukea Wikipedia-artikkelin luokan D vahvistimista
Jos käytät vahvistimena LM386: ta, äänenlaatu tulee olemaan huono riippumatta
@PlasmaHH ... tai tämä [Maxim-sovelluksen huomautus luokan D vahvistimista] (https://www.maximintegrated.com/en/app-notes/index.mvp/id/3977).
Jos kyseessä on ei-vakiotaajuinen neliöaaltojärjestelmä, etsi delta-sigma- tai sigma-delta-modulaatiota.Se toimii ADC: lle ja DAC: lle ja voi olla lähes täysin digitaalinen järjestelmä DAC: n toteuttamiseksi.
1A) Kuinka yksi analoginen signaali voi sisältää useita taajuuksia, summataan samanaikaisesti?1B) Kuinka PWM voi arvioida yhden analogisen signaalin?
Tämä voi olla kiinnostavaa.Minulle se on yksi selkeimmistä selityksistä, miten tämä toimii: http://www.romanblack.com/BTc_alg.htm
liittyy voimakkaasti kysymyksiisi 2/3: http://electronics.stackexchange.com/questions/12345/converting-pwm-into-an-analog-signal?lq=1 - katso erityisesti http://electronics.stackexchange.com/ a / 12358/20088 epäsuoraa vastausta varten.
Kaksi vastused:
Andy aka
2016-06-06 19:03:02 UTC
view on stackexchange narkive permalink

Yleensä äänisignaalilla olisi useita taajuuksia, jotka lasketaan yhteen samanaikaisesti. Kuinka PWM tekee sen?

Usean taajuuden spektrin sisältävä äänisignaali on silti vain äänisignaali, josta DAC voi ottaa näytteet ja ADC: n ja luoda sen uudelleen. Jos käytetty näytteenottotaajuus on yli kaksinkertainen korkeimpaan äänitaajuuteen, niin kaikki on hyvää. PWM-tekniikoita käyttävä DAC ei ole erilainen. PWM-aaltomuodon missä tahansa syklissä merkinnän ja tilan suhteen on "edustettava" tarkasti hetkellistä analogista signaalia ja yhden PWM-jakson on oltava ajassa lyhyempi kuin puolet korkeimman äänisignaalin jaksosta: -

enter image description here

Edellä on yksinkertainen kuvaus kolmesta DC-tasosta PWM: n avulla. On selvää, että jos PWM-taajuus on "korkea", näitä kolmea tasoa voidaan pitää osana monimutkaista AC-aaltomuotoa. Toivottavasti näet, että PWM-merkintätilan suhteen tarkka säätäminen on todella välttämätöntä pienen äänen vääristymän saavuttamiseksi.

Onko äänenlaatu yhtä hyvä kuin PCM: n käyttö DAC: n, suodattimen ja vahvistimen kanssa?

Perinteisesti ei, mutta se paranee.

Koska tämä tekniikka näyttää ja on niin kätevä, miksi kaikki audiolaitteet eivät käytä tätä säästääkseen rahaa ja kustannuksia mukaan lukien äänikortit tietokoneisiin?

PWM-suhteen tarkkuuden hallitseminen on melko vaikeaa saada todella hyvää hifi-laatua, ja D-luokan vahvistimien kanssa virtalähteen hylkääminen on edelleen melko vaikea haaste. Katso yllä oleva upotettu kuva - jos 5 V: n voimakisko kaksinkertaistuu, vahvistus myös kaksinkertaistuu - kuvittele nyt, että sen sijaan, että se yksinkertaisesti kaksinkertaistuisi, sinulla oli kuormitus raakaa melua tällä kiskolla - tämä moduloi suoraan äänisignaaliasi ja luo erittäin huomattavia vaikutukset.

Toimintasykli säätelee amplitudia ja pwm: n hetkellinen taajuus on yhtä suuri kuin signaalin hetkellinen taajuus, eikö?
PWM-kytkentätaajuuden PITÄÄ olla yli kaksinkertainen korkeimpaan läsnä olevaan äänitaajuuteen aliaksen estämiseksi (nyquist-nopeuden näytteenoton mukaan): https://en.wikipedia.org/wiki/Nyquist_rate ja https://en.wikipedia.org/wiki/Aliasing ja https://www.cs.cf.ac.uk/Dave/Multimedia/node149.html
"hetkellinen taajuus" ei ole järkevä asia.PWM: n lähtömodulaatio suoritetaan kiinteällä erittäin korkealla PWM-taajuudella ja vaihtelemalla käyttöjaksoa vastaamaan haluttua analogisen lähtötason tasoa kullakin näyteajanjaksolla.
Joten kuinka nopeasti vaihdamme kiinteän taajuuden pwm työjaksoa, generoidaan signaali, jonka amplitudi vaihtelee suhteellisesti, ja siten lopullista signaalin taajuuskomponenttia ohjataan kuinka nopeasti muutamme pwm-signaalin työjaksoa?MAHTAVA!!!
Huomaa, että erittäin korkealla tasolla tämän tekniikan muunnelmaa kutsutaan DSD: ksi (ei enää PWM: ksi) ja jotkut pitävät sitä huomattavasti korkealaatuisempana kuin perinteinen PCM (vaikka lähtölaitteisto on hieman kehittyneempi).Google "DSD" ja "yhden bitin delta-sigma-koodaus".Siellä on huippuluokan audio-hifi-laitteita, jotka käyttävät yhden bitin koodausta.
@vaxquis olen eri mieltä.Millä tahansa PWM-syklillä voi olla merkkitilan suhde minkä tarkkuussyvyydelle tahansa se on suunniteltu riippumatta analogisen signaalin nopeudesta.Se on aivan kuin tavanomainen DAC - signaalilla voi olla harvinainen näytteenotto, mutta bittisyvyys (alias työkiertotarkkuus) ei muutu.Ehkä et ole selittänyt itseäsi kovin hyvin?
@Andyaka, mitä tarkoitin: AFAIK, uC PWM on joko toteutettu ohjelmistoissa (joissa sen kello riippuu suoraan uC-kellosta) tai laitteistolla (sisäänrakennettu PWM-moduuli, CCP PICs AFAIR).Edellisessä tilanteessa kaavani tietysti pitää paikkansa - et ylitä f_uC: tä PWM-lähdön näytteenottotaajuudella, joten f_audio = f_uC / (2 ^ audio_bits);2. tapauksessa se on tietysti riippuvainen PWM-moduulin suunnittelusta - silti tiedän uC: n (esim. AVR: t) * nopea * f_pwm: n 1: 1-esiasteen kanssa todellinen kaava on ... f_uC / (2 ^ pwm_bits).Sellaisena, ellei sinulla ole omistettua PWM: ää, yleinen kaava pitää paikkansa.
@vaxquis Minulla ei todellakaan ole aavistustakaan, mitä yrität kertoa minulle.
@Andyaka katso esim.kaava sivulla 9 osoitteessa http://ww1.microchip.com/downloads/fi/DeviceDoc/31014a.pdf tai sivun 97 alaosa sivulla http://www.atmel.com/Images/Atmel-42719-ATmega1284P_Datasheet.pdf- Yhteenvetona sanoin, että yritin sanoa, että viime kädessä tavallisella uC-laitteistolla MHz-ish-kellotaajuudet estävät kaiken HQ-äänen PWM: stä, ja 8-bittinen ish-ulostulo on yleensä enintään odotettavissa.quantum231 oli ilmeisesti hämmästynyt mahdollisuudesta käyttää PWM: ää analogiseen lähtöön - halusin näyttää hänelle rajat.Siitä on kuitenkin jo keskusteltu osoitteessa http://electronics.stackexchange.com/a/12358/20088
pjc50
2016-06-06 19:22:03 UTC
view on stackexchange narkive permalink

PCM DAC: lla, suodattimella ja vahvistimella

Tämä riippuu siitä, miten DAC on rakennettu sisäisesti. Suurin osa äänikortin DAC: ista käyttää sigma-delta-modulaatiota, joka muistuttaa PWM: ää siinä mielessä, että se on yhden bittinen signaali, joka kytketään päälle ja pois päältä suurella nopeudella suodattimen kautta, mutta käyttää älykkäämpiä algoritmeja oikean lähtötason ja taajuuden varmistamiseksi. / p>

Tässä esimerkissä äänikortin koodekkitietolomakkeessa on mukava kaavio ensimmäisellä sivulla. enter image description here

Voit saada melko kunnollisen ääni puhtaasta PWM: stä jos PWM on riittävän nopea. Sen PWM-taajuuden on oltava paljon korkeampi kuin korkein haluamasi äänitaajuus MHz-alueelle.

Katso PWM: n muuntaminen analogiseksi signaaliksi

Pwm-työjakso on suoraan verrannollinen signaalin amplitudiin, miten audiosignaalin taajuus esitetään?
Kyllä, PWM-käyttöjakso antaa sinulle signaalitason, joten jos käsittelet jokaista 1 / 40000s-jaksoa "näytteenä" ja säätät PWM-tasoa tällä nopeudella, voit teeskennellä, että olet tuottanut analogisen tason kullakin ajanhetkellä.Jälleen PWM-taajuuden on oltava paljon nopeampi kuin toistettavien ääninäytteiden taajuus.
@quantum231: Unohda PWM hetkeksi ja harkitse digitaalista koodausta, jossa 1 tarkoittaa jännitteen kasvua ja 0 vähentää jännitettä.On helppo kuvitella mielivaltaisen aaltomuodon piirtäminen merkkijonolla 1 ja 0.Se ei ole tarkka, mutta tarpeeksi hyvä.Se imee absoluuttisen hiljaisuuden, koska se ei voi koodata "ei jännitteen muutosta", mutta toimii hyvin useimpien äänen aaltomuotojen kanssa.
@slebetman Miten kuvasi eroaa DSD / pulssitiheysmodulaatiosta?Se käyttää ei mitään, mutta 0 (ei lähtöä) ja 1 (koko lähtö), mutta CD-tason laatu vaatii megabittejä (monikko).Jos luulet PWM: n vaativan erittäin korkeaa näytetaajuutta päästäksesi lähelle perinteistä 16-bittistä PCM: ää, se vie vielä enemmän.
@Meower68 Kuvaan delta-koodausta.Yksinkertaisempi muoto differentiaalikoodauksesta DSD: ssä käytetystä delta-sigma-koodauksesta.Kyllä, periaatteessa kuvaan DSD: tä.Mutta PWM yhdistettynä kondensaattoriin toimii samalla tavalla.OP kysyy kuinka PWM-jakso muunnetaan jännitteeksi - kuvaan vain sen takana olevaa mekanismia.Teknisesti DSD eroaa hieman puhtaasta PWM-koodauksesta


Tämä Q & A käännettiin automaattisesti englanniksi.Alkuperäinen sisältö on saatavilla stackexchange-palvelussa, jota kiitämme cc by-sa 3.0-lisenssistä, jolla sitä jaetaan.
Loading...