水产养殖环境因子的状况直接影响水产品的产量、品质及安全生产。因此,在现代工厂化养殖中,对养殖水体的温度、酸碱度(pH)、溶解氧、氨氮值、电导率等环境因子进行自动监测,正受到越来越多的关注。
根据传输介质的不同,通常数据信息传送可分为有线数据传输和无线数据传输。有线数据传输存在布线麻烦、维护成本高、数据精度差、可靠性较低等缺点。而无线数据传输由于其灵活性和便利性,已广泛应用到社会各个领域,如国防军事、环境监测和预报、大型车间和仓库管理、机场和大型工业园区的安全监测等,并且显著地提高了工作效率。为此,应用NRF24L01无线通信模块,结合虚拟仪器技术,系统上位机以LabVIEW为开发工具设计了一种水产养殖环境因子无线监测系统。
1、系统总体设计
如图1所示,监测系统由单片机监测终端和监测中心PC机组成。其中单片机监测终端由传感器数据采集模块、A/D转换模块、LCD显示模块、无线通信模块等构成。单片机监测终端既可以独立完成各种信息的采集、预处理及显示任务,又能向监测中心PC机传送所采集到的数据信息。监测中心PC机主要完成数据存储、数据显示、数据管理、数据查询和历史资料统计分析等功能。
本系统的具体工作过程如下:首先,各传感器把采集到的非电量转换成微弱的电压信号,通过调理电路变换为4~20mA的标准电流信号,然后,通过电流/电压转换器,将电流信号转换为电压信号传送给单片机,单片机对水质数据进行分析处理后,通过无线通信模块发送出去,监测中心PC机收到数据信息进行统计分析、存储、以曲线图和表格形式实时显示水质数据,从而实现对水产养殖环境因子的自动监测。
2、监测系统硬件设计
2.1 传感器选择
传感器处于水产养殖环境因子在线监测系统的最前端,选择时无论在精度、重复性,还是响应时间、稳定性等方面都应符合水产养殖环境监测仪器的有关技术要求,而且输出信号应具有良好的线性性。
pH测试采用PHG-96FS型pH传感器,该传感器是专用于测试溶液pH的精密仪表,具备自动温度补偿、三点校正等功能。其性能稳定,操作简便,测量范围从0.00一14.00pH,精度±0.02 pH,输出电流4~20 mA。
2.2 微处理器
本系统选用STC公司的STC12C5A60S2/AD/PWM系列单片机。它是宏品科技生产的单时钟/机器周期(1T)的单片机,是高速/低消耗/超强干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8~12倍。该单片机具有62K FLASH程序存储器,1280字节片内RAM数据存储器,片内集成8路10位精度高速A/D转换器,转换速度可达250 k/s、2路PWM。另外,内部还集成MAX810专用复位电路、看门狗电路等,可以用来提高程序运行的可靠性。微处理器主要完成管理传感器、数据处理和数据传送等功能。
2.3 无线收发系统
无线收发系统是水产养殖环境因子监测无线传感器系统中重要的组成部分,本系统选用NORDIC公司生产的无线通信芯片NRF24L01。NRF 24L01工作于2.4~2.5 GHz ISM频段,其工作电压为1.9~3.6 V,特点是功耗低,内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurST技术,其中输出功率和通信频道可通过程序进行配置。该芯片采用FSK调制方式,可以实现点对点或1对6的无线通信,通信速率可以达到2 Mbps。
2.4 NRF24L01与单片机的接口电路
无线收发模块NRF24L01与单片机STC12C5A60S2/AD/PWM的接口连接如图2所示。NRF24L01的MISO脚连接单片机的P1.3脚,其功能是NRF 24L01将接收到的数据解调后输出到单片机中。NRF24L01的MOSI脚连接单片机的P1.4脚,其功能是单片机将准备发送的数据传输到NRF24L0 1,经过调制后发送到上位PC机。NRF24L01的CE脚连接单片机的P1.1脚,CE为使能发射或接收引脚。在CSN为低的情况下,CE协同NRF24L01的CONFIG寄存器共同决定NRF24L01的状态。
2.5 串口通信接口电路
上位PC机与单片机之间的通信通过电平转换芯片MAX232来完成。
串行通信接口电路如图3所示,当单片机与PC机通信时,其数据传输过程如下:MAX232的11脚T1in接单片机TXD端P3.1,TTL电平从单片机的TXD端发出,经过MAX232转换为RS-232C电平后从MAX232的14脚T1out发出,再连接到串口座的第3脚,再经过交叉串口线后,连接至PC机的串口座的第二脚RXD端,至此计算机接收到数据。PC机发送数据时从PC机串口座第3脚TXD端发出数据,再逆向流向单片机的RXD端P3.0接收数据。
3、系统软件设计
3.1 数据采集
数据采集工作流程图如图4所示。单片机P1口初始为AD模式,设置一个定时器,使系统周期性地采集数据,采集时间到,系统进行数据采集,采集完毕后对数据进行分析处理并打包,通过无线通信模块发送,发送完后,进入下一轮采集工作。
pH的采集选用上海力琼电子有限公司生产的PHG-96FS型测试仪,其输出电流为I=pHx(8/7)+4.00 mA。通过电流/电压转换器将pH测试仪输出的电流转化为对应的电压接到单片机的P1口,将P1口设置为AD模式,可得模拟输入电压Vin=pHx[(8/7+4)]xRx1 000。然后,根据A/D模拟输入量Vin与数字量输出D的关系D=Vinx1 024/Vref,Vref为单片机A/D模块的参考电压,其值为Vref=5 V,最后得到pH的计算式为pH= 35xD/(1 024xRx36 000)。其部分程序如下:
3.2 pH显示程序
PHG-96FS测试仪的分辨率为0.01 pH,则本系统也将计算得到的pH保留小数点后两位小数,具体的做法为将temp=35*gedata/(1 024*R *36000)的分子乘以100,即temp=35*gedata/(1 024*R*360),其部分程序如下:
3.3 下位机串口通信程序设计
定义串行通信的波特率和通信模式是下位机串口通信的一个重要工作,本系统设计的波特率为57 600位/秒,即上下位机传送数据的速度是每秒发送57 600位。另外,使用的是串行方式1,因此波特率的选择取决于定时器/计数器1的溢出速率和电源控制寄存器PCON。本系统的晶振频率为11.059 2 MHz,可得重装数值N=0xFF。当接收到无线模块传来的采集信号时,下位机便将采集到的数据解包,通过串口传送给上位机,LabVIEW将数据转化为pH并通过前面板显示。其程序流程图如图5所示。
3.4 基于LabVIEW的PC机软件设计
LabVIEW是美国国家仪器(National Instruments,NI)公司开发的一种图形化编程开发工具,采用数据流的方法来描述程序的执行。Lab VIEW除具有灵活而强大的数据采集和信号处理能力外,搭建测试平台时还具有开发时间短、调试轻松、程序扩展方便等特点,因此,广泛应用于各领域的数据采集、仪器控制、测量分析、数据显示与存储等方面。
本系统LabVIEW程序设计包括前面板和程序流程框图两部分。前面板是图形用户界面,由输入控件和显示控件组成,界面上有用户输入和显示输出两类对象,具体表现有开关、旋钮、图形,以及其他控制(control)和显示对象(indicator)。本文以pH监测为例,虚拟仪器的前面板设计如图6所示。面板中包括串口选择、数据采集、pH校正值、历史数据查询、系统退出等输入控制件,以及pH的实时显示等。
程序流程框图提供虚拟仪器的图形化源程序,由端口、节点、图框和连线构成。其中端口用于与前面板的控制和显示传递数据,节点用于实现函数和功能调用,图框用于实现结构化程序控制命令,连线代表程序执行过程中的数据流,用于定义框图内的数据流动方向。本系统的程序流程框设计如图7所示,程序流程中除了常规的程序流程控制之外,还采用了数据包的解压、数据的搜索匹配和数据的滤波处理等。
4、结束语
本系统以LabVIEW为开发平台,采用无线收发模块NRF24L01,实现了对水产养殖环境因子pH的实时采集、显示和存储,以及历史数据查询等,克服了传统有线监控系统带来的布线复杂、监测不便等不利影响。经测试表明,该系统运行稳定、数据显示准确,所测数据能为pH的控制和水产养殖决策提供依据。另外,该系统界面友好、操作简便、易扩展、性价比高,具有较好的应用前景。