Isi kandungan:

Penjana Isyarat AD9833: 3 Langkah
Penjana Isyarat AD9833: 3 Langkah

Video: Penjana Isyarat AD9833: 3 Langkah

Video: Penjana Isyarat AD9833: 3 Langkah
Video: [СОВЕРШЕННО НОВИНКА] FNIRSI 2C23T 👉 2-канальный осциллограф + мультиметр + генератор функций 👉Ух ты! 2024, Julai
Anonim
Penjana Isyarat AD9833
Penjana Isyarat AD9833
Penjana Isyarat AD9833
Penjana Isyarat AD9833

Penjana isyarat adalah alat uji yang sangat berguna. Yang satu ini menggunakan modul AD9833 dan Arduino Nano - itu sahaja, bukan juga PCB. Anda boleh menambah paparan OLED secara pilihan. AD9833 dapat menghasilkan gelombang sinus, segitiga dan persegi dari 0.1 Hz hingga 12.5 MHz - perisian dalam projek ini terhad kepada 1Hz hingga 100kHz.

Terdapat instruksional lain yang menggunakan Arduino dan AD9833, di sini dan di sini. Ini lebih mudah dan boleh digunakan sebagai penghasil sapu. Penjana sapu membantu menguji tindak balas kekerapan penapis, penguat dan sebagainya. Tidak seperti reka bentuk Instructables yang lain, ini tidak termasuk penguat atau kawalan amplitud tetapi anda boleh menambahkannya jika anda mahu.

Langkah 1: Penjana Isyarat Paling Mudah

Penjana Isyarat Paling Mudah
Penjana Isyarat Paling Mudah
Penjana Isyarat Paling Mudah
Penjana Isyarat Paling Mudah
Penjana Isyarat Paling Mudah
Penjana Isyarat Paling Mudah
Penjana Isyarat Paling Mudah
Penjana Isyarat Paling Mudah

Untuk Generator Isyarat paling mudah, anda hanya memasangkan modul AD9833 ke bahagian belakang Arduino Nano. PCB tidak diperlukan.

Modul AD9833 yang saya pilih serupa dengan yang ini. Saya tidak mengatakan bahawa itu pembekal terbaik atau paling murah tetapi anda harus membeli yang kelihatan seperti foto itu (atau gambar di atas).

Sambungan antara modul adalah:

  • alasan dihubungkan bersama
  • D2 = FSync
  • D3 = Clk
  • D4 = Data
  • D6 = Vcc AD9833

AD9833 dikuasakan dari pin data D6 Arduino - Arduino dapat membekalkan arus yang mencukupi. Saya telah menambah kapasitor pemutusan 100n kerana saya fikir saya "sepatutnya" tetapi saya tidak dapat melihat perbezaan - sudah ada kapasitor pemutusan pada papan modul AD9833.

Sekiranya anda gemar, anda mungkin bimbang tentang "landasan analog" vs "landasan digital" tetapi jika anda suka, anda akan membelanjakan lebih dari £ 4.

Generator Isyarat paling mudah dikawal dan dikuasakan melalui plumbum USB dari PC. USB meniru port bersiri yang berjalan pada 115200bps (8-bit, tanpa paritas). Perintahnya adalah:

  • '0'.. '9': beralih digit ke dalam array frekuensi "min"
  • 'S': tetapkan frekuensi AD9833 dan menghasilkan gelombang sinus
  • 'T': tetapkan frekuensi dan menghasilkan gelombang segitiga
  • 'Q': tetapkan frekuensi dan hasilkan gelombang persegi
  • 'R': tetapkan semula AD9833
  • 'M': salin array frekuensi "min" ke dalam array "max"
  • 'G': sapu dari "min" ke "max" lebih dari 1 saat
  • 'H': sapu dari "min" ke "max" lebih dari 5 saat
  • 'I': sapu dari "min" ke "max" lebih dari 20 saat

Program Arduino mengandungi dua susunan 6 aksara "min" dan "maks. Jika anda menghantar digit maka ia akan dialihkan ke dalam array" min ". Sekiranya anda menghantar 'S' maka watak array" min "diubah menjadi frekuensi longint dan dihantar ke AD9833. Jadi menghantar rentetan

002500S

akan menetapkan output AD9833 ke gelombang sinus 2500Hz. Anda mesti selalu menghantar semua 6 digit. Frekuensi minimum adalah 000001 dan frekuensi maksimum adalah 999999.

Sekiranya anda menghantar 'M' maka susunan "min" disalin ke dalam array "max". Sekiranya anda menghantar 'H' maka AD9833 berulang kali mengeluarkan frekuensi yang meningkat secara beransur-ansur selama 5 saat. Ia bermula pada frekuensi "min" dan 5 saat kemudian pada frekuensi "maks". Jadi

020000M000100SH

menyapu dari 100Hz hingga 20kHz. Perubahan frekuensi adalah logaritma jadi setelah 1 saat frekuensi akan menjadi 288Hz, setelah 2 saat 833Hz kemudian 2402, 6931 dan 20000. Frekuensi diubah setiap milidetik.

