树莓派WEB服务器(Boa)空气监测项目

树莓派WEB服务器(Boa)空气监测项目

网页界面参考源码http://pan.baidu.com/s/1dFN8Twt

系统WEB界面

1 . 天气质量界面

这里写图片描述

2 . 天气预报界面

这里写图片描述

3 . 系统设置界面

这里写图片描述

开发流程

Created with Raphaël 2.1.0 start 后台服务程序设计 网页界面功能设计 系统测试 end

后台服务程序

主要通过二个线程实现主要功能。
pth_ipc 线程:进程间通信 ,网页同后台程序数据交换。
pth_update:系统定时更新空气与天气数据到全局结构体。

int main(int argc,char* argv[])
{
    pthread_t pth_ipc,pth_update;
    init_sys(); 
    pthread_create(&pth_update,NULL,update_pro,NULL);
    pthread_create(&pth_ipc,NULL,ipcs_pro,NULL);

    pthread_join(pth_update,NULL);
    pthread_join(pth_ipc,NULL);
    return 0;
}

页面数据更新示意图

Created with Raphaël 2.1.0 网页 网页 进程通信 进程通信 后台程序 后台程序 网页更新请求,0x01 结构体数据更新到共享内存 读取共享内存数据显示在网页 通过串口定时读取pm2.5模块数据 python程序定时读取网络天气数据 网页数据保存请求,0x02 共享内存更新到全局结构体 全局结构体保存到配置文件 更新标志置位为1 网页请求更新天气,0x03 更新标志置位为1
PM2.5模块数据开发文档:

http://blog.csdn.net/tony_shen/article/details/73332476

Python网络天气数据开发文档:

http://blog.csdn.net/tony_shen/article/details/69226919

如果不想购买阿里云的天气API接口数据,可以把源码目录下的day_file,week_file,code_file三个文件拷贝到树莓派的/home/pi目录下。

天气质量页面

界面设计:参考前面的图片
功能设计:显示空气参数,AQI、PM2.5 网络、PM2.5本地,PM10,图表方式显示PM2.5数据(使用数据可视化图表库echarts)。

ECharts (数据可视化图表库) http://echarts.baidu.com/

参考源代码:

http://pan.baidu.com/s/1bptlGPx

执行Makefile文件,生成sys_run后台程序,

//源代码目录,编译程序
$sudo make

//copy到boa的cgi-bin目录
$sudo cp pm25_show.cgi /var/www/cgi-bin  

//运行后台服务程序
$sudo ./sys_run 

首先要把网页界面的参考代码拷贝到树莓派boa服务器指定的web目录。网页的图表,样式,图表要能正确的显示出来。

在浏览器输入cgi程序地址例如: http://10.1.1.230/cgi-bin/pm25_show.cgi 就可以看到空气质量页面。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值