一种明轮无人增氧船的控制系统与航向控制算法

文档序号:25855353发布日期:2021-07-13 16:08阅读:102来源:国知局
一种明轮无人增氧船的控制系统与航向控制算法

本发明涉及船体运动控制技术领域,尤其涉及一种明轮无人增氧船的控制系统与航向控制算法。



背景技术:

传统增氧方式可分为物理增氧和化学增氧两大类。化学增氧就是向水域中导入某种化学物质,这种物质会与水发生化学反应,在此过程中产生氧气,从而加快了氧气向水中溶解的速度,起到增氧的效果。物理增氧是利用氧气溶解于水的物理特性,通过各种方式、手段,提高氧溶解于水的速度,这种方式控制和操作更方便、简单,能够根据水中的溶氧量实时精确地控制设备进行增氧,因此该方法被广泛应用于水产养殖业。

目前水产养殖常用的增氧机主要有叶轮式、水车式、耕水机、喷气式、射流式、微孔曝气式、涌浪机等几大类。传统增氧船在使用过程中存在移动能力差、增氧覆盖面积小的问题。

为了提高增氧设备的自动化水平,高效完成池塘养殖需要的增氧任务,有必要提供一种明轮无人增氧船的控制系统与航向控制算法,使得明轮无人增氧船能够在水域中自动导航,具有移动能力好、增氧覆盖面积大的优点。



技术实现要素:

本发明的目的在于克服传统技术中存在的上述问题,提供一种明轮无人增氧船的控制系统与航向控制算法。

为实现上述技术目的,达到上述技术效果,本发明是通过以下技术方案实现:

一种明轮无人增氧船的控制系统,该控制系统位于船体内,所述船体设有四个能够独立动作的明轮,所述控制系统包括树莓派、gps模块、单片机、明轮电机、编码器和串口通信模块,所述明轮电机共有四个,每个明轮电机对应驱动一个明轮,所述树莓派通过串口通信模块实时读取gps模块的位置数据,所述树莓派通过串口通信模块与单片机进行数据交互,并根据航向控制量给单片机下发每个明轮电机的目标转速,所述单片机同时通过安装在每个电机轴处的编码器读取每个明轮电机的实际转速,通过pid控制调节,将计算得到的pwm占空比传输给电机驱动器,从而实现明轮电机实际转速对目标转速的跟踪控制。

进一步地,上述明轮无人增氧船的控制系统中,所述船体内置有锂电池,所述船体的上侧外壁设有太阳能板,所述太阳能板通过转换器、线缆与锂电池进行连接,并共同构成供电系统。

进一步地,上述明轮无人增氧船的控制系统中,所述树莓派通过路由器与后台的远程计算机进行无线通信,所述路由器、后台的远程计算机构成远程监控系统。

进一步地,上述明轮无人增氧船的控制系统中,所述明轮的叶板上开设有空洞,且叶板的边缘处设有折角。

进一步地,上述明轮无人增氧船的控制系统中,四个所述明轮分别为位于左侧后端的明轮a、位于左侧前端的明轮b、右侧前端的明轮c以及右侧后端的明轮d;

所述明轮电机的目标转速由航向控制量与明轮电机的基本转速相结合得到,公式如下:

motor_ab=motor_reference_speed+angle.output_speed

motor_cd=motor_reference_speed-angle.output_speed

式中,motor_ab、motor_cd分别为左侧和右侧明轮电机的转速,motor_reference_speed为明轮电机的基本转速,angle.output_speed为航向控制器的输出控制量。

进一步地,上述明轮无人增氧船的控制系统中,当明轮a、b的转速大小相等且方向相反,明轮c、d的转速大小相等且方向相反时,船体做原地旋转运动;当明轮a、d的转速大小相等且方向相反,明轮b、c的转速大小相等且方向相反时,船体会定点悬停在原地,实现原地给水体增氧。

进一步地,上述明轮无人增氧船的控制系统中,所述明轮电机的基本转速为600-1000r/min。

一种明轮无人增氧船的航向控制算法,包括如下步骤:

1)树莓派首先通过串口接收到gps数据并进行解析,提取出明轮船的经纬度坐标、航向、航速关键信息;然后根据预设好的目标点坐标和明轮船的实时坐标对比计算得到目标航向;

2)以明轮船当前航向与目标航向的偏差作为模糊控制器的输入,再将模糊控制器的输出作为pid控制器的输入,得到相应的航向控制量;当前航向与目标航向的偏差包括偏差e和偏差变化率ec,pid控制器的修正值δkp、δki、δkd,所述模糊控制器的输入和输出变量的模糊论域设为[-6,6],并分别定义7个模糊子集,记为{nb,nm,ns,zo,ps,pm,pb},将各个模糊子集的隶属函数设为对称三角形,其中心点分别为{-6,-4,-2,0,2,4,6};

3)模糊控制器采用mamdani推理法进行模糊推理,并采用重心法进行去模糊化处理,重心法是取隶属函数曲线与横坐标围成面积的重心,作为模糊推理的最终输出值,pid控制器的修正值计算公式如下:

式中,j取p、i、d,yi为模糊控制量论域内的值,uv(yi)为隶属度函数,cj为各个输出变量的比例因子;

4)将pid控制器的修正值带入公式得到pid控制器的参数,公式为:

kp=kp0+δkp

ki=ki0+δki

kd=kd0+δkd

式中,kp0、ki0、kd0为pid控制器的参数初值。

本发明的有益效果是:

本发明设计并研究了明轮驱动自动导航无人作业船,该船能够通过明轮旋转不断的搅动水体,实现增氧的效果。船上搭载gps定位系统,可以实时获取明轮船的位置、速度、航向等导航数据,配合相应的自动导航控制算法可以很好的实现对明轮船的运动控制。本发明的研究能够有效提高养殖效率,促进水产养殖技术的发展。

当然,实施本发明的任一产品并不一定需要同时达到以上的所有优点。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明中明轮无人增氧船控制系统的结构示意图;

图2为本发明中明轮无人增氧船的俯视结构示意图;

图3为本发明中明轮无人增氧船的主视结构示意图;

图4为本发明中明轮无人增氧船控制系统的原理框图;

图5为本发明中航迹点跟踪原理框图;

图6为本发明中漫巡航原理框图;

图7为本发明中直线规划轨迹的试验结果示意图;

图8为本发明中三角形规划轨迹的试验结果示意图;

图9为本发明中四边形规划轨迹的试验结果示意图;

图10为本发明中六边形规划轨迹三角形的试验结果示意图;

图11为本发明中δkp的模糊规则控制表;

图12为本发明中δki的模糊规则控制表;

图13为本发明中δkd的模糊规则控制表;

图14为本发明中δkp、δki、δkd的隶属度函数示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

实施例一

如图1所示,本实施例为一种明轮无人增氧船的控制系统,该控制系统1位于船体2内,船体2设有四个能够独立动作的明轮3。控制系统1包括树莓派101、gps模块102、单片机103、明轮电机104、编码器和串口通信模块,明轮电机104共有四个,每个明轮电机104对应驱动一个明轮3。树莓派101通过串口通信模块实时读取gps模块102的位置数据,树莓派101通过串口通信模块与单片机103进行数据交互,并根据航向控制量给单片机下发每个明轮电机104的目标转速。单片机103选用stm32单片机,单片机103同时通过安装在每个电机轴处的编码器读取每个明轮电机104的实际转速,通过pid控制调节,将计算得到的pwm占空比传输给电机驱动器,从而实现明轮电机104实际转速对目标转速的跟踪控制。

本实施例中,供电系统包括太阳能板和锂电池,当按下船体的启动按钮时,太阳能板就开始自动给锂电池充电,充分利用太阳能资源,增加明轮船的实际作业时间,节约成本。

如图2和如图3所示,四个所述明轮分别为位于左侧后端的明轮a、位于左侧前端的明轮b、右侧前端的明轮c以及右侧后端的明轮d。

明轮电机的目标转速由航向控制量与明轮电机的基本转速相结合得到,公式如下:

motor_ab=motor_reference_speed+angle.output_speed

motor_cd=motor_reference_speed-angle.output_speed

式中,motor_ab、motor_cd分别为左侧和右侧明轮电机的转速,motor_reference_speed为明轮电机的基本转速,angle.output_speed为航向控制器的输出控制量。明轮电机的基本转速为600-1000r/min,如可设计为800r/min,此转速下明轮3具有较好的增氧效果。

本实施例中,在明轮船运动过程中不产生推力或者其他任何作用力。明轮船静止与水面时,重力和浮力大小相等、方向相反。因为明轮对称分布,当左侧两明轮与右侧两明轮产生大小相等、方向相同的推力时,明轮船直线行驶。当两侧推力不等时,则会产生绕z轴(z轴垂直于水平面)的扭矩,明轮船开始转向。当a、b明轮与c、d明轮以大小相等,方向相反的转速旋转时,此时明轮船做原地旋转运动,正因此特性使明轮船受作业水域的限制很小;当a、d明轮与b、c明轮以大小相等,方向相反的转速旋转时,由于明轮船受到的明轮作用力相互抵消,所以位置上明轮船是静止的,明轮的叶板上开设有空洞,且叶板的边缘处设有折角,此时四个明轮在不断的搅动水面扬起水花,起到定点增氧的效果。

本实施例中,自动导航模式又分为规定航迹巡航模式和漫巡航模式。规定航迹巡航模式是明轮船根据设定的几个目标点,使用航向控制算法进行处理,根据处理的结果控制明轮船运动,使明轮船可以依次到达这几个点并进行增氧作业,由此往复循环。漫巡航模式是明轮船以一定的航速一直航行,根据gps模块102实时读到的位置数据判断明轮船是否到达边界,当判断到达边界时,切换明轮船的行驶方向,让它向湖中心一点行驶,然后再以当前船头指向为起始航向,保持两侧明轮转速一致向前行驶,直至检测判断出到达另一侧边界,由此往复循环。这种工作模式无法预测船的行驶轨迹,只是以一定航速行驶,在工作了足够长时间之后,行驶轨迹基本能够覆盖整个湖的范围,起到全范围增氧的效果。

本实施例中,远程监控系统主要由4g路由器和岸基远程监控计算机组成,4g路由器作为桥梁搭建起树莓派与远程计算机之间的通讯,从而实现对明轮船的远程控制。远程遥控模式是由操作人员通过操作远程pc进行明轮船的远程控制。首先需要通过4g路由器远程连接到船载计算机树莓派上,然后运行key_run.py程序,该程序会不断检测u、i、o、j、k、l等键盘按钮,当检测到u、i、o按钮按下时,明轮船分别向左前、向前、向右前方向行驶;当检测到j、k、l按钮按下时,明轮船分别向左原地旋转、立即停止运动、向右原地旋转;当检测到m、,(逗号)、.(句号)按钮按下时,明轮船分别向左后、向后、向右后方向行驶。

如图4所示,ψ1、ψ2分别为当前航向角与目标航向角(°);e为ψ1、ψ2的差值;ec为e的变化率;δkp、δki、δkd是pid控制器的输入,用于对pid控制参数的实时调整;为控制器的输出值,直接作用于明轮上,用于调节明轮转速。当明轮船系统开启后,树莓派首先读取gps模块传输的明轮船位置数据,得到明轮船的经纬度坐标、航向、航速等信息;然后将得到的实际位置坐标与提前在程序代码中设定好的目标点坐标进行对比,看当前位置是否在目标点处,若在则不做任何运动,等待下一步的指令,若不在目标点处,则计算得到目标航向,将目标航向与实际航向的偏差作为模糊pid控制器的输入,控制器的输出是四个明轮转速的调整量。因为本发明的明轮船设计功能是为了增氧,所以明轮的转速不能太低,否则将起不到增氧的作用,因此在控制器输出得到明轮转速的基础上设定了明轮电机600-1000r/min(如800r/min)的基本转速。而同时为了保证船体运行的稳定,防止两侧明轮转速差太大导致船体转弯太急,因此对计算得到目标转速做了阈值判断和限幅处理,从而明轮船既能实现增氧又能在控制器作用下实现转向,到达航向控制目标。

如图5所示,在明轮船航向得到控制的基础上,设计了航迹点跟踪控制。由set_goal结构体定义各个目标点坐标,目标点总个数为goal_number。首先根据当前明轮船的位置和第一个目标点的位置解算出目标航向角,根据明轮船上一时刻的位置和当前位置解算出当前航向角,从而得到航向角偏差作为航向控制器的输入,控制器输出各个明轮的转速,实时调整明轮船的航向,在明轮船运行过程中要不断判断检测是否到达目标点,检测方法就是计算明轮船的实时位置距目标位置之间的距离是否小于2.5米,若小于则认为明轮船已经到达目标点,程序更新下一个目标点,如此循环;若大于2.5米则认为明轮船还没有到达目标点,程序继续执行,直至判定到达目标点。这样就可以通过在程序中设计目标点数量和位置,实现明轮船对三角形、四边形、五边形等各种形状的位置跟踪控制。

如图6所示,漫巡航就是将明轮船放到作业区域以后开启系统,明轮船即开始在水域内漫无目的的行驶。程序启动后,首先读取gps数据得到起始点坐标,进而判断当前位置是否在安全区域,若在安全区域则两侧明轮电机按照800r/min的相同转速驱动明轮船前进,在前进过程中不断判断检测是否到达边界,若没有到达边界则继续前进,若判断到达了边界,则明轮船四个明轮首先以相反的转速运转10秒,使明轮船与边界留出足够的安全区域便于明轮船掉头转向,然后向湖中心一点行驶,直到判断认为到达了湖中心点。如此循环,足够长时间后,明轮船的运行轨迹将会覆盖整个湖面,实现漫巡航的增氧目标。

为了测试所设计的航向控制器的实际性能,在安徽工业大学秀山校区荟灵湖进行了测试实验。本实施例共规划4个实验,规划轨迹分别是直线、三角形、四边形、六边形。明轮船运行过程中的所有位置坐标都存储在船载上位机树莓派中。实验结果如图7至图10所示,都已转换到本地坐标系下展示。实验结果表明明轮船跟踪时最大位置偏移约为4米,是gps本身存在的误差和明轮船存在惯性等导致的。综上所述,明轮船能实现既定航线的自主导航。

实施例二

本实施例为一种明轮无人增氧船的航向控制算法,包括如下步骤:

1)树莓派首先通过串口接收到gps数据并进行解析,提取出明轮船的经纬度坐标、航向、航速关键信息;然后根据预设好的目标点坐标和明轮船的实时坐标对比计算得到目标航向;

2)以明轮船当前航向与目标航向的偏差作为模糊控制器的输入,再将模糊控制器的输出作为pid控制器的输入,得到相应的航向控制量;当前航向与目标航向的偏差包括偏差e和偏差变化率ec,pid控制器的修正值δkp、δki、δkd,所述模糊控制器的输入和输出变量的模糊论域设为[-6,6],并分别定义7个模糊子集,记为{nb,nm,ns,zo,ps,pm,pb},将各个模糊子集的隶属函数设为对称三角形,其中心点分别为{-6,-4,-2,0,2,4,6};

δkp的模糊规则控制表如图11所示,δki的模糊规则控制表如图12所示,δkd的模糊规则控制表如图13所示。

3)模糊控制器采用mamdani推理法进行模糊推理,并采用重心法进行去模糊化处理,重心法是取隶属函数曲线与横坐标围成面积的重心,作为模糊推理的最终输出值,pid控制器的修正值计算公式如下:

式中,j取p、i、d,yi为模糊控制量论域内的值,uv(yi)为隶属度函数,cj为各个输出变量的比例因子;

δkp、δki、δkd的隶属度函数如图14所示;

4)将pid控制器的修正值带入公式得到pid控制器的参数,公式为:

kp=kp0+δkp

ki=ki0+δki

kd=kd0+δkd

式中,kp0、ki0、kd0为pid控制器的参数初值。

以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1