Cara praktis untuk mendapatkan plot Bode untuk sirkuit yang tidak diketahui

11

Saya ingin menggunakan metode praktis / cara di mana saya dapat memperoleh kira-kira plot Bode dari suatu sistem terutama filter. Ini tentu saja dapat dilakukan dengan menggunakan matematika kompleks atau menerapkan rangkaian dalam simulator SPICE. Tetapi ini membutuhkan mengetahui diagram sirkuit dan parameter yang tepat dari setiap komponen.

Tapi bayangkan kita tidak tahu diagram rangkaian filter dalam kotak hitam, dan kita tidak punya waktu atau kemungkinan untuk mendapatkan model rangkaian juga. Yang berarti kita memiliki filter dan kita hanya memiliki akses ke input dan outputnya. (Saya juga mengecualikan gagasan memperoleh fungsi transfer filter dengan menerapkan impuls pada inputnya, saya kira ini tidak praktis (?))

masukkan deskripsi gambar di sini

Tetapi jika kita memiliki osiloskop dua saluran dan generator fungsi, kita dapat melihat input dan output filter untuk input sinusoidal tertentu.

Dengan menggunakan generator fungsi, kita misalnya dapat mengatur input sebagai sinusoidal 1Hz dengan 10mV pk-pk atau menyebutnya Vin. Dalam hal ini kita dapat memiliki output V1 pk-pk dengan pergeseran fasa ϕ1. Kami mengulangi hal yang sama dengan mengatur input kali ini sebagai sinusoidal 10Hz dengan lagi Vin pk-pk. Dalam hal ini kita dapat memiliki output V2 pk-pk dengan pergeseran fasa ϕ2. Jadi dengan menjaga amplitudo Vin yang sama dan meningkatkan frekuensi secara sama kita dapat memperoleh beberapa poin sebagai:

Vin f1 ---> V1, f1, ϕ1

Vin f2 ---> V2, f2, ϕ2

Vin f3 ---> V3, f3, ϕ3

...

Vin fn ---> Vn, fn, ϕn

Ini berarti kita dapat merencanakan Vn / Vin sehubungan dengan fn; dan kita juga bisa menggambar ϕ n sehubungan dengan fn. Dengan demikian kita dapat memperoleh plot Bode secara kasar.

Tetapi metode ini memiliki beberapa kelemahan. Pertama-tama karena ini akan direkam dengan pena dan kertas saya tidak dapat meningkatkan fn dengan interval kecil. Ini terlalu banyak waktu. Masalah lain yang paling penting di sini adalah membaca amplitudo dan pergeseran fasa secara akurat di layar osiloskop.

Pertanyaan saya adalah : Dengan asumsi kita juga memiliki sistem akuisisi data berbasis PC, apakah ada cara yang praktis dan lebih cepat untuk mendapatkan titik plot Bode untuk kedua amplitudo dan pergeseran fasa secara kasar? (Poin dapat diperoleh sebagai amplitudo dan fasa bergeser atau satu kompleks tunggal) nomor juga)

pengguna16307
sumber
Gunakan penganalisa jaringan, ada model oleh Keysight, instrumen AP, Venable, dll. Yang secara otomatis akan menyapu frekuensi dan plot gain / fase atau plot Nyquist. Anda dapat menautkan ini ke PC untuk mengotomatiskan proses dan mengunduh poin data.
John D
1
Tidak pernah menggunakan dan saya tidak punya. Mereka sangat mahal. Tetapi terima kasih telah menyebutkan metode yang tepat.
user16307
Saya mendapat alat analisa sinyal dinamis HP 3562A seharga $ 400 di ebay. Ini hanya baik untuk 100kHz, tetapi untuk laboratorium rumah saya sudah cukup baik. Ada juga opsi untuk menyewa instrumen untuk waktu yang singkat. Anda bisa membuatnya sendiri dengan generator sinyal yang dikendalikan komputer dan sistem akuisisi data, tetapi waktu yang dibutuhkan untuk melakukannya dengan benar mungkin membuat membeli unit yang tidak terlihat seperti barang murah.
John D
Apa yang Anda maksud dengan "sistem akuisisi data PC"? Nomor model akan memberi tahu kami kemampuan apa yang Anda miliki.
The Photon
Dan band frekuensi apa yang menurut Anda bisa ditutup oleh filter Anda? Jawaban akan berbeda untuk 100 Hz dan 100 MHz.
The Photon

Jawaban:

1

Anda dapat menggunakan peralatan DAQ Anda untuk menyuntikkan beberapa sinyal input dan kemudian menangkap sinyal output, mengumpulkan semua data dalam tabel / matriks.

Bab yang tepat dari pemrosesan sinyal adalah identifikasi / estimasi sistem. Berbagai metode, kuadrat terkecil rekursif banyak digunakan. Anda perlu menyuntikkan sinyal seperti itu yang tidak dapat diulang dari waktu ke waktu, karena algoritma apa pun harus membedakan bagian mana dari sinyal eksitasi yang menyebabkan bagian mana dari respons keluaran. Oleh karena itu sinyal eksitasi harus menghasilkan hasil dari satu pulsa jika berkorelasi otomatis, ini juga berarti bahwa korelasi antara sinyal input dan output akan memberikan puncak yang tepat (terkunci).

Sinyal tersebut dinamakan PRBS (Pseudo Random Binary Sequence). Anda dapat menyuntikkan yang ini, kemudian menggunakan alat identifikasi sistem yang tersedia dengan menghitung (dan menghubungkan) koefisien sistem.

Marko Buršič
sumber
0

Dari apa yang Anda katakan, taruhan terbaik Anda mungkin adalah pengukuran waktu-domain transmisi (TDT).

Ini mirip dengan pengukuran reflectometry (TDR) domain waktu yang sudah diketahui, tetapi Anda mengukur karakteristik transmisi perangkat yang sedang diuji (DUT) alih-alih karakteristik refleksi.

Sistem DAQ yang Anda tautkan dalam komentar memiliki sampel 50.000 sampel per detik, tetapi karena pita frekuensi Anda adalah 0 - 1 kHz, ini cukup untuk menguji perangkat Anda. Anda dapat menggunakan saluran keluaran digital (mungkin dilemahkan) untuk menghasilkan stimulus. Keakuratan pengukuran mungkin tergantung pada seberapa konsisten jam pengambilan sampel DAQ.

Pada dasarnya Anda menerapkan fungsi input langkah ke DUT dan mengukur output dengan osiloskop. Juga mengukur sinyal input dengan sampler yang sama. Kemudian lakukan transformasi fourier pada sinyal input dan output dan bagi satu dengan yang lain untuk mendapatkan respons frekuensi. Anda akan ingin belajar dan bereksperimen sedikit untuk memilih fungsi windowing yang baik ketika melakukan transformasi.

1/f

Foton
sumber
Di luar ruang lingkup saya untuk mengimplementasikannya. Tetapi bagaimana jika saya melakukan ini saya menulis dalam kutipan: "Saya menerapkan impuls pada input oleh generator fungsi dan saya mencatat respon domain-waktu dari filter menyebutnya h (t) oleh perangkat dataq pada sampling 12kHz. Saya kemudian ambil transformasi Laplace h (t) di MATLAB dan dapatkan H (s). Dari H (s) saya dapat merencanakan respons magnitudo dan fase. " Apakah menurut Anda cara ini masuk akal?
user16307
Itu tergantung seberapa baik impuls yang dapat dihasilkan oleh generator fungsi Anda. Untuk pengukuran 1 kHz, kemungkinan akan berfungsi. Anda masih ingin mengukur input serta output untuk mengkalibrasi secara kasar segala keterbatasan respons dari sumber sinyal dan DAQ Anda.
The Photon
Siklus kerja minimum dari generator fungsi adalah 10% Jadi itu bukan impuls melainkan pulsa. Apakah input langkah semacam ini memberikan hasil yang kasar?
user16307
Saya akan mengaturnya menjadi gelombang persegi periode yang sangat panjang (katakanlah 0,1 atau 0,01 Hz). Kemudian sinkronkan DAQ untuk menangkap setengah siklus dengan tepi naik di tengah interval tangkapan dan tidak ada tepi lain dalam tangkapan. Resolusi frekuensi akan terkait dengan 1 / T di mana T adalah total durasi interval tangkapan.
The Photon
Bagaimana dengan menerapkan input langkah seperti ini: lpsa.swarthmore.edu/Transient/TransInputs/TransStep/img12.gif Dan karena input langkah Laplace adalah 1 / s. Dan mendapatkan H (s) = L {f} (s) * s? (f (t) menjadi respons terekam dalam domain waktu)
user16307
0

Dapatkah generator fungsi Anda dikendalikan oleh komputer? Misalnya GPIB

Bisakah osiloskop Anda berbicara dengan komputer?

Jika demikian, Anda mungkin dapat mengotomatiskan alur kerja yang ada.

τεκ
sumber
0

Yah saya punya masalah yang sama, bagaimana membuat Bode plotter praktis yang dapat digunakan untuk analisis loop tertutup tanpa menghabiskan banyak uang. Saya telah mengumpulkan sistem dasar yang mencakup 10Hz hingga 50KHz yang mencakup kebutuhan sederhana saya, frekuensi menyapu, dan plot mendapatkan dan fase bersama pada CRT.

Ini menggunakan dua peralatan anggaran yang agak usang tetapi masih berguna, dan antarmuka yang sederhana di antara keduanya. Item pertama adalah meter fase penguatan HP 3575A yang Anda harus dapat mengambil untuk beberapa ratus dolar. Ini memiliki dua saluran identik yang bekerja dari 1Hz hingga 13Mhz dengan kisaran dinamis sekitar +/- 50dbdb (rentang dinamis 200uV hingga 20V rms setiap saluran), dan dapat mengukur fase secara terus menerus dengan sedikit lebih dari 360 derajat. Ini memiliki pembacaan digital pada panel depan dengan resolusi 0,1db dan 0,1 derajat dan output dc tersedia secara eksternal di belakang. Itu adalah ukuran saya "ujung depan".

Peralatan lain dengan model yang sama adalah model penganalisa spektrum HP 3580A yang bekerja dari nol hingga 50 KHz dan memiliki output generator lacak. Anda dapat mengambil salah satu dari ini untuk mungkin lima ratus dolar jika Anda beruntung. Ini memiliki satu memori digital, sehingga Anda dapat menyimpan satu bentuk gelombang sambil mengukur yang lain untuk perbandingan langsung. Juga mampu mengendarai pen plotter jenis servo kuno, meskipun saya tidak menggunakan fitur itu.

Bagaimanapun, output generator pelacakan (2v rms) akan menjadi sumber frekuensi sapuan untuk apa pun yang Anda uji. Sekarang masalahnya adalah pengukur gain / fase mengeluarkan tegangan dc, dan penganalisa spektrum mengharapkan untuk melihat sinyal ac dari frekuensi persisnya menyapu.

Itu bisa diatasi dengan menggunakan pengali analog. Satu input pengali didorong dari generator pelacakan. Input pengali lainnya dengan voltase dc dari gain / fase meter setelah sedikit penskalaan. Keluaran pengali masuk ke input penganalisis spektrum.

Nilai Dc dari gain / phase meter mengontrol amplitudo rf yang keluar dari pengali dan karenanya amplitudo ditampilkan pada penganalisis spektrum saat menyapu frekuensi.

Ketika diatur untuk skala vertikal linier (bukan db), penganalisa spektrum akan memplot baik gain versus frekuensi (dalam db), atau fase versus frekuensi sebagai defleksi vertikal di atas baseline. Konversi db ke voltase dilakukan dalam meter penguatan / fase, penganalisis spektrum dijalankan dalam mode linear langsung.

Frekuensi perlu disapu dua kali dengan satu jejak disimpan dalam memori. Kemudian Anda menekan satu sapuan lagi, dan mendapatkan sinyal lainnya di layar dan Anda kemudian dapat melihat gain dan fase bersama.

Satu-satunya batasan nyata adalah bahwa skala frekuensinya linier, bukan logaritmik, tetapi jika Anda hanya benar-benar tertarik pada satu dekade tertentu, ini adalah sesuatu yang segera dapat Anda lakukan. Lakukan sapuan pita yang sangat luas terlebih dahulu, kemudian lakukan sapuan lain atas bagian yang paling menarik untuk diperluas.

Untuk resolusi yang lebih tinggi dari pembacaan fase, frekuensi, dan margin keuntungan, HP3580A memungkinkan penyetelan frekuensi manual, jadi Anda hanya menyetel untuk kenaikan 0dB, dan membaca fase langsung dari meter fase ke resolusi 0,1 derajat. Kemudian Anda dapat secara manual menyetel untuk fase -180 derajat, dan membaca margin keuntungan dari tampilan digital dengan resolusi 0,1 db, pembacaan frekuensi digital adalah resolusi 1Hz.

Jejak pada CRT kecil, tetapi memberikan indikasi yang sangat baik dari keseluruhan bentuk, dengan 10db per divisi, dan 45 derajat per divisi secara vertikal. Dan pembacaan digital memberikan semua resolusi yang Anda inginkan pada titik tertentu yang menarik pada kurva.

Ini sistem anggaran nyata, dan sedikit Mickey Mouse, tetapi ini adalah alat yang sangat berguna yang memungkinkan saya untuk melakukan hal-hal yang tidak pernah bisa saya lakukan sebelumnya. Dan itu cukup mudah untuk menyatukan semuanya.

Dua saluran input pada penguatan / fase meter 3575A memungkinkan pengukuran loop tertutup dari catu daya switching, dan transformator arus 1000: 1 frekuensi rendah membuat transformator injeksi berbiaya rendah dari generator pelacakan.

Saya mencoba beberapa transformator arus yang berbeda sebelum saya menemukan transformator yang terlihat benar-benar rata dengan penurunan hanya sekitar setengah persen pada 50KHz.

Tony
sumber
0

Apa yang Anda cari disebut System Identification. Ini dapat dilakukan dengan berbagai cara, tetapi idenya tetap sama: Terapkan input, ukur respons, kerjakan data / matematika untuk mendapatkan fungsi transfer / plot pertanda. (Versi sederhana: ambil transformasi fourier dari input dan output, dan bagi untuk mendapatkan fungsi transfer)

Biasanya masalahnya adalah sinyal apa yang 'diizinkan' tanpa merusak 'kotak hitam' (instalasi). Oleh karena itu, pengukuran dapat dilakukan Loop terbuka, atau loop tertutup, dan seseorang dapat bermain dengan sinyal input.

Paling banyak digunakan dalam sistem kontrol adalah menerapkan white noise (karena berisikan semua frekuensi, dan jauh lebih mudah dihasilkan daripada impuls atau langkah sempurna)

Kemungkinan lainnya adalah misalnya sinyal multisin, sehingga Anda dapat memiliki kontrol lebih besar pada jenis sinyal apa yang Anda terapkan pada instalasi.

Cobalah membaca identifikasi sistem atau bermain-main dengan kotak alat identifikasi sistem Matlab.

Arjo van der Ham
sumber
0

Meskipun semua jawaban sebelumnya benar, metode yang selalu saya gunakan tidak ada: (Vector) Network Analyzer.

Ini pada dasarnya melakukan apa yang Anda gambarkan sebagai "membosankan" tetapi secara otomatis menggunakan gelombang EM: Osilator yang disapu menghasilkan gelombang yang dikirim melalui DUT. Ini kemudian mengukur daya yang dipantulkan dan daya yang ditransmisikan melalui DUT. Ini memberi Anda S-parameter. S21 sesuai dengan fungsi transfer ac.

Dalam VNA yang khas, Anda dapat mengatur frekuensi mulai dan berhenti, penskalaan sumbu (log vs lin), rata-rata dan smoothing untuk tingkat daya rendah, bagian nyata dan imajiner serta besaran dan fase.

PS: Saya baru saja melihat bahwa John sudah mendaftarkan Network Analyzer sebagai komentar. Tidak melihat itu sebelumnya.

divB
sumber
S21
0

Cara tercepat, paling praktis dan paling kuat yang saya ketahui adalah dengan menggunakan Best Linear Approximation (BLA). Ini adalah metode yang bekerja dengan sirkuit linier dan nonlinier . Satu-satunya asumsi tentang sistem adalah:

  • DUT adalah "periode dalam periode yang sama keluar". Jadi sinyal output dengan setengah frekuensi tidak akan berfungsi.

Ia bekerja sebagai berikut:

  1. u(n)y(n)
  2. m
  3. Anda menerapkan eksitasi acak ke sistem.
  4. Anda dapat menghitung plot pertanda untuk realisasi ini menggunakan transformasi Fourier dari input dan output yang diukur.

    H^i(jω)=1nkYki,meas(jω)1nkUki,meas(jω)

    Skema

    (Anda juga dapat menghitung noise pengukuran pada saat ini).

  5. m=1
  6. Anda kemudian dapat menghitung perkiraan linier terbaik:

    H^BLA(jω)=1mi=1mH^i(jω)

Perilaku nonlinear akan muncul sebagai "noise" pada spektrum yang diukur. Satu-satunya perbedaan adalah konsisten, tidak seperti noise nyata. Inilah sebabnya mengapa banyak kegembiraan diperlukan untuk mengacak itu juga. Rata-rata mereka akan memberi Anda plot pertanda sistem linear , yang paling baik menggambarkan gambaran lengkap.

Perhatikan bahwa mengubah daya input juga akan mengubah BLA, properti sistem nonlinear. Itu selalu terbaik untuk memilih eksitasi yang mirip dengan aplikasi kehidupan nyata.

Sven B
sumber
0

Jika ini benar-benar kotak hitam, Anda tidak hanya harus mengukur karakteristik transfer perangkat, tetapi juga mengukur impedansi input dan output. Anda mungkin juga perlu mengukur fungsi transfer terbalik. Kebutuhan akan pengukuran ini ditentukan oleh input dan output dari perangkat yang terhubung ke kotak hitam ini.

BHS
sumber