树莓派显示天气信息RARP

在此介绍一个国外网友的树莓派项目RARP,Weather According to Raspberry Pi 顾名思义,Weather According to Raspberry Pi是一个有关天气信息的项目,该项目通过采集Raspberry Pi和Sense HAT的数据,来显示相关的天气信息,比如温度、湿度、压力等 项目地址http://coded2.herokuapp.com/weather/ 代码国内下载地址</res/warp_final.zip> 下载后解压,得到main.py和gauge2.html两个文件,其中main.py需要Python3运行,gauge2.html是最终的显示文件 安装相关软件 sudo apt-get install python3 sudo apt-get install python3-pip pip3 install flask 打开Sense HAT仿真器,在程序菜单中,打开后如下图示: 下来,运行下载的python脚本 python3 main.py 正常情况下,会提示一个端口为5000的web服务正在运行 在浏览器中浏览localhost:5000或者127.0.0.1:5000,最终的浏览如下图 三个图表分别显示温度、压力和湿度,这三者的信息均来自Sense HAT 模拟器而不是真正的Sense HAT硬件。 如果需要采集Sense HAT扩展板的数据,需要将Sense HAT附加板和Raspberry Pi相连,具体信息参考官网 https://www.raspberrypi.org/products/sense-hat/ 然后修改代码,打开main.py文件,找到如下行 from sense_emu import SenseHat 修改为 from sense_hat import SenseHat 保存后,重新运行python3 main.py,此时采集的数据就来自真实的SenseHAT硬件。

五月 25, 2017 · JQX

Xively与树莓派监控温度与湿度

进入https://www.xively.com/注册登录 添加设备(Add Device) 在Development Devices页面点击Add Device添加设备 填写Device Name和Device Description,将Privacy设定为Public Device 设置API Key 进入Device详情页,在API Keys中点击Add Key添加一个Key,将Permissions中的Read,Create,Update,Delete全部勾选,Label随便填。 向Xively提交数据 在这里通过CURL向xively提交JSON格式的数据 JSON数据格式 { "datastreams": [ { "id": "load", "current_value": "9.00" }, { "id": "temp", "current_value": "89.15" } ] } 其中每个id为数据定义的idcurrent_value为提交的值 脚本文件send_xively.sh #!/bin/bash LOCATION='/home/pi/xively_data' #Path of Xively JSON DATA file API_KEY='orxUhgjqSYPDbv5243534tG65464345eArxSVY9pE8ITnE' #API Key FEED_ID='1354438558' #FEED_ID #################################################### COSM_URL=https://api.xively.com/v2/feeds/${FEED_ID}?timezone=+8 cpu_load=`cat /proc/loadavg | awk '{print $2}'` sen_t=`sudo /home/pi/st` sen_h=`sudo /home/pi/sh` for i in 1 2 3 4 5; do cpu_t=`cat /sys/class/thermal/thermal_zone0/temp | awk '{print $1/1000}'` if [[ "${cpu_t}" =~ ^- ]] then cpu_t='0.0' else echo ${cpu_t} break fi done STR=`awk 'BEGIN{printf "{\"datastreams\":[ {\"id\":\"cpu_load\",\"current_value\":\"%.2f\"}, {\"id\":\"cpu_temp\",\"current_value\":\"%.2f\"},{\"id\":\"sensor_t\",\"current_value\":\"%.2f\"}, {\"id\":\"sensor_h\",\"current_value\":\"%.2f\"}] } ",'$cpu_load','$cpu_t','$sen_t','$sen_h'}'` echo ${cpu_t} echo ${cpu_load} echo ${sen_t} echo ${sen_h} echo ${STR} echo ${STR} > ${LOCATION}/cosm.json curl -s -v --request PUT --header "X-ApiKey: ${API_KEY}" --data-binary @${LOCATION}/cosm.json ${COSM_URL} 其中LOCATION为JSON文件存放目录,没有的话请新建。API_KEY和FEED_ID按照自己的配置填写。 ...

七月 14, 2015 · jqx