Isi kandungan:

Kotak Raspberry Pi FAN Penyejuk Dengan Petunjuk Suhu CPU: 10 Langkah (dengan Gambar)
Kotak Raspberry Pi FAN Penyejuk Dengan Petunjuk Suhu CPU: 10 Langkah (dengan Gambar)

Video: Kotak Raspberry Pi FAN Penyejuk Dengan Petunjuk Suhu CPU: 10 Langkah (dengan Gambar)

Video: Kotak Raspberry Pi FAN Penyejuk Dengan Petunjuk Suhu CPU: 10 Langkah (dengan Gambar)
Video: Octopus Max EZ v1.0 - Hotend and Automatic Cooling Fans 2024, Julai
Anonim
Kotak Raspberry Pi FAN Penyejuk Dengan Petunjuk Suhu CPU
Kotak Raspberry Pi FAN Penyejuk Dengan Petunjuk Suhu CPU

Saya telah memperkenalkan litar penunjuk suhu CPU raspberry pi (Selanjutnya sebagai RPI) pada projek sebelumnya.

Litar hanya menunjukkan RPI 4 tahap suhu CPU yang berbeza seperti berikut.

- LED Hijau dihidupkan ketika suhu CPU berada dalam lingkungan 30 ~ 39 darjah

- LED Kuning menunjukkan suhu meningkat dalam lingkungan 40 hingga 45 darjah

- LED Merah ke-3 menunjukkan CPU menjadi sedikit panas dengan mencapai 46 ~ 49 darjah

- LED Merah yang lain akan berkelip apabila suhu melebihi 50 darjah

***

Apabila suhu melebihi 50C, sebarang pertolongan perlu dilakukan kerana RPI kecil tidak terlalu tertekan.

Menurut maklumat yang saya lihat di beberapa laman web yang membincangkan tahap suhu maksimum yang boleh ditoleransi RPI, pendapat adalah berbeza seperti seseorang yang menyebut bahawa lebih daripada 60C masih cukup baik ketika pendingin digunakan.

Tetapi pengalaman peribadi saya mengatakan sesuatu yang berbeza bahawa pelayan penghantaran (menggunakan RPI dengan heat-sink) menjadi perlahan dan akhirnya bertindak seperti zombie ketika saya menghidupkannya selama beberapa jam.

Oleh itu rangkaian tambahan dan FAN penyejukan ini ditambahkan untuk mengatur suhu CPU di bawah 50C untuk menyokong operasi RPI yang stabil.

***

Litar penunjuk suhu CPU yang diperkenalkan juga sebelumnya (Selanjutnya sebagai INDICATOR) disatukan bersama untuk menyokong pemeriksaan tahap suhu yang mudah tanpa melaksanakan perintah "vcgencmd mengukur_temp" pada terminal konsol.

Langkah 1: Menyiapkan Skematik

Menyiapkan Skematik
Menyiapkan Skematik

Dalam dua projek sebelumnya, saya telah menyebutkan pengasingan sepenuhnya bekalan elektrik antara RPI dan rangkaian luaran.

Sekiranya FAN menyejukkan, bekalan kuasa bebas cukup penting kerana DC 5V FAN (motor) adalah beban yang agak berat dan agak bising semasa beroperasi.

Oleh itu, pertimbangan berikut ditekankan untuk merancang litar ini.

- Opto-coupler digunakan untuk berinteraksi dengan pin RPI GPIO untuk mendapatkan isyarat pengaktifan FAN penyejuk

- Tidak ada daya yang diambil dari RPI dan menggunakan pengecas telefon bimbit biasa untuk sumber kuasa litar ini.

- Indikator LED digunakan untuk memberitahu operasi penyejukan FAN

- Relay 5V digunakan untuk mengaktifkan FAN penyejukan sebagai cara mekanikal

***

Litar ini akan beroperasi dengan litar penunjuk suhu CPU (Selanjutnya INDICATOR) melalui kawalan program python.

Apabila INDICATOR mula berkelip (suhu melebihi 50C), litar FAN penyejuk ini akan mula beroperasi.

Langkah 2: Menyiapkan Bahagian

Seperti projek sebelumnya, komponen yang sangat biasa digunakan untuk membuat litar FAN penyejukan seperti yang disenaraikan di bawah.

- Opto-pengganding: PC817 (SHARP) x 1

- 2N3904 (NPN) x 1, BD139 (NPN) x 1

- Relay TV2-5V (Panasonic) 5V

- 1N4148 dioda

- Perintang (1 / 4Watt): 220ohm x 2 (had semasa), 2.2K (pertukaran Transistor) x 2

- LED x 1

- FAN penyejukan 5V 200mA

- Papan universal lebih dari 20 (H) dengan ukuran lubang 20 (H) (Anda boleh memotong sebarang ukuran papan sejagat agar sesuai dengan litar)

- Tin wire (Sila rujuk catatan projek "Penunjuk penutupan Raspberry Pi" saya untuk lebih terperinci mengenai penggunaan wayar timah)

- Kabel (kabel wayar tunggal merah dan biru biasa)

- Sebarang input 220V pengecas telefon bimbit dan output 5V (penyambung USB jenis B)

- Kepala pin (3 pin) x 2

***

Dimensi fizikal FAN penyejuk harus cukup kecil untuk dipasang di bahagian atas RPI.

Segala jenis relay boleh digunakan apabila boleh beroperasi pada 5V dan mempunyai lebih dari satu hubungan mekanikal.

Langkah 3: Membuat Lukisan PCB

Membuat Lukisan PCB
Membuat Lukisan PCB

Oleh kerana bilangan komponennya kecil, ukuran PCB universal yang diperlukan tidak besar.

Sila ambil perhatian susun atur polariti pin TQ2-5V seperti yang ditunjukkan pada gambar di atas. (Bertentangan dengan pemikiran konvensional, susun atur tambah / dasar sebenarnya disusun secara terbalik)

Secara peribadi, saya menghadapi masalah yang tidak dijangka selepas pematerian kerana pin polaritas TQ2-5V (Apabila dibandingkan dengan produk geganti yang lain).

Langkah 4: Pematerian

Pematerian
Pematerian

Oleh kerana litar itu sendiri agak mudah, corak pendawaian tidak terlalu rumit.

Saya memasang braket pemasangan bentuk "L" untuk memperbaiki PCB sebagai arah tegak.

Seperti yang anda lihat kemudian, casis akrilik yang memasangkan semuanya berukuran sedikit kecil.

Oleh itu, penyempitan cetakan kaki diperlukan kerana casis akrilik sangat padat dengan PCB dan sub-bahagian lain.

LED terletak di bahagian depan untuk mengenali operasi FAN dengan mudah.

Langkah 5: Membuat dan Memasang FAN HAT Penyejuk

Membuat dan Memasang Penyejuk FAT
Membuat dan Memasang Penyejuk FAT

Saya rasa PCB universal adalah bahagian yang sangat berguna yang boleh digunakan untuk tujuan penggunaan yang pelbagai.

Cooling FAN dipasang pada PCB sejagat dan dipasang dan dipasang dengan bolt dan mur.

Kerana membenarkan aliran udara, saya membuat lubang besar dengan menggerudi PCB.

Juga untuk memasang kabel jumper dengan mudah, kawasan pin 40 GIPO dibuka dengan memotong PCB.

Langkah 6: Pasang PCB

Pasang PCB
Pasang PCB

Seperti yang dinyatakan di atas, saya merancang untuk menggabungkan dua litar yang berbeza menjadi satu unit.

Litar penunjuk suhu CPU yang dibuat sebelumnya digabungkan dengan litar FAN penyejuk baru seperti yang ditunjukkan pada gambar di atas., Segala-galanya dibungkus menjadi casis akrilik bersaiz kecil dan transparan (15cm W x 10cm D).

Walaupun kira-kira separuh ruang casis kosong dan tersedia, komponen tambahan akan ditempatkan ke ruang yang tersisa kemudian.

Langkah 7: Pendawaian RPI Dengan Litar

Pendawaian RPI Dengan Litar
Pendawaian RPI Dengan Litar

Dua litar saling berkaitan dengan RPI sebagai cara terpencil menggunakan pengganding opto.

Juga tidak ada daya yang diambil dari RPI kerana bekalan kuasa pengecas telefon bimbit luaran ke litar.

Nanti anda akan tahu skema antara muka terpencil ini cukup membuahkan hasil apabila komponen tambahan lebih banyak disatukan ke casis akrilik nanti.

Langkah 8: Program Python Mengawal Semua Litar

