Butuh bantuan untuk menghilangkan noise yang dihasilkan LED

13

Saya sangat baru di bidang elektronik, ke electronics.SE.com dan ini adalah proyek pertama saya, jadi ikut saya jika pertanyaan saya melewatkan beberapa informasi kunci (dalam hal ini, tinggalkan komentar dan saya akan mencoba menambahkan yang hilang bit).

Saya telah membangun perangkat yang mengontrol sekitar 500 LED di 106 saluran yang berbeda. Secara substansial desainnya adalah:

  • 1 beralih catu daya 24V 3A
  • 1 regulator tegangan yang menghasilkan 5V
  • 1 papan kontrol yang menjalankan AVR ATmega168 (terhubung ke regulator tegangan)
  • 106 string LED (terhubung ke power rail 24V)
  • 7 TLC5940 (masing-masing 16 saluran) menenggelamkan driver untuk string LED (ini menenggelamkan sisa 24V dari LED, tetapi logikanya didukung oleh regulator 5V).

Semuanya berfungsi dengan baik, tetapi saya mengalami masalah besar dengan kebisingan yang terkadang memicu reset perangkat saya yang tidak terduga .

Terima kasih kepada teman yang memiliki DSO, saya dapat menyelidiki masalah ini dan ini adalah temuan saya ...

Kebisingan pada power rail 5V dan cukup besar, ayunan keseluruhan 2.55V. Semua saluran SPI relatif tidak terpengaruh:

Bentuk kebisingan dan amplitudo

Kebisingan tampaknya dihasilkan oleh LED , bukan oleh data transmisi SPI (tidak ada korelasi yang jelas antara salah satu saluran SPI dan kebisingan). Dalam video ini (maaf, tidak dapat menemukan cara untuk menanamkannya di sini) Anda dapat melihat bahwa jumlah LED yang AKTIF mempengaruhi amplitudo suara, sedangkan intensitasnya (dikontrol melalui PWM) memengaruhi panjang suara " burst "[lebih detail tentang deskripsi video di youtube].

Frekuensi noise adalah ~ 8MHz , yang merupakan frekuensi yang tidak saya gunakan (setidaknya tidak secara eksplisit), mengingat bahwa papan pengontrol saya berjalan pada 16MHz dan SPI saya di 250KHz.

frekuensi kebisingan

Saat melakukan percobaan, saya menyadari bahwa DSO menangkap suara bahkan ketika hanya terminal ground dari probe yang terhubung. Saya menafsirkan ini sebagai tanda bahwa kebisingan bukan karena ketidakstabilan umpan 5V, tetapi karena potensi osilasi dari permukaan tanah . Apakah saya benar?

Menjadi benar-benar baru di bidang elektronik dan tidak memiliki pengetahuan formal di bidang ini, saya mencoba sejumlah solusi "dari Internet", tanpa diakui 100% mereka masuk akal sepenuhnya dalam skenario saya. Di antara yang lain saya mencoba:

  • untuk membangun filter low-pass menggunakan resistor 1Kohm dan kapasitor 100nF dan meletakkannya di power rail 5V, tetapi kebisingan tidak banyak berubah dalam amplitudo.
  • untuk memisahkan 5V rail dengan berbagai kapasitor yang berbeda termasuk beberapa yang tantalum [berbagai peringkat] (tidak ada efek yang terlihat)
  • untuk memisahkan garis tanah (membuat DSO go pisang)
  • untuk menghubungkan LED, papan TLC dan DSO ke berbagai bagian sirkuit saya, termasuk sejauh mungkin "(yaitu menghubungkannya dengan kabel terpisah ke port ground dari 24V PSU untuk menghindari loop ground) ... tetapi juga dalam hal ini saya tidak beruntung.

Mungkin saja saya melakukan hal di atas dengan cara yang salah (yaitu bahwa solusinya adalah salah satu di atas, tetapi saya salah mengimplementasikannya) jadi - jika Anda merasa solusinya adalah di atas, jangan ragu untuk memberi tahu itu, mungkin memberi saya arahan tentang bagaimana menerapkannya "benar".

Catatan akhir: karena ukuran fisik proyek saya, saya melakukan semua pengujian hanya dengan menggunakan satu papan TLC yang saya lepaskan dengan hati-hati dari rig dan menggunakan beberapa uji LED individual yang ditenagai oleh sumber 5V. Namun tes yang kurang akurat pada rig penuh menunjukkan bahwa perilaku dalam "hal yang nyata" konsisten dengan pembacaan tes.

Terima kasih sebelumnya atas waktu dan dukungan Anda!

Mac
sumber

Jawaban:

16


μμ

stevenvh
sumber
1
Terima kasih atas jawaban ini. Beberapa reaksi: papan pengontrol (AVR) harus dipisahkan dengan benar, tetapi waktu berikutnya saya di teman saya akan memeriksa dengan lingkup di sana juga. Akan mencoba saran Anda untuk memisahkan input daya TLC juga. Namun saya telah terkejut dengan komentar Anda "mereka harus menyediakan banyak daya" karena memang kekuatan tipikal mereka adalah 16mA [mereka hanya menenggelamkan 24V] ... apakah saya salah paham apa yang Anda coba katakan kepada saya? Akan melaporkan kembali hasil ini tetapi mungkin perlu beberapa minggu sebelum saya dapat kembali ke ruang lingkup teman saya. Untuk saat ini: tnx untuk balasan cepat Anda! :)
mac
3
@ Mac - tentang kekuatan TLC: salahku, aku pasti salah menafsirkan datasheet dan berpikir itu bersumber dari arus LED. Bagaimanapun, PWM mengendalikan 500 LED sangat berat pada catu daya (24V) Jadi sebenarnya ini yang perlu dipisahkan dengan baik. Maaf bila membingungkan.
stevenvh
Ok, sekarang sudah jelas. Saya masih tidak mengerti (ada pointer ke beberapa halaman di intertubes?) Mengapa decoupling feed LED (24V) akan mengurangi kebisingan pada feed TLC (5V). Mengingat bahwa 5V berasal dari regulasi 24V yang diaktifkan, saya akan berharap bahwa dengan ruang kepala 19V, 5V akan dijamin akan "stabil" bahkan dengan ayunan yang besar di rel 24V ... atau apakah saya salah mengerti bagaimana decoupling akan membantu chip?
mac
3
@ Mac - Simon menceritakan tentang kabel panjang antara 24V PS dan LED. Mengingat bahwa LED diaktifkan pada frekuensi tinggi, Anda membangun antena yang indah untuk mentransmisikan frekuensi tinggi ini dan itu mungkin yang diambil oleh 5V PS, jadi dipancarkan, tidak dilakukan. Tetapi bahkan EMI yang dipancarkan dapat ditekan dengan kapasitor decoupling, kecuali dalam kasus di mana Anda tidak dapat memisahkan, seperti di dalam IC analog, misalnya.
stevenvh
Terima kasih untuk ini. Sekarang saya mulai memahami masalah ini dan saya menyadari bahwa memisahkan setiap string secara terpisah akan menjadi pekerjaan yang sangat berat. :( Saya akan melakukannya tentu saja jika ini adalah satu-satunya cara untuk menyelamatkan proyek saya, tapi saya bertanya-tanya ... Mengingat saya memiliki 106 saluran aktif tetapi hanya 7 papan TLC, apakah ada cara untuk mencegah papan untuk "memilih "sinyal daripada mencegah string untuk" menyiarkan "itu? Saya bertanya karena 85% lebih sedikit bekerja untuk memodifikasi papan daripada string ... Lagi: terima kasih banyak untuk semua waktu dan keahlian yang Anda dedikasikan untuk ini jawab! :)
mac
8

Apakah Anda benar-benar menggunakan catu daya 24 V dengan TLC5940, ketika halaman pertama datasheet TLC5940 dengan jelas menyatakan tegangan maksimum absolut pada pin keluaran diberi peringkat +18 V?

2.55 Vpp noise pada power rail 5 V Anda? Itu sangat buruk sehingga membuat saya curiga bahwa mungkin itu tidak nyata - mungkin power rail 5 V Anda baik-baik saja, tetapi sesuatu menghasilkan medan magnet yang sangat kuat sehingga kawat dari 'lingkup penyelidikan Anda ke ruang lingkup' Anda, bertindak seperti antena, sedang mengambil 2,55 Vpp dari noise.

Jika saya jadi Anda, langkah saya selanjutnya adalah:

  1. Gunakan catu daya yang kurang dari "17 V MAX Vo" yang disebutkan di halaman 3 pada lembar data TLC5940 - catu daya 12 VDC dan 15 VDC cukup umum.
  2. coba kurangi noise magnetik dengan mengatur ulang kabel
  3. tambahkan lagi pemfilteran ke regulator 5V
  4. baca dengan cermat dan coba terapkan tips Menghindari Kebisingan .

kebisingan magnetik

Loop arus tinggi Anda berjalan dari catu daya +12 VDC, ke salah satu ujung rantai LED, melalui rantai LED, ke pin input TLC, keluar pin ground TLC, kembali ke konektor GND dari catu daya, dan keluar konektor +12 VDC lagi. Medan magnet yang dihasilkan oleh loop ini adalah area loop ini (yang dapat Anda kendalikan dengan mengatur kabel secara berbeda) dikalikan dengan arus loop ini (yang Anda punya sedikit kendali).

Cobalah untuk meminimalkan area loop ini. Pertimbangkan memecah lingkaran ini menjadi 2 bagian:

Loop frekuensi rendah: sepasang konduktor, dalam kabel yang berjalan dari catu daya, ke kapasitor besar di dekat chip TLC, kurang lebih langsung menghubungkan kapasitor itu ke +12 VDC dan konektor GND pada catu daya. GND dari chip TLC juga terhubung ke salah satu ujung kapasitor itu. (mungkin topi 470 uF besar secara paralel dengan tutup keramik 10 uF).

Loop frekuensi tinggi: sepasang konduktor yang dipilin, dalam kabel yang membentang dari chip TLC ke rantai LED. Hubungkan output chip TLC ke resistor kecil (mungkin 10 Ohm?), Dan hubungkan ujung lain dari resistor itu ke satu konduktor dari pasangan bengkok. Hubungkan konduktor lain dari pasangan sisi +12 VDC dari kapasitor besar dekat chip TLC.

Seperti yang ditunjukkan oleh ahli bedah Rocket Surgeon, filter low-pass mungkin membantu:

  • RC low-pass filter: kapasitor yang sangat kecil dari sisi kabel resistor kecil ke GND mungkin membantu, tetapi kapasitor yang terlalu besar akan mengacaukan modulasi PWM
  • filter low-pass ferit: Ferit tersumbat di seluruh kabel, atau 2 manik ferit, satu di sekitar masing-masing konduktor dari pasangan bengkok, atau keduanya, mungkin membantu.

Karena kelihatannya TLC tidak perlu dihubungkan ke +12 VDC, itu semua mudah untuk kawat hal-hal dengan cara yang menghasilkan loop yang paling buruk: "kawat + 12 VDC" yang terpisah dari catu daya 12 VDC ke bagian atas rantai LED, dengan ruang yang cukup bagi seorang pria untuk berdiri di antara kawat itu dan jalur balik (jalur balik melalui rantai LED, kemudian dari bagian bawah rantai LED ke TLC, dan kemudian dari tanah TLC pin kembali ke catu daya), dengan luas loop lebih dari satu meter persegi, menghasilkan banyak noise magnetik.

(mungkin diagram di sini akan membuat ini lebih jelas ...)

penyaringan regulator

Apakah catu daya benar-benar mampu menangani arus sebanyak ini? Apakah mungkin kabel panjang antara catu daya dan bagian lain dari sistem tidak mampu mendukung gelombang cepat?

Mungkin ayunan besar pada jalur +12 VDC mungkin digabungkan melalui regulator 5V karena CMRR tidak mencukupi, atau mungkin bahkan jalur +12 VDC ditarik sangat rendah sehingga regulator 5V "turun" cukup rendah untuk mengatur ulang perangkat Anda yang lain ?

Saya akan melakukan tes cepat terlebih dahulu: kendalikan regulator + 5V Anda dari catu daya kedua (katakanlah, catu daya +10 V) benar-benar independen dari catu daya +12 V yang menggerakkan LED Anda, kecuali untuk GND yang menghubungkan catu daya .

Jika catu daya kedua tampaknya memperbaiki masalah, mungkin lebih banyak penyaringan regulator akan memungkinkan sistem untuk menjalankan catu daya tunggal: mungkin Anda hanya perlu menambahkan resistor kecil dan dioda di jalur dari +12 VDC ke pin Vin regulator. . Mungkin juga menambahkan kapasitor lebih atau lebih besar dari pin Vin regulator ke GND.

topi decoupling terbaik

Jika Anda tahu persis apa yang dimaksud dengan frekuensi kebisingan, tutup decoupling terbaik untuk menekan itu adalah topi dengan impedansi terendah pada frekuensi tersebut. ( Impedansi aktual dari kapasitor fisik pada frekuensi tersebut, bukan impedans teoritis yang dihitung oleh 1 / jwC). Anda menggunakan "grafik impedansi vs frekuensi" yang terlihat seperti ini:

contoh grafik impedansi vs frekuensi

(dari Tamara Schmitz dan Mike Wong. "Memilih dan Menggunakan Bypass Capacitors" .)

Grafik tersebut selalu menunjukkan bahwa, pada frekuensi yang sangat rendah, nilai kapasitansi besar adalah yang terbaik; pada frekuensi yang sangat tinggi, paket fisik kecil adalah yang terbaik.

Grafik impedansi-vs-frekuensi nyata ada pada halaman 61 dari katalog Kapasitor Keramik Monolitik Murata Chip .

davidcary
sumber
2

Suara Anda tidak acak, dan sepertinya berdering.

  • Secara efektif sirkuit adalah sumber pulsa frekuensi tinggi dengan kenaikan tajam / jatuh dimuat ke kabel induktif dengan kapasitansi LED yang tertutup di ujungnya.

  • Kabel memiliki induktansi dalam rentang nanohenry, microhenry

  • Kapasitansi sekitar beberapa pF per LED

Jadi sarannya, jawab, bisa menambahkan filter Low-Pass antara output dan beban PWM.


sumber