白亮亮
(新疆工程学院信息工程学院,新疆乌鲁木齐,830000)
水库随着时间的增长,受气候、动物以及人类生活等影响,污染物会逐渐在水体中累积,如果不对水源进行监测,不定时清理水体中的污染物,将会对水库的正常使用造成巨大影响。经研究调查,在不同存在形式、分布特征的污染物中,悬浮态污染物对营养盐、重金属和有害有毒物质的吸附率最高,所以开展对悬浮物的研究,对水源水库的水质的检测,对水源水库的水质检测具有非常重要的价值[1-2]。
自动化设备投入监测与使用提升了管理效率,中科院海洋研究所设计了一种数据采集器,该设备主要面向应用对象为海洋的水环境,该系统存在成本高等问题[3]。王士明提出了一种基于Zig Bee 协议的无线传感器网络(WSNs)的水质监测系统方案,系统采集的参数有实质溶解氧、PH 值等数据,通过串口将数据发送到计算机,通过labview 进行显示,该系统实时性好,对象侧重点在水质环境监测[4]。
本系统设计了一种能够对水位深度,水质浑浊度及水流速进行检测的传感器,同时采用labview 进行实时显示,该系统成本低,显示界面良好。
本设计所使用的硬件设备STM32F103R8T6 单片机、深度传感器、TS-300B 浊度模块、水流速传感器、USB 接口模块、个人计算机,整体框架图见图1。
图1 系统框图设计
本次使用的水位测量传感器(见图2),该水位传感器是一款简单易用、性价比较高的水位/水滴识别检测传感器,该传感器模块是一个模拟传感器,通过一系列的暴露的平行导线完成水滴的测量,因为水具有导电特性,当水覆盖了传感器的表面时,引起传感器的电压发生改变,后面经过ADC 的数字化转换,从而完成水位的测量。
图2 水位测量传感模块
本次实验采用的是TS-300B 浊度模块(见图3),该装置是根据散射光线强度这一原理进行,采用红外光作为光源能够进行干扰的抵抗,同时在该模块中集成了温度的补偿系统,这样在复杂环境下传感器的稳定性还是能够得到进一步的保障。同时在具体的测量值可以进行一定的保存,与一些CPU 控制模块相互配合可以进行浊度的阈值设定与报警。该模块也是一种低能耗模块,利用锂电池就可以驱动模块实现正常的工作。
本次设计使用的流速传感器(见图3),设计的过程中采用的工艺有塑料阀门,水流转子和霍尔传感器。当水流通过转子的时候推动转子旋转,因而在霍尔传感器接收信号的时候产生脉冲信号根据脉冲信号的强弱判断控制器水流量的大小,从而对其进行调控。
图3 TS-300B 浊度模块
图4 水流量传感器
设计的流程图(见图5),在初始化函数中使用到的模块有串口模块,ADC 模块和三种必须的传感器模块,和计时器模块。单片机中采集深度和浑浊度数据,均是通过ADC 循环采样模块进行采样,采集流速信息则是通过设置一个定时器,每接收到一个脉冲信号则中断加一,以此来计算水流量。
图5 主程序流程图
LabVIEW 的图形化源代码在某种程度上类似于流程图,因此又被称作程序框图代码,系统部分程序框图见图7。
图7 系统程序框图
设计的硬件部分通过调试,使用STM32 单片机,以及TS-300B 浊度模块、水位测量传感器、水流量传感器。能通过串口通信的方式,实现数据从单片机向上位机界面的传送,并且硬件设备从水中测量水体深度、测量水中的浓度及水流量误差不大,同时实现将采集到的信息上传到上位机中,并在LabVIEW 中能够将这三者变量用折线图进行展现,在LabVIEW 上位机中也能正常显示实时数据变化,基本达到了预期的要求,
设计在完成基本功能的同时,依然有许多不足之处需要进行进一步的完善与改进,如在具体的使用时能测量的水位高度有限,因为湿敏传感器测得的水位毕竟有限。在进行浊度测量的时候,使用了反射光线强度的表征方式来量化水体的浊度,所以在实际测量时日光或者日光灯对测量精度影响很大,同时传感器的表面需要时刻保持洁净。同时本次设计仅能采集数据,并不能通过LabVIEW 上位机来控制传感器参数,设计功能不够全面。
LabVIEW 是美国国家仪器公司提出的一种语言,同时提出了虚拟仪器这一概念,提出软件即仪器的思想。LabVIEW语言的功能不断被扩充,因为其对功能的打包,使得其开发周期缩短,LabVIEW 提供图形化编程语言,并提供大量的控件给用户使用,很大程度上模拟了现实世界,使得没有编程基础的人也能使用。基于LabVIEW 编程的上位机编程实现还有很多其他的特点,LabVIEW 运行机制是基于数据流进行的,程序在运行的时候,都会由节点进行联系,当所有的数据到达节点后,才能被执行。
系统LabVIEW 应用程序包括前面板(Front Panel)、流程图(Block Diagram)以及图标/连结器(Icon/Connector)三部分。前面板是图形用户界面,也就是VI的虚拟仪器面板,这一界面上有用户输入和显示输出两类对象,具体表现有开关、旋钮、图形以及其他控制和显示对象。该设计的前面板见图6。