
Mündəricat:
- Təchizat
- Addım 1: Dövrün qurulması
- Addım 2: ThingSpeak ilə CPU İstiliyini daxil edin
- Addım 3: Python istifadə edərək bir Raspberry Pi -dən CPU İstiliyinin Alınması
- Addım 4: Temperatur əsasında Fanı İdarə Edin
- Addım 5: Son Python Kodu
- Addım 6: Thingspeak Cloud vasitəsilə məlumatların izlənməsi
- Addım 7: Başlanğıcda Python Scriptini işə salın
2025 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2025-01-23 12:54

Qısa baxış
Varsayılan olaraq, fan birbaşa GPIO -ya bağlıdır - bu daimi işləməsini nəzərdə tutur. Fanın nisbi sakit işləməsinə baxmayaraq, fasiləsiz işləməsi aktiv bir soyutma sisteminin effektiv istifadəsi deyil. Eyni zamanda, bir fanın daimi işləməsi sadəcə əsəbi ola bilər. Ayrıca, Raspberry Pi söndürüldükdə, fan qoşulduqda yenə də işləyəcək.
Bu məqalə, sadə və mürəkkəb olmayan manipulyasiyalardan istifadə edərək, mövcud bir soyutma sistemini yalnız prosessora həqiqətən ehtiyac duyulduqda necə açılacağını göstərəcək. Fan yalnız çox istifadə edildikdə işə salınacaq, beləliklə fan gücünü və səs -küyü azaldır. Həm də lazım olmadıqda söndürərək fan ömrünü uzadır.
Öyrənəcəkləriniz
İstilik histerezisi ilə On-Off nəzarətindən istifadə edərək Raspberry CPU-nun mövcud temperaturuna əsaslanan bir fanı idarə etmək üçün Python skriptini necə tətbiq etmək olar.
Təchizat
Bu layihə üçün sizə lazım olacaq komponentlər aşağıdakılardır
- Raspberry Pi 4 Kompüter Model B 4GB
- NPN tranzistor S8050330ohms rezistor
- Raspberry Pi üçün ikili pərəstişkarı olan Alüminium Metal Korpus
- Keçid kabelləri
- Çörək lövhəsi
Addım 1: Dövrün qurulması


Dövrə olduqca sadədir. Fanın gücü NPN tranzistoru ilə kəsilir. Bu konfiqurasiyada tranzistor aşağı tərəfli keçid rolunu oynayır. Rezistor yalnız GPIO vasitəsilə cərəyanı məhdudlaşdırmaq üçün lazımdır. Raspberry Pi -nin GPIO -nun maksimum cərəyanı 16mA -dır. Təxminən (5-0.7)/330 = 13mA olan əsas cərəyan verən 330 ohm istifadə etdim. Bir NPN tranzistor S8050 seçdim, buna görə hər iki fanatdan 400mA yükü dəyişdirmək problem deyil.
Addım 2: ThingSpeak ilə CPU İstiliyini daxil edin

ThingSpeak, Əşyaların İnterneti konsepsiyasına əsaslanan layihələr üçün bir platformadır. Bu platform, sensorlardan toplanan məlumatlara əsaslanaraq tətbiqlər qurmağa imkan verir. ThingSpeak-in əsas xüsusiyyətlərinə aşağıdakılar daxildir: real vaxtda məlumatların toplanması, məlumatların işlənməsi və vizualizasiya. ThingSpeak API yalnız məlumatları göndərməyə, saxlamağa və onlara daxil olmağa imkan vermir, həm də onları emal etmək üçün müxtəlif statistik üsullar təqdim edir.
ThingSpeak, populyar cihaz və xidmətləri birləşdirə bilər:
- Arduino
- Moruq pii
- oBridge / RealTime.io
- Elektrik imp
- Mobil və Veb tətbiqləri
- Sosial şəbəkələr
- MATLAB -da məlumatların təhlili
Başlamazdan əvvəl ThingSpeak -də bir hesaba ehtiyacınız var.
- Aşağıdakı linkə daxil olun və ThingSpeak -ə daxil olun.
- Hesabınızı aktivləşdirdikdən sonra daxil olun.
- Kanallar -> Kanallarım bölməsinə keçin
- Yeni Kanal düyməsini basın.
- Yükləmək istədiyiniz məlumatların adını, təsvirini və sahələrini daxil edin
- Bütün parametrlərinizi saxlamaq üçün Kanalı Saxla düyməsini basın.
CPU temperaturumuzu Thingspeak buluduna yükləmək üçün daha sonra python koduna əlavə edəcəyimiz bir API açarına ehtiyacımız var.
API Açarlarını yazmaq üçün API Açarları sekmesini vurun
Write API Açarını əldə etdikdən sonra, demək olar ki, məlumatlarımızı yükləməyə hazırıq.
Addım 3: Python istifadə edərək bir Raspberry Pi -dən CPU İstiliyinin Alınması
Ssenari, hər saniyədə baş verən prosessor istiliyinin alınmasına əsaslanır. Vcgencmd əmrini tədbir_temp parametri ilə işlədərək terminaldan əldə etmək olar.
vcgencmd ölçü_temp
Subprocess.check_output () kitabxanası əmri yerinə yetirmək üçün istifadə edildi və sonra qaytarılmış sətirdən həqiqi dəyəri çıxarmaq üçün normal ifadəni istifadə etdi.
alt proses idxalı check_output
yenidən idxaldan findalldef get_temp (): temp = check_output (["vcgencmd", "meter_temp"]). decode () temp = float (findall ('\ d+\. / d+', temp) [0]) qayıt (temp) çap et (get_temp ())
İstilik dəyəri alındıqdan sonra məlumatların ThingSpeak buluduna göndərilməsi lazımdır. Aşağıdakı Python kodundakı myApi dəyişənini dəyişdirmək üçün Write API Açarınızdan istifadə edin.
urllib idxal sorğusundan
yenidən idxaldan toplama vaxtından idxal yuxu alt prosesdən idxal check_output myAPI = '###############' baseURL = 'https://api.thingspeak.com/update?api_key=% s ' % myAPIdef get_temp (): temp = check_output (["vcgencmd", "meter_temp"]). decode () temp = float (findall (' / d+\. / d+', temp) [0]) qayıt (temp) cəhd edin: Doğru: temp = get_temp () conn = request.urlopen (baseURL + '& field1 = % s' % (temp)) print (str (temp)) conn.close () sleep (1) KeyboardInterrupt istisna olmaqla: print ("Çıxış Ctrl+C basıldı")
Addım 4: Temperatur əsasında Fanı İdarə Edin
Aşağıda göstərilən Python skripti, temperatur tempOn -dan yuxarı qalxdıqda və yalnız temperatur eşikdən aşağı düşəndə söndürüldükdə fanı açan məntiqi tətbiq edir. Beləliklə, fan tez açılmayacaq və sönməyəcək.
GPO olaraq RPi. GPIO idxal edin
sistemin idxalını yenidən idxal etməkdən, alt prosesdən yuxu idxalını yoxlamaq check_output def get_temp (): temp = check_output (["vcgencmd", "tədbir_temp"]). decode () temp = float (findall ('\ d+\. / d+) ', temp) [0]) qayıt (temp) cəhd edin: GPIO.setwarnings (False) tempOn = 50 eşik = 10 controlPin = 14 pinState = False GPIO.setmode (GPIO. BCM) GPIO.setup (controlPin, GPIO. OUT, initial = 0) True isə: temp = get_temp () if temp> tempOn və pinState və ya temp <tempOn - eşik və pinState deyil: pinState = pinState deyil GPIO.output (controlPin, pinState) çap (str (temp) + "" + str (pinState)) yuxu (1) KeyboardInterrupt istisna olmaqla: print ("Extr basıldı Ctrl+C") istisna olmaqla: print ("Other Exception") print ("--- Exception Data Start:") traceback.print_exc (limit = 2), file = sys.stdout) print ("--- İstisna Məlumatlarını Sonlandır:") nəhayət: print ("CleanUp") GPIO.cleanup () print ("Proqramın sonu")
Addım 5: Son Python Kodu
Əsas python kodunu GitHub hesabımda aşağıdakı linkdə tapa bilərsiniz. Öz Yazma API Açarını qoymağı unutmayın.
- Raspberry PI lövhənizə daxil olun
- Terminalda aşağıdakı əmri işlədin
python3 cpu.py
Addım 6: Thingspeak Cloud vasitəsilə məlumatların izlənməsi

