Orodha ya maudhui:
- Hatua ya 1: Kuandaa Skematiki
- Hatua ya 2: Kufanya Mchoro wa PCB
- Hatua ya 3: Kufunga
- Hatua ya 4: Kuandaa Maandalizi
- Hatua ya 5: Upimaji (Joto la CPU ni Kiwango cha Kati)
- Hatua ya 6: Upimaji (CPU Inahitaji Kiwango cha kupoza)
- Hatua ya 7: Ugavi wa Nguvu kwa Mzunguko wa kiashiria
- Hatua ya 8: RPI Wiring
- Hatua ya 9: Programu ya Python
- Hatua ya 10: Operesheni ya kiashiria
- Hatua ya 11: Uundaji Mbadala (Kutumia NPN Transistor) na Maendeleo zaidi
Video: Kiashiria cha Joto la Raspberry Pi CPU: Hatua 11 (na Picha)
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:48
Hapo awali nilikuwa nimeanzisha rasipiberi rahisi pi (Hapa baadaye kama RPI) mzunguko wa kiashiria cha hali ya utendaji.
Wakati huu, nitaelezea mzunguko muhimu zaidi wa kiashiria kwa RPI inayoendesha bila kichwa (bila mfuatiliaji).
Mzunguko hapo juu unaonyesha joto la CPU katika viwango 4 tofauti kama vile:
- LED ya kijani imewashwa wakati joto la CPU liko ndani ya digrii 30 ~ 39
- LED ya manjano inaonyesha joto limeongezeka kwa kiwango cha 40 hadi 45 digrii
- 3 ya LED Nyekundu inaonyesha CPU kuwa moto kidogo kwa kufikia digrii 46 ~ 49
- Mwangaza mwingine mwekundu utawaka wakati joto linazidi digrii zaidi ya 50
Viwango vya joto vya CPU hapo juu ni dhana yangu ya kibinafsi ya kubuni (Viwango vingine vya joto vinaweza kusanidiwa kwa kubadilisha hali ya mtihani wa programu ya chatu ambayo inadhibiti mzunguko huu).
Kwa kutumia mzunguko huu, sio lazima utekeleze amri ya "vcgencmd measure_temp" mara kwa mara kwenye kituo cha kiweko.
Mzunguko huu utafahamisha joto la sasa la CPU kuendelea na kwa urahisi.
Hatua ya 1: Kuandaa Skematiki
Ingawa unaweza kudhibiti LED 4 moja kwa moja kwa kutumia nambari tu za chatu, mantiki ya kudhibiti programu hiyo itapakia RPI na kwa sababu hiyo, joto la CPU litaongezwa zaidi kwa sababu unapaswa kutumia nambari ngumu kidogo ya chatu kila wakati.
Kwa hivyo, ninapunguza ugumu wa msimbo wa chatu rahisi iwezekanavyo na kupakua mantiki ya kudhibiti LED kwa mzunguko wa vifaa vya nje.
Kiashiria cha joto cha CPU (Baadaye INICATOR) mzunguko una sehemu kuu zifuatazo.
- Viboreshaji viwili vya macho vimeunganishwa na pini za RPI GPIO kupata data ya kiwango cha joto kama vile 00-> LOW, 01-> Medium, 10-> High, 11-> Haja ya kupoza.
- 74LS139 (au 74HC139, 2-to-4 decoder na de-multiplexer) matokeo ya kudhibiti (Y0, Y1, Y2, Y3) kulingana na pembejeo (A, B)
- Wakati joto liko ndani ya digrii 30 ~ 39, python code pato 00 hadi pini za GPIO. Kwa hivyo, 74LS139 hupata data ya ingizo 00 (A-> 0, B-> 0)
- Kama 00 imeingizwa, pato la Y0 linakuwa chini. (Tafadhali rejelea meza ya ukweli ya 74LS139)
- Wakati pato la Y0 linakuwa chini, inawasha transistor ya 2N3906 PNP na kama matokeo, Green LED imewashwa
- Vivyo hivyo, Y1 (01 -> wastani wa joto la CPU) itawasha LED ya Njano na kadhalika
- Wakati Y3 inakuwa LOW, DB140 inayowasha NE555 LED blinking mzunguko (hii ni kawaida 555 IC msingi LED blinker) ambayo ni mzigo wa BD140 PNP transistor
Sehemu muhimu zaidi ya mzunguko huu ni 74LS139 ambayo inaamua nambari 2 za kuingiza katika pato 4 tofauti kama inavyoonyeshwa kwenye jedwali la ukweli hapa chini.
Ingizo | Pato
G (Wezesha) | B | A | Y0 | Y1 | Y2 | Y3 |
H | X | X | H | H | H | H |
L | L | L | L | H | H | H |
L | L | H | H | L | H | H |
L | H | L | H | H | L | H |
L | H | H | H | H | H | L |
Kwa kuwa pato la 74LS139 linakuwa chini, transistor ya aina ya PNP inaweza kufanya mzunguko kuwa rahisi kama transistor ya PNP imewashwa wakati kituo cha msingi kinakuwa CHINI. (Nitaonyesha toleo la NPN mwisho wa hadithi hii)
Kama potentiometer 100K imejumuishwa kwenye mzunguko wa blinker wa NE555, wakati wa LED Nyekundu ON / OFF unaweza kubadilishwa kwa uhuru kulingana na mahitaji.
Hatua ya 2: Kufanya Mchoro wa PCB
Kama mpango wa uendeshaji wa INDICATOR unavyoelezwa, wacha tuanze kufanya mzunguko.
Kabla ya kuuza kitu kwenye bodi ya ulimwengu, kuandaa uchoraji wa PCB iliyoonyeshwa hapo juu inasaidia kupunguza makosa yoyote.
Mchoro huo unafanywa kwa kutumia nguvu-nguvu ili kupata kila sehemu kwenye ubao wa ulimwengu na kutengeneza mifumo ya wiring kati ya sehemu zilizo na waya.
Kama picha za IC na transistor zilizopigwa pamoja ziko pamoja na muundo wa wiring wa PCB, utaftaji unaweza kufanywa kwa kutumia mchoro huu.
Hatua ya 3: Kufunga
Ingawa uchoraji wa asili wa PCB umetengenezwa bila kutumia waya moja kuunganisha vifaa kwenye PCB, ninaunganisha tofauti.
Kwa kutumia kondakta moja wa waya (sio waya wa bati), ninajaribu kupunguza ukubwa wa PCB wa ulimwengu wote ambao una mzunguko wa INDICATOR.
Lakini kama unavyoona kwa upande wa soldering wa PCB, ninatumia waya wa bati pia kulingana na mifumo iliyoonyeshwa kwenye uchoraji wa PCB.
Wakati kila sehemu imeunganishwa kulingana na muundo wa asili wa uchoraji wa PCB, bodi ya PCB iliyokamilishwa ikiwa ni pamoja na mzunguko wa INDICATOR itafanya kazi kwa usahihi.
Hatua ya 4: Kuandaa Maandalizi
Kabla ya unganisho la RPI, mzunguko uliomalizika unahitaji upimaji.
Kama makosa yoyote ya kuuza yanaweza kuwepo, muuzaji wa umeme wa DC hutumiwa kuzuia uharibifu wakati kaptula au wiring isiyofaa imetokea.
Kwa kupima INDICATOR, nyaya mbili za ziada za usambazaji wa umeme zimeunganishwa na kontakt ya usambazaji wa umeme wa 5V.
Hatua ya 5: Upimaji (Joto la CPU ni Kiwango cha Kati)
Wakati hakuna pembejeo ya 5V inatumika basi 74LS139 ya kuweka pembejeo na kuwezesha pato Y0 kama LOW (Green LED imewashwa).
Lakini 5V ilitumika kwa kuingiza A, pato Y1 ya 74LS139 inayowasha (LOW).
Kwa hivyo, LED ya Njano imewashwa kama inavyoonekana kwenye picha hapo juu.
Hatua ya 6: Upimaji (CPU Inahitaji Kiwango cha kupoza)
Wakati 5V ilitumia pembejeo zote mbili (A na B) za 74LS139, 4 ya Nyekundu ya LED inaangaza.
Kiwango cha kupepesa kinaweza kubadilishwa kwa kurekebisha 100K VR kama inavyoonekana kwenye picha hapo juu.
Wakati upimaji umekamilika, nyaya mbili za kike za Molex 3 zinaweza kuondolewa.
Hatua ya 7: Ugavi wa Nguvu kwa Mzunguko wa kiashiria
Ili kuwezesha mzunguko wa INDICATOR, ninatumia chaja ya kawaida ya mkono inayotoa 5V na adapta ya USB-B kama inavyoonekana kwenye picha hapo juu.
Ili kuzuia shida na RPI kwa kuunganisha 3.3V GPIO na 5V inayoendeshwa na mzunguko wa INDICATOR, kiwambo cha ishara na usambazaji wa umeme zimetengwa kabisa kwa kila mmoja.
Hatua ya 8: RPI Wiring
Kwa kuingiliana kwa mzunguko wa INDICATOR na RPI, pini mbili za GPIO zinapaswa kuwekwa wakfu pamoja na pini mbili za ardhini.
Hakuna mahitaji maalum ya kuchagua pini za GPIO.
Unaweza kutumia pini yoyote ya GPIO kuunganisha INDICATOR.
Lakini pini zenye waya zinapaswa kuteuliwa kama pembejeo kwa 74LS139 (k.v. A, B) katika mpango wa chatu.
Hatua ya 9: Programu ya Python
Mzunguko ukikamilika, kutengeneza programu ya chatu inahitajika kutumia kazi ya INDICATOR.
Tafadhali rejelea chati ya mtiririko hapo juu kwa undani zaidi juu ya mantiki ya programu.
# - * - kuorodhesha: utf-8 - * -
kuagiza subprocess, ishara, sys
muda wa kuagiza, re
kuagiza RPi. GPIO kama g
A = 12
B = 16
g.setmode (g. BCM)
kuanzisha. (A, g. OUT)
g kuanzisha (B, g. OUT)
##
def signal_handler (sig, fremu):
chapisha ('Umebonyeza Ctrl + C!')
g. Pato (A, Uongo)
g. pato (B, Uongo)
f. karibu ()
tembea (0)
ishara.saini (ishara. SIGINT, signal_handler)
##
wakati Kweli:
f = fungua ('/ home / pi / My_project / CPU_temperature_log.txt', 'a +')
temp_str = subprocess.check_output ('/ opt / vc / bin / vcgencmd kipimo_temp', ganda = Kweli)
temp_str = temp_str.decode (encoding = 'UTF-8', makosa = 'kali')
CPU_temp = re.findall ("\ d + \. / D +", temp_str)
# kutoa joto la sasa la CPU
sasa_temp = kuelea (CPU_temp [0])
ikiwa sasa_temp> 30 na sasa_temp <40:
# joto chini A = 0, B = 0
g. Pato (A, Uongo)
g. pato (B, Uongo)
saa. kulala (5)
elif current_temp> = 40 na sasa_temp <45:
# joto kati A = 0, B = 1
g. Pato (A, Uongo)
g. Pato (B, Kweli)
saa. kulala (5)
elif current_temp> = 45 na sasa_temp <50:
# joto la juu A = 1, B = 0
g. pato (A, Kweli)
g. pato (B, Uongo)
saa. kulala (5)
elif ya sasa_temp> = 50:
# CPU baridi inahitajika juu A = 1, B = 1
g. pato (A, Kweli)
g. Pato (B, Kweli)
saa. kulala (5)
wakati_wa sasa = wakati. wakati ()
formated_time = time.strftime ("% H:% M:% S", time.gmtime (wakati_wa sasa))
f. andika (str (formated_time) + '\ t' + str (sasa_temp) + '\ n')
f. karibu ()
Kazi kuu ya mpango wa chatu ni kama ilivyo hapo chini.
- Kwanza kuweka GPIO 12, 16 kama bandari ya pato
- Kufafanua Ctrl + C usumbue kidhibiti kwa kufunga faili ya logi na uzime GPIO 12, 16
- Unapoingia kwa kitanzi kisicho na mwisho, fungua faili ya kumbukumbu kama hali ya kuongeza
- Soma joto la CPU kwa kutekeleza amri ya "/ opt / vc / bin / vcgencmd measure_temp"
- Wakati joto liko katika kiwango cha 30 ~ 39 kisha pato 00 kuwasha LED ya Kijani
- Wakati joto liko katika kiwango cha 40 ~ 44 kisha pato 01 kuwasha LED ya Njano
- Wakati joto liko katika kiwango cha 45 ~ 49 kisha pato la 10 kuwasha LED Nyekundu
- Wakati joto ni zaidi ya 50 basi pato la 11 kufanya Nyekundu ya LED kupepesa
- Andika muda wa stempu na data ya joto kuingia faili
Hatua ya 10: Operesheni ya kiashiria
Wakati kila kitu ni sawa, unaweza kuona kila LED ikiwasha au kupepesa kulingana na joto la CPU.
Huna haja ya kuingiza amri ya ganda kuangalia joto la sasa.
Baada ya kukusanya data kwenye faili ya logi na kutoa data ya maandishi kwenye grafu kwa kutumia Excel, matokeo yanaonyeshwa picha hapo juu.
Wakati wa kutumia mizigo ya juu (Kuendesha Kivinjari cha Midori mbili na kucheza video ya Youtube), joto la CPU limeongezeka hadi 57.9C.
Hatua ya 11: Uundaji Mbadala (Kutumia NPN Transistor) na Maendeleo zaidi
Huu ni mfano wa mradi uliopita wa INDICATOR unaotumia transistors za NPN (2N3904 na BD139).
Kama unaweza kuona IC moja zaidi (74HC04, Quad invertors) ni muhimu kuendesha transistor ya NPN kwani voltage ya kiwango cha juu inapaswa kutumika kwa msingi wa NPN kuwasha transistor.
Kama muhtasari, kutumia transistor ya NPN ongeza ugumu usiohitajika ili kufanya mzunguko wa INDICATOR.
Kwa maendeleo zaidi ya mradi huu, nitaongeza shabiki wa kupoza kama inavyoonyeshwa kwenye picha hapo juu kwa kufanya mzunguko wa INDICATOR uwe muhimu zaidi.
Ilipendekeza:
Sanduku la Raspberry Pi la FAN ya kupoza Na Kiashiria cha Joto la CPU: Hatua 10 (na Picha)
Sanduku la Raspberry Pi la FAN ya kupoza Na Kiashiria cha Joto la CPU: Nilikuwa nimeanzisha rasipberry pi (Hapa kama RPI) Mzunguko wa kiashiria cha joto cha CPU katika mradi uliopita. Mzunguko unaonyesha tu RPI 4 kiwango tofauti cha joto cha CPU kama ifuatavyo. - Green Green iliwashwa wakati Joto la CPU liko ndani ya 30 ~
Kiashiria cha Mbwa cha Kiashiria cha Umbali wa LED: Hatua 5 (na Picha)
Kiashiria cha Mbwa cha Kiashiria cha Umbali wa LED: Mara nyingi mimi huchukua mbwa wangu Rusio kutembea wakati jua linapozama ili aweze kucheza bila kupata moto sana. Shida ni kwamba wakati anatoka kwenye leash wakati mwingine huwa na msisimko mwingi na hukimbia zaidi kuliko inavyostahili na kwa taa ndogo na mbwa wengine
Wasiliana na Kiashiria Kidogo na cha Kutu Kiashiria cha Kiwango cha Maji na Udhibiti wa Magari. 5 Hatua
Wasiliana na Kiashiria cha kiwango cha chini cha maji na ulikaji na Udhibiti wa Magari. Njia isiyo ya kuwasiliana kwa msaada wa sensorer ya ultrasonic na Arduino uno board.P
ESP32 Kulingana na M5Stack M5stick C Hali ya hewa Monitor na DHT11 - Fuatilia Unyevu wa Joto na Kiashiria cha Joto kwenye M5stick-C Pamoja na DHT11: 6 Hatua
ESP32 Kulingana na M5Stack M5stick C Hali ya hewa Monitor na DHT11 | Fuatilia Unyevu wa Joto na Kiashiria cha Joto kwenye M5stick-C Pamoja na DHT11: Halo jamani, katika mafundisho haya tutajifunza jinsi ya kusanikisha sensa ya joto ya DHT11 na m5stick-C (bodi ya maendeleo na m5stack) na kuionyesha kwenye onyesho la m5stick-C. Kwa hivyo katika mafunzo haya tutasoma joto, unyevu & joto i
Joto -Joto La Kudhibitiwa la Joto La joto: Hatua 6
Joto -Joto La Kutabasamu La Kudhibiti Joto: ******************************************* ************************************************** +