Mundarija:

Pi uchun avtomatlashtirilgan sovutish foniy: 4 qadam (rasmlar bilan)
Pi uchun avtomatlashtirilgan sovutish foniy: 4 qadam (rasmlar bilan)

Video: Pi uchun avtomatlashtirilgan sovutish foniy: 4 qadam (rasmlar bilan)

Video: Pi uchun avtomatlashtirilgan sovutish foniy: 4 qadam (rasmlar bilan)
Video: Машинангизни "ТАМОМ КИЛАДИГАН" 7та Зарарли ОДАТ! 2024, Noyabr
Anonim
Pi uchun avtomatlashtirilgan sovutish foniy
Pi uchun avtomatlashtirilgan sovutish foniy

Tavsif: pitonli 5Vli fanni, taxtali, tranzistorlar va boshqalarni ishlatmasdan boshqarish uchun oddiy dizayn. Sizga bir nechta kabel va 1 kanalli o'rni kerak. Menda tavsiya etadigan 2 kanalli o'rni bor edi, chunki uning narxi deyarli bir xil va siz qo'shimcha nazoratchini olasiz. Har soatda bajariladigan skript, pi haroratini tekshiradi va kerakli haroratga yetguncha fanni yoqadi/o'chiradi.

Kirish Yoz yaqinlashgandan buyon, mening ikkinchi darajali ta'mim juda issiq bo'lib ketdi, shuning uchun uni vaqti -vaqti bilan sovitib qo'ymoqchi edim. Albatta, menda 24/7 ishlayotgan fan bo'lishi mumkin edi, lekin a) non paneli va ba'zi rezistorlar va hokazo, chunki men uni GPIO pinlariga to'g'ridan -to'g'ri ulay olmayman; b) "tashqi" bilan o'zaro ta'sir qiladigan ba'zi kodlarni yozish. dunyo yanada qiziqarli:) va v) chindan ham arzon … sizga faqat kabellar va o'rni kerak.

Bahramand bo'ling va sharh qoldiring!

1 -qadam: kerakli materiallar

Kerakli materiallar
Kerakli materiallar
Kerakli materiallar
Kerakli materiallar
Kerakli materiallar
Kerakli materiallar
Kerakli materiallar
Kerakli materiallar

- crontab / python sizning pi -ga o'rnatilgan - korpusli malina pi - 5v mini fan (havola) - 2 kanalli o'rni (havola) - ayol va ayol kabellari juftligi (havola). Menda faqat 1 bor edi, shuning uchun men kompyuter uchun eski DVD audio kabelidan va o'rni nazorat qilish pimi uchun qo'shimcha f2f kabelidan foydalanardim.

E'tibor bering: mening ahududu qutim ustidagi teshik odatdagidan biroz kichikroq edi, shuning uchun uni biroz kengroq qilish uchun matkapdan foydalanishim kerak edi. Ehtimol, agar siz uning o'lchamiga ishonchingiz komil bo'lmasa, unga 5V fan o'rnatilgan korpusni olishingiz kerak.

2 -qadam: O'chirish - yig'ilish

O'chirish - yig'ilish
O'chirish - yig'ilish
O'chirish - yig'ilish
O'chirish - yig'ilish
O'chirish - yig'ilish
O'chirish - yig'ilish
O'chirish - yig'ilish
O'chirish - yig'ilish

Yuqoridagi rasmdan ko'rinib turibdiki, men sizda bo'lishi mumkin bo'lgan malina pi turiga mos keladigan 2, 6, 12 -pinlardan foydalanayapman, shuning uchun men Pi -dan foydalanayotganimdan xavotir olmang. Model B rev2.

Kabellarni xuddi shu tarzda ulang.- 5v (pin2) VCC ga o'tadi- GND (pin6)- GND- GPIO18 (pin2)- IN1 ga o'tadi. JD-VCC VCC.

Endi estafetaga … Mening sozlamalarim biroz g'alati, bilaman. Men fanni ishga tushirish uchun tashqi quvvat manbaidan foydalanishni xohlamadim, shuning uchun uni pi ga ham uladim. Ventilyator kabellarini xuddi men qilgandek ulash uchun siz pi dan keladigan 5v va GND simlarini kichik kesishingiz kerak bo'ladi. Siz payvand chig'anog'idan va men singari lentadan foydalanishingiz mumkin, menimcha, sizning pichog'ingizni g'isht qilishdan tashvishlanish uchun hech qanday sabab yo'q, chunki faqat er kabeli to'g'ridan -to'g'ri pi ga ulangan. Agar siz rasmga diqqat bilan qarasangiz, o'rni kaliti quvvat kabeliga ulangan, ya'ni fan o'chirilgan bo'lsa, pi bilan to'g'ridan -to'g'ri ulanish ham "ochiq" bo'ladi. Shunday qilib, fan o'chishi mumkin bo'lgan elektr tokini qaytarishi mumkin emas, men bu eshikdan o'z o'rni ustida foydalanishimning sababi shundaki, o'rni tepasida kichkina chiroq bor. Men fan yonib turganida qizil chiroqni ko'rishni xohlardim, shuning uchun pi qachon sovishini bilaman, agar xohlasangiz, boshqa eshiklardan foydalanishingiz mumkin, shunda teskari narsa sodir bo'ladi, lekin GPIO buyruqlarini qaytarishingiz kerak bo'ladi. python skriptida (keyingi bosqichda fanON fan OFF funksiyalarida ko'rsatiladi) uni ishga tushirish uchun … Biz unga etib kelganimizda nimani nazarda tutayotganimni ko'rasiz.

3 -qadam: skript

Skript
Skript
Skript
Skript

Endi ssenariy qilishdan xafa bo'lmang … O'tgan hafta men pythonni bilmas edim, lekin men u erda turli misollarni o'qish va sinab ko'rish orqali bu skriptni yozishga muvaffaq bo'ldim. Men boshqa dasturlash tillarini bilaman, lekin xavotir olmang, men sizning pi -ni portlatmayman. Agar men boshqa birov yozgan ba'zi funktsiyalarni ishlatgan bo'lsam (ehtimol men qilgan bo'lsam), kreditlar uchun uzr so'rayman, lekin men bu skriptni shunday tuzatdim ko'p, u asosan yangi.

Ko'rsatmalar

1) Qo'shimchani yuklab oling yoki uni pastebindan nusxa ko'chiring/joylashtiring va fan.py deb nomlang

2) fan.py skriptini/home/pi/papkasiga joylashtiring

3) bajaring: sudo chmod +x /home/pi/fan.py va sudo chown pi: pi /home/pi/fan.py

4) Agar sizda crontab o'rnatilgan bo'lsa, uni bajaring: crontab -e

5) Pastdagi nusxa ko'chirish /joylashtirish: 5 * * * * sudo python /home/pi/fan.py va faylni saqlang. (Ctrl+X va Y)

Bu crontab skriptni har 1 soatda bajaradi. Skript mustaqil skript sifatida ishlaydi … ya'ni avtomatlashtirilgan crontab harakatidan tashqari siz fanatni qo'lda yoqishingiz/o'chirishingiz mumkin. Siz buni quyidagi parametrlar yordamida bajarasiz:

  • sudo python /home/pi/fan.py on yoki
  • sudo python /home/pi/fan.py o'chirilgan

Skript ishlayotganda Ctrl+C tugmachalarini bosganingizda, men ham xavfsiz bo'lmagan funktsiyani yozdim. Agar shunday qilsangiz, muxlis skript chiqmasdan oldin yopiladi.

Xo'sh, bu qanday ishlaydi?

Har soatda skript bajaradi va pi haroratini tekshiradi. Agar harorat X qiymatidan yuqori bo'lsa, fan yoqiladi va u Y qiymatiga qadar soviguncha qoladi. Qachonki, skript chiqadi. Agar biron sababga ko'ra u past haroratga etib bormasa va bir soat o'tib ketsa, keyingi safar skript bajarilganda, fan ishlayotganini ko'radi va ikkinchi skript o'chadi … shuning uchun agar siz fanni yoqishini xohlasangiz, real harorat qiymatlaridan foydalaning. Aslida yoqish/o'chirish. Agar bo'lmasa, fan har doim yonib turishi uchun kulgili qiymatlarni o'rnating (Y = 0 daraja Selsiy kabi). Agar sizning pi shu 2 qiymat (X, Y) o'rtasida ishlayotgan bo'lsa, demak u "qabul qilingan" haroratda ishlaydi, shuning uchun skript har soatda haroratni tekshirganda chiqadi.

Ba'zi qadriyatlarni tushuntirish

Skriptning yuqori qismida global o'zgaruvchilar mavjud. O'zgartirishingiz kerak bo'lgan o'zgaruvchilar bor.

# Qaysi pin o'rni boshqarilishini aniqlangFAN_PIN = 18 # sariq quti ex: GPIO18 # Haroratni tekshirish. Agar fan> 49C FAN_START = 49 # Harorat tekshiruvi bo'lsa, fanni ishga tushiring. 28C FAN_END = 28 ostida o'chiring

Bu erda nima qilish kerakligi aniq. Agar siz GPIO18 -ni men kabi ishlatgan bo'lsangiz, bu erda 18 -ni qoldiring, aks holda bu qiymatni ishlatgan gpio -ga o'zgartiring. FAN_START va FAN_END - siz foydalanmoqchi bo'lgan yuqori/past harorat. Agar xohlasangiz, u erda float raqamlarini ham qo'yishingiz mumkin, masalan 49.2

Eslatma:

O'rnimizni qanday o'rnatganimni eslaysizmi? Agar fanON va fanOFF funktsiyalarini ko'rsangiz, men fanni yoqish uchun gpio chiqishini "False" ga, uni o'chirish uchun "True" ga o'rnatayotganimni sezasiz. Agar siz o'rni uchun boshqa eshik konfiguratsiyasini tanlagan bo'lsangiz, ehtimol siz bu qiymatlarni o'zgartirishingiz kerak bo'ladi.

4 -qadam: Yakuniy eslatmalar

Yakuniy eslatmalar
Yakuniy eslatmalar

Batafsil ko'rsatmalar uchun uzr so'rayman. Men barcha turdagi foydalanuvchilarni qamrab olmoqchi edim. Ehtimol, bularning barchasini qilishning yaxshiroq yo'li bor, lekin men qo'limdagi materiallar bilan, sxemada va pitonda nohaqligim bilan qo'limdan kelganicha harakat qildim.

Kichik bonus kodi

Agar siz pi haroratini tekshirishning tezkor usulini xohlasangiz,/usr/local/bin papkasida temp deb nomlangan fayl yarating va keyin bu skriptni nusxa ko'chiring:

pastebin.com/rUYqGjV5

bajaring: chmod +x/usr/local/bin/temp.

Keyin har bir papkaning haroratini ko'rish uchun tempni kiriting.

Tavsiya: