面向物联网应用的水体盐度监测系统设计

2021-06-17 07:56邓潇阳徐志宇
自动化仪表 2021年5期
关键词:触发器盐浓度树莓

邓潇阳,徐志宇,2

(1.同济大学电子与信息工程学院,上海 201804;2.同济大学计算机与信息技术国家级试验教学示范中心,上海 201804)

0 引言

我国对于海产品种类与数目的需求不断增长。但由于沿海地区的过度捕捞,海水污染的影响,以及新时代可持续发展的要求,海水鱼的捕捞量日益下降。与此同时,而海水鱼的养殖规模进一步扩大。人工养殖需要保证水质适于海水鱼生存,而盐度值对于海水鱼较为重要。用数字化的方式进行盐度监测对于海水鱼的养殖与管理具有重要意义。

目前,溶液浓度测量主要有滴定法、分光光度计法、比重计法、旋光度法、电导法等。数字化的盐度测量仪器体积较大,使用较为复杂,因此希望采用更为简单的设计方案。文献[1]设计了一种使用电容式传感器的稻谷含水率检测装置。该文献利用稻谷介电常数受其含水率影响的原理,在样品不同含水率时用传感器测量出电容,确定稻谷含水率与电容的关系曲线,并综合温度特性试验完成传感器标定,取得了良好的含水率测量结果。

本设计参考利用介电常数变化进行测量的思路[2-4],以固定间距的电极板作为测量探头;使用FDC2214芯片测量不同盐浓度值下的电容值并标定电容-盐浓度曲线,利用标定的曲线测量实际水体盐浓度[5];使用树莓派将测量值作为数据流上传至云平台,实现水体盐度监测。

1 系统架构

本设计测量水体盐度,并通过云平台配置,使得用户能够在移动终端查看水体盐度的实时数据。系统构架如图1所示。

图1 系统构架图

系统的现场测量部分包括FDC2214电容测量模块和一对固定间距电极板组成的探头。测量时,探头进入溶液中,液体填充两块极板的中间部分,作为电容的介质。电极板与液体构成的电容接入FDC2214模块的测量电路中。该模块将测量该电容值,并将读取值存入FDC2214芯片的寄存器,以便下位机读取数据并进一步处理。

系统的下位机应兼有控制FDC2214模块与网络通信的功能。因此,下位机选择了树莓派3B+,并选用Nokia5110作为输出显示。树莓派通过I2C与FDC2214模块通信,读取存储在FDC2214寄存器中的测量值,并利用技术手册中提供的转化公式将该测量值转化为实际电容值。通过标定试验得到电容-盐度拟合曲线后,树莓派使用该曲线的函数将电容值转化为水体的盐浓度值,将该值输出在显示屏上,并将浓度值作为数据流上传云平台。

云平台使用了中国移动OneNET平台。云平台与下位机之间的数据传输是通过HTTP协议实现的。利用该平台的应用程序接口(application programming interface,API),实现了水体盐度的实时网络监测与自动告警功能。触发器将在水体盐度超过阈值时以电子邮件形式向个人用户告警;此外,个人用户还能够通过移动终端查看实时的水体盐度值。云平台能够存储一部分近期浓度记录值,对水体盐浓度分析有一定的作用。

2 智能终端设计

2.1 测量探头

本设计中,测量探头选择接触式的测量方式。为避免测量过程对溶液本身造成影响,选用石墨电极制作为测量探头电极板。石墨电极具有优良的导电性能,也能够避免极板锈蚀引起的误差、延长设备的使用寿命与维护成本。本设计中,测量探头由一对正对的电极板构成,两片极板间用木棒支撑,从而在极板间留出一片空腔。测量时溶液将进入两极板间的空腔内,作为极板间介质。溶液介电常数的变化量将引起探头电容的变化[6],电极板的面积越大,极板间距越小,测量灵敏度越高。综合试验条件、实际使用情况等因素,本设计将电极板大小设计为30 mm×30 mm,极板间距3 mm。

2.2 树莓派与Nokia5110配置

在本设计中,树莓派使用Raspbian系统进行开发[7]。树莓派作为下位机,在python环境下设计完成了数据采集与数据处理、上传数据流至云平台等功能。此外,希望系统现场测量端具有实时输出测量值的能力[8-9]。由于输出内容较为简单,选用了一款功能单一、成本较低的LCD显示屏Nokia5110。

在树莓派的设置方面,使用树莓派自带的I2C接口,通过树莓派直接配置了FDC2214的寄存器,控制该模块进行测量并读取测量结果;在树莓派的程序中,输入了电容-盐浓度转换函数,树莓派读取测量值后直接用该函数进行转换并计算盐浓度值[10];树莓派还将浓度值作为数据流向云平台上传。这一过程通过树莓派中的Requests库来实现。Requests库是一种采用Apache2 Licensed开源协议的HTTP库。通过调用Requests库,能够方便、快捷地将数据流通过HTTP协议上传特定参数至云平台,实现数据的云监测[11-13]。树莓派中写入了Nokia5110的驱动程序,完成电容-盐浓度转换后即调用显示屏驱动程序将该值输出在Nokia5110显示屏上,显示内容包括测量值以及当前时间。

2.3 FDC2214芯片配置

FDC2214芯片是一个具有28位精度的12脚芯片,共有四个测量通道。每个测量通道使用前都需要设计谐振腔。谐振腔的电容电感参数可以自由选择,本设计选用的测量模块将18 μH的电感与33 pF的电容构成一个通道的谐振电路,并接入40 MHz外接晶振。

配置FDC2214芯片寄存器,使其每10 ms读取一次测量值,通道稳定时间设为4 μs;选用外接晶振,使用通道0在单端模式下进行电容测量。测量完成后,FDC2214芯片将测得的、与频率有关的返回值存储在寄存器,通过转换公式计算出实际电容值。

3 云平台的配置

3.1 OneNET平台基本配置

OneNET是一种多个领域开放的物联网开放平台。本设计使用该平台接收数据流并完成简单的数据处理工作[14]。在OneNET平台取得分配的 APIkey,用于接入云平台时的安全鉴权,选择HTTP协议简单地传输浓度数据流。完成基本配置后,可对数据上传功能进行可视化配置,准备将树莓派所测得的数据上传。

3.2 数据上传及其可视化

OneNET云平台提供了几种现成的图表样式以供选择。用户能够自定义几种给定的图表外观。

本设计为反映水体盐度的变化情况,选择折线图反映浓度测量情况,刷新频率设定为5 s。水体盐浓度折线如图2所示。

图2 水体盐浓度折线图

图2能够反映一段时间内的盐度变化情况,在每一点处标明测量值,满足实时监测的需要,但不适用于对较长时间的测量结果进行分析。

3.3 触发器设置

在OneNET云平台中,设置了两个触发器对数据流进行监控。触发器将在数据流达到预设条件时发送告警信息。本设计共设置了两个触发器,触发器绑定数据流均为浓度。“Excessive”触发器在浓度值大于0.038 g/mL时触发,“Insufficient”触发器在浓度值低于0.021 9 g/mL时触发。本设计采用电子邮件接收该触发器的告警信息。电子邮件中将说明触发器触发类型、触发时间以及触发值。用户可在任意能够接收电子邮件的移动端获取触发器上报的信息,在水体盐浓度异常时及时作出反应,实现了浓度监测自动告警。

4 标定与测量试验

4.1 电容-盐浓度曲线标定试验

本试验采用市面上一种固定成分配比的人工海盐配置不同浓度的盐溶液。人工海水按照盐度26配比时,适用于海水鱼养殖的环境。为方便试验,将该值换算为浓度值0.032 g/mL。实际使用中水体盐浓度大部分时间在该值附近。为保证传感器在该浓度值附近测量的准确性,在该浓度值附近选择了15个浓度值点进行电容-盐浓度曲线标定。电容-盐浓度散点如图3所示。

图3 电容-盐浓度散点图

根据图3,将电容值作为自变量,水体盐浓度值作为因变量进行函数拟合。在拟合方法上选择多种方法进行了尝试,最终选择了一阶多项式拟合结果作为电容-盐浓度曲线。

4.2 水体盐浓度测量试验

水体盐浓度测量结果如图4所示。

图4 水体盐浓度测量结果

本试验目的是验证传感器盐浓度测量的准确性,同时初步计算传感器的静态特性。试验选取了与电容-盐浓度曲线标定试验中相同的15个浓度点进行测量。试验证明了拟合曲线结果的准确性,总体上测量值与实际值的符合程度达到了本系统的要求。

5 结论

本文使用树莓派作为下位机、Nokia5110作为显示屏,完成通信功能、数据转换与显示功能;将FDC2214模块作为电容测量设备,用电容的变化量反映水体盐浓度的变化量;使用OneNET云平台进行了数据处理,实现了自动告警;进行了电容-盐浓度曲线标定试验与水体盐浓度测量试验。计算得到传感器的最大相对误差为7.91%,标称相对误差4.74%,实现了电容式传感器测量水体盐度、移动端实时监测水体盐度与自动告警的功能[15]。传感器精度与设备的复杂程度均能够满足海水鱼养殖对于水体盐度监测的需要。

猜你喜欢
触发器盐浓度树莓
不同盐分条件下硅对两个高羊茅品种生物量分配和营养元素氮、磷、钾吸收利用的影响
混合盐碱胁迫对醉马草种子萌发及幼苗生理特性的影响
基于树莓派的骑行智能头盔设计
硅对不同抗性高羊茅耐盐性的影响
不同盐胁迫水平下硅对高羊茅幼苗生物量、酶活性和渗透调节物质的影响
基于树莓派的远程家居控制系统的设计
使用触发器,强化安全性
响应面法优化红树莓酒发酵工艺
欧盟:速冻树莓比鲜食树莓市场更好
几种常见触发器工作方式的讨论