Ada banyak literatur tentang penerapan kontrol motor brushless tetapi di sini adalah ikhtisar.
Untuk memahami perbedaan antara bentuk gelombang pergantian, penting untuk memahami bagaimana motor brushless beroperasi.
Motor tiga fase (dua kutub) akan memiliki tiga kumparan di sekitar magnet tunggal di tengah. Tujuannya adalah untuk memberi energi kumparan secara berurutan sehingga poros motor (dan magnetnya) berputar.
Ada dua medan magnet yang penting di sini, bidang rotor (magnet berputar) dan bidang stator (gulungan statis):
Kami merujuk ke arah medan magnet sebagai "vektor fluks" karena kedengarannya sangat keren. Hal yang paling penting untuk dipelajari dari gambar ini adalah Anda ingin kedua medan magnet berada pada sudut yang tepat satu sama lain. Ini memaksimalkan efisiensi dan torsi.
Skema pergantian paling bodoh adalah trapesium. Dengan menggunakan sensor hall atau EMF belakang dari motor, adalah mungkin untuk menentukan apakah motor berada di salah satu dari sejumlah posisi dan menjalankan kontrol on / off pada satu atau dua kumparan untuk memimpin medan magnet di sekitar motor:
Karena mungkin hanya ada enam orientasi terpisah untuk bidang stator, vektor fluks motor bisa berada di mana saja dari 60-120 derajat (bukan 90 yang diinginkan) dan karenanya Anda mendapatkan riak torsi dan efisiensi yang buruk.
Solusi yang jelas di sini adalah beralih ke pergantian sinusoidal dan menghaluskan bentuk gelombangnya:
Jika Anda mengetahui orientasi rotor yang tepat, Anda hanya dapat melakukan beberapa trigonometri untuk menghitung siklus tugas PWM yang tepat untuk diterapkan pada setiap kumparan untuk menjaga vektor fluks pada 90 derajat dan Anda memiliki vektor fluks 90 derajat yang indah. (Orientasi rotor dapat ditentukan melalui encoder, interpolasi, atau estimasi lebih lanjut seperti filter kalman).
Jadi saat ini Anda mungkin bertanya-tanya bagaimana Anda bisa melakukan lebih baik daripada pergantian sinusoidal. Kelemahan utama dari pergantian sinusoidal adalah bahwa output dikirim langsung ke PWM. Karena induktansi koil, arus (dan karena itu vektor fluks) akan tertinggal di belakang nilai yang diperintahkan dan ketika motor mendekati kecepatan puncaknya, vektor fluks akan berada pada 80 atau 70 derajat daripada 90.
Inilah sebabnya mengapa pergantian sinusoidal memiliki kinerja kecepatan tinggi yang buruk.
Ini akhirnya membawa kita ke kontrol fluks-vektor yang merupakan nama yang diberikan kepada (sering milik) algoritma kontrol yang berusaha untuk memastikan fluks magnet tetap pada 90 derajat bahkan pada kecepatan tinggi. Cara paling sederhana untuk melakukan ini adalah dengan memimpin lapangan dengan, misalnya, 90-120 derajat tergantung pada seberapa cepat Anda pergi, mengetahui bahwa fluks magnet yang sebenarnya akan tertinggal.
Solusi yang lebih kuat melibatkan PID / feedforward untuk secara akurat mengontrol arus yang melalui setiap fase. Setiap pabrikan servo memiliki algoritma in-house sendiri, jadi saya yakin ada beberapa hal yang cukup rumit di sisi pendarahan.
Singkatnya, kontrol vektor fluks adalah kontrol sinusoidal dari arus yang mengalir ke setiap fase (bukan hanya siklus tugas PWM).
Garis antara vektor sinusoidal / fluks cukup samar karena beberapa perusahaan melakukan kontrol lanjutan pada drive "sinusoidal" mereka (yang pada dasarnya membuat mereka fluks vektor). Juga, karena Anda secara teknis dapat memanggil hampir semua vektor fluks untuk mengontrol kualitas implementasi dapat bervariasi.