PLC自动化|毕设答辩|毕设项目|毕业论文|基于PLC的农业大棚灌溉远程自动控制系统设计与模拟

PLC自动化|毕设答辩|毕设项目|毕业论文|基于PLC的农业大棚灌溉远程自动控制系统设计与模拟
文档标题基于PLC的农业大棚灌溉远程自动控制系统设计与模拟文档介绍1.绪论1.1 研究背景与意义随着全球水资源短缺的问题越来越严重农业用水占社会总用水量的比重很高传统的农业大棚灌溉方式存在“大水漫灌”、凭经验浇水等弊端造成水资源大量浪费。农业劳动力严重缺乏、劳动力价格不断上涨使依靠人工巡检、靠经验判断的传统灌溉方式已经不能满足现代农业发展的需要。人工操作存在反应滞后、执行偏差等问题会使得农作物产量和品质受到影响并且还会使大棚内的环境调控出现滞后现象不能满足现代农业精准化、标准化生产的需要。因此用先进的自动化控制技术加物联网通信手段建立可以及时感应环境变化并且作出决定的智能灌溉系统是提高农业大棚生产效率、实现节水增产的趋势。本文针对农业大棚灌溉存在的问题提出了以西门子S7-1200PLC为基础的农业大棚灌溉远程自动控制系统方案。该方案利用PLC对环境参数进行实时采集和逻辑判断对灌溉做出准确的决策代替了人工的经验灌溉达到节水增产的目的。同时利用DTU模块以及组态软件技术创建远程监控平台管理人员可以在PC端或者手机APP上随时知道大棚现场数据并且远程干预大大降低人工劳动强度提高农业设施现代化管理水平。本文对推动农业由传统粗放型向现代精准型的转变有重要的理论研究和工程应用价值。1.2 国内外研究现状1.2.1 国外研究现状发达国家对于农业自动化以及精准灌溉的开展要晚于发展中国家技术系统更为完备。美国、以色列、荷兰等农业发达国家温室大棚灌溉控制已经用上物联网、云计算、人工智能等技术。以色列由于水资源严重匮乏滴灌、微喷灌技术居世界首位其灌溉控制系统可以依照土壤墒情、气象状况以及作物生长模型作出准确决定从而达成水肥一体化管理的目的。在美国的大规模农场里广泛使用GPS、遥感等技术来建设变量灌溉系统利用田间土壤水分传感器网进行实时监测墒情分布并用中央计算机控制系统来实现分区差异化的灌溉大大提高水资源利用率。欧洲国家荷兰依靠自身先进的温室产业构建出环境调控、灌溉操作、营养液循环利用等全部包含在内的智能温室控制系统从而达成农业生产的高度自动化以及工厂化。近几年来国外的研究更加强调将人工智能算法同灌溉决策紧密结合。研究人员用机器学习的方法来对历史灌溉的数据和环境的参数进行训练从而形成一个作物需要水的预测模型使得灌溉系统可以具有自学习、自适应的功能。另外无线传感器网络技术被广泛应用于农业灌溉方面在低功耗广域网技术发展成熟之后大面积农田的远程监测变得可行。国外还不断探究农业机器人技术同灌溉系统融合的方式用移动机器人装设土壤传感器实施动态墒情搜集从而加强灌溉调控的精细程度。就目前而言国外农业灌溉技术正向着智能化、网络化、无人化方向飞速发展。1.2.2 国内研究现状我国的农业自动化灌溉技术研究起步较晚但是近些年来发展很快。伴随着国家对于智慧农业的大力支持以及物联网技术的发展国内的学者以及企业也已经在智能灌溉方面取得了很多成果。目前国内主流的智能灌溉系统大多使用单片机或者PLC作为控制核心用土壤湿度传感器、温度传感器等对环境参数进行采集然后根据设定的阈值进行自动灌溉控制。就通信方式而言由最初的有线通信发展成为现在的ZigBee、WiFi、GPRS、4G等无线通信方式有效地降低了系统布线的费用并且提升了系统的灵活性。组态软件的使用也使灌溉系统监控界面更加直观易用管理者可以在上位机上随时了解大棚环境状况并下达控制命令。但是目前我国的农业灌溉系统仍然存在一些不足之处。首先很多系统的控制策略比较简单只用一个土壤湿度阈值来决定不能对多种环境参数做出综合分析不能满足作物快速生长的需求。其次不同的作物、不同的生长阶段对于水分的需求是不一样的现有的系统缺少了灵活的参数配置以及配方管理的功能必须人工不断地调整设定值。另外远程监控功能比较基础缺少数据存储、追溯等能力不能很好地进行灌溉记录及报警事件的管理工作。本课题就是针对以上问题设计出一个基于PLC的配方功能可以实现不同作物的灌溉参数快速切换建立了完整的远程监控和数据管理系统为农业灌溉提供智能化、灵活化的解决方案。1.3 主要研究内容本课题主要是针对基于PLC的农业大棚灌溉远程自动控制系统进行相关的研究。对系统总体方案进行设计。通过对农业大棚灌溉实际需求的分析来确定系统应该具备的功能指标即环境参数实时采集、自动、手动和远程三种工作方式、灌溉智能决策、超限报警、数据存储和追溯等。在此基础上设计以PLC为主的总体实现方案绘制系统结构总图确定各个功能模块的分工以及数据流。对系统的硬件进行设计并建立系统。采用西门子S7-1200系列PLC为主控制器选择相应的土壤湿度传感器、温度传感器、水泵、电磁阀等外围设备进行I/O地址分配以及电气接线图的设计。同时选取一个DTU远程通信模块形成PLC和上位监控平台之间的通讯联系。进行系统软件的设计和开发。使用TIA Portal编程软件来编写PLC控制程序实现对数据采集、灌溉逻辑判断、设备驱动、配方管理、模式切换、超限报警等各个功能的实现。用WinCC组态软件来设计触摸屏人机界面主监控画面、参数设置画面、报警记录画面、手动操作画面等。完成远程监控平台的配置以及数据库的设计使灌溉记录、报警事件可以追溯搭建系统模拟测试环境检验各种工况下系统是否有效、稳定主要对自动灌溉响应、配方切换、远程通信的实时性以及报警及时性进行测试为实际工程使用提供技术参考。2系统总体方案设计2.1 系统需求分析农业大棚灌溉远程自动控制系统的首要条件就是对环境进行实时的监测。大棚内土壤湿度和环境温度对作物生长起着关键作用系统应该可以连续稳定的采集这两种参数来给灌溉决策提供可靠的依据。传感器所获取的数据须要经由某种处理才能排除随机干扰以及测量噪音从而保证控制逻辑作出正确的判定。同时还要有较好的实时响应能力环境参数变化到一定数值的时候可以及时引起执行机构的反应防止出现由于反应时间较长造成的作物缺水或者过湿状况。系统还要满足各种控制模式的要求。实际的农业生产当中在不同的场景下控制方式的要求也不一样。自动模式下系统按照预先设定好的阈值及配方参数自行开展灌溉决策与执行手动模式中操作人员可以对水泵以及电磁阀的启停实行直接操控以此完成设备的调试或者特殊工况下的处理工作远程模式下经由PC端或者手机APP进行远程监测现场数据并下发控制指令从而达成不受地域限制的管理干预。三种模式要能灵活转换并且彼此间逻辑相互制约防止出现控制矛盾的情况。除此之外还要有配方管理功能、超限报警功能和数据存储与追溯功能。不同的作物对于土壤的湿度要求也不同在不同的生长阶段中也需要不同的参数来灌溉。系统要具备多组灌溉参数的预置以及快速调用的功能。环境参数超出了安全范围的时候系统就会发出警报提醒管理者。灌溉记录以及报警事件应当存入数据库以便之后可以开展查询和统计分析工作从而给农业生产改进赋予数据支撑。2.2 控制策略与工作模式设计本系统所用的控制策略是基于阈值的灌溉控制这是目前农业灌溉领域最成熟、最可靠的一种控制方法。核心思想就是对土壤湿度作出一个合理范围内的上限值与下限值传感器检测到的实际湿度低于下限阈值的时候就判断作物处于缺水状态自动开启水泵及相应区域的电磁阀进行灌溉当湿度上升到上限阈值时就判定水分已经足够了自动关闭灌溉。双阈值控制策略可以很好地避免水泵频繁启动和停止的现象发生保持土壤湿度处于适宜作物生长的范围之中既节水又有利于作物的生长。为满足各种作物、各个生长期不同的需要系统采用了配方管理的方式。每一种作物或者每一个生长阶段都对应着一组完整的灌溉参数土壤湿度上限值、土壤湿度下限值、温度补偿系数等等都会出现。用户可以在触摸屏上预先设定多组配方根据当前的种植情况一键调用。PLC接到配方切换指令之后会把当前正在运行的灌溉参数更改为选择的配方设定值灌溉逻辑就会按照新的参数来执行。此设计大大提高了系统灵活适用的程度可以供不同的作物在同样的设备上进行不同的季节性的种植。在工作模式的设计上系统设有自动、手动、远程这三种工作模式并用触摸屏上的模式选择开关来切换。在自动模式下系统按照预设的阈值及配方参数自行工作不需要人为干涉在手动模式下操作人员可以通过触摸屏上的软按钮或者现场物理按钮来控制每一个水泵和电磁阀的启动或者停止方便设备检修和应急操作在远程模式下用户通过远程监控平台发送控制指令给PLCPLC收到指令之后执行相应的操作远程模式其实是一种对手动模式的物理延伸。三种模式之间存在优先级以及互锁关系保证某个时刻只有一种模式是工作状态的从而消除控制信号出现冲突的可能性。2.3 系统总体结构采用三层架构设计法自下而上地分为现场设备层、控制层、监控管理层。现场设备层是土壤湿度传感器、温度传感器、水泵、电磁阀等终端设备完成环境参数采集、控制命令下达等工作。控制层以西门子S7-1200PLC为主控制器采用模拟量输入模块接收传感器发出的电信号经过调理处理后转化为具体的物理量数值再由控制程序进行灌溉控制操作根据预先设定好的逻辑判断来决定开启或者关闭水泵和电磁阀。监控管理层是由现场的人机交互终端和远程的数据监测控制平台这两大部分组成前者是现场操作员的人机交互界面后者是远程数据采集和控制系统。PLC和现场设备之间通过电缆相连模拟量信号用屏蔽线传输来减小电磁干扰开关量信号用普通的控制电缆。PLC和触摸屏TP900用PROFINET以太网协议进行通信从而达到实时刷新数据以及发送指令的目的。PLC通过RS485接口和DTU模块连接DTU模块把现场的数据通过4G网络上传到云服务器组态软件从云服务器上获取数据并显示在监控界面上用户发出的控制指令也是通过这个反向路径传送到PLC。该种结构把现场控制和远程监控解耦即使远程通信出现中断PLC依然能独立完成自动灌溉控制保证系统的最基本的可靠性。数据库服务器放在云端或者本地监控计算机中用来存放灌溉的记录以及报警的事例。每次灌水动作发生时系统自动把灌水开始、结束时间、灌水量、土壤湿度等有关参数记录下来每触发一次报警就记载下报警种类、报警数值、发生时刻及复原时刻。历史数据可以用来进行之后的用水分析、作物生长规律研究、系统优化等是农业数据化管理的基础。2.4 关键技术与选型论证本系统的主要控制器使用的是西门子的S7-1200系列PLC。西门子S7-1200是小型到中型自动化系统常用的紧凑型模块化PLC功能强、设计灵活、通信能力强等特点十分明显。本系列PLC的本体上带有PROFINET以太网接口可以和触摸屏、其它PLC、上位机等设备进行高效的通信。丰富的扩展模块可以自由增加模拟量输入输出、数字量输入输出、专用通信接口满足农业大棚灌溉系统多路传感器采集、多路执行器控制的要求。除此之外S7-1200还具有TIA Portal统一工程平台编程组态速度快梯形图、结构化文本等不同的编程语言可以自由选择使用适合本课题的开发实现。用西门子TP900精智面板触摸屏来进行人机交互。TP900是西门子精智面板系统中一种大屏幕纯平板显示触感式面板有较大的视觉冲击感、容易清理。触摸屏和S7-1200 PLC都是西门子的产品系列二者之间使用PROFINET协议可以实现无缝的数据连接组态工作可以在TIA Portal平台上统一进行不需要做额外的驱动配置。TP900集成各种通信接口可以做数据记录、报警管理等工作可以满足本系统对监控界面显示参数设置、配方选择、报警显示、历史曲线绘制等要求。土壤湿度传感器选择的是电容式传感器相较于电阻式传感器来说测量精度高不容易受土壤盐分的影响并且寿命长。温度传感器选择PT100铂电阻或者集成式数字温度传感器按照实际精度需求来定。执行机构上选用小型潜水泵或者离心泵电磁阀选为常闭型两位两通电磁阀其控制电压和PLC输出模块相同。远程通信部分使用工业级4G DTU模块采用Modbus RTU协议同PLC进行通信具备透明传输特性可以顺利把现场数据传送到云端以及执行控制指令的过程。选用国产主流的组态软件可以和DTU数据对接有丰富的监控画面开发功能。3 系统硬件设计3.1 PLC I/O地址分配与接线图系统硬件设计的第一步就是完成PLC的I/O地址分配也就是确定每一个现场设备与PLC输入输出端口的对应关系。合理的I/O分配要兼顾传感器布置情况执行机构所在区域的便利程度电气柜布局的可行性后期扩充的可能性等。本系统PLC的数字量输入端口主要是用来接收手动按钮信号、模式选择开关信号、部分执行机构的反馈信号等。数字量输出端口用来控制水泵接触器的线圈以及电磁阀驱动线圈。模拟量输入端口接土壤湿度传感器和温度传感器所发出的连续电信号。就具体地址分配而言在启动、停止、急停这些安全相关信号被设置到输入通道的前面几路位置上这样可以加快紧急情况出现时对其作出反应的速度。土壤湿度传感器的模拟量输入用连续的模拟量通道来占用利于程序中采用循环或者批量的方式来获取。水泵、电磁阀输出点在相邻的输出通道上利于接线排布及故障查找。每一个I/O点都要在电气原理图上标明地址编号、设备名称、信号类型和电缆编号保证现场接线人员按照图纸进行施工。图3-1系统总电源与主电路接线原理图开关电源将交流220V转换成直流24V给PLC本体、数字量输入输出模块、传感器、继电器线圈等提供工作电源。图中标出了开关电源L、N交流输入端子和V、V-直流输出端子PLC电源端子L、M分别接到开关电源正负极上。端子排部分给出了每一个端子的编号、所连的设备名称和信号种类利于现场接线人员对照施工。传感器供电回路独立引出并配以熔断器保护避免传感器短路引起PLC不能工作。图3-2 PLC直流供电与端子排接线图PLC本体的PROFINET接口直接和触摸屏以太网接口连接使用标准网线交叉或者直通均可自动识别。图中给出通信接口引脚的定义以及网线类型给出了IP地址设置的建议PLC和触摸屏应该设置在一个网段内才能正常通信。图中还有预留PLC同上位机编程设备之间的连接端口便于程序下载和在线调试。该种通信方式连接简易传输速度快抗干扰性能好。图3-3 西门子S7-1200 PLC与HMI通信接线图3.2 传感器信号采集电路设计传感器输出信号类型有4-20mA电流、0-10V电压、数字信号三种。本系统如果使用电流型传感器则需要在PLC模拟量输入端并联采样电阻把电流转换成电压或者采用支持电流输入的模拟量模块。选用电压型传感器时可以直接接入PLC的模拟量通道但是需要注意输入阻抗匹配和过压保护。传感器信号线缆要与动力电缆分离开来布置保持足够的间距交叉时垂直交叉。模拟量信号线必须用屏蔽双绞线屏蔽层在PLC端单点接地。如果使用的是PT100热电阻则需要采用三线制或者四线制的接法来消除由于导线电阻而产生的测量误差。传感器需要稳定的直流电源供电应选用具有足够裕量的开关电源模块电源可以直接从开关电源输出端引出不能与动力负载共用线路。开关电源的输入端要加上滤波器以及过流保护装置从而加强供电的安全性及抗电网波动的能力。模式选择开关SA1为三档位旋钮开关对应自动、手动、远程三种工作模式三个档位的输出信号分别接到PLC的三个数字量输入点上。现场按钮盒中设定了系统启动按钮SB1、停止按钮SB2和急停按钮SB3急停按钮使用常闭触点串联接入在按下时就直接断开PLC的输入信号。所有的按钮都是用DC24V供电的它们和PLC的输入端是通过屏蔽电缆相连的。图中给出输入点地址分配便于程序编写时对照使用。图3-4 现场控制按钮与模式选择输入接线图手动模式下每个水泵和电磁阀都配有独立的启动按钮、停止按钮按钮信号分别接入PLC不同的数字量输入点。在远程模式下控制指令是由DTU模块用RS485总线传送到PLC的图中给出了DTU模块与PLC RS485接口的接线方式即A、B数据线的连接以及屏蔽层的接地处理。启停按钮部分还有指示灯回路设备运行时指示灯亮起给操作人员提供状态的反馈。图3-5 手动/远程控制及启停按钮输入接线图3.3 水泵与电磁阀驱动控制电路水泵、电磁阀属于系统的执行部分驱动控制电路设计的好坏直接决定着系统动作是否可靠、安全。本系统中水泵的功率较大不能直接用PLC的输出点驱动需要用中间继电器、接触器等来完成放大控制。PLC数字量输出点先使中间继电器的线圈通电中间继电器触点闭合接触器线圈回路得电接触器主触点通断水泵电机启停。多级驱动方式可以防止PLC输出点受大电流影响还可以达到电气互锁和过载保护的效果。电磁阀的功率一般不大但是如果电磁阀的数量很多并且同时动作那么总电流就会超过PLC输出模块所能承受的范围。此时可以使用继电器阵列或者固态继电器来实现功率扩展。每一个电磁阀回路内都要串联一个熔断器或者小型断路器避免电磁阀线圈短路造成的驱动元件损坏。安装在潮湿环境中的电磁阀的接线盒要具有防水密封性电缆入口处用防水接头。电磁阀的控制电压使用安全电压即DC24V减少触电事故的发生。水泵驱动电路中必须要有热继电器或者电机保护断路器起到过载保护和缺相保护的作用。当水泵电机长时间处于过载工作状态的时候热继电器的双金属片被热效应加热而发生弯曲变形进而推动辅助触点动作切断接触器线圈的控制电路从而使水泵停止工作。PLC要获取热继电器的辅助触点状况马上检测到水泵出现过载情况时给出报警提示同时也会把警报信息展示到触摸屏和远方操控平台之上。水泵启动、停止之间还应该加上必要的延时保护防止出现频繁启停引起的电机过热或者水锤效应对管道造成损坏的情况。图3-6水泵、风扇、指示灯、继电器输出控制电路图3.4 远程通信模块接口设计远程通信模块属于实现系统远程监控功能的重要硬件。本系统采用支持Modbus RTU协议的4G DTU模块用RS485接口和PLC通信。S7-1200 PLC可以扩展RS485通信模块或使用本体集成的RS485接口配置为Modbus RTU主站模式。PLC把需要上传的环境参数、设备状态等信息用Modbus协议格式进行封装然后通过RS485总线将信息发往DTU模块DTU模块将数据经由4G网络传送到云服务器。相反用户通过监控平台发出的控制命令被云服务器转发给DTU模块DTU模块接到指令之后再执行相应的操作。DTU模块和PLC之间RS485通信的通信参数要正确设置即波特率、数据位、停止位、校验方式等。两端必须一致才能正常通信。常见的设置有9600波特率、8位数据位、1位停止位、无校验。RS485总线使用差分信号传输抗共模干扰能力强适合大棚内存在的电磁干扰环境。当通信距离较大或者节点较多的时候在总线上端和总线下端终端接入匹配电阻防止信号反射造成通信异常。DTU模块要装SIM卡并且配置好服务器的IP地址以及端口号。现场安装DTU天线的时候要保证信号覆盖良好不能把金属结构阻挡信号。DTU模块的电源取自开关电源其供电电压范围一般较宽但是要注意电源纹波不能超过模块所允许的最大值。为了提高远程通信的可靠性DTU模块应该具有断线自动重连的功能当网络异常造成连接断开的时候模块可以自动检测并重新建立连接减少人工操作。4系统软件设计与实现4.1 PLC程序设计PLC程序的数据采集模块把模拟量输入通道采集到的数字量转化为工程单位的数值。模拟量输入模块所采集到的数据是一个0到27648或者0到32767之间的整数通过线性变换公式可以转换成温度或者土壤湿度百分比值变换系数由传感器的量程和输出信号类型来确定。由于农业大棚环境中有水泵启停等干扰源传感器信号容易出现异常跳变直接用于灌溉判断会带来误动作所以程序中加入了滤波处理。限幅滤波就是通过判断当前采样值与上一次有效的有效值之间变化率是否大于设定的变化率来去除脉冲干扰滑动平均滤波就是将多次的采样值相加后取平均以抑制周期性干扰。对于变化缓慢的土壤湿度信号用滑动平均滤波为主限幅滤波为辅的组合方法在消除噪声的同时又可以保持信号真实的变化趋势。灌溉逻辑判断为PLC程序的主要部分即根据当下的环境参数以及设定的阈值来决定是否启动或者停止灌溉。自动模式下程序周期读取土壤湿度值和配方中设定的湿度下限进行比较当土壤湿度低于下限并且系统允许灌溉时就置位灌溉请求标志并检查水泵是否过载、急停按钮是否按下等联锁条件全部满足之后再输出驱动信号。为了防止水泵在阈值附近频繁起停程序加入了带有延时定时器的滞回控制当湿度小于下限时开始延时延时结束时湿度仍然低于下限才开始灌溉如果延时期间湿度上升则重新启动计时器。灌溉开始以后程序一直监视湿度改变的走向如果灌水量超过规定最大单次灌水时长并且湿度没有明显提高的话就发出灌溉异常警报并强制终止灌溉防止由于传感器出现故障或者管道堵塞造成水资源浪费。手动和自动模式的切换是用模式选择开关来完成的。通过程序读取物理旋钮开关或者触摸屏虚拟按钮的状态来确定当前运行模式物理开关一般为最高优先级。手动模式下自动逻辑的输出被强制关闭操作人员可以通过触摸屏按钮或者现场按钮盒分别控制每一个水泵和电磁阀的启停程序为此设置了手动操作数据块存储各个执行机构的手动指令。远程模式是手动模式的空间延伸用户使用手机APP或者PC端监控平台向PLC发出控制指令再由DTU模块将指令传送到PLC上PLC解析后按照手动模式的逻辑进行执行。三种模式之间设置了互锁逻辑保证任何时刻只有一路控制信号有效模式切换时执行机构运行状态不变防止水压突然变化或者灌溉中断。4.2 触摸屏人机界面设计4.2.1 主监控界面设计触摸屏主监控界面属于用户操作系统的最主要入口它要达成信息展示的完备性以及操作便捷的目的。本系统的主控画面顶部会显示项目标题“基于PLC的农业大棚灌溉远程自动控制系统”也可以看到当前的时间。界面中部是实时数据显示区、外部天气显示区、执行器监控区、模式显示区和报警显示区。实时数据显示区是显示土壤湿度、土壤温度等主要环境参数的现在值。外部天气显示区呈现外部的湿度外部温度和光照强度给灌溉决策提供依据。执行器监控区用图形化的按钮来显示水泵接触器、透光接触器、通风风机接触器等设备的控制接口每一个设备都配有手动打开、远程打开两个按钮供操作人员根据当前工作模式进行选择。模式显示区会显示出当前系统所处的控制模式还带有“仿真自动启动”、“仿真自动停止”按钮可以对测试进行模拟操作。界面底部有两个按钮“参数设置”和“报警参数”可以方便地将用户迅速导向其他的画面。图4-1 主控画面主监控界面左侧实时数据显示区中有土壤湿度为40%的显示并且有目标调节滑动条用户可以手动输入想要设定的土壤湿度目标值。土壤温度为25℃有目标调节功能。执行器监控区的水泵接触器、透光接触器、通风风机接触器上都设有机型图标、指示灯、操作按钮等设备工作时指示灯会亮。实时报警显示区在界面右下方对当前还没有处理完毕的报警信息进行滚动显示使操作人员能够第一时间发现异常。模式显示区用高亮来表示当前被激活的模式仿真控制按钮可以模拟环境下的自动启停测试。图4-2 实时数据与执行器监控画面4.2.2 参数设置与配方选择界面参数设置界面上部为“参数设置”标题下部分为主要操作区域。配方设置区中用户可以利用“配方名”下拉菜单来挑选预先设定好的作物配方也可以通过“编号”来选取对应的具体配方序号。系统提示文字“温度、湿度参数不同的控制调用不同的配方”说明了配方的主要功能就是根据不同作物或者不同生长阶段来调用不同的灌溉参数。数据记录区用来保存灌溉过程中的历史数据可以对保存的记录名称进行查询。采用预设的配方设置功能用户可事先设定好若干种作物灌溉参数每一组配方里包含土壤湿度上限、土壤湿度下限、温度补偿系数等控制参数。当作物种类发生变化或者进入到不同的生长时期的时候只需要在配方名下拉框中选择对应的配方系统就会自动将该配方的所有参数加载进来灌溉逻辑就会按照新的参数进行工作。该设计方案大大提高了系统灵活性、适用性使每次换种作物的时候不需要逐一手动更改很多参数值的麻烦。图4-3 参数设置与配方选择界面4.2.3 报警记录与参数设置界面设置了土壤湿度上限75%、下限20%、土壤温度上限60℃、下限10℃这四个主要的报警参数。当实际采集的土壤湿度或者温度超过上面设定的范围时系统就触发报警在主监控界面的报警显示区弹出提示并且把报警记录存入历史数据库。用户可以根据各个作物的耐受范围来改变这些上、下限值调整完毕后按确认键即可生效。参数设置完毕后系统把新的报警阈值存入PLC的保持性存储区就算PLC断电也不会丢失。当传感器的值回到正常范围内时报警会自动解除系统保存起恢复的时间供以后查阅。合理的报警阈值设置对保证作物健康成长十分重要太窄的范围会造成频繁误报太宽的范围又会造成处理异常时机的延误。本界面使用数值输入框的形式用户可以直接输入数值或者通过增加或者减少按钮来改变数值。图4-4 报警参数设置界面4.3 远程监控平台设计远程监控平台属于实现农业大棚超越地域约束而实行管理的重要环节。本系统采用组态软件进行开发并且部署于云服务器或者本地监控计算机之上采用DTU模块同现场的PLC达成数据交换的目的。平台主要的功能有实时显示数据、远程控制指令下达、历史数据的存储和查询、报警通知等。用户通过浏览器或者手机APP访问平台输入授权账号密码后就可以看到大棚内的温湿度数据以及设备的状态实现了远程管理。平台的数据通信采用Modbus TCP协议与DTU对接DTU将PLC的Modbus RTU数据转换为Modbus TCP格式转发给上位平台。平台按照设定周期不断向PLC发出请求从PLC中读取传感器数值、设备状态等数据更新到监控界面。用户点击远程控制按钮的时候平台给PLC的相应的寄存器写入控制指令PLC程序检测到寄存器值发生变化之后执行对应的指令。采用数据推送和轮询相结合的方式进行通信在保证数据及时性的同时也能合理使用网络带宽。远程监控平台还包括一个数据库系统来保存以前的灌溉记录、报警事件、操作日志。每次开启或关闭一个设备时都会生成一份记录记录下开始时间、结束时间、灌溉时间、开始和结束时间的土壤含水量等数据。报警事件记录有报警发生时间、恢复时间报警类型报警值等。操作日志记录用户登录登出的时间、参数修改的操作、远程控制的操作等信息有利于以后的追溯以及责任认定。平台具备数据查询以及报表导出的机能用户可根据需要导出某一时间段的数据实施统计分析进而给改进灌溉策略赋予数据支撑。5系统模拟与验证5.1 模拟测试环境搭建完成系统的硬件组装、软件编程之后就要搭建起模拟测试环境来检验系统的各项功能。由于农业大棚的实际环境限制本课题用模拟的方式对系统进行测试。模拟测试环境主要是PLC控制器、触摸屏、模拟量信号发生器、指示灯模拟执行机构和远程监控平台之间的连接调试。模拟量信号发生器可以产生土壤湿度传感器、温度传感器等传感器所测得的模拟量信号可以通过改变输入信号的大小来改变模拟量信号的变化从而模拟不同的工况环境用以验证PLC程序的逻辑判断是否准确。执行机构模拟用指示灯阵列表示每个水泵和电磁阀都对应一个指示灯PLC发出驱动信号的时候对应的指示灯亮起从而直观的反映出执行机构动作的情况。该方式不能完全模仿水泵和电磁阀的实际负载特性但是可以验证控制逻辑是否正确。DTU模块测试环境里接上测试用的4G网络或者采用WiFi转串口模块替换同云服务器创建通信链路检验远程监控功能是否可靠。按照电气原理图搭建测试环境所有设备的电源、通信线缆连接好之后先进行上电前的绝缘检查和短路检查保证没有问题后逐级通电。通电后查看PLC及各个模块的电源指示灯工作状态查看触摸屏能否和PLC建立正常通信模拟量输入通道的信号能否被PLC正确采集到。基础检查完毕之后按照测试用例一个一个地对系统进行功能测试。5.2 配方切换与报警功能测试配方切换功能的测试主要是检查PLC是否可以按照触摸屏上的配方切换指令正确地将新的灌溉参数加载到运行当中。测试时先在触摸屏上设置两组不同的作物配方配方A的湿度下限为40%配方B的湿度下限为60%。将模拟信号发生器输出的土壤湿度信号设在较低的水平上使配方A开始工作此时系统应该启动灌溉再将配方B打开由于湿度下限提高系统判断此时湿度仍然小于新下的限从而保持灌溉。反向切换测试的时候把湿度设定为50%激活配方B由于其下限高应该启动灌溉切换到配方A后湿度高于新下限系统应该停止灌溉。测试结果说明配方切换功能可以正常工作。报警功能测试分为超限报警和传感器故障报警两种。将模拟信号发生器输出的温度值逐步增大当超过设定温度上限的时候触摸屏上就会弹出报警提示报警记录界面就会产生一条新的报警记录。把模拟信号发生器发出的一个超出传感器正常量程的信号例如湿度传感器输出的信号小于正常范围下限输入到PLC程序中当程序检测到信号异常时就会判断出传感器存在断线或者故障从而触发传感器故障报警并且会暂时屏蔽自动灌溉功能避免出现误动作的情况发生。测试时还可以模拟热继电器过载信号输入检测PLC是否能正确检测出水泵输出被停掉。配方切换时也要进行保护逻辑的测试。在灌溉过程中改变配方时系统把切换请求挂起等本次灌溉结束之后再执行参数更新。测试时在触摸屏上选择另一个配方并点击应用观察系统反应正在运行的水泵不应立刻停止而应该继续完成本次灌溉灌溉结束后水泵停止然后配方参数更新。触摸屏需要有切换完成提示。保护逻辑可以防止因为参数突然变化导致系统出现意想不到的状况从而保证系统的稳定运行。表5-1 配方切换与报警功能测试结果测试项目测试操作测试结果配方切换切换配方后湿度下限变化系统正确判断并执行启停温度超限报警模拟温度值超过上限弹出报警提示生成记录传感器故障报警模拟传感器信号超量程触发故障报警屏蔽自动灌溉过载报警模拟热继电器过载信号停止水泵输出显示报警灌溉中切换配方灌溉进行中选择新配方切换挂起完成本次灌溉后更新5.3 远程通信实时性与可靠性测试远程通信实时性测试主要是检验从用户发出控制指令到PLC执行指令所花费时间是否处在可以接受的范围之内。测试时用手机APP或者PC端远程监控平台点击水泵启动按钮用秒表记录从点击时刻到现场指示灯亮起的时间。多次重复测试取平均值分析网络延迟的分布情况。测试还要考虑各种网络环境下不同的测试设备与4G基站之间所造成的延迟以及不同时间段的测试结果。对远程监控的应用而言秒级的延迟是允许的但是延迟的波动不能太大稳定的延迟比短且有剧烈波动的延迟更重要。可靠性测试主要是对通信链路出现异常时系统的行为以及数据的完整性进行检测。测试时模拟出DTU模块的4G信号突然断开的情况检测PLC在通信断开之后能否自行继续执行自动灌溉控制任务这是系统设计方面的重要保证。通信恢复之后查看远程监控平台能不能自动重新创建连接并把缺少时间段内所有历史数据。还可以对云服务器进行重启或者网络瞬间抖动等仿真操作检查DTU模块断线重新建立通讯时系统有无需要人工干预的情况发生。远程通信安全测试也不能忽略。对远程监控平台的身份认证功能进行简单的测试测试其在没有授权情况下不能被正确的访问。控制指令传输过程中有没有采用加密措施来防止被恶意截取、篡改。测试过程中发送格式错误的控制指令或者超出合法范围的参数值观察PLC能否对这些异常指令做出正确的识别与拒绝保证系统不会出现由于异常指令造成的误动作。通过测试可评价出远程通信平台是否符合实际使用的要求可靠、安全。表5-2 远程通信测试结果测试类别测试项目测试操作测试结果实时性测试指令响应延迟手机APP点击水泵启动记录到指示灯亮起时延延迟在可接受范围内波动稳定可靠性测试通信中断恢复模拟DTU模块4G信号中断后恢复PLC独立完成自动控制通信恢复后自动重连可靠性测试断线自动重连模拟云服务器重启或网络抖动DTU模块自动重连无需人工干预安全测试身份认证未经授权访问远程监控平台正确拒绝访问安全测试异常指令过滤发送格式错误或超范围的指令PLC正确识别并拒绝执行5.4 测试结果分析对系统各个功能进行全面测试之后可以对本设计是否有效、稳定作出评价。基础控制功能即自动灌溉逻辑根据土壤湿度与设定阈值的对比来确定是否开启或者关闭水泵、电磁阀等设备并且双阈值滞回控制可以减少设备频繁启停带来的抖动问题。手动模式下每一个执行机构的独立控制功能正常触摸屏按钮反应迅速操作反馈清楚。三种工作模式之间切换的逻辑正确互锁机制可以防止控制冲突。配方管理功能测试结果证明系统可以保存多组灌溉参数用户可以自由选择、切换。配方改变之后灌溉逻辑立刻依照新的参数执行动作准确无误。灌溉时切换配方的保护逻辑也得到验证系统在本次灌溉结束后才执行参数更新不会因为运行过程中参数突然变化而受到影响。报警功能测试结果表明超限报警、传感器故障报警都能够及时发出并显示在触摸屏上报警记录可以完整地保存下报警发生的及恢复的时间信息有利于对以后的追溯分析。从远程通信测试结果可知采用DTU组态软件的方式可以实现稳定的远程数据传输和控制指令下发通信延时在允许范围内断线重连功能正常。经过对所有的测试结果进行综合本设计所建立的以PLC为核心的农业大棚灌溉远程自动控制系统功能齐全、运行稳定、操作方便可以满足农业大棚灌溉自动化的需求具有很好的工程应用价值。测试出的细小问题会在下一阶段的软件更新中加以改善整个系统性能符合农业大棚智能灌溉的应用需求。

最新新闻

日新闻

周新闻

月新闻