ዝርዝር ሁኔታ:

Raspberry Pi ሲፒዩ የሙቀት ጠቋሚ 11 ደረጃዎች (ከስዕሎች ጋር)
Raspberry Pi ሲፒዩ የሙቀት ጠቋሚ 11 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: Raspberry Pi ሲፒዩ የሙቀት ጠቋሚ 11 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: Raspberry Pi ሲፒዩ የሙቀት ጠቋሚ 11 ደረጃዎች (ከስዕሎች ጋር)
ቪዲዮ: BTT Octopus V1.1 — Конфигурация Klipper 2024, ሀምሌ
Anonim
Raspberry Pi ሲፒዩ የሙቀት አመልካች
Raspberry Pi ሲፒዩ የሙቀት አመልካች

ከዚህ በፊት ቀለል ያለ የራስበሪ ፒ (ከዚህ በኋላ እንደ RPI) የአሠራር ሁኔታ አመልካች ወረዳን አስተዋውቄ ነበር።

በዚህ ጊዜ ፣ ለሪፒአይ እንደ ራስ -አልባ (ያለ ተቆጣጣሪ) አሠራር አንዳንድ የበለጠ ጠቃሚ አመላካች ወረዳን እገልጻለሁ።

ከላይ ያለው ወረዳ የሲፒዩ ሙቀትን ወደ 4 የተለያዩ ደረጃዎች ያሳያል ፣ ለምሳሌ ፦

- የሲፒዩ ሙቀት ከ30 ~ 39 ዲግሪዎች ውስጥ በሚሆንበት ጊዜ አረንጓዴ LED በርቷል

- ቢጫ LED ከ 40 እስከ 45 ዲግሪ ባለው ክልል ውስጥ የሙቀት መጠን መጨመሩን ያመለክታል

- 3 ኛ ቀይ ኤልኢዲ 46 ~ 49 ዲግሪ በመድረስ ሲፒዩ ትንሽ ትኩስ ሆኖ ያሳያል

- የሙቀት መጠኑ ከ 50 ድግሪ በላይ በሚሆንበት ጊዜ ሌላ ቀይ LED ብልጭ ድርግም ይላል

ከላይ ያሉት የሲፒዩ የሙቀት ክልሎች የእኔ የግል ንድፍ ጽንሰ -ሀሳብ ናቸው (ሌሎች ወረዳዎች ይህንን ወረዳ የሚቆጣጠሩት የፓይዘን ፕሮግራም የሙከራ ሁኔታዎችን በመቀየር ሊዋቀሩ ይችላሉ)።

ይህንን ወረዳ በመጠቀም ፣ በኮንሶል ተርሚናል ላይ የ “vcgencmd measure_temp” ትዕዛዙን በተደጋጋሚ አያስፈጽሙም።

ይህ ወረዳ የወቅቱን የሲፒዩ ሙቀት ቀጣይ እና ምቹ በሆነ ሁኔታ ያሳውቃል።

ደረጃ 1: መርሃግብሮችን ማዘጋጀት

መርሃግብሮችን ማዘጋጀት
መርሃግብሮችን ማዘጋጀት

ምንም እንኳን የፓይዘን ኮዶችን ብቻ በመጠቀም 4 LED ን በቀጥታ መቆጣጠር ቢችሉም ፣ የፕሮግራሙ ቁጥጥር አመክንዮዎች RPI ን ይጭናሉ እናም በዚህ ምክንያት ትንሽ ውስብስብ የ Python ኮድ ያለማቋረጥ ማሄድ ስለሚኖርብዎት የሲፒዩ ሙቀት የበለጠ ይጨምራል።

ስለዚህ ፣ የፓይዘን ኮድ ውስብስብነትን በተቻለ መጠን ቀላል እና የ LED መቆጣጠሪያ አመክንዮ ወደ ውጫዊ የሃርድዌር ወረዳ እየቀነስኩ ነው።

የሲፒዩ ሙቀት አመልካች (ከዚህ በኋላ INICATOR) ወረዳው የሚከተሉትን ዋና ዋና ክፍሎች ያካተተ ነው።

-እንደ 00-> LOW ፣ 01-> መካከለኛ ፣ 10-> ከፍተኛ ፣ 11-> ማቀዝቀዝን የመሳሰሉ የሙቀት ደረጃ መረጃን ለማግኘት ሁለት የኦፕቶ-አጣቢዎች ከ RPI GPIO ፒኖች ጋር ተገናኝተዋል።

እንደ ግብዓቶች (ሀ ፣ ለ) 74LS139 (ወይም 74HC139 ፣ ከ2 እስከ 4 ዲኮደር እና ዲ-ብዜክስ) የመቆጣጠሪያ ውጤቶች (Y0 ፣ Y1 ፣ Y2 ፣ Y3)

- የሙቀት መጠኑ ከ30 ~ 39 ዲግሪ በሚሆንበት ጊዜ የፓይዘን ኮድ ውፅዓት 00 ወደ GPIO ፒኖች። ስለዚህ ፣ 74LS139 የግቤት ውሂብ 00 (A-> 0 ፣ B-> 0)

- 00 እንደገባ ፣ የ Y0 ውፅዓት ዝቅተኛ ይሆናል። (እባክዎን የ 74LS139 የእውነት ሰንጠረዥን ይመልከቱ)

- የ Y0 ውፅዓት LOW በሚሆንበት ጊዜ 2N3906 PNP ትራንዚስተርን ያነቃቃል እና በዚህ ምክንያት አረንጓዴ LED በርቷል

- እንደዚሁም ፣ Y1 (01 -> የሲፒዩ ሙቀት መካከለኛ) ቢጫ LED ን እና የመሳሰሉትን ያበራል

- Y3 ዝቅተኛ በሚሆንበት ጊዜ ፣ DB140 NE555 LED የሚያብለጨልጭ ወረዳ (ይህ የተለመደ 555 IC የተመሠረተ LED ብልጭ ድርግም) የ BD140 PNP ትራንዚስተር ጭነት ነው

የዚህ ወረዳ በጣም አስፈላጊ አካል ከዚህ በታች ባለው የእውነት ሠንጠረዥ ውስጥ እንደሚታየው 2 አሃዝ ግብዓትን ወደ 4 የተለያዩ ነጠላ ውፅዓት ዲኮዲንግ የሚያደርግ 74LS139 ነው።

ግቤት | ውፅዓት

ጂ (አንቃ) | ለ | ሀ | Y0 | ያ 1 | Y2 | Y3 |

ሸ | X | X | ሸ | ሸ | ሸ | ሸ |

ኤል | ኤል | ኤል | ኤል | ሸ | ሸ | ሸ |

ኤል | ኤል | ሸ | ሸ | ኤል | ሸ | ሸ |

ኤል | ሸ | ኤል | ሸ | ሸ | ኤል | ሸ |

ኤል | ሸ | ሸ | ሸ | ሸ | ሸ | ኤል |

74LS139 ውፅዓት ዝቅተኛ በሚሆንበት ጊዜ የመሠረት ተርሚናል ዝቅተኛ በሚሆንበት ጊዜ የፒኤንፒ ትራንዚስተር ሲበራ የ PNP ዓይነት ትራንዚስተር አጠቃላይ ወረዳውን ቀላል ሊያደርግ ይችላል። (በዚህ ታሪክ መጨረሻ ላይ የ NPN ሥሪትን አሳያለሁ)

100K ፖታቲሞሜትር በ NE555 LED ብልጭ ድርግም ወረዳ ውስጥ እንደተካተተ ፣ ቀይ የ LED/ማብሪያ ጊዜ እንደ ፍላጎቶቹ በነፃነት ሊስተካከል ይችላል።

ደረጃ 2 PCB ስዕል መስራት

PCB ስዕል መስራት
PCB ስዕል መስራት

የ INDICATOR የአሠራር መርሃ ግብር እንደተብራራ ፣ ወረዳውን መሥራት እንጀምር።

በአለም አቀፍ ሰሌዳ ላይ አንድ ነገር ከመሸጥዎ በፊት ፣ ከላይ የሚታየውን የ PCB ስዕል ማዘጋጀት ማንኛውንም ስህተቶች ለመቀነስ ይረዳል።

ስዕሉ የተሠራው እያንዳንዱን ክፍል በአለምአቀፍ ሰሌዳ ላይ ለመፈለግ እና ሽቦዎችን ባሏቸው ክፍሎች መካከል የሽቦ አሠራሮችን በመሥራት የኃይል ነጥብን በመጠቀም ነው።

IC እና ትራንዚስተር ፒን-ውጭ ምስሎች ከፒ.ሲ.ቢ የሽቦ ንድፍ ጋር አብረው ስለሚገኙ ፣ ይህንን ስዕል በመጠቀም ብየዳ ማከናወን ይቻላል።

ደረጃ 3: መሸጥ

ብየዳ
ብየዳ

ምንም እንኳን በፒሲቢ ላይ አካላትን ለማገናኘት ኦሪጅናል የፒ.ሲ.ቢ ስዕል ነጠላ ሽቦዎችን ባይጠቀምም ፣ እኔ በተለየ መንገድ እሸጣለሁ።

ነጠላ ሽቦዎችን (የቲን ሽቦ ሳይሆን) በመጠቀም ፣ አመላካች ወረዳውን የያዘውን ሁለንተናዊ የ PCB መጠን ለመቀነስ እየሞከርኩ ነው።

ነገር ግን በፒሲቢው የሽያጭ ጎን ላይ እንደሚመለከቱት ፣ እኔ በፒሲቢ ስዕል ውስጥ በተገለጹት ቅጦች መሠረት የቲን ሽቦን እጠቀማለሁ።

እያንዳንዱ አካል በፒሲቢ ስዕል የመጀመሪያ ንድፍ መሠረት ሲገናኝ ጠቋሚው የተጠናቀቀው የፒ.ቢ.ቢ ቦርድ INDICATOR ወረዳውን በትክክል ይሠራል።

ደረጃ 4 - የሙከራ ዝግጅት

የሙከራ ዝግጅት
የሙከራ ዝግጅት

ከ RPI ግንኙነት በፊት ፣ የተጠናቀቀው ወረዳ ምርመራ ይጠይቃል።

ማንኛውም የሽያጭ ስህተቶች ሊኖሩ ስለሚችሉ ፣ አጭር ወይም የተሳሳተ ሽቦ ሲከሰት የዲሲ ኃይል አቅራቢ ጉዳቶችን ለመከላከል ይጠቅማል።

INDICATOR ን ለመፈተሽ ሁለት ተጨማሪ የኃይል አቅርቦት ኬብሎች ከወረዳ 5V የኃይል አቅርቦት አገናኝ ጋር ተገናኝተዋል።

ደረጃ 5: ሙከራ (የሲፒዩ ሙቀት መካከለኛ ደረጃ ነው)

ሙከራ (የሲፒዩ ሙቀት መካከለኛ ደረጃ ነው)
ሙከራ (የሲፒዩ ሙቀት መካከለኛ ደረጃ ነው)

ምንም 5V ግብዓት በማይተገበርበት ጊዜ 74LS139 ግቤት ዲኮዲንግ እና የውጤት Y0 ን እንደ LOW (አረንጓዴ LED እንደበራ)።

ነገር ግን 5V ለግቤት ሀ ፣ ውፅዓት Y1 ከ 74LS139 ገቢር (LOW) ላይ ተተግብሯል።

ስለዚህ ፣ ከላይ ባለው ሥዕል ላይ እንደሚታየው ቢጫ LED አብራ።

ደረጃ 6: ሙከራ (ሲፒዩ የማቀዝቀዝ ደረጃ ይፈልጋል)

ሙከራ (ሲፒዩ የማቀዝቀዝ ደረጃ ይፈልጋል)
ሙከራ (ሲፒዩ የማቀዝቀዝ ደረጃ ይፈልጋል)

5V ሁለቱንም ግብዓቶች (ሀ እና ለ) የ 74LS139 ን ሲተገብር ፣ 4 ኛ ቀይ LED ብልጭ ድርግም ይላል።

ከላይ በስዕሉ ላይ እንደሚታየው 100K ቪአር በማስተካከል ብልጭ ድርግም የሚል ፍጥነት ሊቀየር ይችላል።

ሙከራው ሲጠናቀቅ ሁለት ሞሌክስ 3 ፒን ሴት ኬብሎች ሊወገዱ ይችላሉ።

ደረጃ 7 የኃይል አቅርቦት ለጠቋሚው ወረዳ

ለ INDICATOR ወረዳ የኃይል አቅርቦት
ለ INDICATOR ወረዳ የኃይል አቅርቦት

INDICATOR ወረዳውን ለማብራት ከላይ በስዕሉ ላይ እንደሚታየው 5V እና የዩኤስቢ ዓይነት-ቢ አስማሚ የሚያወጣውን የተለመደ የእጅ ስልክ ባትሪ መሙያ እጠቀማለሁ።

3.3V GPIO እና 5V የተጎላበተው INDICATOR ወረዳ በማገናኘት በ RPI ላይ ችግርን ለማስወገድ የምልክት በይነገጽ እና የኃይል አቅርቦት ሙሉ በሙሉ እርስ በእርስ ተለያይተዋል።

ደረጃ 8: RPI ሽቦ

RPI ሽቦ
RPI ሽቦ

አመልካች ወረዳውን ከ RPI ጋር ለማገናኘት ፣ ሁለት የጂፒኦ ፒኖች ከሁለት የመሬት ካስማዎች ጋር መሰጠት አለባቸው።

የ GPIO ፒኖችን ለመምረጥ ልዩ መስፈርት የለም።

አመላካች ለማገናኘት ማንኛውንም የጂፒኦ ፒን መጠቀም ይችላሉ።

ነገር ግን ባለገመድ ፒኖች በፓይዘን ፕሮግራም ውስጥ ለ 74LS139 (ለምሳሌ ሀ ፣ ለ) ግብዓቶች ተብለው መሰየም አለባቸው።

ደረጃ 9 የፓይዘን ፕሮግራም

የ Python ፕሮግራም
የ Python ፕሮግራም

ወረዳው ሲጠናቀቅ ፣ ጠቋሚውን ተግባር ለመጠቀም የፓይዘን ፕሮግራም ማዘጋጀት ያስፈልጋል።

ስለፕሮግራም አመክንዮ የበለጠ ዝርዝር ለማግኘት እባክዎን ከላይ ያለውን ፍሰት ሰንጠረዥ ይመልከቱ።

#-*-ኮድ-utf-8-*-

ንዑስ ሂደትን ፣ ሲግናልን ፣ sys ን ያስመጡ

የማስመጣት ጊዜ ፣ እንደገና

RPi. GPIO ን እንደ ሰ

ሀ = 12

ቢ = 16

g.setmode (g. BCM)

g.setup (A, g. OUT)

g.setup (B, g. OUT)

##

def signal_handler (ሲግ ፣ ፍሬም) ፦

ማተም ('Ctrl+C ን ተጭነዋል!')

g.output (ሀ ፣ ሐሰት)

g.output (ቢ ፣ ሐሰት)

ረ ዝጋ ()

sys.exit (0)

ሲግናል. ሲግናል (ሲግናል SIGINT ፣ signal_handler)

##

እውነት እያለ ፦

f = ክፍት ('/home/pi/My_project/CPU_temperature_log.txt', 'a+')

temp_str = subprocess.check_output ('/opt/vc/bin/vcgencmd measure_temp', shell = True)

temp_str = temp_str.decode (ኢንኮዲንግ = 'UTF-8' ፣ ስህተቶች = 'ጥብቅ')

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

# የአሁኑን የሲፒዩ ሙቀት ማውጣት

current_temp = ተንሳፋፊ (CPU_temp [0])

የአሁኑ_ ሙከራ> 30 እና የአሁኑ_ ሙከራ <40:

# የሙቀት መጠን ዝቅተኛ A = 0 ፣ B = 0

g.output (ሀ ፣ ሐሰት)

g.output (ቢ ፣ ሐሰት)

ጊዜ። እንቅልፍ (5)

elif current_temp> = 40 እና current_temp <45:

# የሙቀት መካከለኛ ሀ = 0 ፣ ቢ = 1

g.output (ሀ ፣ ሐሰት)

g.ututput (ለ ፣ እውነት)

ጊዜ። እንቅልፍ (5)

elif current_temp> = 45 እና current_temp <50:

# ከፍተኛ ሙቀት A = 1 ፣ B = 0

g.ututput (ሀ ፣ እውነት)

g.output (ቢ ፣ ሐሰት)

ጊዜ። እንቅልፍ (5)

elif current_temp> = 50:

# ሲፒዩ ማቀዝቀዝ ከፍተኛ A = 1 ፣ B = 1 ያስፈልጋል

g.ututput (ሀ ፣ እውነት)

g.ututput (ለ ፣ እውነት)

ጊዜ። እንቅልፍ (5)

current_time = time.time ()

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

f. ይፃፉ (str (formated_time)+'\ t'+str (current_temp)+'\ n')

ረ ዝጋ ()

የፓይዘን መርሃ ግብር ዋና ተግባር ከዚህ በታች እንደሚከተለው ነው።

- በመጀመሪያ GPIO 12 ፣ 16 ን እንደ የውጤት ወደብ ማቀናበር

- የምዝግብ ማስታወሻ ፋይልን ለመዝጋት Ctrl+C አቋራጭ ተቆጣጣሪውን መግለፅ እና GPIO 12 ፣ 16 ን ያጥፉ

- ወደ ወሰን የለሽ ዑደት ሲገቡ የምዝግብ ማስታወሻ ፋይልን እንደ append ሁነታ ይክፈቱ

- “/opt/vc/bin/vcgencmd measure_temp” ትዕዛዙን በመፈጸም የሲፒዩ ሙቀትን ያንብቡ

- የሙቀት መጠኑ በ 30 ~ 39 ክልል ውስጥ ሲሆን አረንጓዴ LED ን ለማብራት 00 ን ያውጡ

- የሙቀት መጠኑ በ 40 ~ 44 ክልል ውስጥ ሲሆን ከዚያ ቢጫ LED ን ለማብራት 01 ን ያውጡ

- የሙቀት መጠኑ በ 45 ~ 49 ክልል ውስጥ ሲሆን ቀይ LED ን ለማብራት 10 ን ያውጡ

- የሙቀት መጠኑ ከ 50 በላይ በሚሆንበት ጊዜ ቀይ የ LED ብልጭ ድርግም እንዲል ያድርጉ

- ፋይልን ለመመዝገብ የጊዜ ማህተም እና የሙቀት መጠን ውሂብ ይፃፉ

ደረጃ 10 - አመላካች አሠራር

አመላካች አሠራር
አመላካች አሠራር

ሁሉም ነገር ደህና በሚሆንበት ጊዜ እያንዳንዱ ሲዲ በሲፒዩ የሙቀት መጠን ሲበራ ወይም ብልጭ ድርግም ይላል።

የአሁኑን የሙቀት መጠን ለመፈተሽ የ shellል ትዕዛዝ ማስገባት አያስፈልግዎትም።

ኤክስኬልን በመጠቀም በምዝግብ ማስታወሻው ፋይል ውስጥ መረጃን ከሰበሰበ እና የጽሑፍ መረጃን ወደ ግራፍ ከሰጠ በኋላ ውጤቱ ከላይ ያለውን ስዕል ያሳያል።

ከፍተኛ ሸክሞችን በሚተገብሩበት ጊዜ (ሁለት ሚዶሪ አሳሾችን ማስኬድ እና የዩቲዩብ ቪዲዮን ማጫወት) ፣ የሲፒዩ ሙቀት እስከ 57.9 ሴ ድረስ ከፍ ይላል።

ደረጃ 11 - አማራጭ መስራት (ኤንፒኤን ትራንዚስተር በመጠቀም) እና ተጨማሪ ልማት

አማራጭ መስራት (ኤን.ፒ.ኤን ትራንዚስተር መጠቀም) እና ተጨማሪ ልማት
አማራጭ መስራት (ኤን.ፒ.ኤን ትራንዚስተር መጠቀም) እና ተጨማሪ ልማት

ይህ የ NPN ትራንዚስተሮችን (2N3904 እና BD139) በመጠቀም የቀድሞው የ INDICATOR ፕሮጀክት ምሳሌ ነው።

አንድ ተጨማሪ IC (74HC04 ፣ Quad invertors) ማየት እንደሚችሉት ከፍተኛ ደረጃ ቮልቴጅ ትራንዚስተሩን ለማብራት በ NPN መሠረት ላይ መተግበር ስላለበት የ NPN ትራንዚስተርን መንዳት አስፈላጊ ነው።

እንደ ማጠቃለያ ፣ የ NPN ትራንዚስተር በመጠቀም INDICATOR ወረዳ ለማድረግ አላስፈላጊ ውስብስብነትን ይጨምራል።

ለዚህ ፕሮጀክት ቀጣይ ልማት INDICATOR ወረዳውን የበለጠ ጠቃሚ ለማድረግ ከላይ በስዕሉ ላይ እንደሚታየው የማቀዝቀዣ ደጋፊን እጨምራለሁ።

የሚመከር: