大三学完了基本的核心课程,应老师要求,做了一个整合知识的小型环境监测系统,把学过的知识整合起
下面来介绍一下这个小系统的基本流程
该系统的功能为监测环境并且上报数据,由于本人能力有限,只完成了几个节点的功能
材料:zigbee节点,nanopc-t3(一个arm板子),Linux系统,数据库MySQL,eclipse,zigbee开发工具等
实验流程如下图
终端节点通过zigbee网络将采集的数据单播发送给协调器,nanopc-t3通过读取协调器发送到串口的数据,将其通过socket转发给服务器,保存到数据库,Java客户端通过连接服务器上面的数据库,读取并显示信息(上图没有给出客户端读取信息的图)
下面是数据库中设计的一些字段
表1
temperature
数据项名称 | 数据类型 | 数据项长度 | 是否关键字 | 数据项含义 |
sno | varchar | 9 | 是 | 节点编号 |
name | Varchar | 9 | 否 | 温度 |
value | Varchar | 9 | 否 | 值 |
time | timestamp |
| 否 | 存入时间 |
Light
表2
数据项名称 | 数据类型 | 数据项长度 | 是否关键字 | 数据项含义 |
sno | varchar | 9 | 是 | 节点编号 |
name | varchar | 9 | 否 | 光照 |
value | varchar | 9 | 否 | 值 |
time | timestamp |
| 否 | 存入时间 |
Humidity
表3
数据项 | 数据类型 | 数据项长度 | 是否关键字 | 数据项含义 |
sno | varchar | 9 | 是 | 节点编号 |
name | varchar | 9 | 否 | 湿度 |
value | varchar | 9 | 否 | 值 |
time | timestamp |
|
| 存入时间 |
服务器端主要程序如下
数据库核心代码
nanopc-t3上面的流程主要如下
核心代码就不贴出
zigbee部分代码如下
Java客户端测试结果如下
服务器端测试结果如下