基于自适应PID控制的水下机器人推进器控制装置及其控制方法与流程

文档序号:11249991阅读:1226来源:国知局
基于自适应PID控制的水下机器人推进器控制装置及其控制方法与流程

本发明属于水下机器人推进器技术,具体涉及一种基于自适应pid控制的水下机器人推进器控制装置及其控制方法。



背景技术:

21世纪人类面临人口膨胀和生存空间有限的矛盾,占地球表面积71%的海洋,是一个富饶而远未得到开发的宝库。水下机器人的出现为人类进行深海资源的研究与开发提供了强有力的工具。目前,水下机器人广泛应用于海洋救助与打捞、深海资源调查、海洋石油开采、水下工程施工、军事和国防建设等诸多方面,己经产生了巨大的经济效益和社会效益,具有潜在的应用前景。水下机器人作为人们探测水下世界的一种重要工具日益显示着它的重要性

推进器是水下机器人的主要组成部分,将其它形式的能源转化成机械能从而推动水下机器人运动,是水下机器人的动力源泉。水下机器人在执行作业需要完成指定的姿态和动作时,推进器发挥着关键性的作用。良好的水下推进器控制系统是水下机器人姿态、航程、航速等相关性能的有力保证。因此高机动性、高可靠性、高准确性的水下机器人推进器控制系统对我们开发、利用海洋资源显得十分重要。无刷直流电机由于其高效率、高可靠性以及维护成本低等优点,在中小型水下机器人中深受青睐。

目前针对于水下机器人推进器的控制装置不多,传统的水下机器人推进器的控制方式为,直接将推进器连接到水下机器人主控制器的i/o口,这样的结构大量占用水下机器人主控制器资源,且接线复杂,同时,推进器自身无法形成转速闭环,控制响应慢、精度低,而且,无法获得推进器的转速、温度等信息。

目前的一些水下推进器要么计算复杂,对处理器要求比较高,不便编程与实现,运算速度慢,无法取得理想控制效果,不利于应用于实际;要么需借助工程经验数据为依据,建立专家数据库,应用范围窄,系统算法庞大,不具有普遍应用价值,且未给出控制系统的具体实现方式。



技术实现要素:

发明目的:本发明的目的在于解决现有技术中存在的不足,提供一种基于自适应pid控制的水下机器人推进器控制装置及其控制方法。

技术方案:本发明的一种基于自适应pid控制的水下机器人推进器控制装置,包括数据隔离模块、can数据收发模块、光电隔离驱动模块、控制器模块以及温度检测模块;水下机器人主控制器发送给推进器的设定转速经过数据隔离模块的隔离作用后传输到can数据收发模块,can数据收发模块接收数据后传输给控制器模块,控制器模块根据转速设定值输出相应占空比的pwm波,并传输到光电隔离驱动模块,驱动水下机器人推进器动作;水下机器人推进器的霍尔传感器信号经过光电隔离驱动模块的隔离后传输到控制器模块,由控制器模块计算出推进器的实时转速;控制器模块以设定转速和实时转速为依据,运用pid算法计算出相应占空比的pwm波,调整水下机器人推进器的转速;所述温度检测模块紧贴光电隔离驱动模块的mos管,实时检测mos管的温度,mos管实时温度高于上限值时,控制器模块启动推进器保护动作;mos管的实时温度和推进器的实时转速通过can数据收发模块上传到水下机器人主控制器。

进一步的,所述数据隔离模块由数字隔离芯片构成隔离电路,用以隔离推进器与主控制器之间的can数据信号。

进一步的,所述can数据收发模块由can数据收发器芯片构成数据收发电路,完成can数据包的接收与发送,此处的can数据包包括实时温度和转速数据。

进一步的,所述光电隔离驱动模块由光电耦合器、spwm驱动电路和mos管构成隔离驱动电路,完成控制器模块与推进器之间的完全电气隔离以及推进器的驱动,抗干扰能力强,避免推进产生的干扰信号传输到控制装置。

进一步的,所述控制器模块由控制器芯片构成最小系统电路,完成can数据包的解析和打包处理、霍尔传感器信号的解算、控制算法的实现、pwm波的产生以及实时温度的计算。

本发明还公开了一种基于自适应pid控制的水下机器人推进器控制装置的控制方法,依次包括接收设定转速、实际转速的计算、控制算法的实现和pwm波的输出,具体包括以下步骤:

步骤一:水下机器人主控制器通过can数据收发模块将推进器的设定转速以及温度上限设定值放在can数据包中,控制器模块接收并解析指定的can数据包,将推进器设定转速以及温度上限设定值保存到固定空间;

步骤二:控制器模块采集推进器的霍尔传感器信号,实时计算推进器的实时转速,将推进器的实时转速保存到固定空间;

步骤三:控制器模块采集温度检测模块的温度信号,实时计算光电隔离驱动模块的mos管温度,将mos管的实时温度保存到固定空间;

步骤四:控制器模块根据设定转速和实时转速,运行pid算法,输出相应占空比的pwm波,pwm波传输到光电隔离驱动模块后,驱动推进器动作,当推进器转速超调过大或响应时间过长时,则控制模块启动自适应pid参数整定程序,运用参数逼近原则,对系统的pid参数进行重新调整,其中,超调范围和响应时间根据需求而定;

步骤五:温度检测模块实时检测光电隔离驱动模块的mos管度,当mos管温度高于上限值时,则说明推进器功率过高,发生故障,此时,控制器模块停止pwm波的输出,并将故障信息通过can通信发送到水下机器人主控制器,其余模块正常工作,当温度回到正常范围时,控制器模块正常输出pwm波,故障信号解除;

步骤六:控制器模块将mos管的实时温度以及推进器的实时转速放置到can数据包中,由can数据收发模块将数据包发送到水下机器人主控制器。

有益效果:与现有技术相比,本发明具有以下优点:

(1)本发明采用自适应pid控制算法,既有常规pid控制算法的结构简单、工作稳定、鲁棒性较强等优点,又具有根据误差大小自适应调整控制器参数、能够适应被控过程参数变化等优点;

(2)本发明采用can总线的通信方式,方便多个推进器控制装置的布线与连接,占用水下机器人主控制器的io口资源较少,且通信速度快,稳定性高;

(3)本发明采用光电隔离驱动模块,实现了主控制器与推进器之间的完全电气隔离,避免推进器的干扰信号传递到控制器模块,提高了控制器模块的稳定性和精度;

(4)本发明可以实时获得推进器的转速、温度等信息,为水下机器人主控制器实现各种算法提供数据支持,且具有故障保护功能,安全系数高;

(5)本发明所用器件较少,体积小,成本低,方便安装使用。

附图说明

图1为本发明的数据流向图;

图2为本发明的结构示意图。

具体实施方式

下面对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。

如图1所示,本发明一种基于自适应pid控制的水下机器人推进器控制装置,包括数据隔离模块1、can数据收发模块2、控制器模块3、光电隔离驱动模块4以及温度检测模块5。如图2所示,本发明中的整个控制装置放置于外壳(未图示)内,为了保证温度的准确测量,将温度传感器模块紧贴光电隔离驱动模块的mos管放置。数据隔离模块1与can数据收发模块2连接,can数据收发模块2与控制器模块3连接,控制器模块3同时与光电隔离驱动模块4、温度检测模块5连接。

其中,数据隔离模块1由数字隔离芯片构成隔离电路,完成推进器控制装置与水下机器人主控制器之间信号隔离。can数据收发模块2由can数据收发器芯片构成数据收发电路,完成can数据包的接收与发送。控制器模块3由控制器芯片构成最小系统电路,完成can数据包的解析和打包处理、霍尔传感器信号的解算、控制算法的实现、pwm波的产生以及实时温度的计算。光电隔离驱动模块4由光电耦合器、spwm驱动电路和mos管构成隔离驱动电路,完成控制装置与推进器之间的完全电气隔离以及推进器的驱动,抗干扰能力强,避免推进产生的干扰信号传输到控制装置。

水下机器人主控制器发送给推进器的设定转速经过数据隔离模块1的隔离作用后传输到can数据收发模块2,can数据收发模块2接收后传输给控制器模块3,控制器模块3根据转速设定值输出相应占空比的pwm波,传输到光电隔离驱动模块,驱动推进器动作;推进器的霍尔传感器信号经过光电隔离驱动模块4的隔离后传输到控制器模块3,由控制器模块计算出推进器的实时转速;控制器模块3以设定转速和实时转速为依据,运用pid算法计算出相应占空比的pwm波,调整推进器转速;所述温度检测模块5紧贴光电隔离驱动模块的mos管,实时检测其温度,温度高于上限值时,控制器模块3启动推进器保护动作;mos管实时温度与推进器实时转速通过can数据收发模块2上传到水下机器人的主控制器中。

上述基于自适应pid控制的水下机器人推进器控制装置的控制方法,具体步骤如下:

步骤一:水下机器人主控制器通过can通信的方式,将推进器的设定转速nd以及光电隔离驱动模块4的mos管的上限温度td放在can数据包中,can数据收发模块2接收后传输给控制器模块3,控制器模块3接收并解析指定的can数据包,经过can数据包处理31,将推nd、td保存到固定空间;

步骤二:控制器模块3采集推进器的霍尔传感器信号,经过霍尔数据处理35,实时计算推进器的实时转速n,将推进器的实时转速n保存到固定空间;

步骤三:控制器模3采集温度检测模块5的温度信号,经过温度数据处理34,实时计算光电隔离驱动模块4的mos管t,将mos管的实时温度t保存到固定空间;

步骤四:控制器模3根据设定转速nd和实时转速n,运行pid算法32,输出相应占空比的pwm波33,pwm波传输到光电隔离驱动模块4后,驱动推进器动作,当推进器转速超调过大或响应时间过长时,则控制模块进行pid参数自适应整定36,具体过程如下:

此处仅对pid参数自适应整定部分进行详述,常规pid算法部分不再累述。

n为推进器的实际转速,nd为推进器的理想转速,则系统的追踪误差可表达为式:

e=nd-n

由于只有转速信息,则滤波误差函数为式:

其中,a为一正定矩阵,a=at>0,则:

由于模型的不确定性和外部干扰未知,则系统不确定项如式:

pid控制算法如式:

其中,kp,ki,kd分别为比例、微分、积分增益。

上式亦可表示成如式:

τpid(e|θk)=θktξ(e)

其中,θkt=[kp,ki,kd],是可调参数向量是回归向量。θk在控制过程中,不断通过自适应机制自动调整。

pid控制器τpid(e|θk)可以不断逼近系统的不确定项f,因此,存在一最优参数向量θ*,使得近似误差有界,如式:

f=τpid(e|θ*)+δ(e)≤δ0

其中,θ*满足式:

其中,ωθ、ωe分别为θ、e的期望约束集。

由于f有界,则θ有界,取||θ*||f≤θmax,即θmax有界,||θ*||f为frobenius范数。此处仅需知道存在最优参数向量θ*,不需要知道该范数公式的确定值,它对控制器的设计不是必需的。

满足下式:

其中,分别为f、θ*的估计值。

则控制器设计如下式所示:

其中,ν为滤波器的输出,即控制模块输出的pwm波对应的占空比,γ为一正定矩阵。k=diag[k1,…,kn],β=diag[β1,…,βn],tanhν=diag[tanhν1,…,tanhνn]t,tanhν∈rn,k,β∈rn×n,k1,…,kn,β1,…,βn,α皆为正常数。

此时,将逼近得到的pid参数值保存起来,运用到pid算法32中,当再次出现转速超调过大或响应时间过长时,重复上述pid参数自适应整定过程。超调范围和响应时间可根据需求而定。

步骤五:温度检测模块5实时检测光电隔离驱动模块4的mos管温度t,当mos管温度t高于上限值td时,即t≥td时,则说明推进器功率过高,发生故障,此时,控制器模块3停止pwm波输出33,控制模块3的pwm波输出口持续低电平。当温度回到正常范围内的时候,控制器模块正常工作;

步骤六:控制器模块3将mos管的实时温度t以及推进器的实时转速n放置到can数据包中,由can数据收发模块2将数据包发送到水下机器人主控制器。

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