一种防风固沙装置的数据采集显示功能设计与实现
扫描二维码
随时随地手机看文章
引言
2005年8月,时任浙江省委书记的习近平同志在浙江安吉县余村调研时,首次提出"绿水青山就是金山银山"的重要论述。当前,荒漠化是世界各地都面临的重大环境问题,尤其是在我国西北地区,沙漠覆盖面积较大,已经严重影响到居民的正常生活。为了解决这一问题,很多组织机构都在积极尝试、开展沙漠绿化工作,逐步种植了一些具有固沙作用的植被,起到了一定的作用。但在种植过程中,缺少对环境、土壤、植被等的数据监测,或数据监测的种类较为单一,导致植被的存活率较低,达不到理想的覆盖效果。因此,本文设计了一种防风固沙装置的数据采集及显示系统,通过风速监测模块、土壤湿度监测模块、环境温湿度监测模块实现较为全面的数据采集,并提供了水箱水位监测功能,可以根据存水量及时补充植被的用水需求,系统采集的所有数据都可以实时显示在本地屏幕上,便于监测查看。
1系统总方案设计
系统总体方案设计如图1所示,本系统主要由Arduino UNO系列主板及其扩展板、9V电源(后期扩展方案可以引入太阳能板及电源管理模块进行供电)、显示模块、土壤湿度监测模块、温湿度模块、风速模块、水箱水位监测模块、水箱抽水泵组成。
2硬件设计选型
2.lArduino UNO主板及扩展板
本文使用较为常见且性价比高的Arduino UNO开源电路板作为核心,其具有12个可用数字量输入/输出引脚、5个模拟量输入引脚,可以配接较多的传感器模块及执行单元,也便于后期对系统进行功能性扩展:其配套的程序软件ArduinoIDE界面较为友好,程序编写更加方便,可以快速调用一些经过验证的稳定的库文件。同时,为了减少接线的数量,采用了UNO扩展板,如图2所示,其具备多路电源及接地引脚,改善了传统面包板占位较大且接线烦琐的问题。
2.2DHT22温湿度传感器模块
DHT22温湿度传感器模块具有标准单总线接口,相比DHT11拥有更高的精度和更大的量程,该传感器模块含有已校准数字信号输出的电容式温湿度传感器和热敏电阻来测量周围空气,可靠性及稳定性优异,其温度监测范围在-40~80℃,可以较好地在严酷的环境条件下长期工作。模块具备三个引脚,极大程度上降低了主控电路板的信号引脚占用,在程序编写过程中,也可以使用稳定的库文件,快速调用库函数,实现数据采集功能。
2.3风速模块
本模块采用的是三杯式机械风速传感器,通过空气流动产生的风力推动测量杯体转动,进而将转动力传递给传感器主轴,带动内部小型电机产生电压模拟信号,其电压基本和旋转速度成正比,以此获取环境风速数据,电压信号与风速的计算公式为:风速F(单位为m/S)=0.027×电压U(单位为mV)。该模块使用ABS工程塑料壳体,抗腐蚀性较强,可长期在户外使用。
2.4水位监测模块、土壤湿度监测模块及执行单元
本次设计考虑在植被种植处附近集中安设地下水箱,和供水管道相连接,以实现两个功能:(1)当植被所处的土壤环境湿度不足时,启动继电器,使供水泵工作,将水箱内的存水输送到土壤中,提高土壤的水含量:(2)在水箱中设有水位监测模块,一旦储水量低于预设值,则提示水位过低,需要打开供水管道进行蓄水,蓄水的目的是确保浇灌的水流温度和环境温度基本相符合,在给植被土壤补充水分时不会因为温差过大而影响植被生长。
2.5显示模块
屏幕显示部分,选用的是基于I2C通信模式的1.3寸OLED显示屏模块,相比SPI模式,该模块占用引脚少、成本低,单页显示内容较多,可以方便地实现中英文、数字、图形图像等的清晰、准确显示。在本次设计中,中文字符显示大小为12×12像素,英文及数字字符调用U8glib库,字体大小设置为u8g一fot6x13。
3硬件连接
系统硬件接线图如图3所示,接线实物图如图4所示。将扩展板焊接上排针后,对应引脚重叠插到Arduino UNO开源电路板上,9V电源接入主电路板或者扩展板。抽水泵和继电器连接串入电路中,确保条件不足时继电器不工作,抽水泵电路断路。继电器模块、温湿度模块、水位传感器、OLED屏幕的供电,接地引脚与扩展板上的多路供电和接地引脚连接,提供5V供电电压。风速传感器负极与扩展板任一GND端口连接,正极接入扩展板A0端口,水位传感器数据端口与扩展板A1端口连接,土壤湿度传感器数据端口与扩展板A2端口相连,获取模拟量数据。环境温湿度传感器DAT端与扩展板数字I/O端口3连接,继电器IN端与扩展板数字I/O端口2连接,OLED屏幕SCL、SDA端口与扩展板SCL、SDA端口相连,用于中英文字符及采集数据的传输显示。
4软件设计
系统软件设计流程图如图5所示,首先开机上电,系统进行初始化,完成后,进入实时监测状态,系统从温湿度传感器(使用数字引脚输入)获取环境温湿度数据,利用风速传感器、水位传感器、土壤湿度传感器(使用模拟引脚输入)获取实时风速、水箱水位及土壤湿度数据,显示效果如图6所示。在程序编写时,对土壤湿度数据进行分析,将采集值利用map()函数转化至0~100范围,当其低于设定值20时,启动继电器开启抽水泵:同理进行水位数据的读取与转换,低于预设值时,显示水位过低,提示增加蓄水量:对于风速的采集,主要用于后续机械防风装置的扩展设计,风速过大,启动机械装置将表层土壤保护起来。
在数据的实时采集过程中需要注意,为了防止数据的采集显示频率超出OLED屏幕的刷新率,导致OLED屏幕显示不完整,需要对实时采集的数据进行分组,对一定时间内的多组数据取平均值,再显示在屏幕上。
5结语
系统连接完成后对软硬件进行功能测试,经过实际检测,本系统的检测效果良好,能够实时采集传感器监测的数据并进行稳定显示,设计使用的传感器模块接线方便,占用主电路的引脚较少,性价比较高,便于后期增加附属功能。本文完成了系统的硬件搭建与选型,对软件功能设计进行了较为详细的过程叙述,提供了清晰的设计思路与实现路径,可以为相关设计提供有效参考。