Isi kandungan:

Pengawal Kipas Meja Arduino: 4 Langkah
Pengawal Kipas Meja Arduino: 4 Langkah

Video: Pengawal Kipas Meja Arduino: 4 Langkah

Video: Pengawal Kipas Meja Arduino: 4 Langkah
Video: Alat pengontrol kipas angin berdasarkan Suhu | Arduino Project 2024, November
Anonim
Pengawal Kipas Meja Arduino
Pengawal Kipas Meja Arduino
Pengawal Kipas Meja Arduino
Pengawal Kipas Meja Arduino
Pengawal Kipas Meja Arduino
Pengawal Kipas Meja Arduino

Ketika saya baru-baru ini menukar peranan dalam syarikat, saya memindahkan laman web, berpindah dari Bradford ke pejabat utama kami di Wakefield. Saya mengucapkan selamat tinggal kepada meja lama saya yang setia dengan mesti mempunyai kipas meja agar saya tetap sejuk semasa berada di sekeliling saya …… Bagaimanapun, trend di pejabat utama kami adalah untuk peminat USB kecil sekitar 4 "hingga 6". Oleh itu, model kesan 6 "kuningan antik yang bagus dipesan dan dihantar pada keesokan harinya.

Masalah dengan semua peminat, sama ada mereka mempunyai tetapan kelajuan atau mod berayun mekanikal, adakah mereka menghidupkan atau mematikan, dan anda akhirnya menghidupkan dan mematikannya sepanjang masa. Percikan imajinasi, digabungkan dengan syarat untuk menaikkan monitor saya dengan 3 yang baik, dan projek saya seterusnya dilahirkan. Masukkan Fanomatic.

Saya telah bermain dengan Arduino selama bertahun-tahun, jadi ini adalah perhentian pertama yang logik.

Langkah 1: Senarai Belanja dan Kes

Senarai Beli-belah dan Kes
Senarai Beli-belah dan Kes
Senarai Beli-belah dan Kes
Senarai Beli-belah dan Kes
Senarai Beli-belah dan Kes
Senarai Beli-belah dan Kes

Senarai membeli-belah:

  • 1 helai MDF 12mm - untuk kes itu
  • 1 Arduino Uno - otak
  • Papan roti dan wayar 1 sml
  • 1 DHT11 - sensor suhu dan kelembapan digital - untuk suhu sampel sahaja
  • Paparan OLED 1.96 "- untuk memaparkan pemboleh ubah - kelajuan, suhu dll
  • 1 modul Mosfet IRF520 - untuk menghidupkan dan mematikan kuasa USB untuk kipas
  • 4 Potensiometer 10k dengan tombol berwarna berbeza - untuk mengawal kelajuan kipas, tepat waktu, waktu mati, titik set suhu
  • 1 suis kuasa
  • Cat papan hitam tin sml - sesuai untuk MDF dengan 1 lapisan
  • 1 kabel usb dan 1 soket usb

Kes:

Ukuran casing diatur oleh ukuran pangkal monitor 24 dan suis KVM 4 port pada lebar 220mm dan ketinggian terakhir yang saya mahu monitor saya tetapkan. Kedalamannya cukup fleksibel, jadi saya memerlukan 180mm untuk memberikan banyak jadi ukuran 220mmx180mmx60mm. Sekarang untuk membuatnya dan mengisinya.

MDF 12mm dipotong di rumah dengan mudah, sebelum gam dan skru untuk membentuk asas kerja dan bahagian depan. Bahagian depan kemudian digerudi agar sesuai dengan 4 10k Potentiometers dan 1 di atas suis on / off atas yang akan mengawal kuasa ke Arduino dan kipas. Lubang segi empat tepat dipahat untuk memegang panel akrilik kelabu kecil, di belakangnya saya merancang untuk melindungi salah satu paparan OLED yang comel itu. Sepanjang jalan, saya harap saya pergi untuk lapisan 3mm di bahagian depan, bukannya MDF 12mm kerana terdapat lebih banyak kayu yang ditanggalkan daripada yang tinggal.

Setelah lubang digerudi dan dipahat di belakang dan sisi untuk sensor suhu, soket usb dan daya usb masuk. Beberapa lapisan cat papan hitam digunakan. Ini cat yang bagus untuk mdf kerana meresap dengan baik dan tidak memerlukan jaket bawah. Ia memberikan kemasan matt yang sangat tidak memaafkan, seperti yang saya cari.

Pot dan suis dipasang, dilekatkan panas akrilik dan label Dyno yang dihasilkan untuk penampilan retro itu.

Di sebelah kawalan …

Langkah 2: Kawalan

Kawalan
Kawalan

Semua berpusat di sekitar Arduino Uno. Saya roti menaiki komponen dan memulakan lakaran.

Lakaran menggunakan 3 perpustakaan:

  • Satu untuk menggerakkan mosfet irf520 untuk menghidupkan kipas.
  • Satu untuk memacu paparan OLED
  • Satu untuk membaca dan menterjemahkan data suhu dari DHT11

