Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Kontrol Kipas PWM 4 Pin 25 kHz dengan Arduino Uno – Bangun, Kode & Uji

Komponen dan Perlengkapan

Kipas Aksial, 12 VDC×1
Arduino UNO×1
Kabel USB-A ke Mini-USB×1
Kabel jumper (umum)×1

Aplikasi dan Layanan Online

Arduino IDE

Tentang Proyek Ini

Saya tertarik dengan proyek ini dan cara mengontrol kipas PWM 4 pin saya. Saya memiliki 5 kipas yang tidak terpakai dan mencoba mencobanya. Nilai frekuensi dapat disesuaikan antara 125 HZ hingga 8 MHZ beserta siklus kerja yang variabel. Rangkaian menggunakan mode 10 PWM phase-correct pada timer 1 OCR1A (Pin 9) dan ICR1 (Pin 10). Beberapa debugging diperlukan untuk memahami hal ini dan saya memiliki osiloskop portabel. Ini memudahkan untuk melihat frekuensi dan siklus kerja tanpa tebakan. Berikut adalah tautannya: Osiloskop.

Kontrol Kipas PWM 4 Pin 25 kHz dengan Arduino Uno – Bangun, Kode & Uji
Kontrol Kipas PWM 4 Pin 25 kHz dengan Arduino Uno – Bangun, Kode & Uji

Saya sangat menyarankan Anda mencari datasheet kipas Anda karena pin kontrol dalam kasus saya berwarna kuning (biasa disebut sebagai kabel tach). Pastikan juga untuk menemukan rentang frekuensi yang dapat diterima (atau "FREKUENSI PUSAT") untuk kipas yang Anda pilih. Anda mungkin perlu mengubah frekuensi kode untuk menyesuaikan kebutuhan Anda. Akhirnya Anda akan membutuhkan sumber daya yang baik (Saya menggunakan ATX PSU yang dikonversi dari PC lama).

CATATAN: Saya telah mencoba menggunakan timer lain dan mengontrol 2 kipas secara independen. Ini tidak berjalan. Alasannya adalah resolusi timer ke-2 lebih rendah (16 bit vs 8 bit). Ini berarti langkah dalam penyesuaian frekuensi dan siklus kerja berisik dan bentuk gelombang semakin terdeformasi. Ini juga tidak setidak-tidaknya saat memasukkan nilai.

Kode

const byte OC1A_PIN = 9; const byte OC1B_PIN = 10; const word PWM_FREQ_HZ = 25000; //Sesuaikan nilai ini untuk menyesuaikan frekuensi (Frekuensi dalam HZ!) (Saat ini diatur ke 25kHZ) const word TCNT1_TOP = 16000000/(2*PWM_FREQ_HZ); void setup() { pinMode(OC1A_PIN, OUTPUT); // Bersihkan register kontrol dan hitung Timer1 TCCR1A = 0; TCCR1B = 0; TCNT1 = 0; // Set konfigurasi Timer1 // COM1A(1:0) = 0b10 (Output A clear rising/set falling) // COM1B(1:0) = 0b00 (Output B operasi normal) // WGM(13:10) = 0b1010 (Phase correct PWM) // ICNC1 = 0b0 (Input capture noise canceler disabled) // ICES1 = 0b0 (Input capture edge select disabled) // CS(12:10) = 0b001 (Input clock select = clock/1) TCCR1A |= (1 << COM1A1) | (1 << WGM11); TCCR1B |= (1 << WGM13) | (1 << CS10); ICR1 = TCNT1_TOP; } void loop() { setPwmDuty(0); delay(5000); setPwmDuty(25); //Ubah nilai ini 0-100 untuk menyesuaikan siklus kerja delay(5000); // setPwmDuty(50); // delay(20000); // setPwmDuty(75); // delay(20000); // setPwmDuty(100); // delay(20000); } void setPwmDuty(byte duty) { OCR1A = (word) (duty*TCNT1_TOP)/100; } 

Skematik

Kontrol Kipas PWM 4 Pin 25 kHz dengan Arduino Uno – Bangun, Kode & Uji

Proses manufaktur

  1. Mengontrol Kecerahan LED dengan PWM melalui Tombol Push pada Arduino Mega
  2. Kontrol Kipas Angin Langit-langit Anda dengan Alexa: Panduan Langkah demi Langkah
  3. Membuat Jam Waktu Nyata Arduino untuk Waktu Sholat Islam
  4. Bangun Tabung Pintar: Kendalikan Penerima Koin dengan Arduino Nano
  5. Kontrol LED melalui Bluetooth dengan Arduino – Panduan DIY Sederhana
  6. Kendalikan Dua Motor Stepper dengan Arduino Nano dan Joystick – Tutorial Sederhana
  7. Menampilkan Gambar pada Layar TFT LCD 1.17 inci dengan Arduino UNO
  8. Menguasai Matriks LED 8×8 dengan Arduino Uno: Panduan Langkah demi Langkah
  9. Membuat Kubus LED 4x4x4 dengan Arduino Uno & 1Sheeld – Proyek LED Interaktif
  10. ThimbleKrox: Kontrol Mouse Berbasis Jari dengan Arduino Micro & MPU-6050