Program Python Mengawal Semua Litar
Program Python Mengawal Semua Litar

Hanya penambahan sedikit kod yang diperlukan dari kod sumber litar penunjuk suhu CPU.

Apabila suhu melebihi 50C, dua puluh (20) lelaran menghidupkan FAN selama 10 saat dan mematikan 3 saat akan bermula.

Oleh kerana motor kecil FAN memerlukan arus maksimum 200mA semasa operasi, kaedah pengaktifan motor jenis PWM (Pulse Width Modulation) digunakan untuk pengecas telefon bimbit yang kurang membebankan.

Kod sumber yang diubah seperti di bawah.

***

# - * - pengekodan: utf-8 - * -

##

subproses import, isyarat, sys

masa import, semula

import RPi. GPIO sebagai g

##

A = 12

B = 16

PEMINAT = 25

##

g.setmode (g. BCM)

g.setup (A, g. OUT)

g.setup (B, g. OUT)

g.setup (FAN, g. OUT)

##

def signal_handler (sig, frame):

cetak ('Anda menekan Ctrl + C!')

g. output (A, Salah)

g. output (B, Salah)

g. output (FAN, Salah)

f. tutup ()

sys.exit (0)

signal.signal (signal. SIGINT, signal_handler) isyarat.

##

Walaupun Betul:

f = terbuka ('/ home / pi / My_project / CPU_temperature_log.txt', 'a +')

temp_str = subprocess.check_output ('/ opt / vc / bin / vcgencmd mengukur_temp', shell = True)

temp_str = temp_str.decode (pengekodan = 'UTF-8', kesalahan = 'ketat')

CPU_temp = re.findall ("\ d + \. / D +", temp_str)

# mengekstrak suhu CPU semasa

##

current_temp = terapung (CPU_temp [0])

jika current_temp> 30 dan current_temp <40:

# suhu rendah A = 0, B = 0

g. output (A, Salah)

g. output (B, Salah)

masa. tidur (5)

elif current_temp> = 40 dan current_temp <45:

# medium suhu A = 1, B = 0

g. output (A, Betul)

g. output (B, Salah)

masa. tidur (5)

elif current_temp> = 45 dan current_temp <50:

# suhu tinggi A = 0, B = 1

g. output (A, Salah)

g. output (B, Betul)

masa. tidur (5)

elif current_temp> = 50:

# Penyejukan CPU diperlukan tinggi A = 1, B = 1

g. output (A, Betul)

g. output (B, Betul)

untuk i dalam jarak (1, 20):

g. output (FAN, Betul)

masa. tidur (10)

g. output (FAN, Salah)

masa. tidur (3)

current_time = time.time ()

formated_time = time.strftime ("% H:% M:% S", time.gmtime (current_time))

f.write (str (formated_time) + '\ t' + str (current_temp) + '\ n')

f. tutup ()

##

Oleh kerana logik operasi kod python ini hampir sama dengan litar penunjuk suhu CPU, saya tidak akan mengulangi perinciannya di sini.

Langkah 9: Operasi Litar FAN

Operasi Litar FAN
Operasi Litar FAN

Semasa melihat grafik, suhu melebihi 50C tanpa litar FAN.

Nampaknya suhu CPU rata-rata sekitar 40 ~ 47C semasa RPI beroperasi.

Sekiranya beban sistem berat seperti bermain Youtube di penyemak imbas web digunakan, biasanya suhu meningkat dengan cepat hingga 60C.

Tetapi dengan litar FAN, suhu akan diturunkan kurang dari 50C dalam masa 5 saat dengan operasi menyejukkan FAN.

Hasilnya, anda boleh menghidupkan RPI sepanjang hari dan melakukan kerja yang anda suka tanpa perlu risau akan pemanasan berlebihan.

Langkah 10: Perkembangan Lanjut

Perkembangan Lanjut
Perkembangan Lanjut

Seperti yang anda lihat, separuh daripada casis akrilik masih kosong.

Saya akan meletakkan komponen tambahan di sana dan memperluas blok asas kotak RPI ini menjadi sesuatu yang lebih berguna.

Sudah tentu lebih banyak penambahan bererti meningkatkan kerumitan juga.

Bagaimanapun saya mengintegrasikan dua litar ke dalam satu kotak dalam projek ini.

Terima kasih kerana membaca kisah ini.

Disyorkan: