1、*江苏省高校大学生创新创业训练计划项目研究成果,项目名称:自动灌溉控制系统设计(202113103039Y);江苏省大学生创新训练项目研究成果,项目名称:基于物联网技术的智能水肥一体机设计与研发(202113103036Y)自动灌溉系统设计*潘蓉杨国斌陈永琪(江苏农林职业技术学院,江苏 句容212400)Design of Automatic Irrigation System摘要:以STM32单片机和树莓派为平台,结合LoRa、GPRS等外设设计出了一套适用于田间种植灌溉的自动灌溉系统,用以解决传统大水漫灌浪费水资源、凭经验灌溉的不准确性等问题。该系统具有成本低廉、节省人力资源等优点,适合推
2、广使用。关键词:自动灌溉;STM32;LoRa无线通信Abstract:Using STM32 microCM and raspberry Pi and LoRa for GPRS.To solve the traditional flood irrigation waste wa-ter resources,with the experience of irrigation problems.The system has the advantages of low cost and human resourcesaving,which is suitable for promotion.Ke
3、ywords:STM32,automatic irrigation,LoRa wireless communicatio目前,我国传统的农业灌溉多采用大水漫灌的方式,灌溉完全凭借农民经验,由此造成的水源浪费问题尤为严重,对水资源的有效利用率远低于其他农业大国1。同时,我国是一个缺水国家淡水资源总量为28 000亿m3,占全球淡水资源的6%,居世界第4位2。按全国近14亿人口计算,人均不到2200 m3,为世界平均水平的1/43。因而,结合我国农作物种植生产的现况,全自动灌溉系统软件已经变成智慧农业不可缺少的一部分。1自动灌溉系统硬件设计1.1自动灌溉控制系统功能要求整个系统由一个控制模块与多个
4、采集灌溉模块组成,灌溉网覆盖需要浇灌的土地,通过App可对整块土地用水量的监控、控制以及分析。整个控制系统由采集灌溉模块、控制模块和云端以及手机App组成。采集灌溉模块负责监控当前模块土壤湿度并根据土壤湿度情况开关电磁阀,以达到维持土壤湿度的目的,并且将采集到的土壤湿度以及浇水量发送到收集模块。收集模块负责收集采集灌溉模块上传的土壤湿度以及对采集模块设置,以达到调整采集灌溉模块浇水量的目的,并将浇水量以及土壤湿度变化数据显示到屏幕,上传至云端备份。方便用户使用App实时查看当前土地失水和浇灌情况。1.2灌溉采集模块硬件设计思路灌溉采集模块采用STM32F103RET6单片机作为主控板,与三个电
5、磁阀三个土壤湿度YL-69传感器以及Lora通信模块连接。可以实现与收集模块的通信和采集土壤湿度以及打开电磁阀进行灌溉三大功能,原理如图1所示。电路元器件选用:由于自动灌溉系统需要长期在户外环境使用,所以外设器件需具有满足抗老化、耐磨损、抗干扰性强、低功耗、低成本特性。根据灌溉采集模块的功能以及所使用的外设,对主控板的GPIO资源进行分配如表1所示。1.3收集模块硬件设计思路收集模块需要满足如下功能:1)对范围内的采集浇灌节传输的数据进行整理;2)将采集浇灌节传输的数据进行整理后上传至云端;3)将采集浇灌节传输的数据进行整理后显示到屏幕上;4)下发更改修正灌溉数据的指令到采集灌溉模块。所以采用
6、更高性能的树莓派作为监控模块的主控板,在与虚拟服务器的通信技术层面,本文将选用GPRS无线组网技术。电源采用蓄电池供电加太阳能充电的可持续化供电方案,蓄电池采用市面成熟的12 V锂电池,可以提供整个自动灌溉系统运行24小时所需电量。并且加入太阳能光伏板供电,此套供电方案可省去不必要的电线资源耗费,以及减少供电安全隐患。2自动灌溉系统软件设计整个软件的设计部分包括采集灌溉模块的软件设计与收集图1灌溉采集模块电路原理图表1STM32引脚资源分配表自动灌溉系统设计132工业控制计算机2023年第36卷第2期模块的软件设计以及App远程操控硬件概念的设计。整个软件部分采用了收集模块、灌溉模块、App联
7、合控制的设计思路。使得自动灌溉系统可以实现远距离控制、田间控制等功能。2.1通讯协议本文设计的自动灌溉控制系统收集模块和采集灌溉模块的通讯协议被设计为私有协议,可以同时兼顾灵活性与良好的扩展性。通讯协议总共为八个字节,以极低的内存存储了灌溉模块与收集模块之间交换数据的所有内容,格式如表2所示:表2通讯协议详情表同时根据要传递的信息制定不同的功能码,以标识单片机程序要识别的信息并做出相应的反应。功能码定制如表3所示:表3通讯协议功能码表2.2采集灌溉模块系统上电后首先开始系统自检,检测是否能够感应到土壤湿度数据以及各集成模块是否正常工作。系统自检完成后,开始与接收模块建立通信。此时开始执行接收模
8、块下发的指令,校验指令完整性。指令校验完成后,将收集模块下发的预设数据与本地数据对比,若不同则更新本地模块数据为收集模块下发的预设数据,系统初始化流程结束。系统初始化流程结束后开始采集土壤湿度数据,若小于预设湿度则认为土地干涸需要浇灌,此时水阀打开浇灌土地,同时继续采集判断土壤湿度数据,若大于系统预设值以后则认为土地湿润不需要浇灌,进而关闭电磁阀并视为完成一次浇灌。浇灌结束后上传一次土壤浇灌信号让收集模块统计,具体工作流程如图2所示。2.3收集模块系统上电后收集模块程序自启动,由于树莓派硬件均被其搭载的操作系统初始化过,所以开发的收集程序无需初始化硬件。系统上电后收集模块与采集灌溉模块建立数据
9、通信,校验灌溉模块上传的数据完整度。校验完成后若用户设置新的土壤湿度上下限数据,则向采集灌溉模块下发新的土壤湿度上下限,若用户没有设置新的土壤湿度数据,则向采集灌溉模块下发默认预设值。下发完成后开始使用中断的方法接受采集灌溉模块上传的灌溉信号,接收完成后统计灌溉次数、灌水量,并上传至云端。具体程序设计如图3所示。2.4系统App模块系统App从云端数据库下载由收集模块上传的灌水量以及灌溉次数,可实现远程监控田地灌溉情况和失水情况。同时也支持用户在App设置土壤湿度上下限并至云端,由收集模块下发至采集灌溉模块,可避免用户频繁往返田地。通过软件的自动控制灌溉,可以将土壤湿度维持在一个可控的能够预设
10、的范围内,为作物的生长过程提供一个良好的土壤湿度条件。3自动灌溉控制系统调试3.1灌溉功能调试系统供电正常后应验证由继电器、电磁阀组成的灌溉电路是否可控。由于调试软件Proteus无法模拟控水阀门,所以在仿真电路中使用红色LED灯代替浇灌阀门。电路上电后,程序启动等待达到浇灌时间后,发现继电器吸合后红色LED灯亮,证明继电器电路正常工作。3.2灌溉采集模块测试加入DHT11模拟土壤湿度数据如图4所示。将土壤湿度预设值调为50,此时U3土壤湿度为80,U2为50,U4为30时 说 明U3处土 壤 湿度 足够,U2处土壤湿度正好达标,U4处土壤湿度不足。所以U3位置继电器RL2关闭停止灌溉,U2位
11、置继电器RL1即 将关闭预停止灌溉,U4位置RL3开启继续灌溉。3.3灌溉采集模块与收集模块通信调试给Proteus收集模块电路加入虚拟串口模块,然后使单片机外设USART1的IO口PA9与PA10f分别连接到虚拟串口的RXD与TXD。最后,当收集模块接收到采集模块发起的通信请求后,通过仿真功能可以看到收集模块向采集模块发送了8个字节的同时,采集模块也向收集模块返回了8个字节指令,如图5所示。证明单片机与树莓派之间的通信功能完整,不存在丢失数据的情况。图3收集模块程序流程图图2采集灌溉模块程序流程图133(上接第131页)基地实验室,开展创新设计型项目的制作和调试,从而进一步提高综合应用单片机
12、知识解决实际工程项目的能力。为了更好地引起学生的兴趣,同时为了参加机器人比赛选拨人员,以智能小车为载体,设计创新设计型项目,搭建灵活的单片机实践应用项目,围绕着传感器信号采集、数据处理、人机接口、自动控制、通信接口等方面展开训练,从而进一步提升综合设计应用能力。对应图1中从事单片机的产品设计,研发和系统设计等相关工作岗位的要求。通过单片机课外实践教学的活动,一方面充分发挥测控创新实验室和产学研基地的作用,另一方面也有效激发学生学习的自觉性、能动性、创造性及学习热情。4结束语基于应用型人才培养的单片机实验教学模式改革,基本形成了以“学生为主体,教师为主导”的分层次、项目式,线下实践与线上指导相结
13、合的单片机实验教学模式,确定了“教师引导,学生多练”的实践教学原则,强化了单片机实践教学的重要性;开发完成了单片机虚拟仿真开发板及单片机实验硬件实体开发板,包括单片机实验开发板(基础版)、单片机实验开发板(提高版);设计了三层次、项目式的单片机实验教学项目,明确了实验项目任务要求;制作并发布了单片机学习实验视频,初步形成了单片机学习视频资源库。在实验教学模块及教学过程管理上探索实践了课前、课中、课后三个模块,课内、课外两个方面,线上、线下两个环节。同时以测控开放创新实践基地实验室为平台,开展了课外的实践探索及科技项目的制作,提高了动手实践能力和科学研究能力,有效地提高了单片机的教学效果和教学质
14、量。参考文献1王京港,张翠平.基于项目驱动及Proteus仿真的单片机教学改革与实践J,教育教学论坛,2013(22):138-139,1432刘承桥,马俊.基于开发板的单片机实验教学改革与实践J.计算机教育,2021(1):172-1763苗曙光,李峥,方振国,等.基于口袋实验室的单片机实验教学改革研究J.赤峰学院学报(自然科学版),2020,36(8):101-1044唐琳,刘星月,廖先莉,等.仿真与实验相结合的单片机实验教学研究J.实验技术与管理,2019,36(4):213-2165林立,张俊亮.单片机原理及应用基于Proteus和Keil CM.4版.北京:电子工业出版社,2018收
15、稿日期:2022-07-01图5采集灌溉模块与收集模块通信界面使用串口调试助手可发现灌溉模块与收集模块通信正常,当检测到收集模块下发更改预设土壤湿度指令时,灌溉模块能够及时响应并更改自身预设值。3.4收集模块功能调试收集模块开机后功能正常,通过模拟调节灌溉模块湿度发现灌溉模块数据上传正常。灌溉模块程序运行稳定无Bug,下发指令正常、灌溉信息显示正常,结果如图6所示:图6收集模块程序界面4结束语本系统通过发射端传递的湿度信息 通过接收端对农田湿度进行调节 以到达节水灌溉的自动控制为目的。然而在调试过程中发现本系统还是存在着或多或少的缺点,比如在编程时低估树莓派性能,没有完全发挥树莓派性能,导致收集模块的用户界面过于简陋,以及与服务器交互的远程控制App,没有设计出供苹果手机使用的iOS端,只有安卓端,这些问题需要在今后解决。参考文献1钱治丞,宋博,刘勇,等.水肥一体化远程施肥机控制系统设计与实现J.黑龙江大学自然科学学报,2021,38(3):364-3712曲颂,刘玉敏,宋博,等.自动灌溉控制器设计与实现J.黑龙江大学工程学报,2021,12(4):72-773边吉.中国水情资讯J.决策与信息,2012(10):7收稿日期:2022-07-04图4灌溉采集模块功能图自动灌溉系统设计134