Mundarija:
- Ta'minotlar
- 1 -qadam: muxlisni o'rnating
- 2 -qadam: PI (D) tekshirgichini yarating
- 3 -qadam: Boshlash paytida boshqaruv skriptini ishga tushiring
Video: Raspberry Pi -da haroratni aniq nazorat qilish 4: 3 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Pimoroni Fan Shim - bu Pi ishlayotgan vaqtda haroratni pasaytirish uchun ajoyib echim. Ishlab chiqaruvchilar hatto protsessor harorati ma'lum bir chegaradan oshganda (masalan, 65 daraja) fanni ishga tushiradigan dasturiy ta'minotni taqdim etadilar. Harorat tezda pastroq ostonadan pastga tushadi va fanni o'chiradi. Bu juda yaxshi, lekin harorat o'rtacha yuklar ostida ko'tarilib tushishiga olib keladi va fanat ovozini eshitadi. Bu ko'rsatma fanning shovqinini kamaytiradi, shu bilan birga CPU haroratini PID tekshirgichi yordamida ma'lum bir qiymatga o'rnatadi. Yuqori chegaralar (masalan, 65 daraja) fanni ancha jim qiladi, pastroq ostonalar (masalan, 50 daraja) esa baland ovozli fanatga olib keladi, lekin haroratni yaxshiroq boshqaradi.
Yuqoridagi misol PID tekshirgichini ishga tushirish va har 500 soniyada maqsadli haroratni o'zgartirish natijalarini ko'rsatadi. Aniqlik +/- 1 daraja bo'lib, termaturaning keskin o'zgarishi kuzatiladi.
Muhimi, bu test umumiy sinov vaqti uchun bir xil yuk ostida bajarilgan (BBC iPlayer -ni tomosha qilish).
Ta'minotlar
- Raspberry Pi 4
- Pimoroni Fan Shim
1 -qadam: muxlisni o'rnating
Birinchi qadam - fanatni o'rnatish. Pimorini darsligi ajoyib!
Keyin Pi terminalini oching (ctrl alt t)
Va Pimoroni tomonidan taqdim etilgan kodni o'rnating
git klon https://github.com/pimoroni/fanshim-pythoncd fanshim-python sudo./install.sh
2 -qadam: PI (D) tekshirgichini yarating
Proportional Integral Derivative (PID) tekshirgichi - ma'lum bir jismoniy qurilmani (Fan tezligi) boshqarish orqali ma'lum bir jarayonning qiymatini (CPU harorati) boshqarish uchun ishlatiladigan tizim. Vaqti -vaqti bilan yoqish va o'chirish orqali fanning "tezligi" va shovqinini boshqarishimiz mumkin (Puls to'lqini modulyatsiyasi). Muayyan davrda (masalan, 1 soniya) ishlayotgan vaqt fanning qanchalik tez va qanchalik balandligini aniqlaydi (900ms = baland va tez, 100ms = jim va sekin). Biz fan tezligini boshqarish va shu bilan haroratni nazorat qilish uchun PIDdan foydalanamiz.
Biz PIDdan foydalanishni bir necha bosqichlarga bo'lishimiz mumkin.
- Siz erishmoqchi bo'lgan jarayon o'zgaruvchisining qiymati to'g'risida qaror qabul qiling (masalan, CPU harorati = 55). Bu sizning belgilangan nuqtangiz deb ataladi.
- PID xatosini hisoblang. Agar sizning belgilangan nuqtangiz 55 daraja va haqiqiy harorat 60 daraja bo'lsa, sizning xatoingiz 5 daraja (Harorat - belgilangan nuqta)
- Ventilyatorning ish vaqtini xatoga mutanosib ravishda o'zgartiring (Katta xatolar fan tezligida katta o'zgarishlarga olib keladi, kichik xatolar fan tezligida kichik o'zgarishlarga olib keladi).
- Ventilyatorni oldingi qiymatlarga mos ravishda sozlang (oldingi xatolar yig'indisi/yig'indisi)
- Ixtiyoriy ravishda siz fan tezligini xato tezligiga (lotin) qarab sozlaysiz, lekin biz buni bu erda qilmaymiz
Endi siz nazariyani Thonny IDE (yoki boshqa python IDE) da ishlatishingiz mumkin. Quyidagi koddagi "maqsad" qiymatini o'zgartiring, shunda siz Pi -ni qanday haroratda saqlamoqchisiz. Men "P" va "I" shartlarini biroz ixtiyoriy qiymatlarga qo'ydim. Agar ular sizga mos kelmasa, ularni sozlang. "P" ni kattalashtirish, nazoratchi yangi xatolarga tezda javob beradi (lekin barqaror bo'lmasligi mumkin). "Men" ni o'zgartirish nazoratchining og'irligini oshiradi, bu uning oldingi qadriyatlarga javobini ko'rsatadi. Men bu shartlarni juda katta qilishga urinmagan bo'lardim, chunki fan tezligini tez o'zgartirish termatoriyani tez o'zgartirmaydi. Bundan tashqari, agar siz Pi -da nihoyatda og'ir ish qilsangiz, siz xohlagan muddatga erisha olmaysiz (fan chegaralari haligacha amal qiladi).
fanshim import dan FanShim
Vaqt import uyqusidan, vaqt importi import import matematikasi # CPU haroratini belgi qatori sifatida qaytarish defCPUtemperature (): res = os.popen ('vcgencmd tədbir_temp'). readline () qaytish (res.replace ("temp =", " ").replace (" 'C / n "," ")) fanshim = FanShim () target = 55 # kerakli harorat (shu bilan o'ynang va nima bo'lishini ko'ring) davr = 1 # PWM davri =.1 # boshlanishini 0 ga % vazifa tsikli o'chiriladi = davr boshlanganda # boshlang'ich 0% vazifa tsikliga P =.01 # mutanosib daromad olish muddati (shu bilan o'ynang va nima bo'lishini ko'ring) intErr = 0 # integral xato I =.0001 # intergral daromad muddati va nima sodir bo'lishini ko'ring) rost bo'lsa: # get temperaute temp = int (float (getCPUtemperature ())) # xatoni hisoblab, err = temp-target # hisoblash integer lerror va uni cheklang intErr = intErr+err intErr> 10: intErr = 10 bo'lsa intErr = davr: yoqilgan = o'chirilgan vaqt = 0 boshqa: yoqilgan = o'chirilgan = davr-on # minimal ish tsiklini o'rnatilgan bo'lsa <.09: yoqilgan =.09 boshqa: yoqilgan bo'lsa = fanshim pinidagi # PWM == davrda: fanshim.set_fan (Haqiqiy) uyqu (yoqilgan) boshqa: fanshim.set_fan (To'g'ri) s zo'r (yoqilgan) fanshim.set_fan (yolg'on) uyqu (o'chirilgan)
3 -qadam: Boshlash paytida boshqaruv skriptini ishga tushiring
Siz har safar pi -ni ishga tushirganingizda ushbu skriptni ishga tushirishingiz yoki uni avtomatik ravishda qayta ishga tushirishingiz mumkin. Buni crontab bilan qilish juda oddiy.
- terminalni oching
- terminalga crontab-e kiriting
- "@reboot python /home/pi/bootScripts/fanControl.py &" fayliga quyidagi kod qatorini qo'shing
- chiqish va qayta yuklash
Men skriptni (fanControl.py) bootScripts deb nomlangan floderga qo'ydim, lekin siz uni istalgan joyga qo'yishingiz mumkin, faqat crontab -da to'g'ri yo'lni ko'rsatganingizga ishonch hosil qiling.
Hammasi bajarildi! Endi sizning muxlisingiz protsessoringiz haroratini ma'lum bir qiymatgacha boshqaradi, shu bilan birga u chiqaradigan tovushni kamaytiradi.
Tavsiya:
Raspberry Pi yopiq iqlimni nazorat qilish va nazorat qilish tizimi: 6 qadam
Raspberry Pi yopiq iqlimni nazorat qilish va nazorat qilish tizimi: Odamlar o'z uylarida qulay bo'lishni xohlashadi. Bizning hududimizdagi iqlim o'zimizga mos kelmasligi uchun, biz sog'lom ichki muhitni saqlash uchun ko'plab asboblardan foydalanamiz: isitgich, havo sovutgichi, namlagich, namlagich, tozalash moslamasi va boshqalar. Hozirgi kunda bu
L293D bilan haroratni nazorat qilish tizimi: 19 qadam (rasmlar bilan)
L293D bilan haroratni nazorat qilish tizimi: Harorat sezgir boshqariladigan tizim - bu atrof -muhit bilan bog'liq bo'lgan ma'lum bir sohada ob'ektning haroratini boshqaruvchi va ushlab turuvchi qurilma. Ushbu turdagi boshqariladigan tizimlar asosan AC (Konditsionerlar), Refrig
Terrarium uchun namlik va haroratni nazorat qilish tizimi: 11 qadam (rasmlar bilan)
Terrarium uchun namlik va haroratni nazorat qilish tizimi: KIRISH: Bu ko'rsatma Arduino Uno yordamida namlik va haroratni nazorat qilishning modulli tizimini ishlab chiqish uchun mo'ljallangan. Ushbu tizim atrof -muhit parametrlarini va Arduino Uno ulanishini kuzatish uchun suv o'tkazmaydigan namlik va harorat o'lchagichidan foydalanadi
Elektr tezligini nazorat qilish uchun alternativ nazorat signallari generatori (ESC): 7 qadam
Elektr tezligini boshqarish uchun alternativ nazorat signallari generatori (ESC): Bir muncha vaqt oldin men YouTube kanalimda shamol turbinini yasashni ko'rsatgan videoni (https://www.youtube.com/watch?v=-4sblF1GY1E) e'lon qilganman. cho'tkasi bo'lmagan shahar motoridan. Men videoni ispan tilida qildim va bu dvigatel unga berilganligini tushuntirdi
Haroratni nazorat qilish moslamasi va Arduino bilan soat: 7 qadam
Haroratni nazorat qilish moslamasi va Arduino bilan soat: Rasmda Termostat markaziy isitishning aylanma nasosini boshqarishga mo'ljallangan. Agar sizda shahar chekkasida joylashgan uy bo'lsa, qozonni tanlash siz uchun to'siq bo'lmasligi kerak. Garchi, qo'rqitadigan fikr