Skip to content

用Python小程序获取树莓派的CPU和GPU温度

rollcode raspberry temperature

在这篇文章里我将为你展示如何使用Python做一个简单的程序来监视你的树莓派温度。可能你还不知道,树莓派内置了一个传感器你可以用来获取树莓派的CPU和GPU温度。

这对于保护你的设备非常有用,举个例子:你可以在树莓派温度过高的时候关掉它或者在温度过热的时候报警。

[amazon_link asins=’B07BJ53TVT,B01CZWWERC,B01FZ7UN8G’ template=’CopyOf-ProductGrid’ store=’boyd-23′ marketplace=’CN’ link_id=”]

首先,要获取树莓派的温度,你可以用下面的Python小程序:

import commands

def get_cpu_temp():
    tempFile = open( "/sys/class/thermal/thermal_zone0/temp" )
    cpu_temp = tempFile.read()
    tempFile.close()
    return float(cpu_temp)/1000
    # Uncomment the next line if you want the temp in Fahrenheit
    #return float(1.8*cpu_temp)+32

def get_gpu_temp():
    gpu_temp = commands.getoutput( '/opt/vc/bin/vcgencmd measure_temp' ).replace( 'temp=', '' ).replace( '\'C', '' )
    return  float(gpu_temp)
    # Uncomment the next line if you want the temp in Fahrenheit
    # return float(1.8* gpu_temp)+32

def main():
    print "CPU temp: ", str(get_cpu_temp()), "C"
    print "GPU temp: ", str(get_gpu_temp()), "C"

if __name__ == '__main__':
    main()

这里面有两个方法:get_cpu_tempget_gpu_temp。它们俩都返回一个float型的摄氏温度值。(如果你想使用华氏温度,打开里面的两行注释)。现在,让我们把所有信息输出到树莓派LCD屏上吧。

结果是这样的:

rollcode_raspberry_temperature

原作者已经把完整的Python程序上传到了dropbox上:
https://www.dropbox.com/s/e04v8vnus1hwrm0/rpy_cpu_gpu_temp.py

木有LCD屏幕?没关系,我们在命令行里运行一下,把上面的代码保存成一个py文件,例如

cpu.py

然后利用scp或者ftp上传到树梅派上,然后ssh到树梅派上,用下面的命令运行:

python cpu.py

之后就能看到结果啦。

cpu

0 0 votes
Article Rating
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x