一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种抛料控制方法、装置及航行设备与流程

2022-03-26 14:44:00 来源:中国专利 TAG:


1.本发明涉及自动控制领域,特别是涉及一种抛料控制方法、装置及航行设备。


背景技术:

2.比例积分微分控制,简称pid控制,是最早发展起来的控制策略之一,由于其算法简单、鲁棒性好和可靠性高,被广泛应用于工业过程控制,至今仍有90%左右的控制回路具有pid结构。pid控制根据给定值和实际输出值构成控制偏差,将偏差按比例、积分、微分通过线性组合构成控制量,对被控对象进行控制。
3.目前养殖户通常采用人工撒料和固定料台等机械装置抛料进行喂养,这些方式都存在问题;(1)人工抛料不均匀造成水产品长势不均匀,一次性投料过多也会污染水质,造成水产品应激反应,带来巨大的损失。使用现有的机械装置定点投喂,有覆盖面不广的缺陷,同时也会使水产生物产生惰性,不利于生长。(2)目前常规的固定式喂料装置都是采用单一的控制方法,在固定位置,设置不同的档位,固定流量的输出抛料,又或者采用可移动式抛料装置,以固定的输出速率移动抛料,较少的考虑自动调节,缺少动态变化,不利于科学喂养。
4.常规的船速控制都是pid闭环控制,能够提高无人船在各种天气和外界因素下的稳定性,但是无法避免一些自我策略的失误,和一些难以调节的条件,使得输出的船速达不到标准输出,在抛料速度固定或使用人工抛料的基础上,这会使得无人船在抛料过程中抛料不均,不利于科学喂养。
5.结合无人船的发展趋势,在水产养殖等方面的发展趋势,自动化程度会越来越高,无人作业的情况越来越普遍,对控制的稳定性要求越来越严格,这就要求设备能够在指定区域进行精准控制,科学合理的完成抛料任务,因此发明人在发明创造过程中,发现有必要提出一种抛料控制方法,通过船速控制抛料速度,当船速变化时使得抛料速度也适应性地变化,达到平稳抛料的目的。


技术实现要素:

6.本技术提供一种抛料控制方法、装置及航行设备。一方面通过负反馈控制来控制航行设备的行驶速度和抛料速度,另一方面通过航行设备的实时行驶速度计算设定的第一抛料速度,以行驶速度控制抛料速度,两方面相互结合达到平稳抛料的目的。
7.本发明实施例提供以下技术方案:
8.第一方面,本发明实施例提供一种抛料控制方法,应用于航行设备,航行设备包括第一执行机构和第二执行机构,方法包括:
9.获取第一行驶速度以及航行设备的实时行驶速度;
10.根据第一行驶速度和实时行驶速度计算第一输出值,根据第一输出值控制第一执行机构,以控制航行设备的实时行驶速度;
11.根据实时行驶速度,确定第一抛料速度;
12.获取实时抛料速度,根据第一抛料速度和实时抛料速度计算第二输出值,根据第二输出值控制第二执行机构,以控制航行设备的实时抛料速度。
13.在一些实施例中,航行设备包括第一传感器,获取航行设备的实时行驶速度,包括:
14.获取第二行驶速度,获取第一传感器采集的第一数据,根据第二行驶速度和第一数据确定航行设备的实时行驶速度,其中,第一传感器包括九轴传感器,第一数据包括三轴加速度计数据、三轴陀螺仪数据和三轴磁力计数据。
15.在一些实施例中,根据第一行驶速度和实时行驶速度计算第一输出值,根据第一输出值控制第一执行机构,以控制航行设备的实时行驶速度,包括:
16.根据第一行驶速度和实时行驶速度计算第一差值,根据第一差值通过第一控制算法计算第一输出值,根据第一输出值控制第一执行机构的电机转速,以控制航行设备的实时行驶速度;
17.其中,第一控制算法包括位置式比例积分微分控制算法,位置式比例积分微分控制算法的公式如下:
[0018][0019]
其中,u|n|为n时刻的第一输出值,k
p
为比例系数,e[n]为n时刻输入的第一差值,t为采样周期,t
l
为积分时间常数,e[i]为i时刻输入的第一差值,e[n-1]为n-1时刻输入的第一差值,td为微分时间常数。
[0020]
在一些实施例中,根据第一抛料速度和实时抛料速度计算第二输出值,根据第二输出值控制第二执行机构,以控制航行设备的实时抛料速度,包括:
[0021]
根据第一抛料速度和实时抛料速度计算第二差值,根据第二差值通过第二控制算法计算第二输出值,根据第二输出值控制第二执行机构的电机转速,以控制航行设备的实时抛料速度;
[0022]
其中,第二控制算法包括增量式比例积分微分控制算法,其中增量式比例积分微分控制算法的公式如下:
[0023]
δu[n]=k
p
{e[n]-e[n-1]} k
l
e[n] kd{e[n]-2e[n-1] e[n-2]}
[0024]
其中,δu[n]为第二输出值,k
p
为比例系数,e[n]为n时刻输入的第二差值,e[n-1]为n-1时刻输入的第二差值,e[n-2]为n-2时刻输入的第二差值,t为采样周期,t
l
为积分时间常数,td为微分时间常数,为积分系数,为微分系数。
[0025]
在一些实施例中,航行设备包括第二传感器,根据实时行驶速度,确定第一抛料速度,包括:
[0026]
获取航行设备的航行距离信息,根据航行距离信息确定航行设备的剩余航行距离,以及获取第二传感器采集的第二数据,确定未抛料重量;
[0027]
根据剩余航行距离和实时行驶速度,计算第一时间,其中,第一时间等于剩余航行距离/实时行驶速度;
[0028]
根据未抛料重量和第一时间,计算第一抛料速度,其中,第一抛料速度等于未抛料
重量/第一时间。
[0029]
在一些实施例中,获取实时抛料速度,包括:
[0030]
获取航行设备的航行时间信息,确定已航行时间,并根据第二数据确定已抛料重量;
[0031]
根据已抛料重量和已航行时间,计算实时抛料速度,其中,实时抛料速度为已抛料重量/已航行时间。
[0032]
在一些实施例中,航行设备按照第一轨迹行驶,定义o为地球的球心,角c为第一轨迹上的相邻的两个轨迹点与球心o连线后所成的角,方法还包括:
[0033]
获取第一轨迹上的相邻的两个轨迹点的经纬度信息,根据经纬度信息计算角c的角度;
[0034]
将角c的角度转换为弧度,并根据弧度计算相邻的两个轨迹点之间的距离,以求得第一轨迹上所有相邻的轨迹点之间的距离,所有相邻的轨迹点之间的距离相加以得到第一轨迹的长度。
[0035]
在一些实施例中,获取航行设备的航行距离信息,根据航行距离信息确定航行设备的剩余航行距离,包括:
[0036]
获取航行设备的航行距离信息,根据航行距离信息确定第一轨迹点,航行设备的剩余航行距离为第一轨迹点距第一轨迹的终点的距离,其中,第一轨迹点为距航行设备最近的第一类轨迹点。
[0037]
第二方面,本发明实施里提供一种抛料控制装置,应用于航行设备,航行设备包括第一执行机构和第二执行机构,装置包括:
[0038]
第一获取单元,用于获取第一行驶速度以及航行设备的实时行驶速度;
[0039]
第一控制单元,用于根据第一行驶速度和实时行驶速度计算第一输出值,根据第一输出值控制第一执行机构,以控制航行设备的实时行驶速度;
[0040]
第一确定单元,用于根据实时行驶速度,确定第一抛料速度;
[0041]
第二控制单元,用于获取实时抛料速度,根据第一抛料速度和实时抛料速度计算第二输出值,根据第二输出值控制第二执行机构,以控制航行设备的实时抛料速度。
[0042]
第三方面,本发明实施例提供一种航行设备,航行设备包括:
[0043]
至少一个处理器;以及,
[0044]
与至少一个处理器通信连接的存储器;其中,
[0045]
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如第一方面的抛料控制方法。
[0046]
第四方面,本发明实施例提供一种非易失性计算机可读存储介质,非易失性计算机可读存储介质存储有计算机可执行指令,计算机可执行指令用于使航行设备执行如第一方面的抛料控制方法。
[0047]
本发明实施例的有益效果是:区别于现有技术的情况下,本发明实施例提供一种抛料控制方法、装置以及航行设备,该方法应用于航行设备,航行设备包括第一执行机构和第二执行机构,包括:获取第一行驶速度以及航行设备的实时行驶速度;根据第一行驶速度和实时行驶速度计算第一输出值,根据第一输出值控制第一执行机构,以控制航行设备的实时行驶速度;根据实时行驶速度,确定第一抛料速度;获取实时抛料速度,根据第一抛料
速度和实时抛料速度计算第二输出值,根据第二输出值控制第二执行机构,以控制航行设备的实时抛料速度。一方面通过负反馈控制来控制行驶速度和抛料速度,使行驶速度和抛料速度都趋于设定值,另一方面通过实时行驶速度来计算第一抛料速度,以行驶速度控制抛料速度,两方面相互结合达到平稳抛料的目的。
附图说明
[0048]
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
[0049]
图1是本发明实施例提供的一种抛料控制方法的流程示意图;
[0050]
图2是本发明实施例提供的一种抛料控制方法的行驶速度的控制框图示意图;
[0051]
图3是图2中的步骤s103的细化流程示意图;
[0052]
图4是本发明实施例提供的一种抛料控制方法的相邻轨迹点的示意图;
[0053]
图5是本发明实施例提供的一种抛料控制方法的抛料速度的控制框图示意图;
[0054]
图6是本发明实施例提供的一种抛料控制方法的又一流程示意图;
[0055]
图7是本发明实施例提供的一种抛料控制装置的结构示意图;
[0056]
图8是本发明实施例提供的一种航行设备的结构示意图。
具体实施方式
[0057]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0058]
请参阅图1,图1是本发明实施例提供的一种抛料控制方法的流程示意图;
[0059]
如图1所示,该抛料控制方法,应用于航行设备,航行设备包括第一执行机构和第二执行机构,方法包括:
[0060]
步骤s101:获取第一行驶速度以及航行设备的实时行驶速度;
[0061]
具体地,第一行驶速度由用户输入,用户可以根据实际作业需要灵活设定第一行驶速度;
[0062]
获取航行设备的实时行驶速度,包括:
[0063]
获取第二行驶速度,获取第一传感器采集的第一数据,根据第二行驶速度和第一数据确定航行设备的实时行驶速度,其中,第一传感器包括九轴传感器,第一数据包括三轴加速度计数据、三轴陀螺仪数据和三轴磁力计数据。
[0064]
具体地,根据全球导航卫星系统(global navigation satellite system,gnss)可以获取航行设备的第二行驶速度,第二行驶速度即为gnss计算的航行设备的实时行驶速度,但gnss计算的速度存在误差,当船出现特殊情况,例如撞岸停止时,实际船速为0,但gnss依旧会输出不为0的船速,而且gnss在使用过程中,其输出的速度有时会发生方位角突变甚至直接反向,因此需要通过九轴传感器获取的第一数据对第二行驶速度进行校正。
[0065]
具体地,通过九轴传感器获取的第一数据对第二行驶速度进行校正,包括:
[0066]
(1)、根据九轴传感器的三轴陀螺仪数据和3轴磁力计解算出航行设备的姿态,姿态包括航行设备的航向和俯仰角等,根据设备的姿态变换的幅度,确定航行设备是否在行驶,例如,俯仰角变化的角度小于预设的第一阈值且航行设备的航向的偏差量大于预设的第二阈值,则确定航行设备未在行驶即处于静止状态,则过滤掉在航行设备处于静止状态时gnss输出的非0的第二行驶速度,即此时航行设备的实时行驶速度为0。
[0067]
(2)、根据九轴传感器的三轴加速度计数据和三轴陀螺仪数据计算航行设备的第三行驶速度,将第三行驶速度与gnss输出的第二行驶速度通过卡尔曼滤波方法进行滤波,以校正第二行驶速度,将滤波后得到的速度确定为航行设备的实时行驶速度。
[0068]
进一步地,根据九轴传感器的3轴加速度计和和3轴陀螺仪求得速度需要用到积分公式,积分公式如下:
[0069]
速度是位置的导数,加速度是速度的导数,如下公式:
[0070]

[0071][0072][0073]
两个公式可得:
[0074][0075]
积分和导数相反。如果一个物体的加速度已知,那么能够利用二重积分获得物体的位置。假设初始条件为0那么有如下公式:
[0076][0077][0078]
以上公式即可求得速度,也能求得位移,根据九轴传感器的三轴加速度计数据和三轴陀螺仪数据计算航行设备的第三行驶速度还用到了惯性导航(inertial navigation system,ins)的原理,惯性导航系统是以3轴陀螺仪和3轴加速度计为敏感器件的导航参数解算系统,该系统根据3轴陀螺仪的输出建立导航坐标系,根据3轴加速度计解算出运载体及航行设备在导航坐标系中的速度和位置。
[0079]
惯性导航的基本工作原理是以牛顿力学定律为基础,通过测量载体在惯性参考系的加速度,将它对时间进行积分,且把它变换到导航坐标系中,就能够得到在导航坐标系中的速度、偏航角和位置等信息。
[0080]
惯性导航系统属于推算导航方式,即从一已知点的位置根据连续测得的运动体的航向角和速度推算出其下一点的位置,因而可连续测出运动体的当前位置。惯性导航系统中的陀螺仪用来形成一个导航坐标系,使加速度计的测量轴稳定在该坐标系中,并给出航向和姿态角;加速度计用来测量运动体的加速度,经过对时间的一次积分得到速度,速度再
经过对时间的一次积分即可得到位移。
[0081]
步骤s102:根据第一行驶速度和实时行驶速度计算第一输出值,根据第一输出值控制第一执行机构,以控制航行设备的实时行驶速度;
[0082]
具体地,根据第一行驶速度和实时行驶速度计算第一输出值,根据第一输出值控制第一执行机构,以控制航行设备的实时行驶速度,包括:
[0083]
根据第一行驶速度和实时行驶速度计算第一差值,根据第一差值通过第一控制算法计算第一输出值,根据第一输出值控制第一执行机构的电机转速,以控制航行设备的实时行驶速度;
[0084]
其中,第一控制算法包括位置式比例积分微分控制(proportional-integral-derivative control,pid控制)算法,位置式pid控制算法的公式如下:
[0085][0086]
其中,u|n|为n时刻的第一输出值,k
p
为比例系数,e[n]为n时刻输入的第一差值,t为采样周期,t
l
为积分时间常数,e[i]为i时刻输入的第一差值,e[n-1]为n-1时刻输入的第一差值,td为微分时间常数。
[0087]
进一步地,第一控制算法还包括增量式pid算法、积分分离式pid算法、不完全微分pid算法和比例积分控制算法等,第一执行机构包括航行设备的推进装置。
[0088]
请参阅图2,图2是本发明实施例提供的一种抛料控制方法的行驶速度的控制框图示意图;
[0089]
如图2所示,图2包括一pid控制器和推进装置即第一执行机构,该pid控制器包括比例环节,微分环节和积分环节,该推进装置包括喷水推进器、螺旋桨等。
[0090]
在本发明实施例中,该pid控制器的算法优选为位置式pid算法,位置式pid算法的原理如下:
[0091]
对模拟信号进行的模拟pid控制,也可以称作连续pid控制,微分表示为:
[0092][0093]
式中,k
p
为比例系数,t
l
为积分时间常数,td为微分时间常数。对上式进行拉氏变换:
[0094][0095]
pid控制器的传递函数为:
[0096][0097]
对连续pid控制以一定离散化方法离散后就可以得到数字pid控制,离散的本质是采样,假设采样为周期采样,采样周期为t,离散自变量为n,则离散pid控制可以表示为:
[0098][0099]
其中,u|n|为n时刻的第一输出值,k
p
为比例系数,e[n]为n时刻输入的第一差值,t为采样周期,t
l
为积分时间常数,e[i]为i时刻输入的第一差值,e[n-1]为n-1时刻输入的第一差值,td为微分时间常数。
[0100]
进一步地,为积分系数,为微分系数,上述公式即为位置式pid算法的原理。
[0101]
该控制框图的输入为v(设定)即第一行驶速度,负反馈输入v(gnss)即gnss测得的且经九轴传感器校正后得到的船只的实时行驶速度,将v(设定)和v(gnss)求差后输入位置式pid控制器,通过位置式比例积分算法输出第一输出值,第一输出值为推进装置的电机的脉冲宽度调制值(pulse width modulation,pwm),该pwm值用于控制推进装置的电机转速,pwm值越大,电机转速越快,可以理解的是,电机转速越快则推进装置获得的动能越多,航行设备的行驶速度越快,因此该控制框图的输出y(n)为航行设备的实时行驶速度。
[0102]
即:(1)输入一个设定值v(设定),该v(设定)为第一行驶速度,该设定值可以人为根据实际需要设定;
[0103]
(2)将gnss输出的经九轴传感器数据校正后的速度v(gnss)与v(设定)进行求差,求差后输入位置式pid控制器,然后进行比例,积分,微分计算,得到第一输出值;
[0104]
(3)将第一输出值,即推进装置的电机的pwm值输入推进装置,以控制推进装置的转速,达到控制航行设备的行驶速度的目的。
[0105]
通过pid闭环控制,以第一系统设定值v(设定)即第一行驶速度与过程实际值v(gnss)之间的误差的比例分量,积分分量和微分分量叠加生成控制输出的方式,实现过程实际值v(gnss)稳定地与系统设定值v(设定)保持一致。
[0106]
进一步地,pid输出的结果可为推进装置的电机的pwm值;若电机接电调模块,也可为相应电调模块的pwm值;若有电机控制板,也可为电机控制板的输入值。
[0107]
步骤s103:根据实时行驶速度,确定第一抛料速度;
[0108]
航行设备包括第二传感器,根据实时行驶速度,确定第一抛料速度,包括:
[0109]
获取航行设备的航行距离信息,根据航行距离信息确定航行设备的剩余航行距离,以及获取第二传感器采集的第二数据,确定未抛料重量;
[0110]
根据剩余航行距离和实时行驶速度,计算第一时间,其中,第一时间等于剩余航行距离/实时行驶速度;
[0111]
根据未抛料重量和第一时间,计算第一抛料速度,其中,第一抛料速度等于未抛料重量/第一时间。
[0112]
具体地,请再参阅图3,图3是图2中的步骤s103的细化流程示意图;
[0113]
如图3所示,该方法包括:
[0114]
步骤s1031:获取航行设备的航行距离信息,根据航行距离信息确定航行设备的剩余航行距离,以及获取第二传感器采集的第二数据,确定未抛料重量;
[0115]
航行设备按照第一轨迹行驶,定义o为地球的球心,角c为第一轨迹上的相邻的两
个轨迹点与球心o连线后所成的角,方法还包括:
[0116]
获取第一轨迹上的相邻的两个轨迹点的经纬度信息,根据经纬度信息计算角c的角度;
[0117]
将角c的角度转换为弧度,并根据弧度计算相邻的两个轨迹点之间的距离,以求得第一轨迹上所有相邻的轨迹点之间的距离,所有相邻的轨迹点之间的距离相加以得到第一轨迹的长度。
[0118]
获取航行设备的航行距离信息,根据航行距离信息确定剩余航行距离,包括:
[0119]
获取航行设备的航行距离信息,根据航行距离信息确定第一轨迹点,航行设备的剩余航行距离为第一轨迹点距第一轨迹的终点的距离,其中,第一轨迹点为距航行设备最近的第一类轨迹点。
[0120]
请再参阅图4,图4是本发明实施例提供的一种抛料控制方法的相邻轨迹点的示意图;
[0121]
先对图4中的标点做如下定义:
[0122]
定义a点为当前位置,b点为目标位置,a点和b点为航行设备的航行轨迹上相邻的两个轨迹点,通过gnss可以获取a点和b点的经纬度坐标,假设aj为a点经度,aw为a点纬度;bj为b点经度,bw为b点纬度,以北纬为正,南纬为负;以东经为正,西经为负。
[0123]
a、b、c表示球面上的三个点,c点所处位置为北极点。c表示a,b两点与o点的连线所夹的角。o即球心,l是ab两点间球面距离,也叫做大圆距离,即过aob三点的平面与球相交所产生的圆弧中劣弧ab的长度,r是地球平均半径。
[0124]
首先,通过球面余弦公式求角c的余弦值,公式如下:
[0125]
cos(c)=cos(a)
×
cos(b) sin(a)
×
sin(b)
×
cos(c)
[0126]
角c等于角a~oc~b,即面aoc与面boc所成的二面角,也就是bj-aj。将已知数据代入,公式为:
[0127]
cos(c)=cos(90-bw)
×
cos(90-aw) sin(90-bw)
×
sin(90-aw)
×
cos(bj-aj)
[0128]
求得c的余弦值后用反余弦函数便可求得角c的角度:
[0129]
c=arccos(cos(90-bw)
×
cos(90-aw) sin(90-bw)
×
sin(90-aw)
×
cos(bj-aj))
[0130]
将角c的角度转换为弧度:
[0131][0132]
根据角c对应的弧度即可求取a点和b点之间的距离:
[0133]
l=r
×
c(弧度)
[0134]
需要说明的是,cos(bj-aj)中bj-aj的顺序不影响结果,因为cos函数关于y轴对称。
[0135]
根据以上方式,将航行设备航行轨迹上所有的轨迹点连接,即可求得航行设备航行轨迹的总距离,以及行驶距离和剩余距离。
[0136]
因为航行轨迹是由多个经纬度轨迹点连接拟合而成,我们可以求得两个相邻轨迹点之间的距离,所有线段求和即为航行轨迹的总距离;
[0137]
航行设备行驶经过一个轨迹点时,从起始位置到该轨迹点之间的距离为行驶距离,根据航行设备的航行距离信息,确定距航行设备最近的第一类轨迹点,第一类轨迹点为
航行设备经过的轨迹点,例如若航行设备经过了t、u、i三个轨迹点,则t、u、i三个轨迹点都为第一类轨迹点,若i点离航行设备的直线距离最近,则其为距航行设备最近的第一类轨迹点,行驶距离可由航行轨迹的起点和第一类轨迹点的区间内的所有相临的轨迹点之间的距离求和得出,剩余距离为总距离减去行驶距离求得,需要说明的是,航行设备的航行距离信息包括其已经过的轨迹点和未经过的轨迹点;
[0138]
根据航行距离信息确定航行设备的剩余航行距离后还需要获取第二传感器采集的第二数据,确定未抛料重量;
[0139]
具体地,第二传感器为航行设备上用于测量抛料物重量的称重传感器包括数字式称重传感器、电容式称重传感器、电阻应变型称重传感器等等,第二数据则为称重传感器测量出的抛料物重量,例如抛料物还剩10kg,根据称重传感器测得的第二数据即可确定未抛料重量。
[0140]
步骤s1032:根据剩余航行距离和实时行驶速度,计算第一时间,其中,第一时间等于剩余航行距离/实时行驶速度;
[0141]
具体地,从无人船巡航轨迹中计算出总距离c(总),抛料物的初始总重量g(总),实时行驶速度为v(gnss),可以求出该行驶速度下航行设备巡航一周的时间:
[0142][0143]
则巡航过程中单位时间下的抛料抛料为:
[0144][0145]
那么,当前需要的设定的实时抛料速率可用剩余距离c(剩)和剩余时间t(剩)相除求得,剩余时间t(剩)即第一时间为:
[0146][0147]
步骤s1033:根据未抛料重量和第一时间,计算第一抛料速度,其中,第一抛料速度等于未抛料重量/第一时间。
[0148]
具体地,设定的第一抛料速度为:
[0149][0150]
而实际的抛料速率,则是已抛料重量g(已抛)和已巡航时间t(巡航)相除求得,即:
[0151][0152]
其中,已巡航时间t(巡航)可由当前gnss记录的时间与起始巡航时gnss记录的时间求差获得,已抛料重量g(已抛)可由初始时称重传感器测得的总重量g(总)减去当前称重传感器测得的重量获得。
[0153]
通过以上方式,可以通过实时行驶速度控制实时抛料速度,使航行设备航行过程
中遇到意外情况时,也可以实现均匀抛料。
[0154]
步骤s104:获取实时抛料速度,根据第一抛料速度和实时抛料速度计算第二输出值,根据第二输出值控制第二执行机构,以控制航行设备的实时抛料速度;
[0155]
根据第一抛料速度和实时抛料速度计算第二输出值,根据第二输出值控制第二执行机构,以控制航行设备的实时抛料速度,包括:
[0156]
根据第一抛料速度和实时抛料速度计算第二差值,根据第二差值通过第二控制算法计算第二输出值,根据第二输出值控制第二执行机构的电机转速,以控制航行设备的实时抛料速度;
[0157]
其中,第二控制算法包括增量式比例积分微分控制算法,其中增量式比例积分微分控制算法的公式如下:
[0158]
δu[n]=k
p
{e[n]-e[n-1]} k
l
e[n] kd{e[n]-2e[n-1] e[n-2]}
[0159]
其中,δu[n]为第二输出值,k
p
为比例系数,e[n]为n时刻输入的第二差值,e[n-1]为n-1时刻输入的第二差值,e[n-2]为n-2时刻输入的第二差值,t为采样周期,t
l
为积分时间常数,td为微分时间常数,为积分系数,为微分系数。
[0160]
请参阅图5,图5是本发明实施例提供的一种抛料控制方法的抛料速度的控制框图示意图;
[0161]
图5包括一pid控制器和蛟龙电机,即第二执行机构,该pid控制器包括比例环节,微分环节和积分环节。
[0162]
在本发明实施例中,该pid控制器的算法优选为增量式pid算法,增量式pid算法的原理如下:
[0163]
根据步骤s102中的位置式pid控制公式,得到n-1时刻的第一输出值:
[0164][0165]
设:
[0166]
δu|n|=u[n]-u[n-1]
[0167]
得到:
[0168][0169]
令为积分系数,为微分系数,可以将上式简化为
[0170]
δu[n]=k
p
{e[n]-e[n-1]} k
l
e[n] kd{e[n]-2e[n-1] e[n-2]}
[0171]
其中,δu[n]为第二输出值,k
p
为比例系数,e[n]为n时刻输入的第二差值,e[n-1]为n-1时刻输入的第二差值,e[n-2]为n-2时刻输入的第二差值,t为采样周期,t
l
为积分时间常数,td为微分时间常数,为积分系数,为微分系数。
[0172]
该控制框图的输入为v(设定)即根据实时行驶速度计算出的第一抛料速度,负反馈输入v(实际)=(g(已抛))/(t(巡航))即根据已抛料重量和航行设备的已航行时间相除算出的实时抛料速度,将v(设定)和v(实际)求差后输入增量式pid控制器,通过增量式比例积分算法输出第二输出值,第二输出值为绞龙电机的pwm的变化量,根据该pwm值的变化量调整输入绞龙电机的pwm值,即原pwm值 第二输出值=新pwm值,根据新pwm值控制绞龙电机的电机转速,pwm值越大,绞龙电机的转速越快,可以理解的是,绞龙电机用于抛料,因此绞龙电机转速越快则航行设备的抛料速度越大,因此该控制框图的输出y(n)为航行设备的实时抛料速度。
[0173]
即:(1)输入一个设定值v(设定),该v(设定)为第一抛料速度,该第一抛料速度由航行设备的实时行驶速度计算得到;
[0174]
(2)将v(实际)与v(设定)进行求差,v(实际)为通过公式v(实际)=(g(已抛))/(t(巡航))计算出的实时抛料速度,求差后输入增量式pid控制器,然后进行比例,积分,微分计算,得到第二输出值;
[0175]
(3)第二输出值为pwm值的变化量,根据第二输出值调整输入绞龙电机的pwm值,即原pwm值 第二输出值=新pwm值,根据新pwm值控制绞龙电机的转速,达到控制航行设备的抛料速度的目的。
[0176]
通过pid闭环控制,以第二系统设定值v(设定)即第一抛料速度与过程实际值v(实际)之间的误差的比例分量,积分分量和微分分量叠加生成控制输出的方式,实现过程实际值v(实际)稳定地与系统设定值v(设定)保持一致,同时因为v(设定)由实时行驶速度计算得到,实时抛料速度理论上会与v(设定)相同,因而实现了通过实时行驶速度控制实时抛料速度的目的。
[0177]
请参阅图6,图6是本发明实施例提供的一种抛料控制方法的又一流程示意图;
[0178]
如图6所示,该流程示意图包括航行设备的实时行驶速度和实时抛料速度,以及九轴传感器11、gnss即全球导航卫星系统12、称重传感器21、位置式pid控制器13和增量式pid控制器22。
[0179]
根据九轴传感器11获取的第一数据校正全球导航卫星系统12获取的第二行驶速度得到实时行驶速度,通过位置式pid控制器13根据设定的第一行驶速度和实时行驶速度的负反馈,控制实时行驶速度,即位置式pid闭环控制,具体步骤说明书其他部分已进行介绍,在此不再赘述。
[0180]
通过称重传感器21获得的第二数据和全球导航卫星系统12记录的航行时间信息计算实时抛料速度,并通过实时行驶速度计算第一抛料速度的设定值,通过增量式pid控制器22根据第一抛料速度的设定值和实时抛料速度的负反馈,控制实时抛料速度,即增量式pid闭环控制,具体步骤说明书其他部分已进行介绍,在此不再赘述。
[0181]
本发明实施例提供一种抛料控制方法、装置以及航行设备,该方法应用于航行设备,航行设备包括第一执行机构和第二执行机构,包括:获取第一行驶速度以及航行设备的实时行驶速度;根据第一行驶速度和实时行驶速度计算第一输出值,根据第一输出值控制第一执行机构,以控制航行设备的实时行驶速度;根据实时行驶速度,确定第一抛料速度;获取实时抛料速度,根据第一抛料速度和实时抛料速度计算第二输出值,根据第二输出值控制第二执行机构,以控制航行设备的实时抛料速度。一方面通过负反馈控制来控制行驶
速度和抛料速度,使行驶速度和抛料速度都趋于设定值,另一方面通过实时行驶速度来计算第一抛料速度,以行驶速度控制抛料速度,两方面相互结合达到平稳抛料的目的。
[0182]
请再参阅图7,图7是本发明实施例提供的一种抛料控制装置的结构示意图;
[0183]
如图7所示,该抛料控制装置70应用于航行设备,航行设备包括第一执行机构和第二执行机构,装置包括:
[0184]
第一获取单元71,用于获取第一行驶速度以及航行设备的实时行驶速度;
[0185]
第一控制单元72,用于根据第一行驶速度和实时行驶速度计算第一输出值,根据第一输出值控制第一执行机构,以控制航行设备的实时行驶速度;
[0186]
第一确定单元73,用于根据实时行驶速度,确定第一抛料速度;
[0187]
第二控制单元74,用于获取实时抛料速度,根据第一抛料速度和实时抛料速度计算第二输出值,根据第二输出值控制第二执行机构,以控制航行设备的实时抛料速度。
[0188]
在本发明实施例中,航行设备包括第一传感器,第一获取单元81,具体用于:获取第二行驶速度,获取第一传感器采集的第一数据,根据第二行驶速度和第一数据确定实时行驶速度,其中,第一传感器包括九轴传感器,第一数据包括三轴加速度计数据、三轴陀螺仪数据和三轴磁力计数据。
[0189]
在本发明实施例中,第一控制单元72,具体用于:根据第一行驶速度和实时行驶速度计算第一差值,根据第一差值通过第一控制算法计算第一输出值,根据第一输出值控制第一执行机构的电机转速,以控制航行设备的实时行驶速度;
[0190]
其中,第一控制算法包括位置式比例积分微分控制算法,位置式比例积分微分控制算法的公式如下:
[0191][0192]
其中,u|n|为n时刻的第一输出值,k
p
为比例系数,e[n]为n时刻输入的第一差值,t为采样周期,t
l
为积分时间常数,e[i]为i时刻输入的第一差值,e[n-1]为n-1时刻输入的第一差值,td为微分时间常数。
[0193]
在本发明实施例中,第二控制单元74,具体用于:根据第一抛料速度和实时抛料速度计算第二差值,根据第二差值通过第二控制算法计算第二输出值,根据第二输出值控制第二执行机构的电机转速,以控制航行设备的实时抛料速度;
[0194]
其中,第二控制算法包括增量式比例积分微分控制算法,其中增量式比例积分微分控制算法的公式如下:
[0195]
δu[n]=k
p
{e[n]-e[n-1]} kie[n] kd{e[n]-2e[n-1] e[n-2]}
[0196]
其中,δu[n]为第二输出值,k
p
为比例系数,e[n]为n时刻输入的第二差值,e[n-1]为n-1时刻输入的第二差值,e[n-2]为n-2时刻输入的第二差值,t为采样周期,ti为积分时间常数,td为微分时间常数,为积分系数,为微分系数。
[0197]
在本发明实施例中,航行设备包括第二传感器,第一确定单元73,具体用于:
[0198]
获取航行设备的航行距离信息,根据航行距离信息确定航行设备的剩余航行距离,以及获取第二传感器采集的第二数据,确定未抛料重量;
[0199]
根据剩余航行距离和实时行驶速度,计算第一时间,其中,第一时间等于剩余航行距离/实时行驶速度;
[0200]
根据未抛料重量和第一时间,计算第一抛料速度,其中,第一抛料速度等于未抛料重量/第一时间。
[0201]
在本发明实施例中,第二控制单元还用于74:获取航行设备的航行时间信息,确定已航行时间,并根据第二数据确定已抛料重量;
[0202]
根据已抛料重量和已航行时间,计算实时抛料速度,其中,实时抛料速度为已抛料重量/已航行时间。
[0203]
在本发明实施例中,抛料控制装置70还包括轨迹长度计算单元,航行设备按照第一轨迹行驶,定义o为地球的球心,角c为第一轨迹上的相邻的两个轨迹点与球心o连线后所成的角,轨迹长度计算单元具体用于:
[0204]
获取第一轨迹上的相邻的两个轨迹点的经纬度信息,根据经纬度信息计算角c的角度;
[0205]
将角c的角度转换为弧度,并根据弧度计算相邻的两个轨迹点之间的距离,以求得第一轨迹上所有相邻的轨迹点之间的距离,所有相邻的轨迹点之间的距离相加以得到第一轨迹的长度。
[0206]
在本发明实施例中,第一确定单元73还用于:获取航行设备的航行距离信息,根据航行距离信息确定第一轨迹点,航行设备的剩余航行距离为第一轨迹点距第一轨迹的终点的距离,其中,第一轨迹点为距航行设备最近的第一类轨迹点。
[0207]
请再参阅图8,图8是本发明实施例提供的一种航行设备的结构示意图。
[0208]
请参阅图8,如图8所示,该航行设备80包括:一个或多个处理器81以及存储器82,图8中以一个处理器81为例。
[0209]
处理器81和存储器82可以通过总线或者其他方式连接,图8中以通过总线连接为例。
[0210]
处理器81,根据第一行驶速度和实时行驶速度计算第一输出值,根据第一输出值控制第一执行机构,以控制航行设备的实时行驶速度;根据实时行驶速度,确定第一抛料速度;获取实时抛料速度,根据第一抛料速度和实时抛料速度计算第二输出值,根据第二输出值控制第二执行机构,以控制航行设备的实时抛料速度。一方面通过负反馈控制来控制行驶速度和抛料速度,使行驶速度和抛料速度都趋于设定值,另一方面通过实时行驶速度来计算第一抛料速度,以行驶速度控制抛料速度,两方面相互结合达到平稳抛料的目的。存储器82作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本技术实施例中的抛料控制方法的程序指令/模块。处理器81通过运行存储在存储器82中的非易失性软件程序、指令以及模块,从而执行航行设备的各种功能应用以及数据处理,即实现上述方法实施例的抛料控制方法。
[0211]
存储器82可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据航行设备的使用所创建的数据等。此外,存储器82可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器82可选包括相对于处理器81远程设置的存储器,这些远程存储器可以通过网络连接至控制
器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0212]
一个或者多个模块存储在存储器82中,当被一个或者多个处理器81执行时,执行上述任意方法实施例中的抛料控制方法,例如,执行以上描述的图1中的方法步骤s101至步骤s104。
[0213]
需要说明的是,上述产品可执行本技术实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本技术实施例所提供的方法。
[0214]
本技术实施例提供了一种非易失性计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如图8中的一个处理器81,可使得上述一个或多个处理器可执行上述任意方法实施例中的抛料控制方法,执行以上描述的图1中的方法步骤s101至步骤s104。
[0215]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。通过以上的实施例的描述,本领域普通技术人员可以清楚地了解到各实施例可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献