Pe net se gasesc destule informatii despre aceasta conversie, un articol bine prezentat este Arduino Pulse-Width Modulation Digital to Analog Conversion
Eu am vrut sa folosesc o sursa de incredere, mai ales ca as putea sa folosesc acest convertor in domeniu audio asa ca am apelat la site-ul www.sonelec-musique.com si anume la articolul Convertisseur PWM / Tension 001 in care se prezinta schema
si una cu 3 filtre RC la iesire in loc de una:
Am facut un montaj de test in care am folosit un vechi operational cvadruplu Beta M324, care este echivalent cu LM324, doar ca e fabricat in Romania la sfarsitul anului 1988:
intai testand prima schema, in care amplificarea amplificatorulu neinversor este 2 deoarece A=1+R3/R2=2 (asta daca rezistentele ar fi identice ca valoare):
apoi montandu-i inca un filtru RC, pentru a reduce nivelul componentei alternative
deoarece este conteaza inca un etaj de filtrare RC, dupa cum se vede in pozele urmatoare.
- sketch, in care se vede ca factorul de umplre al semnalului este de 63/255:
- semnalul de la intrare:
- componenta alternativa a semnalului dupa etaj RC
- componenta alternativa a semnalului dupa al doilea etaj RC
Am facut niste filmulete in care am testat semnal dreptunghiular cu factor de umplere variabil de la 0 la 255 din 255 trepte folosind sketch-ul fade1.ino care deriva din cel din exemplele programului Arduino IDE, folosind pinul 9 ca iesire de semnal, ca si acolo, unde era folosit pentru comanda unui led:
Dupa cum se vede, componenta alternativa a tensiunii de la iesire este foarte mare, asa ca trebuie sa folosim o frecventa mai mare. Arduino fiind un microntorler ATmega programat prietenos poate genera la o anumita iesire semnal dreptunghiular cu factor de umplere variabil (pwm) cu anumite frecvente, dupa cum se vede in articolul http://playground.arduino.cc/Code/PwmFrequency.
In mare, pinii digitali genereaza semnal dreptunghiular pe o frecventa de baza, astfel: D3, D9. D10 si D11 pe 31250Hz (31,25kHz), iar D5 si D6 pe 62500Hz (62,5kHz). Divizoarele pe pinii D5, D6, D9 si D10 sunt cu 1, 8, 64, 256 si 1024, iar la pinii D3 si D11 cu 1, 8, 32, 64, 128, 256 si 1024.
Eu am folosit pinul D9, deci frecventa de baza a semnalului dreptunghiular este 31,250Hz, iar divizat:
- cu 8, frecventa semnalului este 31250:8 ~ 3906Hz ~ 3,9kHz
- cu 64, frecventa semnalului este 31250:64 ~ 488Hz
- cu 256, frecventa semnalului este 31250:256 ~ 122Hz
- cu 1024, frecventa semnalului este 31250:1024 = 30,5Hz
Deoarece anumite librarii pot "activa" divizorii, la pinul 9 am avut 488Hz.
Am facut teste la cele 5 frecvente disponibile, pentru a vedea diferentele nivelului componentei alternative la iesirea montajului, dupa primul si al doilea filtru RC, cu factor de umplere 50%.
1) la 31,25kHz:
- semnal la intrare:
- semnal dupa primul filtru RC
- semnal dupa al doilea filtru RC:
2) la 3,9kHz:
- semnal la intrare:
- semnal dupa primul filtru RC
- semnal dupa al doilea filtru RC:
3) la 488Hz:
4) la 122Hz:
5) la 30,5Hz:
- semnal la intrare:
- semnal dupa primul filtru RC
- semnal dupa al doilea filtru RC:
Pentru generarea semanului dreptunghiular cu factor de umplere variabil si frecventa cu divizoare diferite, am folsit scketch-ul fade_pwm_control2.ino si in filmuletul numit Convertor semnal digital in tensiune continua (4) am prezentat ce am scris mai sus:
In concluzie, cu o frecventa mare se poate folosi acest tip de comanda pentru aplicatii audio, cum incepusem sa prezint in articolul Corector de ton cu LM1036 si Arduino.
sau alte aplicati care permit controlul in tensiune...
Bună ziua. Sunt interesat dacă se poate realiza un circuit de alimentare un corector ton 2x12 vca de la baterie auto 12 vcc. Stima
RăspundețiȘtergere