Saya akan memasukkan sketsa di sini kemudian, setelah saya merapikannya sedikit, tetapi harap diberi amaran, saya BUKAN pengekod, saya memahami prinsip pengekodan yang baik, tetapi cenderung menjadi pengekod malas. Sekiranya saya dapat mencari jalan untuk menyelesaikan sesuatu dan ia berfungsi, maka ia akan berjaya.

Terdapat beberapa laman web hebat yang menerangkan bagaimana menggunakan setiap…. dan akan merangkumi pautan ke laman web terbaik (pada pendapat saya) untuk mendapatkan yang terbaik dari masing-masing.

Logik:

Kabel usb tunggal memberi kuasa kepada Arduino DAN kipas USB. Arduino tidak dapat menggerakkan kipas kerana arus yang ditariknya akan merosakkan Arduino (sebenarnya agak dramatik! Ia akan mematikan fius onboard). Oleh itu, kita perlu mencari cara menggunakan Arduino untuk menghidupkan atau mematikan kuasa kipas.

Transistor diperlukan, saya mula-mula memesan transistor Darlington, tetapi setelah membaca, dapatkan modul pemacu MOSFET irf520 dari HobbyComponents.com. Makluman Geek !! IRF520 sangat bagus untuk pertukaran tahap logik (output dari pin Arduino). Voltan yang dihantar ke peranti menentukan rintangan MOSFET, I. E. menghantar 0 hingga 255 ke pin digital akan menggerakkan kipas (atau peranti lain yang disambungkan) dari mati ke kelajuan penuh.

Kami akan kembali ke 0 hingga 255 kemudian.

Oleh itu, kita menghidupkan kipas dengan Arduino, mengapa bersusah payah? Kita tidak mahu ia muncul ketika terlalu sejuk, bukan? Oleh itu, jika kita menambah sensor suhu, kita boleh menulis kod dan menguji untuk melihat apakah panas dan menghidupkan kipas (255) atau mematikan (0). Saya membeli DHT11 kerana kotorannya murah, mudah dikod dan cukup tepat untuk projek ini.

Kembali ke perniagaan 0 hingga 255 itu. Sekiranya kita tahu bahawa sedikit kod akan menghidupkan kipas (255) jika suhu tinggi, atau mati (0) jika suhu rendah, jika kita mempunyai nilai antara 0 dan 255, rintangan akan naik atau turun di seberang MOSFET dan mempercepat atau memperlahankan kipas.

Masukkan potensiometer yang disambungkan ke pin analog! Apabila dipusingkan, menghasilkan nilai antara 0 dan 1023. Nilai ini kemudian dapat diuji dalam kod untuk mengubah kelajuan kipas !! yipeeeee.

Ada satu perkara terakhir (baik, pasangan). Perpustakaan kawalan motor yang akan kami gunakan untuk memandu pemandu MOSFET menerima 2 parameter, satu untuk menetapkan rintangan (untuk kelajuan) dan satu lagi untuk menetapkan jangka masa. Oleh itu, dengan parameter ajaib ini, kita dapat menetapkan berapa lama kipas dihidupkan, dan berapa lama kipas itu mati.

Jadi, kami mempunyai 4 pot untuk mengawal 4 pemboleh ubah. Selanjutnya kita akan melihat paparannya.

Langkah 3: Paparan

Paparan
Paparan
Paparan
Paparan

Adakah PERLU paparan? Tidak juga. Jadi mengapa ia memilikinya? Baiklah, kerana saya mahukan paparan yang comel untuk menunjukkan suhu semasa, kelajuan kipas, kipas tepat pada masanya, waktu mati kipas dan titik set suhu.

Perpustakaan U8G cemerlang dalam memacu paparan OLED kecil ini. Ia memerlukan satu malam penyelidikan dan saya mengarahkan perintah untuk mendapatkan ukuran fon yang saya mahukan selama 5 baris dan mendapatkan pemboleh ubah untuk dipaparkan menggunakan perintah u8g.print (). Kelebihan paparan ini adalah bahawa ia bukan paparan 2 atau 4 'baris' yang biasa digunakan oleh komuniti Arduino, jadi grafik, fon semuanya sangat dapat dilakukan.

Sejujurnya, sebahagian besar kod adalah memacu paparan. jika pernyataan menentukan nilai yang akan dipaparkan, E. G. menukar nilai dari pot analog (0 hingga 1023) menjadi nilai untuk dipaparkan di skrin. Secara keseluruhan, terdapat beberapa kumpulan blok penyataan, menentukan kelajuan kipas dari panci, menukar ke nilai% untuk skrin dan nilai antara 0 dan 255 untuk menggerakkan kipas.

Baiklah, itu akan dilakukan buat masa ini. Saya harap anda menikmati ansuran pertama ini. Saya akan mengedit dan mengemas kini dengan pautan dan kodnya. Sekiranya ada perkara yang anda mahukan secara terperinci, sila tinggalkan komen dan tanya.

Langkah 4: Kod

Saya berjanji akan memuat naik lakaran ketika saya menyiarkannya, 3 tahun yang lalu, dan tidak pernah melakukannya.

Jadi inilah ……

Disyorkan: