【果树农药喷洒机器人】Part7:静态PWM变量喷药实验

📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨
📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】
📢:文章若有幸对你有帮助,可点赞 👍 收藏 ⭐不迷路🙉
📢:内容若有错误,敬请留言 📝指正!原创文,转载请注明出处

文章目录

  • 一、引言
  • 二、静态PWM变量喷药实验
    • 2.1搭建喷药实验平台
    • 2.2变量喷药控制实验


一、引言

为综合评估所设计的果树喷药机器人变量喷药效率和质量,验证系统的控制性能和实际作业的可行性,本章开展果树变量喷药实验。首先,通过静态的PWM变量喷药实验,探究系统的控制和雾滴分布规律。再者,以履带型底盘为远程遥控平台,搭建果树喷药机器人样机,并完成对果树的精准喷施实验。通过对靶喷药与连续喷药的对比实验,研究基于视觉感知树冠存在时的对靶喷药效果;在对靶喷药实验的基础上,引入PWM控制技术,完成变量喷药实验,并与对靶喷药、连续喷药的雾滴沉积指标比较,以探究变量喷药的病虫害防治效果与省药率。

二、静态PWM变量喷药实验

2.1搭建喷药实验平台

为探究变量喷药系统控制与流量之间的特性关系,即确定PWM占空比、喷雾压力跟喷头流量之间的相关性,进而为变量喷施的精准调控提供理论支持。本节根据所选硬件设计并搭建变量喷药实验平台,具体实验布置如图5-1所示。
在这里插入图片描述平台由地面和桌面上的两部分硬件组成,主要包括笔记本电脑、便携式移动电源、喷药泵、药箱、压力传感器以及电控盒,其中移动电源分别为电控盒内的硬件和笔记本提供12V、220V电压,实验人员通过笔记本向电控盒内的单片机发送控制指令。此外,实验时将塑料药箱装满清水,以此代替农药。
系统启动后,水箱顶盖引出两条管路,其中黑色粗管中的水由喷药泵从药箱中抽出,流经水管分流器后,白色细管为其中一条支路,作为泄压管路调节部分流量引回水箱。而另一条支路上装有普通压力表(量程范围为0.0~1.0Mpa)和电磁阀,其中压力表用于实时监测输出管路中的液压变化。电磁阀连接着继电器(电控盒内),通过单片机发送PWM占空比信号,以改变继电器的通断频率,管路中的流速也随之改变,最后由量杯收集一定时间内从喷头流出的水量。

2.2变量喷药控制实验

为探究系统的控制和雾滴分布规律,采用上节搭建的喷药实验平台进行单喷头的静态PWM变量喷施控制实验。由于所选喷头的适用喷雾压力范围为0.2~0.5MPa,因此,实验过程中使管路内压力分别保持在0.2、0.3和0.4MPa,作为实验压力;占空比设定为10-100%,取10%的整数倍。每次系统启动后,单片机向电磁阀发送不同PWM占空比信号,最后将清水引入到量程为1L的量杯中,喷雾结束后,读取秒表记录液面到达1L刻度时的所用时间,从而测量出不同PWM占空比下的喷头流速,每组实验重复3次,取各组流速数据的平均值记录在表5-1中。通过多组数据分析并确定不同PWM占空比下,喷药控制系统中的电磁阀通断频率、喷雾压力等因素与喷头流量之间的相关性。
在这里插入图片描述

将表5-1中的数据制成曲线图,如图5-2所示。喷头流量q与PWM占空比x通过线性拟合的方法,得到不同压力下的模型函数,如表5-2所示。
图表的数据显示,在喷雾压力一定,PWM占空比为10%和20%时,喷雾流量几乎为0。根据电磁阀通断原理分析可知,在此工况下,单位时间内电磁阀断开时间占比过长,而电路接通时间非常短,继电器传输给电磁阀的电压过低,实测值约为2V,远远低于电磁阀的额定电压12V,不足以启动电磁阀工作,导致其处于闭合状态。但是,随着PWM占空比的不断增大,当处于30~80%区间内,PWM占空比与喷头流量之间呈现良好的线性关系,线性拟合优度均大于0.92。当PWM占空比在80%至100%区间时,电磁阀上的电压接近12V,喷头流速与全开状态较为接近,因此流量呈现较缓增长趋势。

综上所述,在不同压力下,PWM占空比与喷头流量之间在主要喷施区间均为线性关系。因此在所设计的变量对靶喷药系统中,可通过调整PWM占空比实现对喷头流速的可变控制,且PWM占空比最佳调节范围为30~80%。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/71365.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv5可视化界面

Pyside6可视化界面 安装Pyside6 激活之前的虚拟环境yolov5 在该环境的终端输入以下命令 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyside6输入where python找到当前使用的Python的路径 找到该路径下的designer.exe文件(/Lib/site-packages/PySi…

Electron 应用实现截图并编辑功能

Electron 应用实现截图并编辑功能 Electron 应用如何实现截屏功能,有两种思路,作为一个框架是否可以通过框架实现截屏,另一种就是 javaScript 结合 html 中画布功能实现截屏。 在初步思考之后,本文优先探索使用 Electron 实现截屏…

docker小白第二天

centos上安装docker docker官网,docker官网,找到下图中的doc文档。 进入如下页面 选中manuals,安装docker引擎。 最终centos下的docker安装文档链接:安装文档链接. 具体安装步骤: 1、打开Centos,输入命…

如何实现Vue路由的二级菜单

目录 Vue路由(一、二级路由) 一级路由配置 二级路由配置 Vue中展示二级路由的默认模块/二级路由默认显示 Vue路由,二级路由及跳转 如何用vue实现二级菜单栏 ◼️ 相关参考资料 当朋友们看到这个文章时想必是想要了解vue路由二级菜单相…

react学习笔记——4. 虚拟dom中处理动态数据

如下需求 方式1&#xff1a; 直接在ul中使用{data}&#xff0c;是可以遍历数据的&#xff0c;然后如果将data改成下面形式&#xff0c;也是可以实现的。但是如果data是一个对象&#xff0c;则不能便利。 const data [<li>Angular</li>, <li>React</li&g…

【分布式】Viewstamped Replication Revisited

篇前感悟&#xff1a; 阅读分布式系统文章的意义其实并不在于你个人真正地去开发这样一个基于这种协议的系统&#xff0c;因为真正去开发一个高可用的分布式系统实在是太难了&#xff08;对我来说…&#xff09;更多的还是汲取其中的思想&#xff0c;包括设计思路&#xff0c;优…

2023河南萌新联赛第(五)场:郑州轻工业大学-F 布鲁特佛斯

2023河南萌新联赛第&#xff08;五&#xff09;场&#xff1a;郑州轻工业大学-F 布鲁特佛斯 https://ac.nowcoder.com/acm/contest/62977/F 文章目录 2023河南萌新联赛第&#xff08;五&#xff09;场&#xff1a;郑州轻工业大学-F 布鲁特佛斯题意解题思路代码 题意 给定一个…

「C/C++」C/C++可变参数函数

✨博客主页何曾参静谧的博客&#x1f4cc;文章专栏「C/C」C/C程序设计&#x1f4da;全部专栏「UG/NX」NX二次开发「UG/NX」BlockUI集合「VS」Visual Studio「QT」QT5程序设计「C/C」C/C程序设计「Win」Windows程序设计「DSA」数据结构与算法「File」数据文件格式 目录 当你需要…

exec族函数

本节学习exec族函数&#xff0c;并大量参考了以下链接&#xff1a; linux进程---exec族函数(execl, execlp, execle, execv, execvp, execvpe)_云英的博客-CSDN博客 exec族函数函数的作用 我们用fork函数创建新进程后&#xff0c;经常会在新进程中调用exec函数去执行另外一个程…

【数据中台商业化】数据中台微前端实践

一&#xff0c;需求背景 1 业务背景 在以往的业务场景中&#xff0c;用户进入五花八门的菜单体系中&#xff0c;往往会产生迷茫情绪&#xff0c;难以理解平台名称及具体作用&#xff0c;导致数据开发与管理学习成本较高&#xff0c;降低工作效率。为此我们整合从数据接入&…

Node.js |(四)HTTP协议 | 尚硅谷2023版Node.js零基础视频教程

学习视频&#xff1a;尚硅谷2023版Node.js零基础视频教程&#xff0c;nodejs新手到高手 文章目录 &#x1f4da;HTTP概念&#x1f4da;窥探HTTP报文&#x1f4da;请求报文的组成&#x1f407;HTTP请求行&#x1f407;HTTP请求头&#x1f407;HTTP的请求体 &#x1f4da;响应报文…

《连锁零售超市经营数据分析实战》学习笔记

这篇文章整理自 接地气的陈老师 x 和鲸社区 | 连锁零售超市经营数据分析实战 活动业务讲解会【接地气的陈老师】的讲解 更多数据分析动手实践活动欢迎访问>>和鲸社区活动 活动背景 现在你是某零售企业的商业数据分析师&#xff0c;你为管理层提供日常经营数据。到一年年…

亚信科技AntDB数据库与库瀚存储方案完成兼容性互认证,联合方案带来约20%性能提升

近日&#xff0c;亚信科技AntDB数据库与苏州库瀚信息科技有限公司自主研发的RISC-V数据库存储解决方案进行了产品兼容测试。经过双方团队的严格测试&#xff0c;亚信科技AntDB数据库与库瀚数据库存储解决方案完全兼容、运行稳定。除高可用性测试外&#xff0c;双方进一步开展TP…

Linux学习之sed多行模式

N将下一行加入到模式空间 D删除模式空间中的第一个字符到第一个换行符 P打印模式空间中的第一个字符到第一个换行符 doubleSpace.txt里边的内容如下&#xff1a; goo d man使用下边的命令可以实现把上边对应的内容放到doubleSpace.txt。 echo goo >> doubleSpace.txt e…

【TypeScript】this指向,this内置组件

this类型 TypeScript可推导的this类型函数中this默认类型对象中的函数中的this明确this指向 怎么指定this类型 this相关的内置工具类型转换ThisParameterType<>ThisParameterType<>ThisType TypeScript可推导的this类型 函数中this默认类型 对象中的函数中的this…

【elasticSearch系】3.完整搭建详尽版elk

话不多说,我们先看下经典的elk 是由哪些组件搭建组合起来的 elasticSearch和kibana搭建 可以查看之前我搭建elasticsearch和kibana 的这篇文章 logstash搭建 为了和之前我搭建elasticsearch和kibana版本保持一致,这里我们还是选择7.17.3 下载地址 点击下载,这里为了方…

数据库中的连表更新和连表删除

1.连表更新 准备两张表,id一样,但是姓名不一样, 需求根据id让姓名保持一致 执行的sql UPDATE teacher_copy1 AS b INNER JOIN teacher c ON b.TId c.TId set b.tnamec.tname 执行结果 2.连接删除 DELETE a FROMteacher_copy1 AS aINNER JOIN teacher b ON a.TId b.TId

CNN经典网络模型之GoogleNet论文解读

目录 1. GoogleNet 1.1 Inception模块 1.1.1 1x1卷积 1.2 辅助分类器结构 1.3 GoogleNet网络结构图 1. GoogleNet GoogleNet&#xff0c;也被称为Inception-v1&#xff0c;是由Google团队在2014年提出的一种深度卷积神经网络架构&#xff0c;专门用于图像分类和特征提取任…

SWIG使用方法

安装 下载 swigwin软件包&#xff0c;解压到合适的位置&#xff0c;然后将路径添加到环境变量即可。 编写C代码 //vector.hpp class Vector { private:int x;int y; public:Vector(int,int);double abs();void display(); };//vector.cpp #include "vector.hpp" …

中介者模式(C++)

定义 用一个中介对象来封装(封装变化)一系列的对象交互。中介者使各对象不需要显式的相互引用(编译时依赖->运行时依赖)&#xff0c;从而使其耦合松散(管理变化)&#xff0c;而且可以独立地改变它们之间的交互。 应用场景 在软件构建过程中&#xff0c;经常会出现多个对象…