Bir müddət sonra ThingSpeak-də kanalınızı açın və Thingspeak buluduna yüklənən temperaturu real vaxtda görməlisiniz.
Addım 7: Başlanğıcda Python Scriptini işə salın
Bunu etmək üçün /etc/rc.local faylının sonunda:
sudo nano /etc/rc.local
Skript start əmrini 0 nömrəli çıxışın qarşısında yerləşdirməlisiniz:
sudo python /home/pi/cpu.py &
Əməliyyatın arxa planda başlaması üçün bir bayraq olduğu üçün əmrin sonunda & işarəsinin olması məcburidir. Yenidən başladıqdan sonra skript avtomatik olaraq işləyəcək və göstərilən şərtlər yerinə yetirildikdə fan açılacaq.
Tövsiyə:
Jestlərdən və Toxunma Girişindən istifadə edərək Kompüter Nəzarəti: 3 addım

Gestures və Touch Input istifadə edərək kompüter nəzarəti: Bu yeni Piksey Atto üçün bir demo layihəsidir. Bir kompüterə nəzarət etmək üçün TTP224 touch IC və APDS-9960 jest modulundan istifadə edirik. Atto'ya bir USB klaviatura kimi davranmasını təmin edən bir eskiz yükləyirik və sonra müvafiq düymələri göndərir
Python istifadə edərək Raspberry Pi və LIS3DHTR, 3 Eksenli Akselerometr ilə Hərəkət Nəzarəti: 6 Addım

Python istifadə edərək Raspberry Pi və LIS3DHTR ilə 3 Eksenli Akselerometr ilə Hərəkət Nəzarəti: Gözəllik bizi əhatə edir, amma adətən bunu bilmək üçün bir bağda gəzmək lazımdır. Göründüyü kimi təhsilli bir qrup olaraq, enerjimizin böyük bir hissəsini kompüterlərimizdən və cib telefonlarımızdan əvvəl işə sərf edirik. Buna görə də tez -tez sağlamlığımıza icazə veririk
Python istifadə edərək Raspberry Pi və AIS328DQTR istifadə edərək sürətlənməni izləyin: 6 addım

Python istifadə edərək Raspberry Pi və AIS328DQTR istifadə edərək Sürətləndirməni izləyin: Sürətləndirmə sonsuzdur, düşünürəm ki, Fizikanın bəzi qanunlarına görə. Sahilə çıxan ən sürətli məxluq, bir anda ən yüksək sürətindən istifadə edərək ovunu tutur
ESP32: 7 addımlardan istifadə edərək IoT əsaslı Ağıllı Bağçılıq və Ağıllı Kənd Təsərrüfatı

ESP32 istifadə edərək IoT əsaslı Ağıllı Bağçılıq və Ağıllı Kənd Təsərrüfatı: Dünya zaman keçdikcə kənd təsərrüfatı kimi dəyişir. Hazırda insanlar hər sahədə elektronikanı birləşdirir və kənd təsərrüfatı bunun üçün istisna deyil. Kənd təsərrüfatında elektronikanın bu birləşməsi fermerlərə və bağları idarə edən insanlara kömək edir
IR Sensorlarından istifadə edərək sadə jest nəzarəti: 7 addım

IR Sensorlarından istifadə edərək sadə jest nəzarəti: Jestdən istifadə edərək hər şeyi idarə etmək həmişə həyəcan verici və əyləncəlidir, lakin bazarda jestləri tanımaq üçün mövcud olan sensorlar olduqca baha başa gəlir. Bir neçə dollar istifadə edərək sadə bir jest nəzarətini necə edə bilərik? Yaxşı, IR sensorlar düzgün istifadə edildikdə