编辑: jingluoshutong | 2013-09-25 |
2 数据采集节点的设计 2.1 数据采集节点的硬件结构 系统采用 C C
2 5
3 0电路模块[
1 0] 搭载传感器电 路, 实现数据传送功能.C C
2 5
3 0 模块集成射频收发电路、
8 0
5 1 微控制器、高速Flash为一体. C C
2 5
3 0电路模块与环境参数测量传感器电路组成 数据采集节点.设计中二氧化碳传感器输出电容信 号, 硫化氢传感器和氨气传感器输出电压信号.数 据采集节点硬件结构如图3所示.数据采集节点统 一采用3. 3V 电源供电.由于二氧化碳传感器的工 作电压为5V, 设计中采用 B o o s t电路升压至5V. 由于模拟量输出传感器输出信号较小, 采用信号调 整电路对其进行放大, 放大后的信号传输至C C
2 5
3 0 模块, 通过射频电路发射, 由基站接收. 图3 数据采集节点的硬件结构 F i g .
3 H a r d w a r es t r u c t u r eo f d a t ad e t e c t i n gn o d e 2.2 气体传感器的标定 系统使用的有害气体传感器均为模拟量输出. 氨气、 硫化氢传感器分别选用三电极电化学传感器
4 NH3 G
1 0
0 和4H2 S G
1 0 0, 测量范围均为0~1
0 0 m L / L. 二氧化碳传感器 T G S
4 1
6 1, 为两端口固体传 感器, 测量范围为3
5 0~1
00 0 0m L / L. 二氧化碳、 硫化氢、 氨气等传感器节点采用 全 量程 方法进行标定[
1 1 G
1 2 ] , 以保证传感器的精度.选 用玻璃干燥密闭容器, 将容器抽真空, 注 入标准气 体, 记录传感器测量值, 并测量多组数据.传感器电 路的输出电压, 经转 A / D 换后的值与气体浓度之间 接近一次线性关系.将A/D值设为一次线性关系 式的x 变量, 实际浓度值设为y 变量, 通过线性回 归, 确定 A / D 值和气体浓度间的线性关系.
3 控制软件设计的关键问题 3.1 上层软件与数据库的交互 上层软件及数据库采用用户信息表管理用户信 息.传感器节点信息采用传感器配置表、 节点信息 表、 传感器数据表等进行记录管理.传感器配置表 包含了各种类型的传感器以及传感器测量值与真实 值的对应关系等;
节点信息表包含了节点的唯一编 号、 类型、 位置信息等;
传感器数据表以天为单位, 记 录当天全部传感器上传的所有数据信息.上层软件
2 3
1 第6期 王娇娇 等:无线 M e s h网络下的猪舍环境监测综合系统设计 图4 系统与数据库的关系 F i g .
4 S y s t e ma n dd a t a b a s ed i a g r a m 与数据库之间的联系如图4所示. 客户端在初始化的时候需要访问传感器配置 表, 对传感器配置集合进行初始化, 用以解析串口数 据包.当数据解析完毕,节点数据信息存储到数据 库以便网络端的用户查看数据趋势曲线、历史数据 等. 3.2 数据解析方法 串口数据解析软件的初始化包括2个部分, 一 部分是初始化基站串口接收类 A S N C o mm B a s e S t a G t i o n , 另一部分是初始化传感器配置泛型集合.串 口接收类的初始化包括类的实例化、 端口类型选择、 串口端口号的设置以及串口接收函数 C o mm B a s e S G t a t i o n _d a t a _ r e c e i v e d _ e v e n t的实现.传感器配置泛 型集合的初始化首先从数据库读取传感器配置信息 表, 然后将数据库返回的全部数据信息封装为泛型 集合List.S e n s o r C o n f i g G M o d e l是传感器配置类, 包含了传感器的唯一编号、 传感器类型、 传感器单位、 传感器数据与真实值的线 性转换关系参数. 串口 接收的数据包格式是byte集合, 如同 AAAA B B B B C C C C