विषयसूची:

रास्पबेरी पाई के लिए सीपीयू तापमान पर आधारित पीडब्लूएम रेगुलेटेड फैन: 4 कदम (चित्रों के साथ)
रास्पबेरी पाई के लिए सीपीयू तापमान पर आधारित पीडब्लूएम रेगुलेटेड फैन: 4 कदम (चित्रों के साथ)

वीडियो: रास्पबेरी पाई के लिए सीपीयू तापमान पर आधारित पीडब्लूएम रेगुलेटेड फैन: 4 कदम (चित्रों के साथ)

वीडियो: रास्पबेरी पाई के लिए सीपीयू तापमान पर आधारित पीडब्लूएम रेगुलेटेड फैन: 4 कदम (चित्रों के साथ)
वीडियो: Raspberry Pi CM4 (delidding or scalping) 2024, जुलाई
Anonim
रास्पबेरी पाई के लिए सीपीयू तापमान पर आधारित पीडब्लूएम रेगुलेटेड फैन
रास्पबेरी पाई के लिए सीपीयू तापमान पर आधारित पीडब्लूएम रेगुलेटेड फैन

रास्पबेरी पाई के कई मामले सीपीयू को ठंडा करने में मदद करने के लिए थोड़े से 5V पंखे के साथ आते हैं। हालाँकि, ये पंखे आमतौर पर बहुत शोर करते हैं और कई लोग शोर को कम करने के लिए इसे 3V3 पिन पर प्लग करते हैं। ये पंखे आमतौर पर 200mA के लिए रेट किए जाते हैं जो RPi पर 3V3 नियामक के लिए काफी अधिक है। यह प्रोजेक्ट आपको सीपीयू तापमान के आधार पर पंखे की गति को नियंत्रित करना सिखाएगा। इस विषय को कवर करने वाले अधिकांश ट्यूटोरियल के विपरीत, हम न केवल पंखे को चालू या बंद करेंगे, बल्कि इसकी गति को नियंत्रित करेंगे जैसे कि यह मुख्यधारा के पीसी पर किया जाता है, पायथन का उपयोग करके।

चरण 1: आवश्यक भागों

इस परियोजना के लिए, हम केवल कुछ घटकों का उपयोग करेंगे जो आम तौर पर शौकिया के लिए इलेक्ट्रॉनिक्स किट में शामिल होते हैं जो आप अमेज़ॅन पर पा सकते हैं, जैसे यह।

  • रास्पबेरी पाई रास्पियन चल रहा है (लेकिन अन्य वितरणों के साथ काम करना चाहिए)।
  • 5V पंखा (लेकिन एक अनुकूलित ट्रांजिस्टर और 12V बिजली की आपूर्ति के साथ एक 12V पंखे का उपयोग किया जा सकता है)।
  • NPN ट्रांजिस्टर जो 2N2222A की तरह कम से कम 300mA को सपोर्ट करता है।
  • 1K रोकनेवाला।
  • 1 डायोड।

वैकल्पिक, घटकों को मामले के अंदर रखने के लिए (लेकिन अभी तक नहीं किया गया):

  • घटकों को मिलाप करने के लिए प्रोटोबार्ड का एक छोटा सा टुकड़ा।
  • बोर्ड की सुरक्षा के लिए बड़ी गर्मी हटना।

चरण 2: विद्युत कनेक्शन

बिजली के कनेक्शन
बिजली के कनेक्शन
बिजली के कनेक्शन
बिजली के कनेक्शन
बिजली के कनेक्शन
बिजली के कनेक्शन

रोकनेवाला किसी भी तरह से प्लग किया जा सकता है, लेकिन ट्रांजिस्टर और डायोड की दिशा के बारे में सावधान रहें। डायोड का कैथोड +5V (लाल) तार से जुड़ा होना चाहिए, और एनोड को GND (काला) तार से जोड़ा जाना चाहिए। एमिटर, बेस और कलेक्टर पिन के लिए अपने ट्रांजिस्टर दस्तावेज़ की जाँच करें। पंखे का मैदान कलेक्टर से जुड़ा होना चाहिए, और आरपीआई का मैदान एमिटर से जुड़ा होना चाहिए।

पंखे को नियंत्रित करने के लिए, हमें एक ट्रांजिस्टर का उपयोग करने की आवश्यकता है जिसका उपयोग खुले कलेक्टर कॉन्फ़िगरेशन में किया जाएगा। ऐसा करने से, हमारे पास एक स्विच होता है जो जमीन के तार को पंखे से रास्पबेरी पाई की जमीन से जोड़ देगा या डिस्कनेक्ट कर देगा।

एक NPN BJT ट्रांजिस्टर अपने गेट में प्रवाहित होने वाली धारा के आधार पर संचालित होता है। संग्राहक (C) से उत्सर्जक (E) तक प्रवाहित होने वाली धारा है:

आईसी = बी * आईबी

आईसी वह धारा है जो संग्राहक से उत्सर्जक के माध्यम से प्रवाहित होती है, आईबी वह धारा है जो आधार से उत्सर्जक तक प्रवाहित होती है, और बी (बीटा) प्रत्येक ट्रांजिस्टर के आधार पर एक मान है। हम बी = 100 का अनुमान लगाते हैं।

जैसा कि हमारे पंखे को 200mA के रूप में रेट किया गया है, हमें ट्रांजिस्टर के आधार के माध्यम से कम से कम 2mA की आवश्यकता है। आधार और उत्सर्जक (Vbe) के बीच तनाव को स्थिर और Vbe = 0, 7V माना जाता है। इसका मतलब यह है कि जब GPIO चालू होता है, तो हमारे पास रोकनेवाला पर 3.3 - 0.7 = 2.6V होता है। उस प्रतिरोधक के माध्यम से 2mA प्राप्त करने के लिए, हमें अधिकतम, 2.6 / 0.002 = 1300 ओम के अवरोधक की आवश्यकता होती है। हम त्रुटि के मार्जिन को सरल और बनाए रखने के लिए 1000 ओम के एक रोकनेवाला का उपयोग करते हैं। हमारे पास GPIO पिन के माध्यम से 2.6mA होगा जो पूरी तरह से सुरक्षित है।

चूंकि पंखा मूल रूप से एक विद्युत मोटर है, यह एक आगमनात्मक आवेश है। इसका मतलब है कि जब ट्रांजिस्टर का संचालन बंद हो जाता है, तो पंखे में करंट प्रवाहित होता रहेगा क्योंकि इंडक्टिव चार्ज करंट को स्थिर रखने की कोशिश करता है। इसके परिणामस्वरूप पंखे के ग्राउंड पिन पर उच्च वोल्टेज होगा और ट्रांजिस्टर को नुकसान हो सकता है। इसलिए हमें पंखे के समानांतर एक डायोड की आवश्यकता होती है जो मोटर के माध्यम से लगातार करंट प्रवाहित करे। इस प्रकार के डायोड सेटअप को फ्लाईव्हील डायोड कहा जाता है

चरण 3: पंखे की गति को नियंत्रित करने का कार्यक्रम

पंखे की गति को नियंत्रित करने के लिए, हम RPi. GPIO पुस्तकालय से एक सॉफ्टवेयर PWM सिग्नल का उपयोग करते हैं। एक पीडब्लूएम सिग्नल इलेक्ट्रिक मोटर्स को चलाने के लिए अच्छी तरह से अनुकूलित है, क्योंकि पीडब्लूएम आवृत्ति की तुलना में उनकी प्रतिक्रिया समय बहुत अधिक है।

टर्मिनल में चलाकर FAN_MIN मान ज्ञात करने के लिए calib_fan.py प्रोग्राम का उपयोग करें:

अजगर calib_fan.py

० और १००% (लगभग २०% होना चाहिए) के बीच कई मानों की जाँच करें और देखें कि आपके पंखे को चालू करने के लिए न्यूनतम मूल्य क्या है।

आप कोड की शुरुआत में तापमान और पंखे की गति के बीच पत्राचार को बदल सकते हैं। स्पीडस्टेप्स मान के रूप में कई अस्थायी चरण होने चाहिए। यह वह तरीका है जो आम तौर पर पीसी मदरबोर्ड में उपयोग किया जाता है, एक टेम्प / स्पीड 2-अक्ष ग्राफ पर चलती बिंदु।

चरण 4: स्टार्टअप पर प्रोग्राम चलाएँ

स्टार्टअप पर प्रोग्राम को स्वचालित रूप से चलाने के लिए, मैंने एक बैश स्क्रिप्ट बनाई जहां मैं उन सभी प्रोग्रामों को रखता हूं जिन्हें मैं लॉन्च करना चाहता हूं, और फिर मैं rc.locale के साथ स्टार्टअप पर इस बैश स्क्रिप्ट को लॉन्च करता हूं।

  1. एक निर्देशिका /home/pi/Scripts/ बनाएं और उस निर्देशिका के अंदर fan_ctrl.py फ़ाइल रखें।
  2. उसी निर्देशिका में, Launcher.sh नाम की एक फ़ाइल बनाएं और स्क्रिप्ट को नीचे कॉपी करें।
  3. /etc/rc.locale फ़ाइल को संपादित करें और "बाहर निकलें 0" से पहले एक नई लाइन जोड़ें: sudo sh '/home/pi/Scripts/launcher.sh'

Launcher.sh स्क्रिप्ट:

#!/bin/sh#launcher.sh # होम डाइरेक्टरी में नेविगेट करें, फिर इस डायरेक्टरी में, फिर पाइथॉन स्क्रिप्ट को निष्पादित करें, फिर होमलोकेलेकd /cd /home/pi/Scripts/sudo python3./fan_ctrl.py &cd / पर वापस जाएं।

उदाहरण के लिए यदि आप इसे OSMC के साथ उपयोग करना चाहते हैं, तो आपको इसे systemd के साथ एक सेवा के रूप में शुरू करने की आवश्यकता है।

  1. fanctrl.service फ़ाइल डाउनलोड करें।
  2. अपनी पायथन फ़ाइल के पथ की जाँच करें।
  3. fanctrl.service को /lib/systemd/system में रखें।
  4. अंत में, sudo systemctl enable fanctrl.service के साथ सेवा को सक्षम करें।

यह विधि अधिक सुरक्षित है, क्योंकि उपयोगकर्ता या सिस्टम द्वारा मारे जाने पर प्रोग्राम स्वचालित रूप से पुनरारंभ हो जाएगा।

सिफारिश की: