Schema de circuit pentru un osciloscop cu matrice de casă. Nodurile de intrare ale osciloscoapelor de casă

Există un osciloscop USB atât de minunat de la compania chineză Instrustar etichetat ISDS205A. Este atractiv în primul rând pentru software-ul său, este foarte convenabil și funcțional pentru un osciloscop USB și, bineînțeles, pentru caracteristicile sale, care nici măcar nu sunt rele având în vedere prețul osciloscopului. Pe Aliexpress costă aproximativ 55 USD pentru întregul set. Prin urmare, dacă nu aveți încredere în capacitatea dumneavoastră de a replica dispozitivul, atunci ar fi mai indicat să achiziționați un dispozitiv gata făcut. În plus, diferența de preț nu este atât de mare. În general, toată această idee de repetiție este pur din interes sportiv. Una dintre diferențe este că, în versiunea autorului, releul este alimentat de la +5V, care iese din convertor, încărcându-l pe acesta din urmă și distorsionând tensiunea. În cazul nostru, releul va fi alimentat de la un stabilizator separat, iar convertorul va fi, de asemenea, diferit. Mai jos este diagrama lui Instrustar ISDS 205A (modificat).

În partea analogică, este desenat un singur canal, al doilea este același. Osciloscopul este construit pe un procesor CY7C68013Ași un cip ADC cu două canale AD9288-40BRSZ. Procesorul transmite toate datele primite prin USB către computer, astfel încât funcționarea acestuia este foarte dependentă de performanța computerului. Pe mașinile mai vechi, cel mai probabil, acest osciloscop nu va funcționa corect.

Caracteristici de asamblare

Placa de circuit imprimat este atașată mai jos în arhivă. Placa pe care am facut osciloscopul contine o mica eroare in cablare, deci nu controleaza corect releul. A trebuit să folosesc un invertor (în fotografie puteți vedea că microcircuitul este situat cu pinii în sus și este lipit de fire).





Placa este destul de complexă, cu două fețe și metalizată, așa că recomand să o faceți folosind un releu, care este folosit în partea de intrare a tipului TX-4.5. Tensiunea de răspuns nu trebuie să fie mai mare de 3,3 volți. Amplificatoarele operaționale AD8065 sunt foarte susceptibile la supraîncălzire și statică. De asemenea, este foarte ușor să dai peste un fals. Prin urmare, recomand să le lipiți cu un fier de lipit bine împământat, cu control al temperaturii, și să încercați să nu vă supraîncălziți, lipiți dintr-o singură atingere. Înainte de a lipi amplificatorul operațional, vă recomand să faceți un convertor DC-DC și să îl lipiți.
Acest lucru este necesar pentru a monitoriza funcționarea amplificatorului operațional. După instalarea primului, furnizăm energie și controlăm tensiunea la intrare și la ieșire. Un amplificator operațional normal ar trebui să aibă 0 volți la intrare și la ieșire. Ei bine, acum despre DC în sine - DC. Face +5 și -5 volți din 5 volți. Circuitul și placa sa sunt, de asemenea, în arhivă. Cel mai dificil lucru este să treci în transă. Este imperativ să respectați polaritatea înfășurării și să nu confundați nimic.

Puteți achiziționa și un DC-DC gata făcut, dar nivelul de zgomot al osciloscopului crește ușor. După asamblare, trebuie să flashați cipul Eeprom. Pentru a face acest lucru, instalați un jumper pe placă, conectați-l prin USB la computer, lansați programul Cypress Suite, mergeți la EZ Console, apăsați butonul LGeeprom, selectați fișierul firmware din arhivă (extensia .iic) și firmware-ul este încărcat. Puteți citi mai multe despre firmware în. Carcasa este standard și este marcată BIS-M1-BOX-100-01BL. Dimensiunea carcasei - 100*78*27 mm. Ideal pentru placi din arhiva. Mai jos este o fotografie a carcasei în sine și a procesului de asamblare.









Acest osciloscop USB simplu și ieftin a fost inventat și făcut doar pentru distracție. Cu mult timp în urmă am avut ocazia să repar un procesor video tulbure în care intrarea a fost arsă la ADC. ADC-urile s-au dovedit a fi disponibile și ieftine, am cumpărat câteva pentru orice eventualitate, unul a fost folosit ca înlocuitor, iar celălalt a rămas. De curând mi-a atras atenția și după ce am citit documentația pentru el, am decis să-l folosesc pentru ceva util la fermă. În cele din urmă, am primit acest mic dispozitiv. M-a costat un ban (ei bine, aproximativ 1000 de ruble) și câteva zile libere. La creare, am încercat să reduc numărul de piese la minim, menținând în același timp funcționalitatea minimă necesară pentru un osciloscop. La început am decis că rezultatul a fost un fel de dispozitiv dureros de frivol, cu toate acestea, acum îl folosesc în mod constant, pentru că s-a dovedit a fi foarte convenabil - nu ocupă spațiu pe masă, se potrivește ușor într-un buzunar (este dimensiunea unui pachet de țigări) și are caracteristici destul de decente:

Frecvența maximă de eșantionare - 6 MHz;
- Lățimea de bandă a amplificatorului de intrare - 0-16 MHz;
- Divizor intrare - de la 0,01 V/div la 10 V/div;
- Rezistenta de intrare - 1 MOhm;
- Rezoluție - 8 biți.

Schema schematică a osciloscopului este prezentată în Figura 1.

Fig.1 Schema schematică a unui osciloscop


Pentru diverse setări și depanare în tot felul de convertoare de putere, circuite de control pentru aparate de uz casnic, pentru studierea tot felul de dispozitive etc., unde nu sunt necesare măsurători precise și frecvențe înalte, dar trebuie doar să te uiți la forma de undă cu o frecvență de, să zicem, până la câțiva megaherți - mai mult decât suficient.

Butonul S2 face parte din hardware-ul necesar pentru bootloader. Dacă îl țineți apăsat când conectați osciloscopul la USB, PIC-ul va funcționa în modul bootloader și puteți actualiza firmware-ul osciloscopului folosind utilitarul corespunzător. Un cip „de televiziune” - TDA8708A - a fost folosit ca ADC (IC3). Este destul de disponibil în tot felul de ash-uri „Chip and Dip” și în alte locuri în care se obțin piese. De fapt, acesta nu este doar un ADC pentru un semnal video, ci și un comutator de intrare, un egalizator și un limitator de nivel alb-negru etc. Dar toate aceste delicii nu sunt folosite în acest design. ADC-ul este foarte rapid - frecvența de eșantionare este de 30 MHz. În circuit, funcționează la o frecvență de ceas de 12 MHz - nu este nevoie să mergeți mai repede, deoarece PIC18F2550 pur și simplu nu va putea citi datele mai repede. Și cu cât frecvența este mai mare, cu atât este mai mare consumul ADC. În loc de TDA8708A, puteți utiliza orice alt ADC de mare viteză cu ieșire de date în paralel, de exemplu TDA8703 sau ceva de la Analog Devices.

Frecvența de ceas pentru ADC a fost extrasă cu viclenie din PIC - un PWM rulează acolo cu o frecvență de 12 MHz și un ciclu de lucru de 0,25. Pulsul de ceas cu polaritate pozitivă trece în ciclul Q1 al PIC, astfel încât cu oricare accesul la portul B, care are loc în ciclul Q2, datele ADC-urile vor fi gata. Nucleul PIC funcționează la o frecvență de 48 MHz, obținută prin PLL de la un cristal de 4 MHz. O comandă de copiere din registru în registru este executată în 2 cicluri de ceas sau 8 cicluri Astfel, datele ADC pot fi stocate în memorie frecvența de 6 MHz folosind o secvență continuă de comenzi MOVFF PORTB, POSTINC0 Pentru memoria tampon de date este utilizată o bancă RAM PIC18F2550 de 256 de octeți.

Rate de eșantionare mai mici sunt obținute prin adăugarea unei întârzieri între comenzile MOVFF. Firmware-ul implementează cea mai simplă sincronizare bazată pe marginea negativă sau pozitivă a semnalului de intrare. Ciclul de colectare a datelor în buffer este pornit printr-o comandă de la PC prin USB, după care aceste date pot fi citite prin USB. Ca rezultat, PC-ul primește 256 de mostre pe 8 biți, pe care le poate afișa, de exemplu, ca imagine. Circuitul de intrare este incredibil de simplu. Divizorul de tensiune de intrare este realizat fără bibelouri pe un comutator rotativ. Din păcate, nu ne-am putut da seama cum să transferăm poziția comutatorului la PIC, astfel încât fața grafică a osciloscopului conține doar valori ale tensiunii în unități relative - diviziuni de scară. Amplificatorul de semnal de intrare (IC2B) funcționează cu un câștig de 10 ori, offset-ul zero necesar pentru ADC (acceptă un semnal în intervalul de la Vcc - 2.41V la Vcc - 1.41V) este furnizat de tensiunea de la referința programabilă generator de tensiune PIC (CVREF IC1, R7, R9) și un divizor de tensiunea negativă de alimentare (R6, R10, R8). Deoarece A fost un amplificator „extra” (IC2A) în carcasa amplificatorului operațional, l-am folosit ca adept de tensiune de polarizare.

Nu uitați de circuitele capacitive pentru compensarea în frecvență a capacității de intrare a amplificatorului operațional și a diodelor de limitare, care lipsesc în diagramă - trebuie să selectați capacități paralele cu rezistențele divizorului și rezistența R1, în caz contrar, caracteristicile de frecvență ale circuitul de intrare va distruge întreaga bandă de trecere. Cu curent continuu, totul este simplu - rezistența de intrare a amplificatorului operațional și a diodelor închise este cu ordine de mărime mai mare decât rezistența divizorului, astfel încât divizorul poate fi calculat pur și simplu fără a ține cont de rezistența de intrare a amplificatorului operațional. . Pentru curentul alternativ este diferit - capacitatea de intrare a amplificatorului operațional și a diodelor este o cantitate semnificativă în comparație cu capacitatea divizorului. Din rezistența divizorului și capacitatea de intrare a amplificatorului operațional și a diodelor, se obține un filtru pasiv trece-jos, care distorsionează semnalul de intrare.

Pentru a neutraliza acest efect, trebuie să vă asigurați că capacitatea de intrare a amplificatorului operațional și a diodelor devine semnificativ mai mică decât capacitatea divizorului. Acest lucru se poate realiza prin construirea unui divizor capacitiv paralel cu cel rezistiv. Este dificil să calculezi un astfel de divizor, deoarece Atât capacitatea de intrare a circuitului, cât și capacitatea de montare sunt necunoscute. E mai ușor să-l ridici.

Metoda de selecție este următoarea:
1. Plasați un condensator cu o capacitate de aproximativ 1000 pF în paralel cu R18.
2. Selectați limita cea mai sensibilă, aplicați impulsuri dreptunghiulare cu o frecvență de 1 kHz și o variație de mai multe diviziuni de scară la intrare și selectați un condensator paralel cu R1, astfel încât dreptunghiurile de pe ecran să arate dreptunghiuri, fără vârfuri sau văi pe fronturi.
3. Repetați operația pentru fiecare limită următoare, selectând condensatori în paralel cu fiecare rezistor divizor în funcție de limită.
4. Repetați procesul de la început și asigurați-vă că totul este în ordine la toate limitele (poate apărea capacitatea instalației condensatorului) și, dacă ceva nu este în regulă, reglați ușor capacitățile.

Amplificatorul operațional în sine este un Analog Devices AD823. Cea mai scumpă parte a osciloscopului. :) Dar banda este de 16 MHz - ceea ce nu este rău și, în plus, acesta este primul dintre cei rapid care au venit în vânzare cu amănuntul pentru bani rezonabili.

Desigur, acest amplificator operațional dual poate fi înlocuit fără nicio modificare cu ceva de genul LM2904, dar atunci va trebui să te limitezi la semnale audio. Nu va gestiona mai mult de 20-30 kHz.

Ei bine, forma semnalelor dreptunghiulare, de exemplu, va fi ușor distorsionată. Dar dacă reușiți să găsiți ceva de genul OPA2350 (38 MHz), atunci va fi, dimpotrivă, minunat.

Sursa negativă de tensiune de alimentare pentru amplificatorul operațional este realizată folosind binecunoscuta pompă de încărcare ICL7660. Cablaj minim și fără inductanțe.
Desigur, curentul său de ieșire este de -5 V, ceea ce este mic, dar nu avem nevoie de mult. Circuitele de putere ale părții analogice sunt izolate de zgomotul digital prin inductanțe și capacități (L2, L3, C5, C6). Inductoarele au venit cu o valoare nominală de 180 uH, așa că le-am instalat. Nicio interferență de putere chiar și la cea mai sensibilă limită. Firmware-ul PIC este încărcat prin USB folosind un bootloader care se află la adresa 0 din memoria programului și pornește dacă țineți apăsat butonul S2 când îl porniți. Deci, înainte de a afișa PIC-ul, încărcați mai întâi bootloader-ul - va fi mai ușor să schimbați firmware-ul.
Sursele driverului de osciloscop pentru nucleele 2.6.X sunt în arhiva cu firmware-ul. Există, de asemenea, un utilitar de consolă pentru verificarea funcționalității osciloscopului. Codul său sursă merită să vă uitați pentru a afla cum să comunicați cu osciloscopul dacă doriți să scrieți propriul software pentru acesta.

Această recenzie este destinată persoanelor al căror scop este să construiască osciloscoape de casă cu niveluri scăzute și medii de complexitate. De regulă, sunt digitale, din fericire, baza de elemente moderne (microcontrolere) le permite să fie făcute nu prea complicate. Dar o mare parte din ceea ce se spune mai jos este destul de aplicabil și pentru osciloscoapele analogice.

Această recenzie rezumă experiența pe care am dobândit-o prin testarea și construirea a peste zece (aproximativ 15) osciloscoape.

Designul circuitului osciloscoapelor poate fi foarte diferit, așa că această recenzie nu pretinde a fi incontestabilă și reflectă doar părerea și experiența mea.

Aşa. Pentru multe sarcini de radio amatori, cred că osciloscopul ar trebui să fie capabil să examineze semnale cu un nivel de la 5-20 milivolți la câteva zeci de volți.

Sensibilitatea în milivolți vă va permite să captați interferența și să reglați filtrele în circuitele diferitelor dispozitive și surse de alimentare.

Sensibilitatea de zeci de volți este necesară atunci când se instalează și se diagnostichează diverse surse de alimentare, în special cele de comutare.

Și multe alte dispozitive sunt mult mai ușor de configurat dacă aveți un osciloscop.

Pe baza acestui lucru, obținem cerințele pentru atenuatorul de intrare. Mă voi uita la un atenuator construit în jurul întrerupătoarelor mecanice. Voi explica de ce puțin mai târziu.

Din păcate, un număr semnificativ de trepte de divizare necesită utilizarea întrerupătorilor biscuiți. Dar, de obicei, sunt destul de mari și nu se potrivesc bine în modelele miniaturale pentru amatori.

Dintre cele mai accesibile și comune, există întrerupătoare cu trei poziții. Acestea sunt cele asupra cărora ne vom concentra.

Circuite atenuatoare de intrare

Poate cel mai comun atenuator de intrare (divizor) este asamblat conform circuitului prezentat în Figura 1.

Diagrama poate fi desenată în diferite moduri, nu contează. Adesea, în loc de comutator, se folosesc microcircuite speciale - multiplexoare, esența nu se schimbă. Doar că în loc de mecanică, ei folosesc un microcircuit care are control digital și îți permite să implementezi un număr mai mare de trepte de divizare, și chiar și toată această fericire este controlată de software, cu butoane.

Pare convenabil. Adevărat, există un mare „DAR” în această chestiune. Când se instalează un osciloscop, un semnal dreptunghiular este de obicei aplicat la intrarea acestuia și capacitățile C1 și C3 sunt ajustate, obținând vârfuri plate ale impulsurilor. Ceva de genul acesta. (Aici și mai jos sunt capturi de ecran din programul Multisim 12).

Configurarea se face de obicei o singură dată. La un anumit interval de sensibilitate. Și aceasta se consideră finalizată.

Dar când trecem la alte game de sensibilitate, când luăm în considerare semnale cu o tensiune diferită, de obicei ne așteaptă o problemă. În loc de dreptunghi, putem vedea asta:

Sau asta:

Și numai cu condensatoarele C2 și C4 conform schemei 1, fără a modifica setările condensatorului C1, nu putem compensa în niciun fel acest lucru.

Ar trebui să remarc că ultimele două imagini arată încă cazuri destul de simple, care sunt relativ de înțeles. Și pot fi mult mai cool. Până la o nebunie completă. Ce să fac? Ar trebui să configurez C1 de fiecare dată? Din experiența mea, mulți oameni pur și simplu nici măcar nu acordă atenție acestei nuanțe de configurare. Ei bine, ca rezultat, ei văd ceva necunoscut.

Desigur, nu sunt pregătit să spun că, în principiu, este imposibil să se selecteze configurația circuitelor de corecție prin alcătuirea unor rezistențe separatoare individuale din mai multe în serie, cu propriile capacități de compensare pe fiecare. Pur și simplu nu am putut. Nici în hardware, nici în Multisim.

Pentru a scăpa de acest dezavantaj, este mai bine să utilizați un circuit diferit de atenuator de intrare. Conform figurii 2.

Singura diferență față de primul este că nu este comutat doar brațul inferior al separatorului, ci și cel superior. Și capacitatea de compensare a frecvenței pentru brațul superior al fiecărui divizor este configurată separat.

Adică, la comutarea intervalelor de sensibilitate, imaginea pulsului dreptunghiular nu se va schimba. Modul în care configurăm fiecare interval separat este modul în care va funcționa.

Dar. Acest circuit necesită deja un comutator cu două grupuri de contacte. Iar pentru partea superioară a brațului este, în principiu, imposibilă utilizarea multiplexoarelor. Deoarece tensiunile de intrare ale osciloscopului sunt deja în vigoare acolo. Aceste. controlul software-ului este dificil.

Puteți, desigur, să utilizați multiplexoare cu relee electromagnetice la ieșiri și să utilizați un atenuator conform schemei 2, dar acest lucru va provoca o creștere bruscă a dimensiunii și a consumului de energie al osciloscopului, ceea ce este foarte nesănătos pentru dispozitivele alimentate cu baterie.

Acest lucru determină faptul că consider că întrerupătoarele mecanice sunt optime. Ce am menționat mai sus.

Alternativ, puteți aplica principiul ca în DSO-138 și succesorii săi.

Click pentru a mari

Același circuit 2, dar rezistențele superioare sunt conectate între ele. Dar va trebui să plătiți pentru asta reducând impedanța de intrare în intervalul cu sensibilitate maximă. Datorită influenței stadiilor de divizare unele asupra celeilalte.

Într-un cuvânt, astăzi, cred că este optim ca osciloscoapele simple de casă să folosească un atenuator de intrare (divizor) conform schemei 2.

Domenii de comutare

Și aici ajungem la a doua problemă a acestui caz. Trei trepte de divizare NU SUNT SUFICIENTE. Se pare că cele mai mici semnale vor fi greu de văzut și este necesară o comutare suplimentară sau o întindere verticală.

Se pot folosi biscuiti. Dar acestea sunt dimensiuni comparabile cu dimensiunile măgarului însuși. Cel mai mic pe care îl am este de 5 poziții în 2 direcții, puțin mai lung ca dimensiune decât un rezistor de reglaj sovietic. Dar nici 5 poziții nu sunt suficiente și a fost rupt din tehnologia japoneză cu mult timp în urmă și nu am întâlnit niciodată analogi. Nu calea.

Cel mai recent osciloscop pe care l-am construit este „Osciloscopul pe microcontrolerul ATMEGA32A” de pe site-ul web bezkz. Particularitatea sa este că are o întindere a programului de 2 ori de 2 ori. Adică, este capabil să întindă imaginea de 2 și 4 ori.

Cu un comutator al intervalului de sensibilitate cu trei poziții, se obțin un total de 9 poziții. Și se suprapun unul pe altul destul de bine. Am folosit un atenuator de intrare pe aceeași placă cu un amplificator AD823. Desigur cu circuite de protecție etc.

O altă versiune a osciloscopului pe care îmi propun să o refac este VirtOS în versiunea de la VetalST pentru afișajul LS020. L-am implementat deja pe metal, dar domeniul de sensibilitate (1 volt pe diviziune, de la 2 la 8 diviziuni pe ecran) nu este satisfăcător.

Are o extensie software de 2 ori și un potențiometru de încă 2 ori. Aceste. din nou de două ori două, ca în „Electrician”. Adevărat, schimbarea nu va mai fi atât de convenabilă. Dar îmi place acest măgar și chiar mi-ar plăcea să-l aduc în minte. Plănuiesc să adaug un amplificator cu un atenuator și să extind gama de 100 de ori. Ei bine, o sondă cu un divizor cu 10 mărește raza de acțiune.

Puteți lua în considerare și amplificatoarele de intrare op-amp. Caracteristicile utilizării lor. Cu scheme specifice ale componentelor și plăcilor cu circuite imprimate. Dar acesta este un subiect pentru articolul următor. Între timp, îi îndemn pe cei care intenționează să dezvolte osciloscoape simple să acorde în continuare preferință comutatoarelor mecanice din divizoarele de intrare.

Pentru radioamatorii începători, astfel de circuite sunt mult mai ușor de fabricat și configurat. Și, în practică, personal mi se pare mult mai convenabil să schimb intervalele pur și simplu făcând clic pe comutatoare, mai degrabă decât sărind prin elementele de meniu cu butoane sau codificatoare. Mai ales pentru site - Trishin Alexander Olegovich. Komsomolsk-pe-Amur.

Discutați articolul NODURI DE INTRARE ALE OSCILOSCOPELOR DE CASĂ

Osciloscoapele digitale sunt folosite de pasionații de electronică și sunt unul dintre lucrurile comune pe care le au la birou. Dar cumpărarea unei soluții gata făcute poate costa un ban, așa că am decis că îmi voi construi propriul osciloscop cu propriile mele mâini. Acest proiect de bază vă va ajuta să vă îmbunătățiți abilitățile și, în cele din urmă, veți avea propriul dispozitiv drăguț de casă, care vă va face viața mai ușoară.

Arduino este un lucru minunat care rulează pe microcontrolere pe 8 biți care au ieșiri digitale, SPI, linii I2S, comunicație serială, ADC etc. Deci, utilizarea Arduino în acest proiect este o idee bună.

Pasul 1: Materialele necesare




Am vrut să păstrez lucrurile simple și ieftine, așa că veți avea nevoie de:

  • Laptop x1
  • Arduino x 1 (UNO, PRO MINI, NANO - cu excepția MEGA)
  • Cabluri cu mufe x 2
  • Placă de dezvoltare x 1
  • Agrafe aligator x 2
  • Cablu jack de 3,5 mm mascul la femela x 1
  • Sursa semnalului audio sau alt semnal a cărui formă doriți să o vedeți

Pasul 2: Codul și programul osciloscopului


Odată conectat, pur și simplu descărcați codul din arhiva zip în ea. Acest cod citește pur și simplu tensiunea de pe pinii analogici A0-A5 sau A7 ai Arduino (în funcție de placa dvs.), apoi o convertește într-o valoare cuprinsă între 0 și 1023. Această valoare este apoi trimisă computerului prin portul USB.

Pinii A0-A5 sau A7 (în funcție de placa dvs.) acționează ca 6 sau 8 canale de osciloscop, dar software-ul vă permite să afișați doar trei canale simultan.

Odată ce ați deschis programul osciloscopului după descărcarea schiței, selectați viteza de transmisie (viteza de transmisie) și parametrii portului COM și apoi deschideți canalele.

Programul osciloscop este proiectat să preia valori de la Arduino și să le traseze adăugând valorile la o linie, oferindu-vă grafice frumoase ale formei de undă la fel ca un osciloscop.

Fișiere

Pasul 3: Cum funcționează



  1. Conectați Arduino
  2. Descărcați codul
  3. Treceți semnalul prin pinii A0 - A5 sau A7 (în funcție de placa dvs.). Am ales semnalul care vine de la telefon prin mufă. Un capăt al firului a fost conectat la telefon, iar la celălalt capăt am conectat pământul la GND al Arduino și al doilea aligator a fost conectat la unul dintre canalele audio. (în cazul meu, canalul drept al semnalului audio).
  4. Deschideți programul de osciloscop
  5. Selectați portul COM și rata de transmisie
  6. Deschide canalele și gata!

Pasul 4: Caracteristici

  • Rezoluția osciloscopului: aproximativ 0,0049 volți (4,9 mV)
  • Rata de reîmprospătare: 1KHz
  • Rata de transmisie: 115200
  • Gama de tensiune: 0-5 volți
  • Poate afișa 3 canale simultan

Notă: Nu depășiți limita de 5 volți a osciloscopului electronic, altfel vă veți prăji Arduino.

Restrictii:

  1. Tensiunea nu trebuie depășită, este în intervalul 0-5 Volți
  2. Orice semnal peste 1KHz nu va fi observat de Arduino sau va fi detectat ca valori nedorite (interferență)
  3. Nu încercați să măsurați semnalele AC, deoarece pinii analogici nu sunt proiectați pentru acest lucru și veți ajunge fie să deteriorați Arduino, fie să declanșați jumătatea pozitivă.

Pasul 5: Ai terminat!

Deci, cred că a fost destul de ușor să-ți faci propriul osciloscop pe Arduino. Sper că v-a plăcut totul.

Frecvența de măsurare: 10 Hz - 7,7 kHz
Max. tensiune de intrare: 24V AC / 30V DC
Tensiune de alimentare: 12V DC
Rezoluția ecranului: 128x64 pixeli
Zona ecranului cu formă de undă: 100x64 pixeli
Zona de informații pe ecran: 28x64 pixeli
Modul de declanșare: automat

Introducere

Într-o zi, în timp ce răsfoiam diverse site-uri de internet despre electronice, am dat peste un proiect de osciloscop foarte interesant, care a fost conceput folosind un PIC18F2550 MK și un LCD grafic cu un controler KS0108. Acesta a fost site-ul lui Steven Cholewiak. A fost un circuit bun și am decis să dezvolt propriul meu proiect de osciloscop și să folosesc limbajul C, în care programez în ultimii ani, în loc de limbajul de asamblare. Ca mediu de dezvoltare, am folosit , care se bazează pe compilatorul open source AVR-GNU și funcționează excelent cu . Biblioteca grafică am dezvoltat-o ​​personal, special pentru acest proiect. Dacă doriți să îl utilizați pentru alte proiecte, atunci trebuie refăcut. Când măsurați o undă pătrată, frecvența maximă la care veți vedea o formă de undă bună este de aproximativ 5 kHz. Pentru alte forme de undă (sinusoidală sau triunghiulară), frecvența maximă este de aproximativ 1 kHz.

Schema schematică a unui osciloscop AVR prezentată în imaginea de mai jos (click pentru a mări):

Tensiunea de alimentare a circuitului este de 12 volți DC. Din această tensiune se obțin ulterior încă 2 tensiuni: +8,2V pentru IC1 și +5V pentru IC2, IC3. Aparatul poate măsura tensiunea de intrare de la +2,5V la -2,5V sau de la 0 la +5V, în funcție de poziția comutatorului S1 (selectarea tipului de curent de intrare: DC sau AC). Când se utilizează o sondă 1:10, tensiunea de intrare poate fi mărită cu un factor de 10 corespunzător. În plus, folosind comutatorul S2, puteți seta suplimentar diviziunea tensiunii cu 2.

Firmware ATmega32

Fișier firmware: AVR_oscilloscope.hex, atunci când selectați siguranțe, trebuie să specificați utilizarea unui cuarț extern. Ulterior, este necesar să dezactivați interfața JTAG, dacă nu se face acest lucru, ecranul de inițializare va fi afișat pe osciloscop, iar apoi se va reporni.

Setări

Pentru a configura dispozitivul, trebuie să faceți doar 2 lucruri: reglați contrastul LCD folosind rezistența de tăiere P2 și setați centrul oscilogramei folosind rezistența de tăiere P1.

Utilizare

Puteți muta fasciculul formei de undă în sus sau în jos apăsând butoanele S8 și S4. Un pătrat de pe ecran corespunde lui 1B.
Folosind butoanele S7 și S3 puteți crește sau micșora frecvența de măsurare. Frecvența minimă a formei de undă care poate fi afișată pe LCD este de 460 Hz. Dacă trebuie să vizualizați un semnal cu o frecvență mai mică, de exemplu 30 Hz, atunci trebuie să apăsați S7 pentru a comprima forma de undă sau S3 pentru a o întinde.
Osciloscopul folosește modul de declanșare automată. Aceasta înseamnă că dacă semnalul de intrare se repetă (de exemplu un triunghi), atunci flip-flop-ul funcționează bine. Dar dacă forma semnalului se schimbă constant (de exemplu, o secvență de date), atunci pentru a captura imaginea trebuie să apăsați butonul S6. Apăsând din nou S6 se revine la modul normal.

Video cu osciloscopul în acțiune

Lista radioelementelor

Desemnare Tip Denumire Cantitate NotaMagazinBlocnotesul meu
IC1 Amplificator operațional

LM358

1 La blocnotes
IC2 Afișaj LCDDEM128064A1 128x64, controler KS0108 La blocnotes
IC3 MK AVR pe 8 biți

ATmega32

1 La blocnotes
IC4 Regulator liniar

LM7805

1 La blocnotes
D1 Dioda Zener

1N4738A

1 8,2 V La blocnotes
D2 Dioda redresoare

1N4007

1 La blocnotes
C1 Condensator470 nF1 La blocnotes
C2 Condensator27 pF1 La blocnotes
C3 22 µF 16 V1 La blocnotes
C4, C7, C9 Condensator100 nF3 La blocnotes
C5, C6 Condensator22 pF2 La blocnotes
C8 Condensator electrolitic100 µF 25 V1 La blocnotes
R1, R2, R4 Rezistor

1 MOhm

3 La blocnotes
R3, R5 Rezistor

390 kOhm

2 La blocnotes
R6 Rezistor

56 ohmi

1 La blocnotes
R7 Rezistor

220 ohmi

1 La blocnotes
P1 Rezistor trimmer10 kOhm1 La blocnotes
P2 Rezistor trimmer22 kOhm1 La blocnotes
X1 Cuarţ16 MHz1