28.5. Generatoare forme de undă


Generatoarele de forme de undă sunt circuite electronice care pot produce forme de undă sinusoidale, pătrate, triunghiulare și dinți de fierăstrău utilizând oscilatoare și circuite cu impulsuri.

Este posibilă construirea unor circuite generatoare de forme de undă de la circuite integrate simple sau amplificatoare operaționale conectate la un circuit rezervor rezistor-condensator (RC) sau la un cristal de cuarț pentru a produce forma de undă de de ieșire binară sau pătrată necesară la frecvența dorită.

Acest tutorial de generare a formei de undă ar fi incomplet fără exemple de circuite digitale de comutare regenerative, deoarece ilustrează atât acțiunea de comutare, cât și funcționarea generatoarelor de forme de undă utilizate pentru generarea de unde pătrate pentru a fi utilizate ca forme de undă de sincronizare sau secvențiale.

Știm că circuitele de comutare regenerativă, cum ar fi multivibratoarele astabile,sunt cel mai frecvent utilizat tip de oscilator de relaxare, deoarece produc o ieșire constantă de unde pătrate, făcându-le ideale ca generatoare de forme de undă digitală.

Multivibratoarele astabile fac oscilatoare excelente deoarece comută continuu între cele două stări instabile la o rată constantă de repetare, producând astfel o ieșire continuă de unde pătrate cu un raport mark-space de 1:1 (timpii "ON" și "OFF" sunt la fel) și în acest tutorial ne vom uita la unele dintre diferitele moduri în care putem construi generatoare de forme de undă folosind doar circuitele standard logice TTL și CMOS, împreună cu unele componente suplimentare de temporizare discrete.

Generatoare forme de undă Schmitt

Generatoarele de undă simple pot fi construite folosind inversoare cu acțiune trigger-Schmitt, cum ar fi TTL 74LS14. Această metodă este de departe cea mai ușoară cale de a face un generator de forme de undă astabil. Atunci când se utilizează pentru a produce semnale de tact sau de sincronizare, multivibratorul astabil trebuie să producă o formă de undă stabilă care comută rapid între stările "HIGH" și "LOW" fără nici o distorsiune sau zgomot, iar inversoarele Schmitt fac asta.

Știm că starea de ieșire a unui inversor Schmitt este inversă sau opusă față de cea a stării de intrare (principiile porții NOT) și că poate schimba starea la diferite nivele de tensiune, dându-i "histerezis".

Inversoarele Schmitt utilizează o acțiune de declanșare Schmitt care schimbă starea între un nivel de prag superior și unul inferior, pe măsură ce semnalul tensiunii de intrare crește și scade la terminalul de intrare. Acest nivel de prag superior "stabilește" nivelul de ieșire, iar pragul inferior "resetează" ieșirea, care echivalează cu un "0" logic și un "1" logic, respectiv, pentru un inversor. Luați în considerare circuitul de mai jos.

Generator de formă de undă cu inversor Schmitt

Acest circuit simplu generator de undă este format dintr-o singură poartă logică inversoare TTL 74LS14 Schmitt, cu un condensator C conectat între borna de intrare și masă (0V) și feedback-ul pozitiv, necesar pentru circuit să oscileze, fiind asigurat de un rezistor de feedback RT.

Deci, cum funcționează? Să presupunem că sarcina pe plăcile condensatoarelor este sub nivelul pragului inferior al lui Schmitt de 0,8 volți (valoare din fișa de date). Acest lucru face ca intrarea la inversor să fie la un nivel "0" logic, rezultând un nivel de ieșire "1" logic (principiul inversorului).

O parte a rezistorului R este acum conectată la ieșirea "1" logic (+ 5V), în timp ce cealaltă parte a rezistorului este conectată la condensatorul C care se află la un nivel "0" logic (0,8 V sau mai jos). Acum condensatorul începe să se încarce într-o direcție pozitivă prin rezistor la o rată determinată de constanta de timp a combinației RC.

Atunci când încărcarea prin condensator atinge nivelul de prag superior de 1,6 V al trigger-ului Schmitt (valoare din fișa tehnică), ieșirea inversorului Schmitt se schimbă rapid de la un nivel logic "1" la o stare logică "0" și curentul care trece prin rezistor schimbă direcția.

Această schimbare provoacă acum condensatorul care a fost încărcat inițial prin rezistența R pentru a începe să se descarce înapoi prin același rezistor până când încărcarea pe plăcile de condensator atinge nivelul pragului inferior de 0,8 volți și ieșirea inversorului comută din nou starea cu ciclu care se repetă din nou și din nou, atâta timp cât este prezentă tensiunea de alimentare.

Deci condensatorul C se încarcă și se descarcă în mod constant în timpul fiecărui ciclu între nivelele de prag superior și inferior ale inversorului Schmitt producând un nivel logic "1" sau un nivel logic "0" la ieșirea inversorului. Totuși, forma de undă de ieșire nu este simetrică, producând un ciclu de sarcină de aproximativ 33% sau 1/3, deoarece raportul mark-to-space între "HIGH" și "LOW" este de 1:2 datorită caracteristicilor porții de intrare ale inversorului TTL.

Valoarea rezistorului de reacție (R) TREBUIE să fie menținută la un nivel inferior lui 1 kΩ pentru ca circuitul să oscileze corect, 220 Ω la 470 Ω este bună, și prin modificarea valorii condensatorului C să se varieze frecvența. De asemenea, la nivele de frecvență ridicată, forma de undă de ieșire se modifică de la o formă de undă pătrată la o formă de undă trapezoidală, deoarece caracteristicile de intrare ale porții TTL sunt afectate de încărcarea și descărcarea rapidă a condensatorului. Frecvența de oscilație pentru generatoarele de undă Schmitt este, prin urmare, dată de:

Frecvența formei de undă Schmitt

Cu o valoare de rezistor între: 100 Ω la 1 kΩ, și o valoare a condensatorului între: 1 nF la 1000 μF, acest lucru ar da un interval de frecvență între 1 Hz și 1 MHz, (frecvențele ridicate produc distorsiuni ale formei de undă).

În general, porțile logice TTL standard nu lucrează prea bine ca generatoare de forme de undă, datorită caracteristicilor lor medii de intrare și ieșire, distorsionării formei de undă de ieșire și valorii scăzute a rezistorului de reacție necesar, rezultând un condensator de valoare mare pentru funcționarea la frecvență joasă.

De asemenea, oscilatoarele TTL nu pot oscila dacă valoarea condensatorului de feedback este prea mică. Dar, putem face multivibratoare astabile folosind o tehnologie logică CMOS mai bună, care funcționează de la o alimentare de 3 V la 15 V, cum ar fi CMOS 40106B Schmitt Inverter.

CMOS 40106 este un inversor cu o singură intrare, cu aceeași acțiune trigger-Schmitt ca TTL 74LS14, dar cu o imunitate foarte bună la zgomot, o lățime de bandă mare, un câștig ridicat și caracteristici excelente de intrare/ieșire pentru a produce o formă de undă de ieșire mai "pătrată", după cum se arată mai jos.

Generator formă de undă Schmitt CMOS

Circuitul generatoarelor de undă Schmitt pentru CMOS 40106 este în esență același cu cel pentru inversorul precedent TTL 74LS14, cu excepția adăugării rezistorului de 10 kΩ care este folosit pentru a împiedica condensatorul să deterioreze tranzistoarele de intrare sensibile MOSFET, deoarece se descarcă rapid la frecvențe mai înalte.

Raportul mark-space corespunde mai uniform la aproximativ 1:1 cu valoarea rezistorului de feedback crescut la mai puțin de 100 kΩ, rezultând într-un condensator C de temporizare mai mic și mai ieftin. Frecvența de oscilație nu poate fi aceeași ca: (1/1,2 RC), deoarece caracteristicile de intrare CMOS diferă de TTL. Cu o valoare de rezistor între 1 kΩ și 100 kΩ și o valoare a condensatorului între: 1 pF până la 100 μF, acest lucru ar da un interval de frecvență între 0,1 Hz și 100 kHz.

Generatoare de formă de undă cu inversor Schmitt pot fi realizate și dintr-o varietate de porți logice diferite conectate pentru a forma un circuit inversor. Circuitul multivibrator astabil Schmitt poate fi ușor modificat cu unele componente suplimentare pentru a produce diferite ieșiri sau frecvențe. De exemplu, două forme de undă inverse sau mai multe frecvențe și prin schimbarea rezistorului de reacție fix cu un potențiometru, frecvența de ieșire poate fi variată după cum se arată mai jos.

Generatoare de formă de undă de tact

În primul circuit de mai sus, a fost adăugat un inversor suplimentar Schmitt la ieșirea generatorului de forme de undă Schmitt pentru a produce o a doua formă de undă care este imaginea inversă sau în oglindă a primei. Se produc două forme de undă complementare, astfel încât atunci când o ieșire este "HIGH" cealaltă este "LOW". Acest al doilea inversor Schmitt îmbunătățește forma formei de undă de ieșire inversă, dar adaugă o mică "întârziere a porții", astfel încât nu este exact sincronizată cu prima.

De asemenea, frecvența de ieșire a circuitului oscilator poate fi modificată prin schimbarea rezistorului fix R cu un potențiometru, dar este necesar un rezistor de reacție mai mic pentru a împiedica potențiometrul să scurtcircuiteze invertorul când ajunge la valoarea minimă de 0 Ω.

Putem să folosim și cele două ieșiri complementare Q și Ǭ ale primului circuit pentru a aprinde alternativ două seturi de lumini sau LED-uri prin conectarea ieșirilor lor direct la bazele a două tranzistoare de comutare așa cum se arată.

În acest fel, unul sau mai multe LED-uri sunt conectate împreună în serie cu colectorul tranzistorului de comutare, rezultând blitz-uri alternante ale fiecărui set de LED-uri, pe măsură ce fiecare tranzistor este comutat "ON" la rândul său.

Atunci când utilizați acest tip de circuit, amintiți-vă să calculaţi un rezistor serie adecvat R pentru a limita curentul LED sub 20 mA (LED-uri roșii) pentru tensiunea pe care o utilizați.

Pentru a genera o ieșire de frecvență foarte scăzută de câţiva Herţi pentru a aprinde LED-urile, generatoarele de forme de undă Schmitt folosesc condensatoare de temporizare de mare valoare care, ele însele, pot fi fizic mari și costisitoare.

O soluție alternativă este folosirea unui condensator de valoare mai mică pentru a genera o frecvență mult mai mare, de exemplu 1 kHz sau 10 kHz, și apoi împărțiți această frecvență de tact principală în mai mici, până când este atinsă valoarea frecvenței joase și cel de-al doilea circuit de mai sus tocmai asta face.

Circuitul inferior de mai sus arată oscilatorul utilizat pentru a acționa intrarea de tact a unui contor de riplu. Contoarele de riplu sunt în esență un număr de flip-flop-uri tip-D, divide-prin-2, legate împreună pentru a forma un numărător unic divide-prin-N, unde N este egal cu numărul de biți al contoarelor, cum ar fi CMOS 4024 7-bit Ripple Counter sau CMOS 4040 12-bit Ripple Counter.

Frecvența de tact fixată, produsă de circuitul impulsului de tact astabil Schmitt, este împărțită într-un număr de sub-frecvențe diferite, cum ar fi ƒ ÷ 2, ƒ ÷ 4, ƒ ÷ 8, ƒ ÷ 256, etc, până la valoarea maximă "Divide-prin-n" a numărătorului de riplu care este utilizat. Acest proces de utilizare a "Flip-flops", "Binary Counters" sau "Ripple Counters" pentru a împărți o frecvență fixă ​​de tact în diferite sub-frecvențe este cunoscut sub numele de divizarea frecvenţei și îl putem folosi pentru a obține un număr de valori de frecvență de la un singur generator de forme de undă.

Generatoare de formă de undă cu porți NAND

Generatoare de formă de undă Schmitt pot fi făcute şi utilizând porţi logice NAND standard CMOS conectate pentru a produce un circuit inversor. Aici, două porți NAND sunt conectate împreună pentru a produce un alt tip de circuit de oscilator de relaxare RC care va genera o formă de undă pătrată, după cum se arată mai jos.

În acest tip de circuit generator de formă de undă, rețeaua RC este formată din rezistorul R1 și condensatorul C, fiind controlată de ieșirea primei porți NAND. Ieșirea din această rețea R1C este trimisă înapoi la intrarea primei porți NAND prin rezistorul R2 și atunci când tensiunea de încărcare pe condensator atinge nivelul de prag superior al primei porți NAND, poarta NAND schimbă starea, determinând a doua poartă NAND să o urmeze, schimbând astfel starea și producând o modificare a nivelului de ieșire.

Tensiunea pe rețeaua R1C este acum inversată, iar condensatorul începe să se descarce prin rezistor până când atinge pragul inferior al primei porți NAND, determinând cele două porți să schimbe starea din nou. Ca și circuitul precedent de generator de undă Schmitt de mai sus, frecvența oscilației este determinată de constanta de timp R1C care este dată de: 1/2,2R1C. În general, R2 primește o valoare care este de 10 ori valoarea rezistorului R1.

Atunci când este necesară o stabilitate ridicată sau o auto-pornire garantată, generatoarele de undă CMOS pot fi realizate folosind trei porți NAND inversoare sau oricare trei inversoare logice pentru acest lucru, conectate împreună, după cum se arată mai jos, producând un circuit denumit uneori generator de forme de undă "inel de trei". Frecvența oscilației este determinată din nou de constanta de timp R1C, la fel ca și pentru oscilatorul cu două porți de mai sus, și care este dată de: 1/2,2R1C când R2 are o valoare care este de 10 ori valoarea rezistorului R1.

Generator de formă de undă stabil cu porți NAND

Adăugarea unei porți NAND suplimentare garantează faptul că oscilatorul va porni chiar și cu valori foarte scăzute ale condensatorului. De asemenea, stabilitatea generatorului de forme de undă este mult îmbunătățită, deoarece este mai puțin susceptibilă la variațiile sursei de alimentare, datorită nivelului de declanșare a pragului fiind de aproape jumătate din tensiunea de alimentare.

Cantitatea de stabilitate este determinată, în principal, de frecvența oscilației și, în general, cu cât frecvența este mai mică cu atât oscilatorul devine mai stabil.

Deoarece acest tip de generator de forme de undă funcționează la aproape jumătate sau 50% din tensiunea de alimentare, forma de undă rezultată are un ciclu de sarcină de aproape 50%, raport mark-space 1:1. Generatorul de forme de undă cu trei porți are multe avantaje față de cel cu două porţi de mai sus, dar un dezavantaj important al acestuia este că utilizează o poartă logică suplimentară.

Generator de formă de undă tip inel

Am văzut mai sus că generatoarele de formă de undă pot fi realizate utilizând atât tehnologia logicii TTL, cât și mai buna logică CMOS, cu o rețea RC care produce o întârziere de timp în circuit atunci când este conectată pe una, două sau chiar trei porți logice pentru a forma un simplu oscilator de relaxare RC. Dar, putem face ca generatoarele de forme de undă să utilizeze doar porți logice NOT sau, cu alte cuvinte, inversoare fără alte componente pasive suplimentare conectate la ele.

Prin conectarea împreună a oricărui număr IMPAR (3, 5, 7, 9 etc.) de porți NOT pentru a forma un circuit "inel", astfel încât ieșirea inelului să fie conectată direct înapoi la intrarea inelului, circuitul va continua să oscileze deoarece un nivel logic "1" se rotește constant prin rețea producând o frecvență de ieșire care este determinată de întârzierile de propagare ale inversoarelor utilizate.

Generator de formă de undă în formă de inel

Frecvența oscilației este determinată de întârzierea propagării totale a Inversoarelor utilizate în interiorul inelului și care este ea însăși determinată de tipul de tehnologie a porții, TTL, CMOS, BiCMOS pe care este realizat inversorul. Timpul de propagare sau de întârziere a propagării este timpul total necesar (de obicei în nanosecunde) pentru ca un semnal să treacă direct prin Inversor de la un "0" logic, care ajunge la intrare, producând un "1" logic la ieșirea sa.

De asemenea, pentru acest tip de circuit generator în inel, variațiile în tensiunea de alimentare, temperatură și capacitatea sarcinii afectează întârzierea de propagare a porților logice. În general, în fișele tehnice ale producătorilor va fi dat un timp mediu de întârziere a propagării pentru tipul de porți logice digitale care se utilizează cu frecvența de oscilație dată de:

unde: ƒ este frecvența oscilației, n este numărul de porți utilizate și Tp este întârzierea de propagare pentru fiecare poartă.

De exemplu, presupuneți că un circuit simplu generator de forme de undă are 5 inversoare individuale conectate împreună în serie pentru a forma un oscilator inel, întârzierea de propagare pentru fiecare inversor este dată de 8 ns. Atunci, frecvența de oscilație va fi dată de:

Desigur, acest lucru nu este cu adevărat un oscilator practic datorată în principal instabilității sale și frecvenței de oscilație foarte ridicate, zeci de Megaherți în funcție de tipul de tehnologie al porții logice folosită, iar în exemplul nostru simplu a fost calculat ca 12,5 MHz!. Frecvența de ieșire a oscilatorului inel poate fi „reglată“ un pic prin varierea numărului de inversoare utilizate în interiorul inelului, dar este mult mai bine de a utiliza un mai stabil generator de undă RC la fel ca unul discutat mai sus.

Cu toate acestea, arată că porțile logice pot fi conectate împreună pentru a produce generatoare de forme de undă bazate pe logică și circuite digitale prost proiectate, cu o mulțime de porți, căi de semnal și bucle de feedback care au fost cunoscute ca oscilând neintenționat.

Prin utilizarea unei rețele RC în circuitul inversorului, frecvența de oscilație poate fi controlată cu exactitate, producând un circuit oscilator de relaxare astabil mai practic, care poate fi utilizat în multe aplicații electronice generale.

În următorul tutorial despre generarea undelor și a formelor de undă, vom examina timerul 555 care este unul dintre cele mai populare și versatile circuite integrate produse vreodată, care poate genera o gamă largă de forme de undă și semnale de temporizare de la multivibratoare monostabile la astabile.