Penginderaan nA ke mA saat ini

17

Saya perlu merasakan arus MCU target melalui berbagai periode keadaan on / sleep / off dan kemudian perlu mengirim data ini kembali ke antarmuka MCU lain untuk membaca nilainya. Keduanya akan berada di papan yang sama, ditenagai oleh 5 V USB.

Namun ini adalah persyaratan yang saya miliki:

  1. 5 V USB PSU
  2. Harus dapat merasakan arus dalam kisaran nA ke mA dengan akurasi / presisi tinggi. (Saya pikir 1 nA hingga 500 mA)
  3. Hanya mengukur arus MCU target dan bukan antarmuka.
  4. Harus menampilkan maksimal 3,3 V antarmuka MCU

Saya telah melihat opsi yang tersedia dan penguat indera saat ini oleh Texas Instruments tidak dapat merasakan nA karena arus bias yang lebih tinggi. Jadi karena itu saya merasa saya akan membutuhkan penguat presisi.

Namun saya terjebak pada bagaimana untuk melanjutkan ini karena, saya perlu entah bagaimana memiliki rentang arus dinamis otomatis dan saya cukup baru untuk penginderaan saat ini dan saya tidak benar-benar yakin pada semua spesifik.

Andrea Corrado
sumber
10
Anda pada dasarnya berbicara tentang 9 orde magnitudo, atau resolusi 30 bit (bebas noise). Ini sangat tidak sepele.
corecode
Mengapa? Penguatan yang dapat disesuaikan secara manual ... Seperti tiga resistor antara ldo dan 12V: 1R, 100R dan 10k.
Gregory Kornblum
Gregory inilah yang saya pikir, saya telah melihatnya selesai dengan perangkat uCurrent Gold. Apakah akan ada cara untuk secara otomatis menyesuaikan perolehan ini?
Andrea Corrado
1
Jika Anda baik-baik saja dengan mengganti rentang secara manual, itu akan menjadi jauh lebih sederhana. Namun, ini akan gagal segera setelah sistem target Anda melakukan pengalihan mode daya dengan sendirinya. Mencoba menggambar beberapa mA melalui resistor indra 10k akan menurunkan tegangan suplai dan akan mematikan chip.
corecode
1
Apa definisi Anda tentang akurasi dan presisi tinggi? Juga, frekuensi apa yang Anda ukur? Anda memiliki lebih banyak opsi jika Anda dapat meluangkan waktu untuk melakukan beberapa pengukuran terintegrasi daripada jika Anda perlu melakukannya secara real time dengan 5 megasample atau sesuatu yang tinggi seperti itu.
Cort Ammon - Reinstate Monica

Jawaban:

27

TL; DR

Sebuah sirkuit disajikan berdasarkan topologi regulator, stabil ke beban kapasitif apa pun, yang mencakup dioda secara seri dengan arus keluaran. Tegangan yang dikembangkan di dioda ini secara nominal adalah log dari arus, yang memungkinkan rentang arus yang sangat luas diukur dengan rentang tegangan tunggal. Stabilitas dinamis yang sangat baik telah ditunjukkan dalam simulasi.

Pada arus rendah, sirkuit berisik dan lambat (tidak ada kejutan besar). Hasil ini menunjukkan sekitar +/- 5% rms noise pada arus rendah, untuk waktu penyelesaian 10uS untuk arus 1uA dan di atasnya, meningkat ke waktu penyelesaian 1 detik untuk arus turun ke 1nA.

/ TL; DR

Saya kira Anda tidak perlu akurasi tinggi. Anda hanya berpikir Anda melakukannya karena rentang yang sangat besar dari nA hingga 500mA. Jelas +/- 1nA pada 500mA akan membutuhkan akurasi kolosal. Saya menduga bahwa +/- 10% pada 500mA secara bersamaan dengan +/- 10% pada beberapa nA dan rentang tunggal untuk mencakup keduanya tanpa beralih akan berguna.

Pikiran awal, yang saya usulkan sebagai saran pada awalnya, ditampilkan di bagian bawah posting sebagai referensi.

Sayangnya ia memiliki cacat fatal. Meskipun dapat menunjukkan 1nA dengan cukup baik, karena arus yang tiba-tiba meningkat, keluaran opamp pada awalnya tidak bergerak, karena kompensasi internal dan C1. Akibatnya, tegangan output turun lebih dari 1v (diperlukan untuk mendapatkan arus yang mengalir melalui Q1 dan D1) sejenak, yang akan sangat mempermalukan MCU yang dipasok oleh saluran itu.

'Solusi' adalah memasukkan kapasitansi decoupling rel MCU ke dalam analisis. Namun, tambahan C pada jalur MCU memprovokasi ketidakstabilan, karena ia terhubung dengan input pembalik opamp, dan praktis tidak dapat dikompensasi pada rentang luas yang kita inginkan.

Jadi pemikiran selanjutnya adalah 'ini pada dasarnya adalah penguat transimpedansi, meskipun dengan resistor umpan balik yang sangat non-linear, bagaimana mereka stabil?' Pencarian cepat untuk mereka yang membawa saya ke artikel Bob Pease (Nat Semi's RAP, Bob Pease - harus membaca untuk perancang analog mana pun. Jika Anda tidak mengambil hal lain dari jawaban ini, gali dan baca beberapa barangnya!)

Dengan cepat jelas bahwa kapasitansi yang diasumsikan pada simpul pembalik op-amp, meskipun besar dibandingkan dengan pF, sangat kecil dibandingkan dengan 10uF yang mungkin kita temukan pada jalur VCC, dan tweaking berkecepatan tinggi diasumsikan sebagai resistor umpan balik yang konstan, jadi topologi ini bukan pemula.

Jadi saya berpikir, jika kita tidak akan menghapus MCU ketika perubahan saat ini, itu harus berperilaku seperti regulator. Saya ingat masalah tantalum versus kapasitor output keramik LDO. Arsitektur yang mengandalkan setengah ohm ESR dari tantalum menjadi stabil tidak stabil dengan keramik. Ketika topologi diubah untuk mentolerir nol ESR keramik, mereka dapat mentoleransi nilai besar di atas minimum yang ditentukan.

Untuk mengatasi kapasitor output yang besar, ia dirancang untuk menjadi kutub yang dominan, dengan sumber arus keluaran mengubahnya menjadi integrator, menjaga sisa rantai kontrol dengan pergeseran fasa kurang dari 45 derajat. Setelah flip dibuat, kapasitor output dapat berukuran lebih besar, dan LDO akan tetap stabil. Kapasitor output regulator menyediakan semua penahan tegangan selama peristiwa perubahan arus.

Sekarang saya mencari catatan aplikasi LDO. Ini adalah desain baru sebagai hasilnya. Secara luas mirip dengan yang asli dalam konsep DC, tetapi dibangun di sekitar kapasitor output, dan menggunakan trik yang digunakan oleh LDO yang dirancang untuk keramik, untuk mendapatkan stabilitas yang cukup.

masukkan deskripsi gambar di sini

Analisis

Q2 adalah perangkat PNP seri pass, yang dikonfigurasi dengan R2 menjadi output saat ini. Jenis khusus itu adalah 1 Amp, 200 hfe 150, 50v, 400MHz ft bagian kelas memasak yang ada di perpustakaan LTSpice. I1 membiaskannya menjadi 10mA nominal, untuk mengurangi delta V yang diperlukan ketika tiba-tiba diperlukan untuk meningkatkan arus dari nol, dan untuk menyediakan sink arus yang substansial untuk mengatasi pengurangan mendadak pada output saat ini.

D1 adalah teman lama kita elemen non-linear yang melaluinya arus keluaran mengembangkan tegangan log. Saya telah menggunakan 1n4148 seperti di perpustakaan. Ini bergabung dengan R1, untuk menentukan ujung bawah dari kisaran saat ini (10mV untuk 1nA), D3 untuk menangkap tegangan balik ketika arus tiba-tiba berkurang, dan C2 karena meningkatkan stabilitas dan overshoot output. Perhatikan bahwa jika 1N4148 diganti dengan tipe 1n400x yang lebih besar, kapasitansi yang lebih tinggi akan sepenuhnya diserap oleh C2, jadi cukup dimodelkan dengan baik untuk stabilitas.

Saya akan memodelkan TL071. Saya pertama kali mencoba LTC1150 yang memiliki GBW 1,5MHz, tetapi berjuang untuk mendapatkan stabilitas yang masuk akal. Saya kemudian beralih ke LT1022 yang ditunjukkan. Ini sedikit lebih cepat pada 8MHz GBW, tetapi ada banyak bagian yang lebih cepat di sekitar.

Jaringan di sekitarnya mencakup R3 untuk merasakan 0v, C3 untuk stabilitas, dan R4 untuk menambahkan nol ke C3, seperti yang disarankan dalam catatan aplikasi LDO. Dengan nilai-nilai ini, sampai pada tingkat harapan, itu sudah tidak buruk. Saya yakin itu bisa lebih baik dengan sedikit analisis yang tepat. Daripada menggunakan penguat stabil yang lebih cepat namun unity, lebih baik menggunakan satu yang didekompensasi.

Itu pasti terlihat cukup stabil untuk tujuan itu. Siapa pun yang membangun sirkuit ini untuk digunakan dalam kemarahan dapat menemukan lebih banyak parasitika yang tidak dimodernisasi yang mengurangi stabilitas, tetapi saya akan menyarankan mereka mulai dengan amplifier yang lebih cepat untuk memberikan ruang siku yang lebih banyak.

I2 menyediakan pemuatan saat ini bergantung pada waktu untuk demo. Seperti yang dapat Anda lihat dari string parameter, itu mengubah 100pA ke 100mA dengan waktu penelitian 100nS (sehingga mengubah arus dalam satu siklus 10MHz), dan kembali lagi. Diode D2 menyediakan cara yang nyaman bagi simulasi untuk menunjukkan arus log, dan bukan bagian dari sirkuit target.

Saat melakukan simulasi, saya lebih suka memiliki semua 'aksi' sekitar 0v, jadi untuk rel -5, 0v dan + 5v ditunjukkan di sini, baca 0v, + 5v dan + 10v masing-masing untuk aplikasi OP.

Ini adalah plot sementara keseluruhan

masukkan deskripsi gambar di sini

Nilai DC awal dari tegangan output adalah 0,5mV untuk 100pA, dan ketika saya beralih dari 1nA, sekitar 5mV, jadi kami memiliki diskriminasi yang masuk akal pada, dan di bawah, level 1nA.

Ada sedikit overshoot dari nilai pengukuran saat arus meningkat.

Slew tersebut mencapai batas dioda ketika arus berkurang. Ada juga 20mS membaca ekor ketika beralih dari 100mA ke 100pA, saya tidak tahu bagaimana memperbaikinya, mungkin seseorang memiliki saran. Ekor masih ada saat beralih ke 10nA, tetapi saat beralih ke 100nA atau lebih, ekor tidak ada. Untuk aplikasi ini, saya bayangkan tidak apa-apa.

Dalam tiga plot berikutnya, kita melihat semua stabilitas tegangan rel keluaran penting.

Meningkat dari 100pA menjadi 100mA

masukkan deskripsi gambar di sini

Transient rel yang naik hanya 12mV, dan beat mati. Anda tidak akan menemukan banyak LDO komersial memberikan kinerja semacam itu untuk perubahan saat ini yang kejam.

dan dalam perjalanan kembali lagi ke 100pA

masukkan deskripsi gambar di sini

Tanpa D3 untuk menyediakan konduksi terbalik, Vmeas akan berayun ke rel -ve untuk sementara waktu daripada ke -0.6v.

masukkan deskripsi gambar di sini

Transien kereta api down-going juga terbatas pada 12mV. Anda dapat melihat laju perubahan ke bawah yang terbatas yang merupakan hasil dari sink I1 saat ini.

Saya tidak akan mengatakan itu adalah bukti prinsip, tetapi saya pikir itu adalah bukti yang sangat masuk akal. Simulasi mencakup banyak parasit, Q2 Miller C, kompensasi opamp, dan dengan kinerja menyaingi LDO, saya pikir itu adalah dasar yang cukup bagus untuk mulai mengembangkan sesuatu yang dapat menggerakkan MCU, pada arus yang berbeda, membaca lebih besar jarak.

Ini menunjukkan Vmeas sebagai output. Seperti ditunjukkan dalam posting asli, akurasi termal akan ditingkatkan jika diukur sehubungan dengan dioda lain pada suhu yang sama. Vmeas adalah output impedansi rendah, jadi ini sangat mudah dilakukan dengan penguat diferensial sederhana.

Seperti sebelumnya, mengganti R1 dengan resistor nilai yang lebih rendah akan memberikan output kisaran linier yang lebih akurat, untuk voltase yang tidak dilakukan D1.

Masalah kebisingan

Sekarang sirkuit stabil telah dikembangkan, kita dapat mulai melihat noise. Grafik berikut menunjukkan keuntungan dari input op-amp, dengan kapasitor 1nF dipasang pada C2. Kurva mencakup 100pA hingga 100mA. Kurva 100pA dan 1nA tidak dapat dibedakan dengan warna biru cerah, dan sangat dekat dengan kurva 10nA merah. 1uA berwarna merah muda, 1mA berwarna biru tua, kurva 100mA paling rendah ungu.

masukkan deskripsi gambar di sini

Menggunakan simulasi .noise LTSpice, dan menggunakan .meureure untuk mengintegrasikan kebisingan keluaran melalui bandwidth 10mHz ke 10MHz, menggunakan kapasitor 33nF untuk C2, menghasilkan kebisingan rm 2mV yang relatif konstan untuk arus 1nA hingga 100uA, dengan derau yang turun saat arus meningkat ke sekitar 100uV rms pada 100mA.

Penalti peningkatan nilai C3 meningkat waktu penyelesaian setelah langkah pengurangan arus. Waktu dalam 1mV dari nilai akhir adalah sekitar 10mS hingga 1uA, 60mS hingga 100nA, 500mS hingga 10nA, dan 900mS hingga 1nA.

Op amp sekarang, LT1022, mengklaim beberapa 10 nV pada 1kHz. Artikel penguat transimpedansi Bob Pease yang disebutkan sebelumnya menunjukkan bahwa 3nV layak dengan input FET rendah saat ini, menggunakan FET rendah noise diskrit sebagai ujung depan penguat komposit. Menggunakan opamp yang lebih baik harus mengurangi tingkat kebisingan dengan urutan besarnya.

Ini adalah saran asli, untuk referensi.

skema

mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab

Opamp akan mengalirkan arus melalui Q1 dan D1 untuk menjaga tegangan output pada 5v, sehingga MCU Anda selalu melihat tegangan operasi yang benar.

Tegangan yang Anda ukur antara kedua dioda sebanding dengan log dari rasio arus D1 ke arus D2. Meskipun Anda dapat bekerja dengan tegangan pada D1 saja, itu tergantung suhu. Metode ini menggunakan D2 untuk mengkompensasi ketergantungan itu.

Neil_UK
sumber
Ambil op-amp dengan kerapatan tegangan derau yang sangat baik, yaitu 1 nV per sqrt (Hz) dan bandwidth 10 kHz (agar sesuai dengan pulsa pengukuran arus yang diambil oleh MCU). Tegangan noise pada output akan menjadi 30 RMS nV aneh dan ini di atas 100 Hz (biasanya). Pada 1 Hz itu akan menjadi microvolts of noise jadi bagaimana Anda bisa mengatakan rangkaian ini bekerja ke 1nA dengan tingkat akurasi yang terhormat? Maka Anda harus melihat perolehan suara OP-AMP. NG akan menjadi substansial mengingat sifat beban (impedansi rendah). Saya belum downvoted BTW.
Andy alias
1
@Andyaka tidak yakin apa yang ingin Anda sampaikan di sini Andy. Ini membaca log. Katakanlah kita memiliki kebisingan 1mV, perkiraan yang terlalu besar, daripada microvolt yang Anda khawatirkan. Saya baru saja mengukur 1N4007, dan sekitar 100mV per dekade saat ini (317mV pada 1uA, 599mV pada 1mA, 909mV pada 1A), jadi 1mV kebisingan adalah satu centi-dekade, atau sekitar +/- 2,3%, baik di dalam WAG saya untuk akurasi 10%. Lebih penting lagi adalah bahwa 300mV pada 1uA memproyeksikan turun ke 100nA / 200mV, 10nA / 100mV dan 1nA untuk bias nol, jadi ada sesuatu yang akan memberikan tempat pada arus yang cukup rendah. Terima kasih atas kontribusi Anda.
Neil_UK
1
Diedit jawaban untuk memasukkan tegangan rendah / rezim arus rendah.
Neil_UK
Sirkuit yang rapi. Akankah kebocoran arus dari jembatan mempengaruhi banyak hal?
TLW
Pengukuran IN4007 saya baru-baru ini menyarankan kebocoran sekitar 1nA di sekitar nol volt, saya kira jembatan 1A tipikal akan menggunakan silikon yang serupa.
Neil_UK
3

Harus dapat merasakan arus dalam kisaran nA ke mA dengan akurasi / presisi tinggi. (Saya pikir 1 nA hingga 500 mA)

Dan....

Saya perlu merasakan arus MCU target melalui berbagai periode keadaan on / sleep / off

OK dengan asumsi Anda akan menempatkan nilai resistor kecil di feed daya, resistor itu tidak boleh "drop" lebih dari (katakanlah) 0,1 volt pada 500 mA. Jika benar-benar menjatuhkan tegangan yang signifikan, maka Anda membahayakan pengukuran dan mungkin menyebabkan perangkat target beroperasi pada tegangan yang terlalu rendah.

Jadi, 500 mA dan 0,1 volt memerlukan resistor bernilai 0,2 ohm. Sekarang, resistor yang diberi makan 1 nA akan menghasilkan tegangan pengukuran 0,2 nV.

Apakah Anda melihat masalah pertama? Sebenarnya tidak ada teknologi yang murah dan dapat diandalkan yang dapat melakukan ini karena op-amp apa pun akan memiliki noise secara signifikan lebih besar daripada apa yang Anda coba ukur dan, mengingat bahwa Anda tampaknya ingin melakukan pengukuran dinamis, bandwidth yang dibutuhkan Anda mungkin puluhan. kHz dan Anda hanya akan mengukur kebisingan!

EDIT - pertimbangan log amp

  1. Dengan asumsi bandwidth noise 10 kHz (sekitar 7 kHz bandwidth bandwidth untuk mengukur secara memadai perubahan arus target), berarti bahwa op-amp dengan 1 nV / sqrt (Hz) noise noise memiliki setara dengan 100 nV RMS pada saat itu. input non-pembalik. Sebuah op-amp dengan nilai kebisingan yang rendah ini benar-benar binatang buas dan hadir dengan sejumlah masalah lain yang akan mengganggu desain ini.
  2. Menggunakan dioda dalam loop umpan balik terlihat menarik tetapi pada putaran sekitar 100 nA dikirim ke beban, ia mungkin memiliki 300 mV di atasnya. Sebagai impedansi, ini mengatur gain noise dari rangkaian op-amp. Jadi, 300 mV / 100 nA adalah resistansi dinamis 3 Mohms dan nilai resistansi ini hanya akan meningkat karena arus suplai turun di bawah 100 nA yaitu hal-hal akan menjadi lebih buruk pada arus yang lebih rendah.
  3. Resistansi itu (resistansi dinamis dari dioda dalam sirkuit umpan balik), bersama dengan impedansi dinamis dari beban, menghasilkan penguatan derau di sirkuit op-amp, jadi, jika impedansi dinamis dari beban adalah 1 ohm maka gain derau adalah 3.000.000 (dengan asumsi op-amp dapat mengirimkan loop terbuka ini).
  4. Bunyi input op-amp (seperti yang disebutkan di atas) adalah 100nV RMS atau (menggunakan 6 sigma), 600 nV hal. Setengah dari ini akan dibuang karena dioda memblokirnya sehingga meninggalkan 300 nV yang diperkuat oleh 3.000.000 dan karenanya berpotensi menghasilkan tegangan puncak 0,9 volt.
  5. Ini adalah tegangan noise "potensial" yang dapat dilihat pada output log-amp. Namun, jika noise tegangan naik di atas 300 mV maka impedansi dinamis dioda turun dari 3 Mohm dan gain berkurang dan, hasilnya semua adalah bahwa tegangan noise puncak mungkin akan menemukan level puncak pada sekitar 400 mV maksimum. Namun, hingga saat itu (0 nA hingga 100 nA) semua taruhan tidak aktif untuk mendapatkan pengukuran yang layak.

Jika impedansi dinamis dari beban adalah 10 ohm (bukan 1 ohm) maka itu adalah cerita yang berbeda tetapi apakah ini mungkin terjadi mengingat kemungkinan tutup 100 nF pada rel daya dan kemungkinan adanya nilai yang lebih tinggi.

Betapa sulitnya menemukan op-amp dengan sumber suara tegangan rendah yang memiliki arus gangguan input sangat rendah? Juga ingat bahwa untuk sebagian besar op-amp, tegangan noise secara dramatis meningkat ketika frekuensinya turun di bawah (sekitar) 100 Hz jadi ini adalah masalah nyata.

Jadi, untuk membuat log-amp bekerja, bandwidth harus dibatasi secara signifikan tetapi apakah ini memberi OP kesempatan untuk mengukur perubahan dinamis saat ini secara memadai ketika (katakanlah) target MCU menjalankan rutinitas yang berbeda?

Andy alias
sumber
1
Membaca OP, saya pikir dia tidak melihat masalah, dengan komentar seperti 'otomatis mulai' dan sejenisnya. Jangan Anda pikir pertanyaan retoris Anda agak menggurui, terutama karena Anda tidak memberinya rute untuk solusi.
Neil_UK
@ Neil_UK Saya tidak melihat solusi (bukan milik Anda) kecuali disediakan lebih detail tentang bandwidth menjadi sangat terbatas. Jika saya datang sebagai pelindung maka, pada kesempatan khusus ini, itu adalah Anda salah membaca saya.
Andy alias
Saya melihat ide Neil sangat baik. OP ditugaskan untuk memantau status daya MCU, tetapi persyaratannya tidak selaras dengan spesifikasi tugas, yang telah menyebabkan rentang yang tidak masuk akal. Dalam praktiknya, Anda memerlukan waktu respons cepat hanya ketika MCU dalam mode aktif, dan mengkonsumsi mAmps. Ketika tidur, tidak ada yang peduli seberapa cepat ia beralih dalam kisaran nA, dan karenanya bandwidth dapat dikurangi menjadi nol. Apa yang diperhatikan orang dalam mode ini apakah MCU memang memasuki kondisi daya rendah, dan apakah ada bug desain / perangkat lunak yang tidak membiarkan MCU mencapai target daya.
Ale..chenski
@AliChen jika Anda tidak berbicara atas nama OP maka saya sarankan agar Anda tidak mencoba dan 2 tebak situasinya.
Andy alias
@Andy: Saya hanya berbicara dari pengalaman. Pertimbangkan komentar saya di atas sebagai pertanyaan untuk OP, dan izinkan saya untuk membuang saran Anda.
Ale..chenski
0

Selama Anda tidak perlu beralih cepat dari gain. Anda dapat melakukan rangkaian opamp TIA dengan relay yang digunakan untuk mengalihkan resistansi umpan balik saat Anda mencapai ujung atas dan bawah rentang. Mendapatkan di atas ~ 10-30 mA sulit untuk opamp khas sehingga kisaran tinggi perlu sedikit lebih banyak pemikiran. Apakah Anda perlu merasakan arus bipolar?

George Herold
sumber
0

Mengukur arus dalam rentang yang luas tanpa kehilangan presisi yang signifikan membutuhkan rangkaian sensor arus dengan resistansi yang dapat disesuaikan. Biasanya itu adalah satu set resistor dengan nilai yang berbeda dipasangkan dengan FET atau hanya transistor FET yang terhubung secara seri. Sirkuit ini digerakkan oleh loop umpan balik: ketika arus yang diukur berubah, nilai-nilai resistor di-switch dari tegangan gerbang FET diatur. Agilent mengimplementasikan metode yang terakhir di beberapa catu daya mereka.

John Doe
sumber