Cov txheej txheem:

PWM Tswj Tus Kheej Raws Li CPU Kub rau Raspberry Pi: 4 Cov Kauj Ruam (nrog Duab)
PWM Tswj Tus Kheej Raws Li CPU Kub rau Raspberry Pi: 4 Cov Kauj Ruam (nrog Duab)

Video: PWM Tswj Tus Kheej Raws Li CPU Kub rau Raspberry Pi: 4 Cov Kauj Ruam (nrog Duab)

Video: PWM Tswj Tus Kheej Raws Li CPU Kub rau Raspberry Pi: 4 Cov Kauj Ruam (nrog Duab)
Video: Saib Mis paub Poj niam (hluas nkauj) tus yam ntxwv lub siab 2024, Kaum ib hlis
Anonim
PWM Tswj Tus Kheej Raws Li CPU Kub rau Raspberry Pi
PWM Tswj Tus Kheej Raws Li CPU Kub rau Raspberry Pi

Ntau kis rau Raspberry Pi tuaj nrog me ntsis 5V kiv cua txhawm rau pab ua kom txias CPU. Txawm li cas los xij, cov kiv cua no feem ntau zoo nkauj tsis zoo thiab ntau tus neeg ntsaws rau ntawm 3V3 tus pin kom txo tau lub suab nrov. Cov kiv cua no feem ntau ntsuas rau 200mA uas zoo nkauj heev rau 3V3 tus tswj hwm ntawm RPi. Txoj haujlwm no yuav qhia koj yuav ua li cas tswj tus kiv cua nrawm raws CPU kub. Tsis zoo li feem ntau ntawm kev qhia qhia txog cov ncauj lus no, peb yuav tsis tsuas yog qhib lossis kaw lub kiv cua, tab sis yuav tswj hwm nws qhov nrawm zoo li nws tau ua tiav ntawm lub hauv paus PC, siv Python.

Kauj Ruam 1: Qhov Yuav Tsum Tau

Txog qhov haujlwm no, peb yuav siv tsuas yog ob peb yam uas feem ntau suav nrog cov khoom siv hluav taws xob rau cov nyiam ua haujlwm uas koj tuaj yeem pom ntawm Amazon, zoo li qhov no.

  • Raspberry Pi khiav Raspbian (tab sis yuav tsum ua haujlwm nrog lwm qhov kev faib tawm).
  • 5V Ntxuam (tab sis lub kiv cua 12V tuaj yeem siv nrog kev hloov pauv hloov pauv thiab 12V fais fab mov).
  • NPN transistor uas txhawb nqa tsawg kawg 300mA, zoo li 2N2222A.
  • 1 K resistor.
  • 1 ib diode.

Yeem, muab cov khoom tso rau hauv rooj plaub (tab sis tseem tsis tau ua tiav):

  • Ib qho me me ntawm protoboard, txhawm rau muab cov khoom sib txuas.
  • Cov cua sov loj loj, los tiv thaiv lub rooj tsavxwm.

Kauj Ruam 2: Kev Sib Txuas Hluav Taws Xob

Kev Sib Txuas Hluav Taws Xob
Kev Sib Txuas Hluav Taws Xob
Kev Sib Txuas Hluav Taws Xob
Kev Sib Txuas Hluav Taws Xob
Kev Sib Txuas Hluav Taws Xob
Kev Sib Txuas Hluav Taws Xob

Resistor tuaj yeem txuas rau ob txoj hauv kev, tab sis ceev faj txog transistor thiab diode qhov kev taw qhia. Diode cathode yuav tsum txuas nrog +5V (liab) xaim, thiab anode yuav tsum txuas nrog GND (dub) xaim. Txheeb xyuas koj daim ntawv transistor rau Emitter, Base thiab Collector pins. Kiv cua hauv av yuav tsum txuas nrog Tus Sau, thiab Rpi av yuav tsum txuas nrog Emitter

Txhawm rau tswj tus kiv cua, peb yuav tsum siv lub transistor uas yuav raug siv inopen tus neeg tsim khoom teeb tsa. Los ntawm kev ua qhov no, peb muaj qhov hloov pauv uas yuav txuas lossis tshem tawm cov xov hlau hauv av los ntawm tus kiv cua mus rau hauv av ntawm raspberry pi.

NPN BJT transistor ua nyob ntawm qhov tam sim no uas ntws hauv nws lub qhov rooj. Tam sim no uas yuav tso cai ntws los ntawm tus sau (C) mus rau tus tso tawm (E) yog:

Ic = B * Ib

Ic yog qhov tam sim no uas ntws los ntawm tus neeg sau cov emitter, Ib yog qhov tam sim no uas ntws los ntawm lub hauv paus mus rau tus emitter, thiab B (beta) yog tus nqi nyob ntawm txhua tus transistor. Peb kwv yees B = 100.

Raws li peb tus kiv cua tau ntsuas raws li 200mA, peb xav tau tsawg kawg 2mA los ntawm lub hauv paus ntawm transistor. Qhov nro ntawm lub hauv paus thiab tus tso tawm (Vbe) tau txiav txim siab tas li thiab Vbe = 0, 7V. Qhov no txhais tau tias thaum GPIO qhib, peb muaj 3.3 - 0.7 = 2.6V ntawm tus tiv thaiv. Kom muaj 2mA los ntawm tus tiv thaiv, peb xav tau tus tiv thaiv ntawm, siab tshaj, 2.6 / 0.002 = 1300 ohm. Peb siv tus tiv thaiv ntawm 1000 ohm los ua kom yooj yim thiab ua kom muaj qhov yuam kev yuam kev. Peb yuav muaj 2.6mA los ntawm tus pin GPIO uas muaj kev nyab xeeb kiag li.

Raws li tus kiv cua yog qhov pib ntawm lub cav hluav taws xob, nws yog tus nqi hluav taws xob. Qhov no txhais tau tias thaum lub transistor nres kev ua haujlwm, qhov tam sim no hauv lub kiv cua yuav txuas ntxiv mus raws li tus nqi inductive sim ua kom tsis tu ncua tam sim no. Qhov no yuav ua rau muaj qhov hluav taws xob siab ntawm tus pin hauv av ntawm tus kiv cua thiab tuaj yeem ua rau lub transistor puas. Tias yog vim li cas peb xav tau lub diode ua ke nrog lub kiv cua uas yuav ua rau cov dej ntws ntws tas li los ntawm lub cav. Hom teeb diode no hu ua Flywheel diode

Kauj Ruam 3: Txoj Haujlwm Tswj Xyuas Tus Kiv Cua

Txhawm rau tswj cov kiv cua nrawm, peb siv software PWM teeb liab los ntawm RPi. GPIO lub tsev qiv ntawv. Lub PWM Teeb liab tau hloov pauv tau zoo los tsav lub tshuab hluav taws xob, vim tias lawv lub sijhawm tiv thaiv yog siab heev piv rau PWM zaus.

Siv qhov program calib_fan.py txhawm rau nrhiav FAN_MIN tus nqi los ntawm kev khiav hauv lub davhlau ya nyob twg:

nab hab sej calib_fan.py

Txheeb xyuas ob peb qhov tseem ceeb ntawm 0 thiab 100% (yuav tsum nyob ib puag ncig 20%) thiab pom dab tsi yog tus nqi qis tshaj rau koj tus kiv cua kom qhib.

Koj tuaj yeem hloov qhov kev sib tham ntawm qhov kub thiab txias kiv cua thaum pib ntawm txoj cai. Yuav tsum muaj ntau yam tempSteps li speedSteps qhov tseem ceeb. Nov yog txoj hauv kev uas feem ntau siv hauv PC motherboards, txav cov ntsiab lus ntawm Temp / Speed 2-axis teeb duab.

Kauj Ruam 4: Khiav Qhov Kev Pabcuam Thaum Pib

Txhawm rau khiav qhov haujlwm tau txais thaum pib, Kuv tau sau tsab ntawv bash qhov kuv tso txhua qhov haujlwm uas kuv xav tso tawm, thiab tom qab ntawd kuv tso tsab ntawv bash no thaum pib nrog rc.locale

  1. Tsim cov npe/tsev/pi/Ntawv sau/thiab tso cov ntaub ntawv fan_ctrl.py hauv cov npe ntawd.
  2. Hauv tib phau ntawv teev npe, tsim cov ntawv hu ua launcher.sh thiab luam tsab ntawv hauv qab no.
  3. Kho cov ntaub ntawv /etc/rc.locale thiab ntxiv kab tshiab ua ntej "tawm 0": sudo sh '/home/pi/Scripts/launcher.sh'

launcher.sh tsab ntawv:

#!.

Yog tias koj xav siv nws nrog OSMC piv txwv, koj yuav tsum pib nws li kev pabcuam nrog systemd.

  1. Rub tawm cov ntaub ntawv fanctrl.service.
  2. Txheeb xyuas txoj hauv kev rau koj cov ntaub ntawv sej.
  3. Muab fanctrl.service hauv/lib/systemd/system.
  4. Thaum kawg, qhib kev pabcuam nrog sudo systemctl pab kom fanctrl.service.

Txoj kev no muaj kev nyab xeeb dua, vim tias txoj haujlwm yuav rov pib dua yog tias raug tua los ntawm tus neeg siv lossis lub kaw lus.

Pom zoo: