一种动力定位推力系统智能推力分配方法.pdf

上传人:GAME****980 文档编号:6182728 上传时间:2019-05-17 格式:PDF 页数:14 大小:2.72MB
返回 下载 相关 举报
摘要
申请专利号:

CN201310705279.9

申请日:

2013.12.19

公开号:

CN103678816A

公开日:

2014.03.26

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 17/50申请日:20131219|||公开

IPC分类号:

G06F17/50; G06Q10/06(2012.01)I

主分类号:

G06F17/50

申请人:

上海交通大学

发明人:

张卫东; 赵亚东

地址:

200240 上海市闵行区东川路800号

优先权:

专利代理机构:

上海科盛知识产权代理有限公司 31225

代理人:

赵志远

PDF下载: PDF下载
内容摘要

本发明涉及一种动力定位推力系统智能推力分配方法,包括以下步骤:(1)推力系统配置参数输入;(2)数据准备与存储;(3)系统对准与优化建模;(4)优化问题求解;(5)推力分配决策输出。与现有技术相比,本发明具有实时性好、人机交互友好、人员工作量小、自动化程度高、决策效果好、能实现较好的推力分配等优点。

权利要求书

权利要求书
1.  一种动力定位推力系统智能推力分配方法,其特征在于,包括以下步骤:
(1)推力系统配置参数输入;
(2)数据准备与存储;
(3)系统对准与优化建模;
(4)优化问题求解;
(5)推力分配决策输出。

2.  根据权利要求1所述的智能推力分配方法,其特征在于,所述的推力系统配置参数输入具体为:
11)输入推力系统中推力设备的个数p;
12)对p个推力设备通过窗口方式进行参数设置,参数设置具体包括:
①是否可变方向;
②设备安装位置,即船体坐标系下的坐标值,存储为变量lk,x,lk,y;
③产生推力的上限值,存储为变量Tkmax;
④安装角度,即船体坐标系下的角度值,对于①中参数为“否”的推力设备,需要输入推力设备产生正推力方向的推力角度值αk;对于①中参数为“是”的推力设备,需要输入推力设备产生正推力方向的角度范围,存储为变量αkmin和αkmax;
⑤选择推力设备灵敏程度,包括高档、中档、低档和自定义,存储为变量εk;
⑥优化参数选择,包括默认和自定义,存储为变量Hk,Mk,Qk。

3.  根据权利要求2所述的智能推力分配方法,其特征在于,所述的数据准备与存储具体为:
21)自行根据参数将①中参数为“是”的推力设备进行编号为1,2,…,pr,将①中参数为“否”的推力设备进行编号为pr+1,…,p,同时将各推力设备变量与编号对应;
22)计算并存储推力系数矩阵B:B=[Br,Bf]
其中:
Br=10...1001...01-l1,yl1,x...-lpr,ylpr,xBf=cosαpr+1...cosαpsinαpr+1...sinαplpr+1...lp]]>
其中,

23)计算并存储4k组变量,mki,nki,其中k=1,2,…,pr,i=1,2,3,4:
Dk={α|αkmin≤α≤αkmax},k=1,2,…,pr,
Ft={α|(i-1)π2απ2i},i=1,2,3,4,]]>
Dki=Dk∩Fi,
mki=inf{tanα|α∈Dki},nki=sup{tanα|α∈Dki};
24)计算并存储组二次规划变量,每组编号为t,其中将t进行4进制转换:
t=(dprdpr-1…d1)4
将4进制的第(j-1)位存储为dj,其中j=1,2,…,pr;
第t组需计算和存储的约束变量为:

其中:
At=[A1,A2,t,A3,t]T,Bt=[b1,0]T,Ct=[0,C3]T
A1=[E,-E]T,b1=[b11,b12]T
b11=[22T1,...,22Tpr,T(pr+1)max,...,Tpmax]T,b12=-b11;]]>

A2,t=A2,t,1...A2,t,prA3,t=A3,t,1...A3,t,prC3=C3,1...C3,pr]]>
A2temp=(mkie2k-1-e2k)T(-nkie2k-1+e2k)TA2,t,k=A2temp,dk=0,3-A2temp,dk=1,2C3,k=-e2kTe2kT]]>
A3temp1=(-ϵke2k-1-e2k)T(-ϵke2k-1+e2k)TA3temp2=(ϵke2k-1-e2k)T(ϵke2k-1+e2k)TA3,t,k=A3temp1,dk=0,3A3temp2,dk=1,2]]>
其中ej表示单位矩阵E的第j列,其中At、Bt、Ct为计算过程的中间变量;
25)计算并存储优化参数
若优化参数选项为“默认”,则选择默认的Hdefault,Mdefault,Qdefault数值赋值给Hk,Mk,Qk;若优化参数选项为“自定义”,则按照推力设备的输入信息记录Hk,Mk,Qk。
然后存储如下的优化参数矩阵:
H=diag[H1,H1,...,Hpr,Hpr,Hpr+1,Hpr+2,...,Hp]]]>
M=diag[M1,M1,...,Mpr,Mpr,Mpr+1,Mpr+2,...,Mp]]]>
Q=diag[Q1,Q1,...,Qpr,Qpr,Qpr+1,Qpr+2,...,Qp]]]>


4.  根据权利要求3所述的智能推力分配方法,其特征在于,所述的系统对准与优化建模具体为:
31)获取推力设备的状态数据,包括每个推力设备当前的输出推力TRk(k=1,2,…,p)以及当前时刻推力输出的方向αRk(k=1,2,…,pr);
32)计算u0并存储,在系统运行的过程中需要不断刷新:
u0=[TR0cosαR0,TR0sinαR0,...,TRprcosαRpr,TRprsinαRpr,TR(pr+1),TR(pr+2),...,TRp]]]>
33)输入需要的总推力数据τc,其中τc=[Xc,Yc,Nc]T
其中Xc,Yc分别为推力系统在进退、横移方向所需推进力,Nc为艏摇方向所需推进力矩;
34)利用给定数据生成个子可行域上的凸二次规划问题,第t个二次规划问题的标准形式为:
minJt(u,s)=uTHu+(u-u0)TM(u-u0)+sTQs
s.t.    τc=Bu+s
Atu≤Bt+Ctu0
其中为松弛变量,表示控制输出和给定值之间的差值。

5.  根据权利要求4所述的智能推力分配方法,其特征在于,所述的子可行域上的凸二次规划的角度约束范围为0~90°,90°~180°,180°~270°,270°~360°的其中之一。

6.  根据权利要求4所述的智能推力分配方法,其特征在于,所述的优化问题求解具体为:
根据参数生成的个二次规划问题,每个问题会产生最优解ut,st,以及相应的指标值Jt;
比较这个二次规划的结果,选取:
tm=argmint∈IJt,I={1,2,...,4pr}]]>
并将作为最终的决策向量存储。

7.  根据权利要求6所述的智能推力分配方法,其特征在于,所述的推力分配决策输出具体为:
根据决策向量计算每个推进设备的角度和推力数值:
Tk=utmT(E2k-1+E2k)utm,k=1,2,...,prepr+kutm,k=pr+1,...,n]]>
其中ej表示单位矩阵E的第j列;Ej为正交投影矩阵,其中单位矩阵
推进设备角度计算,tm转换为4进制表示:
tm=(dprdpr-1…d1)4
根据条件:
tanαk=YkXk=e2kTutme2k-1Tutmαk∈Fi=dk+1]]>
其中Fi={α|(i-1)π2απ2i},i=1,2,3,4,]]>求解出αk的数值;
最终给出的动力分配方案为:
对于可旋转的推进器的动力分配决策为(Tk,αk),k=1,2,…,pr;对于固定的推进器的动力分配决策为Tk,k=pr+1,…,n。

8.  根据权利要求7所述的智能推力分配方法,其特征在于,所述的动力分配决策输出可选择多种总线输出方式,包括RS485\CAN\PROFIBUS总线模式,使其适应不同类型的动力定位推力系统总线类型。

说明书

说明书一种动力定位推力系统智能推力分配方法
技术领域
本发明涉及一种推力系统的推力分配方法,尤其是涉及一种动力定位推力系统智能推力分配方法。
背景技术
动力定位系统中,推力分配是指针对定位系统中的多个推进器,在允许的时间里,同时在考虑诸多物理约束的条件下,计算出安装在平台上的每个推进器应该在什么方向上产生多大的推力,而且找出可能的多个推力和方向组合中最好的那一种分配,并产生相应的执行指令。
目前国内动力定位中推力优化分配方法研究与系统设计的局限性主要体现在如下两个方面:
其一,体现在设计和开发以及维护成本方面。目前国外推力分配开发模式一般是,将推力分配作为动力定位系统的一部分交由企业或研究机构完成,而国内则一般引进国外技术。这种模式的缺点在于:定制周期长,定制成本高,只能适用与具体动力定位对象,设备维护后期系统维护困难,用户很难根据自己的需求进行推力分配等。
其二,体现在推力分配的优化模型建立过程中,由于推进器的约束和灵敏度的限制,传统的优化建模方法使得推力优化分配区域变成了非凸集(T.A.Johansen,T.I.Fossen,S.P.Berge,Constrained nonlinear control allocation with singularity avoidance using sequential quadratic programming,IEEE Transaction on Control Systems Technology,2004,12(1):211-216.),采用各种优化算法效果不甚理想,全局最优解的求解困难。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种实时性好、 人机交互友好、人员工作量小、自动化程度高、决策效果好、能实现较好的推力分配的动力定位推力系统智能推力分配方法。
本发明的目的可以通过以下技术方案来实现:
一种动力定位推力系统智能推力分配方法,其特征在于,包括以下步骤:
(1)推力系统配置参数输入;
(2)数据准备与存储;
(3)系统对准与优化建模;
(4)优化问题求解;
(5)推力分配决策输出。
所述的推力系统配置参数输入具体为:
11)输入推力系统中推力设备的个数p;
12)对p个推力设备通过窗口方式进行参数设置,参数设置具体包括:
①是否可变方向;
②设备安装位置,即船体坐标系下的坐标值,存储为变量lk,x,lk,y;
③产生推力的上限值,存储为变量Tkmax;
④安装角度,即船体坐标系下的角度值,对于①中参数为“否”的推力设备,需要输入推力设备产生正推力方向的推力角度值αk;对于①中参数为“是”的推力设备,需要输入推力设备产生正推力方向的角度范围,存储为变量αkmin和αkmax;
⑤选择推力设备灵敏程度,包括高档、中档、低档和自定义,存储为变量εk;
⑥优化参数选择,包括默认和自定义,存储为变量Hk,Mk,Qk。
所述的数据准备与存储具体为:
21)自行根据参数将①中参数为“是”的推力设备进行编号为1,2,…,pr,将①中参数为“否”的推力设备进行编号为pr+1,…,p,同时将各推力设备变量与编号对应;
22)计算并存储推力系数矩阵B:B=[Br,Bf]
其中:
Br=10...1001...01-l1,yl1,x...-lpr,ylpr,xBf=cosαpr+1...cosαpsinαpr+1...sinαplpr+1...lp]]>
其中,

23)计算并存储4k组变量,mki,nki,其中k=1,2,…,pr,i=1,2,3,4:
Dk={α|αkmin≤α≤αkmax},k=1,2,…,pr,
Ft={α|(i-1)π2απ2i},i=1,2,3,4,]]>
Dki=Dk∩Fi,
mki=inf{tanα|α∈Dki},nki=sup{tanα|α∈Dki};
24)计算并存储组二次规划变量,每组编号为t,其中将t进行4进制转换:
t=(dprdpr-1…d1)4
将4进制的第(j-1)位存储为dj,其中j=1,2,…,pr;
第t组需计算和存储的约束变量为:

其中:
At=[A1,A2,t,A3,t]T,Bt=[b1,0]T,Ct=[0,C3]T
A1=[E,-E]T,b1=[b11,b12]T
b11=[22T1,···,22Tpr,T(pr+1)max,···,Tpmax]T,b12=-b11;]]>

A2,t=A2,t,1...A2,t,prA3,t=A3,t,1...A3,t,prC3=C3,1...C3,pr]]>
A2temp=(mkie2k-1-e2k)T(-nkie2k-1+e2k)TA2,t,k=A2temp,dk=0,3-A2temp,dk=1,2C3,k=-e2kTe2kT]]>
A3temp1=(-ϵke2k-1-e2k)T(-ϵke2k-1+e2k)TA3temp2=(ϵke2k-1-e2k)T(ϵke2k-1+e2k)TA3,t,k=A3temp1,dk=0,3A3temp2,dk=1,2]]>
其中ej表示单位矩阵E的第j列,其中At、Bt、Ct为计算过程的中间变量;
25)计算并存储优化参数
若优化参数选项为“默认”,则选择默认的Hdefault,Mdefault,Qdefault数值赋值给Hk,Mk,Qk;若优化参数选项为“自定义”,则按照推力设备的输入信息记录Hk,Mk,Qk。
然后存储如下的优化参数矩阵:
H=diag[H1,H1,...,Hpr,Hpr,Hpr+1,Hpr+2,...,Hp]]]>
M=diag[M1,M1,...,Mpr,Mpr,Mpr+1,Mpr+2,...,Mp]]]>
Q=diag[Q1,Q1,...,Qpr,Qpr,Qpr+1,Qpr+2,...,Qp]]]>

所述的系统对准与优化建模具体为:
31)获取推力设备的状态数据,包括每个推力设备当前的输出推力TRk(k=1,2,…,p)以及当前时刻推力输出的方向αRk(k=1,2,…,pr);
32)计算u0并存储,在系统运行的过程中需要不断刷新:
u0=[TR0cosαR0,TR0sinαR0,...,TRprcosαRpr,TRprsinαRpr,TR(pr+1),TR(pr+2),...,TRp]]]>
33)输入需要的总推力数据τc,其中τc=[Xc,Yc,Nc]T
其中Xc,Yc分别为推力系统在进退、横移方向所需推进力,Nc为艏摇方向所需推进力矩;
34)利用给定数据生成个子可行域上的凸二次规划问题,第t个二次规划问题的标准形式为:
minJt(u,s)=uTHu+(u-u0)TM(u-u0)+sTQs
s.t.    τc=Bu+s
Atu≤Bt+Ctu0
其中为松弛变量,表示控制输出和给定值之间的差值。
所述的子可行域上的凸二次规划的角度约束范围为0~90°,90°~180°,180°~270°,270°~360°的其中之一。
所述的优化问题求解具体为:
根据参数生成的个二次规划问题,每个问题会产生最优解ut,st,以及相应的指标值Jt;
比较这个二次规划的结果,选取:
tm=argmint∈IJt,I={1,2,...,4pr}]]>
并将作为最终的决策向量存储。
所述的推力分配决策输出具体为:
根据决策向量计算每个推进设备的角度和推力数值:
Tk=utmT(E2k-1+E2k)utm,k=1,2,...,prepr+kutm,k=pr+1,...,n]]>
其中ej表示单位矩阵E的第j列;Ej为正交投影矩阵,其中单位矩阵
推进设备角度计算,tm转换为4进制表示:
tm=(dprdpr-1…d1)4
根据条件:
tanαk=YkXk=e2kTutme2k-1Tutmαk∈Fi=dk+1]]>
其中Fi={α|(i-1)π2απ2i},i=1,2,3,4,]]>求解出αk的数值;
最终给出的动力分配方案为:
对于可旋转的推进器的动力分配决策为(Tk,αk),k=1,2,…,pr;对于固定的推进器的动力分配决策为Tk,k=pr+1,…,n。
将Tk,αk存入指定内存区域中。Tk,αk指定内存区域中的数据随方法运行不断刷新,当在总线(CAN\RS485\PROFIBUS)中工作过程中遇到数据请求时,就将内存中Tk,αk的数据打包成CAN\RS485\PROFIBUS数据帧格式按照相应总线的通信协议发送上层或下层指定控制设备。
所述的动力分配决策输出可选择多种总线输出方式,包括RS485\CAN\PROFIBUS总线模式,使其适应不同类型的动力定位推力系统总线类型。
与现有技术相比,本发明具有以下优点:
1、使用本发明方法进行推力分配设计时,用户只需要了解具体动力定位推力系统配置参数,并将参数输入系统,推力分配部分具体实现由搭载算法的计算机或控制系统完成,使得用户不必具备推力分配设计经验和资历,缩短了开发周期和相应成本;同时,对于高要求的用户,可以通过理论分析或测试的方式修改或自定义优化参数,实现推力分配方案的定制,另外,这样的设计,同时也能解决在推力系统某推进装置更换后,与原推力分配设置不兼容的情况,提高了推力分配的灵活性,缩短了维护周期和相应成本。
2、本推力分配方法在解决这个问题的过程中,将原本的非凸集推力优化分配区域进行了分解,转化为有限个凸多面集上,从而将原二次规划问题转化为有限个在子可行域上的凸二次规划问题,再通过这些凸二次规划问题的求解与比较,计算 出全局最优推力分配方案,这种转化对求取推力分配的最优决策是十分必要的,解决了全局最优解求解困难的问题。
附图说明
图1为本发明的智能推力分配方法的流程图;
图2为本发明优化求解流程图;
图3是本发明配置参数输入界面;
图4是本发明针对具体实施案例用户推力系统配置参数输入图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
实施例
如图1和图2所示,一种动力定位推力系统智能推力分配方法,其特征在于,包括以下步骤:
(1)推力系统配置参数输入;
(2)数据准备与存储;
(3)系统对准与优化建模;
(4)优化问题求解;
(5)推力分配决策输出。
所述的推力系统配置参数输入具体为:
11)输入推力系统中推力设备的个数p;
12)对p个推力设备通过窗口方式进行参数设置,参数设置具体包括:
①是否可变方向;
②设备安装位置,即船体坐标系下的坐标值,存储为变量lk,x,lk,y;
③产生推力的上限值,存储为变量Tkmax;
④安装角度,即船体坐标系下的角度值,对于①中参数为“否”的推力设备,需要输入推力设备产生正推力方向的推力角度值αk;对于①中参数为“是”的推力设备,需要输入推力设备产生正推力方向的角度范围,存储为变量αkmin和αkmax;
⑤选择推力设备灵敏程度,包括高档、中档、低档和自定义,存储为变量εk;
⑥优化参数选择,包括默认和自定义,存储为变量Hk,Mk,Qk。
所述的数据准备与存储具体为:
21)自行根据参数将①中参数为“是”的推力设备进行编号为1,2,…,pr,将①中参数为“否”的推力设备进行编号为pr+1,…,p,同时将各推力设备变量与编号对应;
22)计算并存储推力系数矩阵B:B=[Br,Bf]
其中:
Br=10···1001···01-l1,yl1,x···-lpr,ylpr,xBf=cosαpr+1···cosαpsinαpr+1···sinαplpr+1···lp]]>
其中,

23)计算并存储4k组变量,mki,nki,其中k=1,2,…,pr,i=1,2,3,4:
Dk={α|αkmin≤α≤αkmax},k=1,2,…,pr,
Ft={α|(i-1)π2απ2i},i=1,2,3,4,]]>
Dki=Dk∩Fi,
mki=inf{tanα|α∈Dki},nki=sup{tanα|α∈Dki};
24)计算并存储组二次规划变量,每组编号为t,其中将t进行4进制转换:
t=(dprdpr-1…d1)4
将4进制的第(j-1)位存储为dj,其中j=1,2,…,pr;
第t组需计算和存储的约束变量为:

其中:
At=[A1,A2,t,A3,t]T,Bt=[b1,0]T,Ct=[0,C3]T
A1=[E,-E]T,b1=[b11,b12]T
b11=[22T1,...,22Tpr,T(pr+1)max,...,Tpmax]T,b12=-b11;]]>

A2,t=A2,t,1...A2,t,prA3,t=A3,t,1...A3,t,prC3=C3,1...C3,pr]]>
A2temp=(mkie2k-1-e2k)T(-nkie2k-1+e2k)TA2,t,k=A2temp,dk=0,3-A2temp,dk=1,2C3,k=-e2kTe2kT]]>
A3temp1=(-ϵke2k-1-e2k)T(-ϵke2k-1+e2k)TA3temp2=(ϵke2k-1-e2k)T(ϵke2k-1+e2k)TA3,t,k=A3temp1,dk=0,3A3temp2,dk=1,2]]>
其中ej表示单位矩阵E的第j列,
25)计算并存储优化参数
若优化参数选项为“默认”,则选择默认的Hdefault,Mdefault,Qdefault数值赋值给Hk,Nk,Qk;若优化参数选项为“自定义”,则按照推力设备的输入信息记录Hk,Mk,Qk。
然后存储如下的优化参数矩阵:
H=diag[H1,H1,...,Hpr,Hpr,Hpr+1,Hpr+2,...,Hp]]]>
M=diag[M1,M1,...,Mpr,Mpr,Mpr+1,Mpr+2,...,Mp]]]>
Q=diag[Q1,Q1,...,Qpr,Qpr,Qpr+1,Qpr+2,...,Qp]]]>

所述的系统对准与优化建模具体为:
31)获取推力设备的状态数据,包括每个推力设备当前的输出推力TRk以及当前时刻推力输出的方向αRk;
32)计算u0并存储,在系统运行的过程中需要不断刷新:
u0=[TR0cosαR0,TR0sinαR0,...,TRprcosαRpr,TRprsinαRpr,TR(pr+1),TR(pr+2),...,TRp]]]>
33)输入需要的总推力数据τc,其中τc=[Xc,Yc,Nc]T
其中Xc,Yc分别为推力系统在进退、横移方向所需推进力,Nc为艏摇方向所需推进力矩;
34)利用给定数据生成个子可行域上的凸二次规划问题,第t个二次规划问题的标准形式为:
minJt(u,s)=uTHu+(u-u0)TM(u-u0)+sTQs
s.t.    τc=Bu+s
Atu≤Bt+Ctu0
其中为松弛变量,表示控制输出和给定值之间的差值;
所述的子可行域上的凸二次规划的角度约束范围为0~90°,90°~180°,180°~270°,270°~360°的其中之一。
所述的优化问题求解具体为:
利用在线二次规划算法或离线二次规划算法,根据参数生成的个二次规划问题,每个问题会产生最优解ut,st,以及相应的指标值Jt;
比较这个二次规划的结果,选取:
tm=argmint∈IJt,I={1,2,...,4pr}]]>
并将作为最终的决策向量存储。
所述的推力分配决策输出具体为:
根据决策向量计算每个推进设备的角度和推力数值:
Tk=utmT(E2k-1+E2k)utm,k=1,2,...,prepr+kutm,k=pr+1,...,n]]>
其中ej表示单位矩阵E的第j列;Ej为正交投影矩阵,其中单位矩阵
推进设备角度计算,tm转换为4进制表示:
tm=(dprdpr-1…d1)4
根据条件:
tanαk=YkXk=e2kTutme2k-1Tutmαk∈Fi=dk+1]]>
其中Fi={α|(i-1)π2απ2i},i=1,2,3,4,]]>求解出αk的数值;
最终给出的动力分配方案为:
对于可旋转的推进器的动力分配决策为(Tk,αk),k=1,2,…,pr;对于固定的推进器的动力分配决策为Tk,k=pr+1,…,n。
某动力定位对象有3个推进装置:其中2个为带舵的螺旋桨,1个为固定的槽道推进器;推力装置在船体坐标下的坐标为(-30,10),(30,10),(20,10);带舵的螺旋桨推力装置产生推力的角度范围分别为[150°,210°],[150°,210°];槽道推进器的安装角度为90°,需要寻找尽可能减小能耗和保护设备的推力分配方案。
用户按照图4输入模型参数(有经验的用户可进一步修改默认参数后),确定无误后,单击图4界面中的运行按钮,即进行优化计算,计算出适用于该动力定位对象的推力分配方案。

一种动力定位推力系统智能推力分配方法.pdf_第1页
第1页 / 共14页
一种动力定位推力系统智能推力分配方法.pdf_第2页
第2页 / 共14页
一种动力定位推力系统智能推力分配方法.pdf_第3页
第3页 / 共14页
点击查看更多>>
资源描述

《一种动力定位推力系统智能推力分配方法.pdf》由会员分享,可在线阅读,更多相关《一种动力定位推力系统智能推力分配方法.pdf(14页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 103678816 A (43)申请公布日 2014.03.26 CN 103678816 A (21)申请号 201310705279.9 (22)申请日 2013.12.19 G06F 17/50(2006.01) G06Q 10/06(2012.01) (71)申请人 上海交通大学 地址 200240 上海市闵行区东川路 800 号 (72)发明人 张卫东 赵亚东 (74)专利代理机构 上海科盛知识产权代理有限 公司 31225 代理人 赵志远 (54) 发明名称 一种动力定位推力系统智能推力分配方法 (57) 摘要 本发明涉及一种动力定位推力系统智能推力 分配。

2、方法, 包括以下步骤 : (1) 推力系统配置参数 输入 ; (2) 数据准备与存储 ; (3) 系统对准与优化 建模 ; (4)优化问题求解 ; (5)推力分配决策输出。 与现有技术相比, 本发明具有实时性好、 人机交互 友好、 人员工作量小、 自动化程度高、 决策效果好、 能实现较好的推力分配等优点。 (51)Int.Cl. 权利要求书 3 页 说明书 8 页 附图 2 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书3页 说明书8页 附图2页 (10)申请公布号 CN 103678816 A CN 103678816 A 1/3 页 2 1. 一种动力定位推力系。

3、统智能推力分配方法, 其特征在于, 包括以下步骤 : (1) 推力系统配置参数输入 ; (2) 数据准备与存储 ; (3) 系统对准与优化建模 ; (4) 优化问题求解 ; (5) 推力分配决策输出。 2. 根据权利要求 1 所述的智能推力分配方法, 其特征在于, 所述的推力系统配置参数 输入具体为 : 11) 输入推力系统中推力设备的个数 p ; 12) 对 p 个推力设备通过窗口方式进行参数设置, 参数设置具体包括 : 是否可变方向 ; 设备安装位置, 即船体坐标系下的坐标值, 存储为变量 lk, x, lk, y; 产生推力的上限值, 存储为变量 Tkmax; 安装角度, 即船体坐标系下。

4、的角度值, 对于中参数为 “否” 的推力设备, 需要输入推 力设备产生正推力方向的推力角度值 k; 对于中参数为 “是” 的推力设备, 需要输入推力 设备产生正推力方向的角度范围, 存储为变量 kmin和 kmax; 选择推力设备灵敏程度, 包括高档、 中档、 低档和自定义, 存储为变量 k; 优化参数选择, 包括默认和自定义, 存储为变量 Hk, Mk, Qk。 3. 根据权利要求 2 所述的智能推力分配方法, 其特征在于, 所述的数据准备与存储具 体为 : 21) 自行根据参数将中参数为 “是” 的推力设备进行编号为 1, 2, pr, 将中参数 为 “否” 的推力设备进行编号为 pr+1。

5、, p, 同时将各推力设备变量与编号对应 ; 22) 计算并存储推力系数矩阵 B : B=Br, Bf 其中 : 其中, 23) 计算并存储 4k 组变量, mki, nki, 其中 k 1, 2, pr, i=1, 2, 3, 4 : Dk=|kmin kmax, k 1, 2, pr, Dki=Dk Fi, mki=inftan| Dki, nki=suptan| Dki ; 24) 计算并存储组二次规划变量, 每组编号为 t, 其中将 t 进行 4 进制 转换 : t=(dprdpr-1d1)4 权 利 要 求 书 CN 103678816 A 2 2/3 页 3 将 4 进制的第 (j。

6、-1) 位存储为 dj, 其中 j=1, 2, pr; 第 t 组需计算和存储的约束变量为 : 其中 : At=A1, A2, t, A3, tT, Bt=b1, 0T, Ct=0, C3T A1=E, -ET, b1=b11, b12T 其中 ej表示单位矩阵 E 的第 j 列,其中 At、 Bt、 Ct为计算过程的中间变量 ; 25) 计算并存储优化参数 若优化参数选项为 “默认” , 则选择默认的 Hdefault, Mdefault, Qdefault数值赋值给 Hk, Mk, Qk; 若优化参数选项为 “自定义” , 则按照推力设备的输入信息记录 Hk, Mk, Qk。 然后存储如下。

7、的优化参数矩阵 : 。 4. 根据权利要求 3 所述的智能推力分配方法, 其特征在于, 所述的系统对准与优化建 模具体为 : 31) 获取推力设备的状态数据, 包括每个推力设备当前的输出推力 TRk(k=1, 2, p) 以及当前时刻推力输出的方向 Rk(k=1, 2, pr) ; 32) 计算 u0并存储, 在系统运行的过程中需要不断刷新 : 33) 输入需要的总推力数据 c, 其中 c=Xc, Yc, NcT 其中 Xc, Yc分别为推力系统在进退、 横移方向所需推进力, Nc为艏摇方向所需推进力 矩 ; 34) 利用给定数据生成个子可行域上的凸二次规划问题, 第 t 个二次规划问题的标 。

8、准形式为 : 权 利 要 求 书 CN 103678816 A 3 3/3 页 4 minJt(u, s)=uTHu+(u-u0)TM(u-u0)+sTQs s.t. c=Bu+s Atu Bt+Ctu0 其中为松弛变量, 表示控制输出和给定值之间的差值。 5. 根据权利要求 4 所述的智能推力分配方法, 其特征在于, 所述的子可行域上的凸二 次规划的角度约束范围为 0 90, 90 180, 180 270, 270 360的其中之 一。 6. 根据权利要求 4 所述的智能推力分配方法, 其特征在于, 所述的优化问题求解具体 为 : 根据参数生成的个二次规划问题, 每个问题会产生最优解 ut。

9、, st, 以及相应的指标值 Jt; 比较这个二次规划的结果, 选取 : 并将作为最终的决策向量存储。 7. 根据权利要求 6 所述的智能推力分配方法, 其特征在于, 所述的推力分配决策输出 具体为 : 根据决策向量计算每个推进设备的角度和推力数值 : 其中ej表示单位矩阵E的第j列 ; Ej为正交投影矩阵,其中单位矩阵 推进设备角度计算, tm转换为 4 进制表示 : tm=(dprdpr-1d1)4 根据条件 : 其中求解出 k的数值 ; 最终给出的动力分配方案为 : 对于可旋转的推进器的动力分配决策为 (Tk, k), k=1, 2, pr; 对于固定的推进器的 动力分配决策为 Tk, 。

10、k=pr+1, n。 8. 根据权利要求 7 所述的智能推力分配方法, 其特征在于, 所述的动力分配决策输出 可选择多种总线输出方式, 包括 RS485CANPROFIBUS 总线模式, 使其适应不同类型的动力 定位推力系统总线类型。 权 利 要 求 书 CN 103678816 A 4 1/8 页 5 一种动力定位推力系统智能推力分配方法 技术领域 0001 本发明涉及一种推力系统的推力分配方法, 尤其是涉及一种动力定位推力系统智 能推力分配方法。 背景技术 0002 动力定位系统中, 推力分配是指针对定位系统中的多个推进器, 在允许的时间里, 同时在考虑诸多物理约束的条件下, 计算出安装在。

11、平台上的每个推进器应该在什么方向上 产生多大的推力, 而且找出可能的多个推力和方向组合中最好的那一种分配, 并产生相应 的执行指令。 0003 目前国内动力定位中推力优化分配方法研究与系统设计的局限性主要体现在如 下两个方面 : 0004 其一, 体现在设计和开发以及维护成本方面。 目前国外推力分配开发模式一般是, 将推力分配作为动力定位系统的一部分交由企业或研究机构完成, 而国内则一般引进国外 技术。 这种模式的缺点在于 : 定制周期长, 定制成本高, 只能适用与具体动力定位对象, 设备 维护后期系统维护困难, 用户很难根据自己的需求进行推力分配等。 0005 其二, 体现在推力分配的优化模。

12、型建立过程中, 由于推进器的约束和灵敏度 的限制, 传统的优化建模方法使得推力优化分配区域变成了非凸集 (T.A.Johansen, T.I.Fossen, S.P.Berge, Constrained nonlinear control allocation with singularity avoidance using sequential quadratic programming, IEEE Transaction on Control Systems Technology, 2004, 12(1) : 211-216.), 采用各种优化算法效果不甚理想, 全局最优 解的求解困难。 。

13、发明内容 0006 本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种实时性好、 人机 交互友好、 人员工作量小、 自动化程度高、 决策效果好、 能实现较好的推力分配的动力定位 推力系统智能推力分配方法。 0007 本发明的目的可以通过以下技术方案来实现 : 0008 一种动力定位推力系统智能推力分配方法, 其特征在于, 包括以下步骤 : 0009 (1) 推力系统配置参数输入 ; 0010 (2) 数据准备与存储 ; 0011 (3) 系统对准与优化建模 ; 0012 (4) 优化问题求解 ; 0013 (5) 推力分配决策输出。 0014 所述的推力系统配置参数输入具体为 : 001。

14、5 11) 输入推力系统中推力设备的个数 p ; 0016 12) 对 p 个推力设备通过窗口方式进行参数设置, 参数设置具体包括 : 说 明 书 CN 103678816 A 5 2/8 页 6 0017 是否可变方向 ; 0018 设备安装位置, 即船体坐标系下的坐标值, 存储为变量 lk, x, lk, y; 0019 产生推力的上限值, 存储为变量 Tkmax; 0020 安装角度, 即船体坐标系下的角度值, 对于中参数为 “否” 的推力设备, 需要输 入推力设备产生正推力方向的推力角度值 k; 对于中参数为 “是” 的推力设备, 需要输入 推力设备产生正推力方向的角度范围, 存储为变。

15、量 kmin和 kmax; 0021 选择推力设备灵敏程度, 包括高档、 中档、 低档和自定义, 存储为变量 k; 0022 优化参数选择, 包括默认和自定义, 存储为变量 Hk, Mk, Qk。 0023 所述的数据准备与存储具体为 : 0024 21) 自行根据参数将中参数为 “是” 的推力设备进行编号为 1, 2, pr, 将中 参数为 “否” 的推力设备进行编号为 pr+1, p, 同时将各推力设备变量与编号对应 ; 0025 22) 计算并存储推力系数矩阵 B : B=Br, Bf 0026 其中 : 0027 0028 其中, 0029 0030 23) 计算并存储 4k 组变量,。

16、 mki, nki, 其中 k 1, 2, pr, i 1, 2, 3, 4 : 0031 Dk=|kmin kmax, k=1, 2, pr, 0032 0033 Dki=Dk Fi, 0034 mki inftan| Dki, nki=suptan| Dki ; 0035 24)计算并存储组二次规划变量, 每组编号为t, 其中将t进行4进 制转换 : 0036 t=(dprdpr-1d1)4 0037 将 4 进制的第 (j-1) 位存储为 dj, 其中 j 1, 2, pr; 0038 第 t 组需计算和存储的约束变量为 : 0039 0040 其中 : 0041 At=A1, A2, 。

17、t, A3, tT, Bt=b1, 0T, Ct=0, C3T 0042 A1=E, -ET, b1 b11, b12T 0043 0044 说 明 书 CN 103678816 A 6 3/8 页 7 0045 0046 0047 0048 其中 ej表示单位矩阵 E 的第 j 列,其中 At、 Bt、 Ct为计算过程的中间变量 ; 0049 25) 计算并存储优化参数 0050 若优化参数选项为 “默认” , 则选择默认的 Hdefault, Mdefault, Qdefault数值赋值给 Hk, Mk, Qk; 若优化参数选项为 “自定义” , 则按照推力设备的输入信息记录 Hk, Mk。

18、, Qk。 0051 然后存储如下的优化参数矩阵 : 0052 0053 0054 0055 。 0056 所述的系统对准与优化建模具体为 : 0057 31) 获取推力设备的状态数据, 包括每个推力设备当前的输出推力 TRk(k=1, 2, , p) 以及当前时刻推力输出的方向 Rk(k=1, 2, pr) ; 0058 32) 计算 u0并存储, 在系统运行的过程中需要不断刷新 : 0059 0060 33) 输入需要的总推力数据 c, 其中 c=Xc, Yc, NcT 0061 其中 Xc, Yc分别为推力系统在进退、 横移方向所需推进力, Nc为艏摇方向所需推进 力矩 ; 0062 3。

19、4) 利用给定数据生成个子可行域上的凸二次规划问题, 第 t 个二次规划问题 的标准形式为 : 0063 minJt(u, s) uTHu+(u-u0)TM(u-u0)+sTQs 0064 s.t. c=Bu+s 0065 Atu Bt+Ctu0 0066 其中为松弛变量, 表示控制输出和给定值之间的差值。 0067 所述的子可行域上的凸二次规划的角度约束范围为 0 90, 90 180, 180 270, 270 360的其中之一。 0068 所述的优化问题求解具体为 : 0069 根据参数生成的个二次规划问题, 每个问题会产生最优解 ut, st, 以及相应的指 标值 Jt; 说 明 书 。

20、CN 103678816 A 7 4/8 页 8 0070 比较这个二次规划的结果, 选取 : 0071 0072 并将作为最终的决策向量存储。 0073 所述的推力分配决策输出具体为 : 0074 根据决策向量计算每个推进设备的角度和推力数值 : 0075 0076 其中 ej表示单位矩阵 E 的第 j 列 ; Ej为正交投影矩阵,其中单位矩阵 0077 推进设备角度计算, tm转换为 4 进制表示 : 0078 tm=(dprdpr-1d1)4 0079 根据条件 : 0080 0081 其中求解出 k的数值 ; 0082 最终给出的动力分配方案为 : 0083 对于可旋转的推进器的动力分。

21、配决策为 (Tk, k), k=1, 2, pr; 对于固定的推进 器的动力分配决策为 Tk, k=pr+1, n。 0084 将 Tk, k存入指定内存区域中。Tk, k指定内存区域中的数据随方法运行不断刷 新, 当在总线 (CANRS485PROFIBUS) 中工作过程中遇到数据请求时, 就将内存中 Tk, k的 数据打包成 CANRS485PROFIBUS 数据帧格式按照相应总线的通信协议发送上层或下层指 定控制设备。 0085 所述的动力分配决策输出可选择多种总线输出方式, 包括 RS485CANPROFIBUS 总线模式, 使其适应不同类型的动力定位推力系统总线类型。 0086 与现。

22、有技术相比, 本发明具有以下优点 : 0087 1、 使用本发明方法进行推力分配设计时, 用户只需要了解具体动力定位推力系统 配置参数, 并将参数输入系统, 推力分配部分具体实现由搭载算法的计算机或控制系统完 成, 使得用户不必具备推力分配设计经验和资历, 缩短了开发周期和相应成本 ; 同时, 对于 高要求的用户, 可以通过理论分析或测试的方式修改或自定义优化参数, 实现推力分配方 案的定制, 另外, 这样的设计, 同时也能解决在推力系统某推进装置更换后, 与原推力分配 设置不兼容的情况, 提高了推力分配的灵活性, 缩短了维护周期和相应成本。 0088 2、 本推力分配方法在解决这个问题的过程。

23、中, 将原本的非凸集推力优化分配区域 进行了分解, 转化为有限个凸多面集上, 从而将原二次规划问题转化为有限个在子可行域 上的凸二次规划问题, 再通过这些凸二次规划问题的求解与比较, 计算出全局最优推力分 配方案, 这种转化对求取推力分配的最优决策是十分必要的, 解决了全局最优解求解困难 说 明 书 CN 103678816 A 8 5/8 页 9 的问题。 附图说明 0089 图 1 为本发明的智能推力分配方法的流程图 ; 0090 图 2 为本发明优化求解流程图 ; 0091 图 3 是本发明配置参数输入界面 ; 0092 图 4 是本发明针对具体实施案例用户推力系统配置参数输入图。 具体。

24、实施方式 0093 下面结合附图和具体实施例对本发明进行详细说明。 0094 实施例 0095 如图 1 和图 2 所示, 一种动力定位推力系统智能推力分配方法, 其特征在于, 包括 以下步骤 : 0096 (1) 推力系统配置参数输入 ; 0097 (2) 数据准备与存储 ; 0098 (3) 系统对准与优化建模 ; 0099 (4) 优化问题求解 ; 0100 (5) 推力分配决策输出。 0101 所述的推力系统配置参数输入具体为 : 0102 11) 输入推力系统中推力设备的个数 p ; 0103 12) 对 p 个推力设备通过窗口方式进行参数设置, 参数设置具体包括 : 0104 是否。

25、可变方向 ; 0105 设备安装位置, 即船体坐标系下的坐标值, 存储为变量 lk, x, lk, y; 0106 产生推力的上限值, 存储为变量 Tkmax; 0107 安装角度, 即船体坐标系下的角度值, 对于中参数为 “否” 的推力设备, 需要输 入推力设备产生正推力方向的推力角度值 k; 对于中参数为 “是” 的推力设备, 需要输入 推力设备产生正推力方向的角度范围, 存储为变量 kmin和 kmax; 0108 选择推力设备灵敏程度, 包括高档、 中档、 低档和自定义, 存储为变量 k; 0109 优化参数选择, 包括默认和自定义, 存储为变量 Hk, Mk, Qk。 0110 所述。

26、的数据准备与存储具体为 : 0111 21) 自行根据参数将中参数为 “是” 的推力设备进行编号为 1, 2, pr, 将中 参数为 “否” 的推力设备进行编号为 pr+1, p, 同时将各推力设备变量与编号对应 ; 0112 22) 计算并存储推力系数矩阵 B : B=Br, Bf 0113 其中 : 0114 0115 其中, 说 明 书 CN 103678816 A 9 6/8 页 10 0116 0117 23) 计算并存储 4k 组变量, mki, nki, 其中 k=1, 2, pr, i 1, 2, 3, 4 : 0118 Dk=|kmin kmax, k=1, 2, pr, 0。

27、119 0120 Dki=Dk Fi, 0121 mki inftan| Dki, nki=suptan| Dki ; 0122 24)计算并存储组二次规划变量, 每组编号为t, 其中将t进行4进 制转换 : 0123 t=(dprdpr-1d1)4 0124 将 4 进制的第 (j-1) 位存储为 dj, 其中 j=1, 2, pr; 0125 第 t 组需计算和存储的约束变量为 : 0126 0127 其中 : 0128 At A1, A2, t, A3, tT, Bt=b1, 0T, Ct=0, C3T 0129 A1=E, -ET, b1=b11, b12T 0130 0131 013。

28、2 0133 0134 0135 其中 ej表示单位矩阵 E 的第 j 列, 0136 25) 计算并存储优化参数 0137 若优化参数选项为 “默认” , 则选择默认的 Hdefault, Mdefault, Qdefault数值赋值给 Hk, Nk, Qk; 若优化参数选项为 “自定义” , 则按照推力设备的输入信息记录 Hk, Mk, Qk。 0138 然后存储如下的优化参数矩阵 : 0139 0140 0141 说 明 书 CN 103678816 A 10 7/8 页 11 0142 。 0143 所述的系统对准与优化建模具体为 : 0144 31) 获取推力设备的状态数据, 包括每。

29、个推力设备当前的输出推力 TRk以及当前时 刻推力输出的方向 Rk; 0145 32) 计算 u0并存储, 在系统运行的过程中需要不断刷新 : 0146 0147 33) 输入需要的总推力数据 c, 其中 c=Xc, Yc, NcT 0148 其中 Xc, Yc分别为推力系统在进退、 横移方向所需推进力, Nc为艏摇方向所需推进 力矩 ; 0149 34) 利用给定数据生成个子可行域上的凸二次规划问题, 第 t 个二次规划问题 的标准形式为 : 0150 minJt(u, s)=uTHu+(u-u0)TM(u-u0)+sTQs 0151 s.t. c Bu+s 0152 Atu Bt+Ctu0。

30、 0153 其中为松弛变量, 表示控制输出和给定值之间的差值 ; 0154 所述的子可行域上的凸二次规划的角度约束范围为 0 90, 90 180, 180 270, 270 360的其中之一。 0155 所述的优化问题求解具体为 : 0156 利用在线二次规划算法或离线二次规划算法, 根据参数生成的个二次规划问 题, 每个问题会产生最优解 ut, st, 以及相应的指标值 Jt; 0157 比较这个二次规划的结果, 选取 : 0158 0159 并将作为最终的决策向量存储。 0160 所述的推力分配决策输出具体为 : 0161 根据决策向量计算每个推进设备的角度和推力数值 : 0162 01。

31、63 其中 ej表示单位矩阵 E 的第 j 列 ; Ej为正交投影矩阵,其中单位矩阵 0164 推进设备角度计算, tm转换为 4 进制表示 : 0165 tm=(dprdpr-1d1)4 0166 根据条件 : 0167 0168 其中求解出 k的数值 ; 说 明 书 CN 103678816 A 11 8/8 页 12 0169 最终给出的动力分配方案为 : 0170 对于可旋转的推进器的动力分配决策为 (Tk, k), k=1, 2, pr; 对于固定的推进 器的动力分配决策为 Tk, k=pr+1, n。 0171 某动力定位对象有 3 个推进装置 : 其中 2 个为带舵的螺旋桨, 1。

32、 个为固定的槽道推 进器 ; 推力装置在船体坐标下的坐标为 (-30, 10), (30, 10), (20, 10) ; 带舵的螺旋桨推力装 置产生推力的角度范围分别为 150, 210 , 150, 210 ; 槽道推进器的安装角度为 90, 需要寻找尽可能减小能耗和保护设备的推力分配方案。 0172 用户按照图4输入模型参数(有经验的用户可进一步修改默认参数后), 确定无误 后, 单击图 4 界面中的运行按钮, 即进行优化计算, 计算出适用于该动力定位对象的推力分 配方案。 说 明 书 CN 103678816 A 12 1/2 页 13 图 1 图 2 说 明 书 附 图 CN 103678816 A 13 2/2 页 14 图 3 图 4 说 明 书 附 图 CN 103678816 A 14 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1