基于无线传感网络的实验室智能管理系统设计
2020-01-16梁劭颖吕集尔
文/梁劭颖 吕集尔
1 实验室智能管理的必要性
随着人才市场对复合型、应用型、自主动手能力强的技能型人才的需求日趋旺盛,应用型高校也在采取有效措施,以适应新的形势。 这些措施包括:加大对实验实训室建设经费投入,研发新的实验室管理模式,以满足学生对专业技能操作实践的需求,更好地培养学生动手、创新能力。在高校的计算机实验中心、光电实验中心、大数据仿真实验中心、检验检测实训室等实验场所对环境的要求较高,其中温湿度、烟雾粉尘含量、声光强度等都会对实验实训设备或实验实训结果的精度造成较大误差。因此,对实验实训场所环境进行实时、有效的智能化监控和管理是非常重要也是十分必要的。为此,我们运用无线传感网络技术,提出了针对实验室环境进行智能管理的设计方案,根据实验室的功能特点,分别布置相应的传感器,实时监测需要重点关注的环境信息,及时反馈给管理者。形成环境监管、设备管理、人员控制三维一体的实验室智能监管系统。
2 实验室智能管理系统的总体设计
实验室智能管理系统总体采用模块化的设计思路,由监测节点、传感协调、传输网络、中控平台(数据库、显示终端)等模块组成(见图1)。
其中最下面一层为布置在实际区域中的由各种传感器组成的监测节点及室内控制节点,监测节点包括温湿度传感器、烟雾粉尘传感器、光照传感器、人体红外传感器,作用是采集监测区域中环境温湿度、光照强度、火患信息和人员进出情况等数据信息;室控节点是布置在实验室相关位置的温、湿度控制器、电源控制器和报警器等,用来调控实验室内环境或发出警示。第二层为部署在实验室监测区域中心附近的ZigBee 传感协调器,用于接收各传感器节点抓捕到的数据信息(包括数字信息或模拟信号),转换处理成可供传输的数据信号(包)。再下一层是将各节点与有关层连接而成的传输网络,其功能可将数据信号通过Internet(或局域网)传送到与中控平台连接的数据库服务器。 最后一层是实验室中控平台,具有对数据库的数据进行处理的功能(如实时接收、存储数据,对数据和信号进行分析、计算、拟合、作出判断决策,触发异常等)。
3 实验室智能管理系统中的 CC2530芯片与 Zigbee技术
本智能管理系统的硬件主要是应用 CC2530 芯片与ZigBee 无线传感网络构建,并在此基础之上,以ZigBee 协调器与温湿度、烟雾粉尘、光照和红外线等传感模块进行连接。
3.1 CC2530芯片
本系统硬件选择CC2530 芯片,首先因为CC2530 芯片是一种体积较小、但功能强大的处理芯片;更重要方面是CC2530 芯片集成了应用日趋广泛的、兼容性好并支持最新版Zigbee 协议和技术。 CC2530 芯片的性能特点见表1。
把CC2530 应用到实验室智能管理系统之中,能够与ZigBee 相配合,构建起低能耗、价格低廉又能够抗干扰的无线传感网络,并能够长时间的运转,特别适合实验室这种短距离运行时间长的无线网络。
3.2 Zigbee技术
基于ZigBee 技术所组建的无线传感网络实验室智能管理系统,主要由实验室中控平台、ZigBee 协调器、网络传输系统和传感器控制系统等组成,其中实验室中控平台是总体管理系统,负责整个实验室智能管理系统的运转、管理与控制,同时中控平台可以通过互联网或局域网与电脑终端(或手机端)相连接,能够实现信息的共享和反馈。 本设计中的ZigBee 协调器是基于ZigBee 技术,与温湿度传感器、烟雾粉尘传感器、光照传感器、红外线传感器等传感器相连接,使中控平台能够通过ZigBee 协调器,自动监测调控实验室内的温度和湿度、光照亮度、空气纯净程度,确保在实验室中开展各种实验所需的环境条件。 根据实际情况可以设计各种相对独立的控制系统,如电子门禁系统,可以记录进出实验室人员的情况,一旦在管理系统运行发生故障或出错时,自动报警并自动上锁,同时能够对系统中的关键数据进行保护,以防实验数据的丢失;有些可设计成独立的控制系统,是为了能够在系统运行产生故障时,对实验室中的设备进行有效管理,以保障实验教学的继续进行。 下面探讨本智能管理系统所设计的ZigBee 组网技术。
图1:实验室智能管理系统总体结构图
图2:上位机与下位机之间串口通信流程图
表1:CC2530 芯片的主要性能特点
表2:ZigBee 协调器主要作用一览表
3.2.1 ZigBee 传感网络设计
本系统设计主要采用分布式的ZigBee 传感网络,即利用实验室智能系统的中控平台与ZigBee 协调器连接,实现调控功能。ZigBee协调器主要作用见表2。
3.2.2 ZigBee 传感协调器组网设计
实验室智能管理系统要进行ZigBee 传感协调器组网,目的是做好如下节点之间的组网:ZigBee 传感协调器←→路由器节点←→传感器。第一步,对ZigBee 传感协调器组网:可通过无线传感网络设备,向ZigBee 传感协调器发送入网请求,用来检测ZigBee 传感协调器的回应情况、判断接入点的IP 位置,以确定发送入网请求是哪一个传感器节点;第二步,对ZigBee 传感协调器的网络信道组网:组网时一定要选择恰当的信道,使之与周边网络的信道相匹配,以避免网络信道的干扰问题;第三步,对路由器节点的组网:可以设计成在启动路由器后,要通过ZigBee 传感协调器对路由器节点进行授权,才能够使路由器节点接入到ZigBee 传感协调器之中(授权可以设计为要给相关路由器节点提供IP 地址、MAC 地址、DNS 等信息);最后,对传感节点网络的组建:由于所设计的实验室智能管理系统传感器比较多,为了保障传感器节点与路由器节点的连通网络安全可靠,可以设计成要通过组网验证的方式来实现。
4 实验室智能管理系统的软件实现
4.1 实验室智能管理系统软件设计
基于ZigBee 协议的实验室智能软件系统可以设计为多个模块,包括实验室智能平台控制模块、传感器管理模块、中控平台数据发送与接收模块、中控平台数据分析计算模块等。这些模块可以通过编程对实验室内各种传感器、探测器和实验设备进行控制和管理,用程序通过ZigBee 对各传感器和实验设备进行信息传输和指令下达,再通过 UART 与系统的显示终端及控制终端实现人机交互。 系统可以选用JAVA 面向对象设计语言,对数据进行整理和分析,再通过 JAVA 通信串口将实验室智能管理系统的命令发送到上位机上,由上位机将数据显示到终端屏幕上,管理人员可以在控制终端通过人机对话方式下达各项指令,实现对实验室进行智能监控。
4.2 使用JAVA实现上位机与下位机之间的串口通信
上位机一般指的是电脑终端(或手机),下位机指的是单片机或者带微处理器的系统。下位机就是将模拟信号经过AD 转换器将模拟量转换为数字量,再经过数字信号处理将数字信号通过串口发送到上位机;而上位机则相反,可以给下位机发送一些指令或者信息。 常见的通信串口有 RS232、RS485、RS422 等。 现在的硬件上一般都有各种转换接口,使得在上位机与下位机进行数据通信时操作都比较方便。 利用JAVA 可实现上位机与下位机之间的RS485 串口通信。 主要步骤是:
(1)准备软件:下载支持java 串口通信的jar 包,解压jar 包后,把其中的RXTXcomm 导 入 到java 工程里,同时将rxtxParallel。dll 与rxtxSerial。dll 复 制 到 安 装了JDK 的bin 文件下和jre 的bin 文件夹下;
(2)硬件检测:查找是否有可用的COM端口,并对该对端口进行简要判断(包括这些端口是否是串口,是否正在使用等);
(3)对串口参数进行简单的配置:通过串口提供的人机交换界面,输入相应的参数(包括串口号、波特率、校验位、数据位等);
(4)实现上位机与下位机之间的双向通信:上位机往单板机通过串口发送数据,上位机接收数据。
上述双向串口通信可用JAVA 实现。程序流程见图2。
该程序整体分为串口设置、数据发送和数据接收三个模块。 串口设置模块包括串口测试和参数设置,可以用测试类的方法,在创建的测试类中用语句if-eles- 进行串口测试,通过for 循环统计可用串口端口,再用if 结构对可用端口逐个检验它的停止位、波特率、奇偶校验、数据位是否进行了设置,如果没有设置就进行参数设置;数据发送模块,可用语句class DataTransimit 把串口数据发送以及数据传输作为一个类,用来实现把数据包传输至下单板机;而在数据接收这个模块中,是通过public static byte[]语句创建byte 数组来实现接收数据。
对于实验室智能管理系统的软件实现,上面只是探讨了基于JAVA 的上位机与下位机之间的串口通信的程序构架,在此基础上还可以进一步做如下的优化完善:例如可以根据自身需要和实验室控制平台的实际情况设计独具风格的人机交互界面;又比如,在程序中加入线程技术,使得在程序中对于系统时间的获取可以通过线程的方式来进行,这样可以使上位机保持持续往下位机发送数据包;此外,对于上位机数据接收的方式,除了以上最基本的接收方法以外,还可以利用JAVA 中的JDBC 与MYSQL 等数据进行存储,这些数据处理功能还可以进行拟合分析和作出决策。
我们所探讨的智能管理系统,在硬件系统方面,是基于ZigBee 协调器与各种传感器模块相联结,在软件方面还可以利用其他的面向对象程序设计语言编程来实现对实验室内各设备实施智能监督和管理。