Gelung berhenti ketika Arduino menerima watak lain jadi berhati-hatilah untuk tidak menghantar arahan diikuti dengan carriage-return atau line-feed. Watak tambahan itu akan mengakhiri gelung. Sekiranya anda menggunakan Monitor Serial, ada kotak di kanan bawah yang mungkin berbunyi misalnya "Kedua-dua NL & CR" yang (saya rasa) menghantar watak setelah perintah anda. Tetapkan ke "Tiada garis berakhir".

Anda boleh memuat turun program Windows EXE di bawah yang akan menghantar arahan yang diperlukan atau anda boleh menulis sendiri. Fail Arduino INO juga ada di sini.

Langkah 2: Tambahkan OLED

Tambah OLED
Tambah OLED
Tambah OLED
Tambah OLED
Tambah OLED
Tambah OLED

Sekiranya anda menambah butang OLED dan dua, penjana isyarat boleh berfungsi sendiri tanpa PC.

Anda yang telah membaca arahan osiloskop saya akan menyedari persamaannya. Modul AD9833 dapat ditambahkan ke osiloskop saya untuk menghasilkan "Oscilloscope and Signal Generator in a Matchbox".

Paparannya adalah OLED 1.3 yang berjalan pada 3.3V yang dikendalikan oleh cip SH1106 melalui bas I2C.

Cari di eBay untuk OLED 1.3 ". Saya tidak mahu mengesyorkan penjual tertentu kerana pautan akan cepat usang. Pilih yang kelihatan seperti foto itu, katakan" I2C "atau" IIC "dan mempunyai empat pin berlabel VDD GND SCL SDA. (Beberapa paparan nampaknya pin dalam urutan yang berbeza. Periksa. Nama yang tepat untuk jam I2C adalah "SCL" tetapi di eBay papan boleh dilabel "SCK" seperti yang saya ada di foto.)

Penerangan yang lebih lengkap mengenai perpustakaan OLED ada di osiloskop saya. Diarahkan pada Langkah 8. Anda harus memuat turun dan memasang pustaka pemacu SimpleSH1106.zip yang terdapat di Langkah 8. (Saya tidak mahu memuat naik salinan lain di sini dan harus menyimpan dua salinan..)

Fail INO boleh dimuat turun di bawah. Nombor pin yang digunakan untuk OLED dinyatakan sekitar baris 70. Sekiranya anda telah membina "Oscilloscope and Signal Generator in a Matchbox" dan ingin menguji fail INO ini dengannya, nombor pin alternatif diaktifkan melalui #define.

Saya telah menunjukkan susun atur papan litar untuk litar. Terdapat dua papan paparan - satu untuk Nano dan AD9833 dan satu untuk paparan. Mereka harus membentuk sandwic. Papan ditunjukkan dari sisi komponen. Kawat fleksibel halus bergabung dengan dua papan. Pasang papan bersama-sama dengan pelindung yang dipateri. Dalam rajah saya, tembaga papan tulis ditunjukkan dalam cyan. Garis merah adalah pautan dawai di papan jalur atau wayar fleksibel yang menyatukan papan. Saya belum menunjukkan kekuatan dan petunjuk "isyarat".

Modul AD9833 disolder pada bahagian tembaga papan jalur - di seberang Nano. Pita solder ke jalur tembaga kemudian pasangkan AD9833 ke atasnya dan pasangkannya.

Paparan menunjukkan frekuensi tunggal atau frekuensi "min" dan "max".

Terdapat dua butang tekan: butang "Mendatar" untuk memilih digit frekuensi dan butang "Vertikal" untuk menukar digit itu.

Saya menghidupkan penjana isyarat dari litar yang saya bangunkan - saya selalu mempunyai 5V di stesen kerja saya.

Langkah 3: Perkembangan Masa Depan

Perkembangan Masa Depan
Perkembangan Masa Depan

Mungkinkah berkuasa bateri? Ya, tambahkan PP3 9V yang disambungkan ke pin RAW Nano. Ia biasanya menggunakan 20mA.

Mungkinkah ia digerakkan oleh sel litium tunggal? Saya tidak faham mengapa tidak. Anda harus menyambungkan OLED Vdd dan resistor penariknya ke bateri 3.7V (Saya ragu jika output 3.3V Arduino akan berfungsi dengan baik).

Penjana sapu lebih berguna semasa menguji tindak balas frekuensi penapis jika anda dapat graf amplitud vs frekuensi. Mengukur amplitud isyarat sukar - anda harus menukar kerosakan pengesan sampul surat anda berbanding riak untuk frekuensi rendah dan masa tindak balas untuk frekuensi tinggi. Setelah membina pengesan amplitud anda, anda dapat memasukkan outputnya ke dalam ADC Arduino dari "Generator Isyarat Paling Sederhana" kemudian menghantar hasilnya, bersama dengan frekuensi semasa ke PC.

Halaman ini adalah titik permulaan yang berguna atau cari di Google untuk "pengesan sampul surat" atau "pengesan puncak". Dalam litar yang dicadangkan di atas, anda akan menetapkan frekuensi isyarat, tunggu sehingga stabil, tetapkan pin Arduino A0 ke output digital rendah, tunggu untuk melepaskan C, tetapkan A0 untuk memasukkan, tunggu, kemudian ukur dengan ADC. Beritahu saya bagaimana anda meneruskannya.

Disyorkan: