树莓派温度检测

树莓派温度检测

一、shell命令

    登录树莓派之后使用指令查看CPU温度,依次输入以下指令:

    # 进入目录
    cd /sys/class/thermal/thermal_zone0 
    # 查看温度
    cat temp
    # 树莓派返回
    47236

这时温度是47.236摄氏度。

二、终端一条命令

    仅仅一条命令,在终端输入vcgencmd measure_temp,#然后回车

vcgencmd measure_temp


这时温度是46.7摄氏度。

三、把温度上传云端

1、注册yeelink账号

在Yeelink首页 注册一个账号并且登陆,按照开发指南添加设备、添加传感器

2、获取key以及传感器URL

在管理页面可以获得您的API Key,把他记下来

在用户中心页面,可以看到添加的传感器URL,共有两个,分别是树莓派CPU、GPU传感器URL。获得这些数据后就可以连接树莓派进行下一步的开发了。

二、使用yeelink API开始上传数

在准备工作完成后,可以登陆树莓派进行下一步工作。

1、安装vim

sudo apt-get install vim

2、更新系统

sudo apt-get update

3、新建文件 yeelink.py 添加以下内容

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import requests
import json
import time
import commands

def main():

# 需要填自己申请到的yeelink api Key 以及你的数据的url
 apiheaders = {'U-ApiKey': 'af14f3696b351f81431243243a968d8', 'content-type': 'application/json'}
 apiurl_gpu = 'http://api.yeelink.net/v1.0/device/348441/sensor/389816/datapoints'
 apiurl_cpu = 'http://api.yeelink.net/v1.0/device/348441/sensor/389815/datapoints'

# 查看GPU温度
 gpu = commands.getoutput( '/opt/vc/bin/vcgencmd measure_temp' ).replace( 'temp=', '' ).replace( '\'C', '' )
 gpu = float(gpu)
 #print('gpu value:%.2f' % gpu)
 payload_gpu = {'value': gpu}
 r = requests.post(apiurl_gpu, headers=apiheaders, data=json.dumps(payload_gpu))

# 查看CPU温度
 file = open("/sys/class/thermal/thermal_zone0/temp")
 cpu = float(file.read()) / 1000
 file.close()
 payload_cpu = {'value': cpu}
 r = requests.post(apiurl_cpu, headers=apiheaders, data=json.dumps(payload_cpu))
 time.sleep(1)

if __name__ == '__main__':
 main()

4、运行 yeelink.py 文件,开始上报数据

py yeelink.py

等待程序执行完成,这时登陆yeelink网站,就可以看到树莓派的CPU、GPU温度数据了。

三、自动树莓派上传温度数据

第二步完成后,只有运行yeelink.py这个文件才能上报树莓派的温度监控数据,如果我们想让它自动完成,那么可以新建一个定时任务,来每隔一定时间自动上报温度数据。方法如下:

1、新建crontab计划任务

crontab -e

2、输入计划任务

详细的格式可以参考 linux下使用 crontab 设定定时任务 这篇文章,我们这里设定一个每隔5分钟上传数据的任务,在文件的最下方添加

*/5     *     *    *    *    python ~/yeelink.py

这样就实现了树莓派每隔5分钟自动上传CPU、GPU温度数据的功能,就可以看到树莓派的CPU、GPU温度信息了。




你可能感兴趣的:(树莓派)