Sisällysluettelo:

Signaaligeneraattori AD9833: 3 vaihetta
Signaaligeneraattori AD9833: 3 vaihetta

Video: Signaaligeneraattori AD9833: 3 vaihetta

Video: Signaaligeneraattori AD9833: 3 vaihetta
Video: Презентация генератора высокочастотных сигналов Г3-4400 2024, Heinäkuu
Anonim
Signaaligeneraattori AD9833
Signaaligeneraattori AD9833
Signaaligeneraattori AD9833
Signaaligeneraattori AD9833

Signaaligeneraattori on erittäin hyödyllinen testilaite. Tämä käyttää AD9833 -moduulia ja Arduino Nano - siinä kaikki, ei edes piirilevyä. Voit halutessasi lisätä OLED -näytön. AD9833 voi muuntaa sini-, kolmio- ja neliöaaltoja 0,1 Hz - 12,5 MHz - tämän projektin ohjelmisto on rajoitettu 1 Hz - 100 kHz.

Täällä ja täällä on ollut muita ohjeita, joissa on käytetty Arduinoa ja AD9833. Tämä on yksinkertaisempaa ja sitä voidaan käyttää pyyhkäisygeneraattorina. Pyyhkäisygeneraattorit auttavat testaamaan suodattimien, vahvistimien ja niin edelleen taajuusvasteen. Toisin kuin muut Instructables -mallit, tämä ei sisällä vahvistinta tai amplitudisäädintä, mutta voit lisätä ne halutessasi.

Vaihe 1: Yksinkertaisin signaaligeneraattori

Yksinkertaisin signaaligeneraattori
Yksinkertaisin signaaligeneraattori
Yksinkertaisin signaaligeneraattori
Yksinkertaisin signaaligeneraattori
Yksinkertaisin signaaligeneraattori
Yksinkertaisin signaaligeneraattori
Yksinkertaisin signaaligeneraattori
Yksinkertaisin signaaligeneraattori

Yksinkertaisimmalle signaaligeneraattorille juotat vain AD9833 -moduulin Arduino Nanon takaosaan. PCB: tä ei tarvita.

Valitsemani AD9833 -moduuli on samanlainen kuin tämä. En sano, että se on paras tai halvin toimittaja, mutta sinun pitäisi ostaa sellainen, joka näyttää siltä valokuvalta (tai yllä olevasta kuvasta).

Moduulien väliset liitännät ovat:

  • tontit yhdistetty toisiinsa
  • D2 = FSync
  • D3 = Clk
  • D4 = Tiedot
  • D6 = AD9833: n Vcc

AD9833 saa virtansa Arduinon datatapista D6 - Arduino voi syöttää riittävästi virtaa. Olen lisännyt 100n irrotuskondensaattorin, koska ajattelin, että "pitäisi", mutta en nähnyt mitään eroa - AD9833 -moduulilevyllä on jo irrotuskondensaattori.

Jos olisit mielikuvituksellinen, saatat huolestua "analogisesta maasta" ja "digitaalisesta maasta", mutta jos olisit fancy, käyttäisit enemmän kuin 4 puntaa.

Yksinkertaisinta signaaligeneraattoria ohjataan ja syötetään tietokoneen USB -johdolla. USB emuloi sarjaporttia, joka toimii 115200bps (8-bittinen, ei pariteettia). Komennot ovat:

  • '0'.. '9': siirrä numero "min" taajuusryhmään
  • 'S': aseta AD9833 -taajuus ja tuottaa siniaalto
  • 'T': aseta taajuus ja tuottaa kolmioaalto
  • 'Q': aseta taajuus ja tuottaa neliöaalto
  • 'R': nollaa AD9833
  • 'M': kopioi "min" taajuusmatriisi "max" -taulukkoon
  • "G": pyyhkäise "min" - "max" yli 1 sekunnin ajan
  • 'H': pyyhkäise "ministä" maksimiin 5 sekunnin ajan
  • 'I': pyyhkäise "ministä" maksimiin 20 sekunnin ajan

Arduino-ohjelma sisältää kaksi 6-merkkistä taulukkoa "min" ja "max. Jos lähetät numeron, se siirtyy" min "-taulukkoon. Jos lähetät" S "," min "-taulukon merkit muutetaan Longint taajuus ja lähetetään AD9833. Joten lähetetään merkkijono

002500S

asettaa AD9833 -lähdön 2500 Hz siniaaltoon. Sinun on aina lähetettävä kaikki 6 numeroa. Vähimmäistaajuus on 000001 ja suurin taajuus on 999999.

Jos lähetät "M", "min" -matriisi kopioidaan "max" -taulukkoon. Jos lähetät H -kirjaimen, AD9833 lähettää toistuvasti asteittain kasvavaa taajuutta 5 sekunnin aikana. Se alkaa "min" taajuudella ja 5 sekuntia myöhemmin on "max" taajuudella. Niin

020000M000100SH

pyyhkäisee 100 Hz - 20 kHz. Taajuuden muutos on logaritminen, joten 1 sekunnin kuluttua taajuus on 288 Hz, 2 sekunnin kuluttua 833 Hz ja sitten 2402, 6931 ja 20000. Taajuus muuttuu joka sekunti.

Silmukka pysähtyy, kun Arduino vastaanottaa toisen merkin, joten ole varovainen, ettet lähetä komentoa, jota seuraa rivinvaihto tai rivinvaihto. Tämä ylimääräinen merkki lopettaisi silmukan. Jos käytät sarjamonitoria, oikeassa alakulmassa on laatikko, joka voi sanoa esimerkiksi "Sekä NL että CR", joka (mielestäni) lähettää merkkejä komennon jälkeen. Aseta se "Ei rivin päättymistä".

Voit ladata alla olevan Windows EXE -ohjelman, joka lähettää vaaditut komennot tai voit kirjoittaa oman. Arduino INO -tiedosto on myös täällä.

Vaihe 2: Lisää OLED

Lisää OLED
Lisää OLED
Lisää OLED
Lisää OLED
Lisää OLED
Lisää OLED

Jos lisäät OLEDin ja kaksi painiketta, signaaligeneraattori voi toimia yksin ilman tietokonetta.

Ne teistä, jotka ovat lukeneet Instructable -oskilloskooppini, tunnistavat samankaltaisuuden. AD9833 -moduuli voidaan lisätä oskilloskooppiini tuottamaan "oskilloskooppi ja signaaligeneraattori tulitikkurasiassa".

Näyttö on 1,3 OLED, joka toimii 3,3 V jännitteellä ja jota ohjaa SH1106 -siru I2C -väylän kautta.

Hae eBaysta 1,3 "OLED. En halua suositella tiettyä myyjää, koska linkit vanhenevat nopeasti. Valitse kuva, joka näyttää samalta kuin" I2C "tai" IIC "ja jossa on neljä nastaa VDD GND SCL SDA. (Joissakin näytöissä näyttää olevan nastat eri järjestyksessä. Tarkista ne. I2C: n kellon oikea nimi on "SCL", mutta eBayssa levyt voidaan merkitä "SCK" kuten minun kuvassa.)

Täydempi kuvaus OLED -kirjastosta on oskilloskoopissani Instructable vaiheessa 8. Sinun on ladattava ja asennettava ohjainkirjasto SimpleSH1106.zip, joka on vaiheessa 8. (En halua ladata toista kopiota tänne ja minun on säilytettävä kaksi kopiota.)

INO -tiedoston voi ladata alta. OLED -laitteessa käytetyt PIN -numerot ilmoitetaan rivin 70 ympärillä. Jos olet rakentanut "Oskilloskoopin ja signaaligeneraattorin tulitikkurasiaan" ja haluat testata tätä INO -tiedostoa sen kanssa, vaihtoehtoiset PIN -numerot otetaan käyttöön #define -toiminnolla.

Olen näyttänyt piirilevyn asettelun. Nauhoituslevyjä on kaksi - yksi nanolle ja AD9833 ja toinen näytölle. Niiden pitäisi muodostaa voileipä. Levyt on esitetty komponenttien puolelta. Hienot joustavat johdot yhdistävät kaksi levyä. Kiinnitä levyt yhdessä juotettujen seisokkien kanssa. Kaaviossa kaistaleen nauhan kupari näkyy syaanina. Punaiset viivat ovat lankalenkkejä nauhalla tai joustavat johdot, jotka yhdistävät levyt yhteen. En ole näyttänyt virta- ja "signaali" -johtoja.

AD9833 -moduuli on juotettu nauhalevyn kuparipuolelle - Nanon vastakkaiselle puolelle. Juottaa nastat kupariliuskoille ja sovita sitten AD9833 niihin ja juota se.

Näytössä näkyy joko yksi taajuus tai "min" ja "max" taajuus.

Painikkeita on kaksi: "Vaakasuora" -painike taajuuksien numeron valitsemiseksi ja "Pystysuuntainen" -painike tämän numeron muuttamiseksi.

Käytän signaaligeneraattoria virtalähteestäni, jota kehitän - minulla on aina 5 V käytettävissä työasemalla.

Vaihe 3: Tuleva kehitys

Tuleva kehitys
Tuleva kehitys

Voisiko se olla paristokäyttöinen? Kyllä, lisää vain 9 V: n PP3, joka on kytketty nanon RAW -nastaan. Se käyttää yleensä 20 mA.

Voiko sitä käyttää yhdellä litium -kennolla? En ymmärrä miksi ei. Sinun pitäisi liittää OLED Vdd ja sen vetovastus 3,7 V: n akkuun (epäilen, toimiiko Arduinon 3,3 V: n lähtö).

Pyyhkäisygeneraattori on hyödyllisempi suodattimen taajuusvasteen testauksessa, jos voit piirtää amplitudin vs. taajuuden. Signaalin amplitudin mittaaminen on hankalaa - sinun on vaihdettava kirjekuori -ilmaisimen rappeutuminen vs. aaltoilu matalat taajuudet ja vasteaika korkeille taajuuksille. Kun olet rakentanut amplituditunnistimesi, voit syöttää sen ulostulon "yksinkertaisimman signaaligeneraattorin" Arduinon ADC: hen ja lähettää tuloksen sekä nykyisen taajuuden tietokoneelle.

Tämä sivu on hyödyllinen lähtökohta tai etsi Googlesta "kirjekuoren ilmaisin" tai "huipputunnistin". Yllä olevassa ehdotetussa piirissä asetat signaalitaajuuden, odotat sen stabiloitumista, asetat Arduino A0 -tapin antamaan digitaalisen alhaisen lähdön, odotat purkautuvan C: n, asetat A0: n tuloon, odotat ja mittaat sitten ADC: llä. Kerro miten pääset.

Suositeltava: