Բովանդակություն:

PWM կարգավորվող օդափոխիչ ՝ հիմնված Raspberry Pi- ի պրոցեսորի ջերմաստիճանի վրա. 4 քայլ (նկարներով)
PWM կարգավորվող օդափոխիչ ՝ հիմնված Raspberry Pi- ի պրոցեսորի ջերմաստիճանի վրա. 4 քայլ (նկարներով)

Video: PWM կարգավորվող օդափոխիչ ՝ հիմնված Raspberry Pi- ի պրոցեսորի ջերմաստիճանի վրա. 4 քայլ (նկարներով)

Video: PWM կարգավորվող օդափոխիչ ՝ հիմնված Raspberry Pi- ի պրոցեսորի ջերմաստիճանի վրա. 4 քայլ (նկարներով)
Video: MKS Monster8 - TMC2208 UART 2024, Նոյեմբեր
Anonim
PWM կարգավորվող երկրպագու ՝ հիմնված Raspberry Pi- ի պրոցեսորի ջերմաստիճանի վրա
PWM կարգավորվող երկրպագու ՝ հիմնված Raspberry Pi- ի պրոցեսորի ջերմաստիճանի վրա

Raspberry Pi- ի համար շատ դեպքեր գալիս են մի փոքր 5V օդափոխիչով, որը կօգնի սառեցնել պրոցեսորը: Այնուամենայնիվ, այս երկրպագուները սովորաբար բավականին աղմկոտ են, և շատ մարդիկ այն միացնում են 3V3 պինին `աղմուկը նվազեցնելու համար: Այս երկրպագուները սովորաբար գնահատվում են 200 մԱ, ինչը բավականին բարձր է RPi- ի 3V3 կարգավորիչի համար: Այս նախագիծը կսովորեցնի ձեզ, թե ինչպես կարգավորել օդափոխիչի արագությունը ՝ հիմնվելով պրոցեսորի ջերմաստիճանի վրա: Ի տարբերություն այս թեման լուսաբանող ձեռնարկների մեծ մասի, մենք ոչ միայն միացնելու կամ անջատելու ենք օդափոխիչը, այլ վերահսկելու ենք դրա արագությունը, ինչպես դա արվում է հիմնական համակարգչի վրա ՝ օգտագործելով Python:

Քայլ 1: Անհրաժեշտ մասեր

Այս նախագծի համար մենք կօգտագործենք ընդամենը մի քանի բաղադրիչ, որոնք սովորաբար ներառված են էլեկտրոնիկայի հավաքածուներում `զբաղմունքների համար, որոնք կարող եք գտնել Amazon- ում, ինչպես այս մեկը:

  • Raspberry Pi- ն աշխատում է Raspbian- ով (բայց պետք է աշխատի այլ բաշխողների հետ):
  • 5V օդափոխիչ (բայց 12V օդափոխիչը կարող է օգտագործվել հարմարեցված տրանզիստորով և 12V էլեկտրամատակարարմամբ):
  • NPN տրանզիստոր, որն ապահովում է առնվազն 300 մԱ, ինչպես 2N2222A:
  • 1K դիմադրություն:
  • 1 դիոդ:

Ընտրովի ՝ բաղադրիչները պատյանում տեղադրելու համար (բայց դեռ արված չէ).

  • Մի փոքր կտոր նախատախտակ ՝ բաղադրիչները եռակցելու համար:
  • Խոշոր ջերմության նվազում, տախտակը պաշտպանելու համար:

Քայլ 2: Էլեկտրական միացումներ

Էլեկտրական միացումներ
Էլեկտրական միացումներ
Էլեկտրական միացումներ
Էլեկտրական միացումներ
Էլեկտրական միացումներ
Էլեկտրական միացումներ

Ռեզիստորը կարող է միացված լինել ցանկացած եղանակով, բայց զգույշ եղեք տրանզիստորի և դիոդի ուղղությամբ: Դիոդի կաթոդը պետք է միացված լինի +5V (կարմիր) մետաղալարին, իսկ անոդը `GND (սև) մետաղալարին: Ստուգեք ձեր տրանզիստորի փաստաթուղթը Emitter, Base և Collector կապումների համար: Fan- ի հիմքը պետք է միացված լինի Collector- ին, իսկ Rpi- ի հիմքը `Emitter- ին:

Օդափոխիչը կառավարելու համար մենք պետք է օգտագործենք տրանզիստոր, որը կօգտագործվի կոլեկտորի բացված կազմաձևում: Դրանով մենք ունենք անջատիչ, որը միացնում կամ անջատում է հողալարերը երկրպագուից ազնվամորու պի գետնին:

NPN BJT տրանզիստորը անցկացնում է ՝ կախված իր դարպասում հոսող հոսանքից: Այն հոսանքը, որը թույլ կտա հոսել կոլեկտորից (C) դեպի emitter (E), հետևյալն է.

Ic = B * Ib

Ic- ն հոսանքն է, որը հոսում է կոլեկտորի արտանետիչը, Ib- ն այն հոսանքն է, որը հոսում է հիմքով դեպի արտանետիչը, և B (բետա) արժեքը `կախված յուրաքանչյուր տրանզիստորից: Մոտավոր B = 100:

Քանի որ մեր օդափոխիչը գնահատվում է որպես 200 մԱ, մեզ անհրաժեշտ է առնվազն 2 մԱ տրանզիստորի հիմքի միջոցով: Հիմքի և արտանետողի (Vbe) միջև լարվածությունը համարվում է հաստատուն և Vbe = 0, 7V: Սա նշանակում է, որ երբ GPIO- ն միացված է, մենք դիմադրության մոտ ունենք 3.3 - 0.7 = 2.6V: Այդ դիմադրիչի միջոցով 2mA ունենալու համար մեզ անհրաժեշտ է առավելագույնը 2.6 / 0.002 = 1300 օմ ռեզիստոր: Մենք օգտագործում ենք 1000 օմ ռեզիստոր `սխալի լուսանցքը պարզեցնելու և պահպանելու համար: Մենք կունենանք 2.6mA GPIO կապի միջոցով, որը լիովին անվտանգ է:

Քանի որ օդափոխիչը հիմնականում էլեկտրական շարժիչ է, դա ինդուկտիվ լիցք է: Սա նշանակում է, որ երբ տրանզիստորը դադարում է հաղորդունակությունը, օդափոխիչի հոսանքը կշարունակի հոսել, քանի որ ինդուկտիվ լիցքը փորձում է անընդհատ պահել հոսանքը: Դա կհանգեցնի բարձր լարման երկրպագուի գրունտի քորոցին և կարող է վնասել տրանզիստորը: Այդ պատճառով օդափոխիչին զուգահեռ մեզ անհրաժեշտ է դիոդ, որը ընթացիկ հոսքը կդարձնի անընդհատ շարժիչի միջով: Այս տեսակի դիոդների տեղադրումը կոչվում է Flywheel դիոդ

Քայլ 3. Օդափոխիչի արագությունը վերահսկելու ծրագիր

Օդափոխիչի արագությունը վերահսկելու համար մենք օգտագործում ենք ծրագրային PWM ազդանշան RPi. GPIO գրադարանից: PWM ազդանշանը լավ հարմարեցված է էլեկտրական շարժիչներ վարելու համար, քանի որ դրանց արձագանքման ժամանակը շատ բարձր է PWM հաճախականության համեմատ:

Օգտագործեք calib_fan.py ծրագիրը `տերմինալում գործարկելով FAN_MIN արժեքը:

python calib_fan.py

Ստուգեք 0 -ից 100% -ի մի քանի արժեքներ (պետք է լինի մոտ 20%) և տեսեք, թե որն է նվազագույն արժեքը, որը պետք է միացնի ձեր երկրպագուն:

Դուք կարող եք փոխել ջերմաստիճանի և օդափոխիչի արագության համապատասխանությունը ծածկագրի սկզբում: Պետք է լինեն այնքան tempSteps, որքան speedSteps արժեքներ: Սա այն մեթոդն է, որն ընդհանուր առմամբ օգտագործվում է ԱՀ մայր տախտակներում ՝ կետերը տեղափոխելով Temp / Speed 2 առանցքի գրաֆիկի վրա:

Քայլ 4: Գործարկեք ծրագիրը գործարկման ժամանակ

Theրագիրը գործարկելիս ինքնաբերաբար գործարկելու համար ես պատրաստեցի bash սցենար, որտեղ տեղադրեցի բոլոր այն ծրագրերը, որոնք ցանկանում եմ գործարկել, այնուհետև գործարկում եմ այս bash սցենարը 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 #նավարկեք դեպի տան գրացուցակ, այնուհետև այս գրացուցակում, այնուհետև կատարեք python սցենարը, այնուհետև վերադարձեք homelocalecd/cd/home/pi/Scripts/sudo python3./fan_ctrl.py & cd/

Եթե ցանկանում եք այն օգտագործել OSMC- ի հետ, օրինակ, պետք է այն սկսել որպես ծառայություն systemd- ով:

  1. Ներբեռնեք fanctrl.service ֆայլը:
  2. Ստուգեք ձեր python ֆայլի ուղին:
  3. Տեղադրեք fanctrl.service/lib/systemd/system- ում:
  4. Վերջապես, միացրեք ծառայությունը sudo systemctl- ով ՝ fanctrl.service- ով:

Այս մեթոդը ավելի անվտանգ է, քանի որ ծրագիրը ինքնաբերաբար կվերագործարկվի, եթե օգտագործողը կամ համակարգը սպանեն:

Խորհուրդ ենք տալիս: