Mengontrol kekuatan elektromagnet dengan arduino

11

Pertanyaan sebelumnya Mengontrol elektromagnet dengan Arduino hanya menangani kontrol biner (ON atau OFF). Di pihak saya, saya perlu memilih kekuatan medan magnet.

Ini adalah elektromagnet buatan rumah, saya berhasil menyalakannya dengan 12V DC + resistor 5ohm yang memberikan sekitar 2Amps. Medan magnet yang dihasilkan cukup besar. Resistor menjadi panas, tapi ini bisa ditahan.

Sekarang saya ingin memodulasi intensitas antara 0 dan 2 amp dari beberapa pembacaan sensor, jadi saya berencana untuk menggunakan Arduino.

Dapatkah saya menggunakan PWM mengetahui bahwa beban induktif signifikan? Apakah pilihan frekuensi PWM penting? Apakah saya akan mengalami masalah dengan arus Eddy di soft core? (Saya tidak bisa menggunakan inti laminasi).

Jadi pertanyaan saya adalah: apakah PWM merupakan pilihan yang baik? Jika ya, haruskah saya menyimpan resistor 5ohm? Bagaimana saya bisa mengkalibrasi frekuensi PWM + alpha saya? Jika tidak, apa yang bisa saya lakukan? Sirkuit yang mana?

Terima kasih

repied2
sumber
PWM secara rutin digunakan untuk kontrol intensitas kontinyu dari beban elektromagnet, jadi ya itu akan berhasil. Kekhawatiran Anda akan menjadi mekanisme yang Anda gunakan untuk mengalihkan arus tinggi yang diperlukan untuk elektromagnet (banyak pertanyaan pada alamat situs ini yang), flyback induktif (gunakan dioda dalam bias balik melintasi kumparan), dan (mungkin) memastikan frekuensi PWM Anda adalah bukan harmonis dari frekuensi resonansi alami apa pun yang koil Anda miliki.
Anindo Ghosh
Motor DC juga merupakan induktor. Mungkin perisai motor akan menjadi solusi yang nyaman?
Phil Frost
Jika Anda memiliki osiloskop, Anda dapat dengan mudah melihat apakah induktor jenuh. Jika ya, Anda harus mempertimbangkan frekuensi PWM yang lebih tinggi. Jika frekuensi menjadi cukup tinggi, arus melalui induktor hanya akan mencapai maksimum / minimum pada siklus tugas 100/0 persen.
jippie
@ Jippie: ini yang tidak saya mengerti. Jika ini> 50% maka, selama setiap siklus, waktu 'naik' lebih lama dari 'turun waktu' sehingga saat ini selesai sedikit lebih tinggi daripada di mana ia dimulai. Jadi mengapa tidak jenuh setelah banyak siklus? (Saya amati tidak, tapi saya bisa mencari tahu mengapa)
repied2

Jawaban:

6

PWM adalah pilihan yang baik dan ingat bahwa koil membutuhkan dioda yang terhubung terbalik untuk mencegah back-emf dari induktor sirkuit-terbuka merusak barang-barang. Anda juga perlu menggunakan transistor daya dari beberapa jenis untuk antarmuka antara Arduino dan koil - Arduino tidak menyediakan cukup "drive" untuk mendekati 2A. Berikut adalah diagram yang menunjukkan transistor dari MCU tetapi memiliki motor, bukan koil. Ini tidak masalah - yang penting adalah menunjukkan dioda dan metode mengemudi koil: -

masukkan deskripsi gambar di sini

Ini juga menunjukkan + 5V tetapi ini bisa + 12V. Hal yang harus diperhatikan: -

1) Dioda perlu diberi nilai pada arus yang melebihi arus maksimum melalui koil.

2) Kumparan masih membutuhkan resistor secara seri jika korsleting tetapi, mungkin dikurangi menjadi sekitar 1 ohm ketika Anda lebih senang dengan operasi.

3) Transistor harus dinilai untuk mengganti arus sehingga mungkin memilih yang dapat dengan mudah menangani setidaknya 3A.

4) Peringkat tegangan pada transistor hanya perlu 20V atau lebih tinggi

5) Resistor dalam rangkaian dengan basis mungkin perlu 100 ohm - coba ini untuk memulainya. Dari garis 3V3 IO 100 ohm akan berarti arus basis sekitar 30mA dan jika HFE dari transistor baik ketika mengganti beban daya (100+) itu harus OK namun, mungkin lebih baik menggunakan FET untuk ini dan di sana banyak untuk dipilih.

Selanjutnya coba keluarkan denyut ruang tanda 50:50 (gelombang persegi) dan ubah frekuensinya dan lihat seperti apa kerugian inti dengan frekuensi yang semakin tinggi. Saya akan berpikir 1kHz adalah titik awal yang baik dan semoga Anda puas dengan 10kHz semoga.

Andy alias
sumber
Terima kasih atas jawaban lengkap Anda. Saya mendapatkannya bekerja dengan arduino 500Hz PWM default dan IRF520 MOSFET (jadi panas jadi saya akan mencoba yang lebih baik) + flyback diode + optocoupler. Tapi saya masih tidak tahu mengapa arus tidak menumpuk secara progresif (setelah banyak siklus) ketika rasio PWM> 50% karena selama setiap siklus, waktu 'naik' lebih lama daripada 'turun waktu' dan saat ini harus selesai sedikit lebih tinggi daripada di mana itu dimulai!
repied2
ok, saya pikir saya berhasil berkat beberapa simulasi circuitlab.com/circuit/73nx5a/ferropwm .
repied2