Projek Aktuator FAN (Kipas) Mode PWM

Menerapkan fungsi analogWrite untuk mengendalikan aktuator dengan mode PWM (Pulse Width Modulation)

Dasar Teori

Pengenalan

Pulse Width Modulation (PWM) adalah teknik di mana lebar pulsa divariasikan sambil menjaga frekuensi gelombang konstan.

Generasi PWM

Periode pulsa terdiri dari siklus ON (VCC) dan siklus OFF (GND). Fraksi yang sinyalnya AKTIF selama suatu periode dikenal sebagai siklus kerja.

Misalnya. Pulsa dengan periode 10ms akan tetap ON (tinggi) selama 2ms. Oleh karena itu, duty cycle akan tetap

D = 2ms / 10ms = 20%

Melalui teknik PWM, kita dapat mengontrol daya yang dikirim ke beban dengan menggunakan sinyal ON-OFF. Sinyal PWM dapat digunakan untuk mengontrol kecepatan motor DC dan untuk mengubah intensitas LED. Selain itu, ini juga dapat digunakan untuk menghasilkan sinyal sinus. Pulse Width Modulated signal dengan duty cycle berbeda ditunjukkan di bawah ini.

PWM Duty cycle

ESP8266 berbasis NodeMCU memiliki fungsionalitas antarmuka PWM melalui pemrograman perangkat lunak. Ini dicapai dengan metode interupsi pengatur waktu. Rentang frekuensi PWM untuk ESP8266 dapat disesuaikan hingga 1KHz.

Pin PWM pada NodeMCU Kit

Pin NodeMCU PWM

Fungsi untuk NodeMCU PWM

  • analogWrite (pin, dutycycle): Mengaktifkan software PWM pada pin yang ditentukan. siklus tugas dalam kisaran dari 0 hingga PWMRANGE, yaitu 1023 secara default.

  • analogWrite (pin, 0): Menonaktifkan PWM pada pin yang ditentukan.

  • analogWriteRange (new_range): Fungsi ini digunakan untuk mengubah rentang PWM (duty cycle).

  • analogWriteFreq (new_frequency): Frekuensi PWM adalah 1kHz secara default. Panggil fungsi ini untuk mengubahnya dengan frekuensi baru. Frekuensi PWM berada dalam kisaran 1 - 1000Khz.

Contoh

Mari kita tulis sketsa Arduino untuk menyetel PWM pada pin ke-6 NodeMCU dan memvariasikan siklus tugasnya dengan potensiometer yang terhubung ke pin ADC NodeMCU. Di sini kami menghubungkan LED pada pin PWM untuk memvisualisasikan efek (Kecerahan LED) dari variasi PWM.

Kontrol Kecerahan LED menggunakan NodeMCU PWM

Penggunaan Dasar PWM

Tujuan

Projek bertujuan untuk mengendalikan kecepatan putar FAN dengan metode PWM. Perintah yang digunakan adalah analogWrite, sedangkan parameter penentu lainnya seperti frekwensi dan range diset default.

Nilai analogWrite adalah antara 0 sampai 1023 (tingkat presisi 8 bit, 2^8=1024) yang ditransformasikan menjadi nilai 1 sampai 9. Hal ini bertujuan agar kecepatan putar FAN dapat dikendalikan oleh remote IR melalui keypad nomor 1 sampai 9, sedangkan keypad nomor 0 berfungsi untuk mengatur putaran FAN menjadi 0.

Keypad yang difungsikan pada Projek

Rancangan

Kode Program

Source Code: https://github.com/doditsuprianto/IoT-Development-Board-DSP-TECH/blob/main/Projek_Aktuator_FAN__Kipas__Mode_PWM.ino

Video Projek

Tugas

Buatlah program untuk mengendalikan kecepatan putaran FAN secara otomatis berdasarkan jarak antara benda penghalang dengan sensor Ultrasonic HC-SR04.

Dimana fitur yang diinginkan adalah:

  • Tampilkan jarak antara benda penghalang dengan sensor ultrasonic dalam satuan centimeter apa adanya ke layar OLED.

  • Jika benda penghalang kurang dari sama dengan 30cm maka FAN akan berputar lebih cepat. Kecepatan maksimum tercapai saat benda mendekati 0cm.

  • Sebaliknya ketika benda penghalang lebih dari 30cm maka FAN tidak berputar, namun jarak cm tetap ditampilkan di layar OLED.

  • Bila jarak penghalang dengan sensor ultrasonic antara 0-30cm maka LED akan hidup. Jumlah LED yang hidup tergantung jauh dekatnya penghalang dengan sensor ultrasonic. Bila jarak penghalang mendekati 0cm maka semua LED akan hidup.

Gunakan fungsi map dengan transformasi nilai terbalik. Misalnya, map(jarakCM, 30, 0, 0, 1023)

Last updated

Was this helpful?