Мазмуну:

CPU температурасы индикатору менен муздатуучу күйөрмандын Raspberry Pi кутусу: 10 кадам (сүрөттөр менен)
CPU температурасы индикатору менен муздатуучу күйөрмандын Raspberry Pi кутусу: 10 кадам (сүрөттөр менен)

Video: CPU температурасы индикатору менен муздатуучу күйөрмандын Raspberry Pi кутусу: 10 кадам (сүрөттөр менен)

Video: CPU температурасы индикатору менен муздатуучу күйөрмандын Raspberry Pi кутусу: 10 кадам (сүрөттөр менен)
Video: Прогрев южного моста материнской платы 2024, Ноябрь
Anonim
Raspberry Pi муздатуучу күйөрманынын CPU температурасы индикатору менен
Raspberry Pi муздатуучу күйөрманынын CPU температурасы индикатору менен

Мен мурунку долбоордо малина pi (мындан ары RPI) процессорунун температура көрсөткүч схемасын киргизген элем.

Район төмөнкүчө RPI 4 ар кандай CPU температурасынын деңгээлин көрсөтүп жатат.

- Жашыл LED CPU температурасы 30 ~ 39 градуста болгондо күйөт

- Сары LED температуранын 40-45 градуска чейин жогорулаганын билдирет

- 3 -Кызыл LED CPU 46 ~ 49 градуска жетүү менен бир аз ысып кетерин көрсөтөт

- Температура 50 градустан ашканда дагы бир кызыл LED күйөт

***

Качан температура 50Стен ашса, кичине RPI ашыкча басым жасабаса, кандайдыр бир жардам керек болот.

Мен бир нече веб-баракчаларда көргөн маалыматка ылайык, RPI максималдуу жол берилген температура деңгээли жөнүндө айтылып жатат, пикирлер ар түрдүү, мисалы, кимдир бирөө жылыткыч колдонулганда 60Стан жогору дагы деле жакшы экенин айтат.

Бирок менин жеке тажрыйбам башка нерсени айтат: берүү сервери (жылыткыч менен RPIди колдонуу) жай болуп, акыры зомбидей болуп, мен аны бир нече саат күйгүзгөндө.

Ошондуктан бул кошумча схема жана муздатуучу ФАН RPIдин туруктуу иштешин колдоо үчүн 50С астындагы CPU температурасын жөнгө салуу үчүн кошулган.

***

Ошондой эле мурда киргизилген CPU температурасынын индикатордук схемасы (мындан ары - ИНДИКАТОР) консолдук терминалда "vcgencmd tədbir_temp" буйругун аткарбастан температуранын ыңгайлуу деңгээлин текшерүүнү колдоо үчүн бириктирилген.

1 -кадам: схемаларды даярдоо

Схемаларды даярдоо
Схемаларды даярдоо

Мурунку эки долбоордо мен RPI менен тышкы микросхемалардын ортосундагы электр менен камсыздоону толугу менен изоляциялоо жөнүндө айткан элем.

ФАНды муздатууда, көз карандысыз электр менен камсыздоо өтө маанилүү, анткени DC 5V FAN (мотор) салыштырмалуу оор жүк жана иштөө учурунда абдан ызы -чуу.

Ошондуктан, бул схеманы иштеп чыгуу үчүн төмөнкү ойлор баса белгиленет.

- Opto-кошкучтар муздатуучу күйгүзүүчү сигналды алуу үчүн RPI GPIO пин менен иштөө үчүн колдонулат

- Бул схеманын кубат булагы үчүн RPIден алынган жана жалпы кол телефондогу заряддагычты колдонуу менен эч кандай энергия жок.

- LED көрсөткүчү муздатуучу ФАНнын иштешин маалымдоо үчүн колдонулат

- 5V релеси муздатуучу желдеткичти механикалык жол менен иштетүү үчүн колдонулат

***

Бул схема python программасын башкаруунун жардамы менен CPU температурасынын индикатордук схемасы (мындан ары-ИНДИКАТОР) менен иштейт.

КӨРСӨТҮҮЧҮ күйө баштаганда (температура 50С ашса), бул муздатуучу ФАН схемасы иштей баштайт.

2 -кадам: Бөлүктөрдү даярдоо

Башка мурунку долбоорлор сыяктуу эле, өтө кеңири таралган компоненттер FAN схемасын муздатуу үчүн колдонулат.

- Opto-кошкучу: PC817 (SHARP) x 1

- 2N3904 (NPN) x 1, BD139 (NPN) x 1

- TQ2-5V (Panasonic) 5V релеси

- 1N4148 диод

- Резисторлор (1/4Watt): 220ohm x 2 (учурдагы чектөө), 2.2K (Transistor switching) x 2

- LED x 1

- 5V муздатуу FAN 200mA

- Универсалдуу такта 20дан ашык (Вт) 20дан (Н) тешик өлчөмүнө чейин (Сиз универсалдуу тактанын каалаган өлчөмүн схемага ылайыкташтыра аласыз)

- Калай зым (Калай сымдын колдонулушу жөнүндө кененирээк маалымат алуу үчүн менин "Raspberry Pi өчүрүү индикатору" долбоорун караңыз)

- Кабель (кызыл жана көк жалпы бир зым кабели)

- Ар кандай колго заряддагыч түзүлүш 220В кирүү жана 5V чыгаруу (USB түрү B туташтыргычы)

- Pin башы (3 казык) x 2

***

Cooling FANнын физикалык өлчөмү RPIдин үстүнө орнотула турганчалык кичине болушу керек.

Реленин бардык түрү 5Вда иштей алганда жана бир нече механикалык контактка ээ болгондо колдонулушу мүмкүн.

3 -кадам: PCB чиймесин жасоо

PCB чиймесин жасоо
PCB чиймесин жасоо

Компоненттердин саны аз болгондуктан, керектүү универсалдуу PCB өлчөмү чоң эмес.

Сураныч, жогорудагы сүрөттө көрсөтүлгөндөй, TQ2-5V пиндин полярдык түзүлүшүнө көңүл буруңуз. (Кадимки ой жүгүртүүдөн айырмаланып, иш жүзүндө плюс/жердин планы тескери уюштурулган)

Жеке менде тескерисинче жайгашкандыктан (башка реле продуктылары менен салыштырганда) TQ2-5V полярлуу казыктары менен ширетүүдөн кийин күтүүсүз көйгөй бар.

4 -кадам: ширетүү

Soldering
Soldering

Райондун өзү өтө жөнөкөй болгондуктан, зымдардын түзүлүшү анча татаал эмес.

Мен "L" формасындагы монтаж кронштейнин ПВДны тик багытта оңдоо үчүн болттоп жатам.

Кийинчерээк көрүп турганыңыздай, акрил шасси кичине кичине.

Андыктан, тамандын изин тарытуу керек, анткени акрил шасси ПХБ жана башка бөлүктөргө жык толгон.

LED алдыңкы жагында FAN ишин оңой таануу үчүн жайгашкан.

5 -кадам: муздатуучу күйөрман калпагын жасоо жана орнотуу

Cooling FAN HAT жасоо жана орнотуу
Cooling FAN HAT жасоо жана орнотуу

Мен универсалдуу ПХБ ар кандай максатта колдонулушу мүмкүн болгон абдан пайдалуу бөлүгү деп ойлойм.

Cooling FAN универсалдуу ПХБга орнотулган жана болттор жана гайкалар менен орнотулган жана бекитилген.

Аба агымына уруксат берүү үчүн, мен ПХБ тешип чоң тешик кылып жатам.

Ошондой эле, секирүүчү кабелдерди оңой туташтыруу үчүн, GIPO 40 казыктары PCB кесүү менен ачылат.

6 -кадам: ПХБларды чогултуу

ПХБларды чогултуу
ПХБларды чогултуу

Жогоруда айтылгандай, мен эки башка схеманы бир блокко бириктирүүнү пландадым.

Мурда жасалган CPU температурасынын индикатордук схемасы жогорудагы сүрөттө көрсөтүлгөндөй жаңы муздатуучу ФАН схемасы менен бириктирилген., Баары тунук жана кичинекей өлчөмдөгү (15см х 10см D) акрил шасси менен биригет.

Шасси мейкиндигинин жарымына жакыны бош жана жеткиликтүү болсо да, кийинчерээк калган бөлүккө кошумча компонент жайгаштырылат.

7 -кадам: RPI микросхемалардын жардамы менен

Райондор менен зымдарды RPI
Райондор менен зымдарды RPI

Эки микросхема оптикалык кошкучтарды колдонуу менен обочолонгон түрдө RPI менен байланышкан.

Ошондой эле RPIден эч кандай кубат алынбайт, анткени тышкы кол телефон заряддагыч түзүлүштөрдү электр энергиясы менен камсыздайт.

Кийинчерээк сиз кошумча компоненттер акрил шассиге көбүрөөк интеграцияланганда, интерфейстин мындай схемасы өзүн актай турганын билесиз.

8 -кадам: Python программасы бардык микросхемаларды көзөмөлдөйт

Python программасы бардык микросхемаларды көзөмөлдөйт
Python программасы бардык микросхемаларды көзөмөлдөйт

Продукт температурасынын индикатордук схемасынын баштапкы кодунан кодду кичине гана кошуу талап кылынат.

Температура 50Стен ашканда, желдеткичти 10 секундга күйгүзүү жана 3 секунда өчүрүү боюнча жыйырма (20) кайталоо башталат.

ФАНдын кичинекей мотору иштөө учурунда максималдуу 200мА токту талап кылгандыктан, моторду активдештирүү ыкмасы PWM (Pulse Width Modulation) түрү кол телефондун заряддагычын азыраак жүктөө үчүн колдонулат.

Өзгөртүлгөн баштапкы код төмөндөгүдөй.

***

#-*-коддоо: utf-8-*-

##

импорттоо субпроцессин, сигналды, системаны

импорттоо убактысы, кайра

g катары RPi. GPIO импорттоо

##

A = 12

B = 16

Күйөрман = 25

##

g.setmode (g. BCM)

g.setup (A, g. OUT)

g.setup (B, g. OUT)

g.setup (FAN, g. OUT)

##

def signal_handler (сиг, кадр):

басып чыгаруу ('Ctrl+C баскансыз!')

g.output (A, False)

g.output (B, False)

g.output (FAN, False)

f.close ()

sys.exit (0)

сигнал.сигнал (сигнал. ТАШТАМА, сигнал_колдоочу)

##

чын болсо:

f = ачык ('/home/pi/My_project/CPU_temperature_log.txt', 'a+')

temp_str = subprocess.check_output ('/opt/vc/bin/vcgencmd tədbir_темпи', shell = True)

temp_str = temp_str.decode (коддоо = 'UTF-8', каталар = 'катуу')

CPU_temp = re.findall ("\ d+\. / D+", temp_str)

# учурдагы CPU температурасын алуу

##

current_temp = калкып чыгуу (CPU_temp [0])

эгер current_temp> 30 жана current_temp <40:

# температура төмөн A = 0, B = 0

g.output (A, False)

g.output (B, False)

убакыт.уйку (5)

elif current_temp> = 40 жана current_temp <45:

# температура чөйрөсү A = 1, B = 0

g.output (A, True)

g.output (B, False)

убакыт.уйку (5)

elif current_temp> = 45 жана current_temp <50:

# жогорку температура A = 0, B = 1

g.output (A, False)

g.output (B, True)

убакыт.уйку (5)

elif current_temp> = 50:

# CPU муздатуу жогорку A = 1, B = 1 талап кылынат

g.output (A, True)

g.output (B, True)

i үчүн диапазондо (1, 20):

g.output (FAN, True)

time.sleep (10)

g.output (FAN, False)

убакыт.уйку (3)

current_time = time.time ()

formated_time = time.strftime ("%H:%M:%S", time.gmtime (current_time))

f.write (str (formated_time)+'\ t'+str (current_temp)+'\ n')

f.close ()

##

Бул питон кодунун иштөө логикасы CPU температурасынын индикатор схемасына дээрлик окшош болгондуктан, мен бул жерде деталдарды кайталабайм.

9 -кадам: FAN Circuit Operation

FAN Circuit Operation
FAN Circuit Operation

Графикти карасак, FAN схемасы жок 50С ашкан температура.

RPI иштеп турганда CPUнын орточо температурасы 40 ~ 47Стин тегерегинде көрүнөт.

Эгерде веб -браузерде Youtube ойноо сыяктуу оор системалык жүктөө колдонулса, адатта температура 60Ске чейин тез көтөрүлөт.

Бирок FAN схемасы менен, муздатуучу желдеткичтин иштеши менен температура 5 секундада 50Ске чейин төмөндөйт.

Натыйжада, сиз RPIди күнү бою күйгүзүп, өзүңүзгө жаккан иштерди ашыкча ысытуудан коркпой жасай аласыз.

10 -кадам: Андан ары өнүктүрүү

Андан ары өнүктүрүү
Андан ары өнүктүрүү

Көрүнүп тургандай, акрил шассинин жарымы бош бойдон калды.

Мен ал жакка кошумча компоненттерди салып, RPI кутусунун негизги блогун пайдалуу нерсеге кеңейтем.

Албетте, көбүрөөк кошумча дагы бир аз татаалдашууну билдирет.

Кандай болбосун, мен бул долбоордо эки схеманы бир кутуга бириктирип жатам.

Бул окуяны окуганыңыз үчүн рахмат.

Сунушталууда: