本发明涉及桥式起重机控制领域,主要是一种桥式集装箱起重机摆动最优控制系统。能自动控制桥式集装箱起重机的装卸,使集装箱在移动过程中摆动能量最小,以提高港口集装箱装卸的安全性和效率。
背景技术:
集装箱的装卸对于港口运行至关重要。然而,随着装卸的高速化,集装箱到达指定位置时由于起重机的加减速和负载的提升动作以及风、摩擦引起的扰动等所产生的荷载残留摆动也随之增大,不仅降低了搬运精度、减缓了搬运的速度,也增加了事故发生的可能性。桥式边集装箱起重机作为港口集装箱船装卸的主要设备,其控制策略对于集装箱的安全高效装卸具有重要影响,所以根据具体参数和操作要求对桥式集装箱起重机进行自动最优摆动控制具有重要意义。
当前,国内桥式起重机的控制方法中很少采用最优控制理论及对应方法,控制器中的参数往往凭已有经验设定,装卸效率和安全性有待进一步提高。采用最优控制方法后的桥式起重机的控制品质和安全性可以得到保障,装卸效率可以进一步提高。
技术实现要素:
为了提高港口集装箱装卸的效率,本发明提供了一种桥式集装箱起重机摆动最优控制系统。
本发明的目的是通过以下技术方案来实现的:一种桥式集装箱起重机摆动最优控制系统,能自动控制桥式集装箱起重机的装卸,使集装箱在移动过程中摆动能量最小,以提港口高集装箱装卸的安全性和效率。由牵引电机、集装箱位置传感器、模数转换器、数模转换器、现场总线网络、分散控制系统(dcs)、控制室显示、牵引电机控制器构成。所述控制系统的运行过程包括:
步骤1):控制室工程师指定集装箱需要到达的位置坐标、装卸过程时间限制以及牵引电机的性能参数约束;
步骤2):dcs执行内部最优控制算法,获得使集装箱装卸过程摆动角最小的牵引电机速度控制策略;
步骤3):dcs将得到的电机速度控制策略转换为牵引电机的控制指令,通过现场总线网络发送给牵引电机控制器前段的数模转换器,使牵引电机控制器根据收到的控制指令控制牵引电机执行相应动作;
步骤4):集装箱位置传感器实时采集集装箱的位置信息,经过经过模数转换后用现场总线网络回送给dcs,并在主控室内显示,使工程师随时监控装卸过程。
所述的dcs,包括信息采集模块、初始化模块、微分代数方程组(ordinarydifferentialequations,简称ode)快速求解模块、梯度求解模块、非线性规划问题求解模块、控制指令输出模块。其中信息采集模块包括集装箱位置采集、牵引电机性能约束采集、装卸时间设置采集三个子模块,非线性规划(non-linearprogramming,简称nlp)问题求解模块包括寻优方向求解、寻优步长求解、寻优校正、nlp收敛性判断四个子模块。
港口集装箱集起重机的装卸过程的模型可以描述为:
其中,t表示时间,u(t)表示由各方向速度分量组成的速度向量;x(t)表示装卸过程的状态信息;f(x(t),u(t),t)是根据起重机的物理学原理建立的微分方程组。从该描述可以看出,集装箱的装卸过程可以用数学上的一组微分方程组来表示。
本系统的控制目标是使集装箱在装卸过程中摆动能量最小,因此目标函数表示为:
其中,t0表示装卸过程的起始时间,tf表示控制室工程师指定的装卸过程终值时间,j表示目标函数,l0(x(t),u(t),t)表示集装箱装卸过程中目标函数中的摆动角函数。
同时,桥式集装箱起重机受牵引电机性能参数影响和集装箱移动达到位置要求,存在约束条件,其函数表达为:
其中,e(x(t),u(t),t)表示集装箱达到位置约束函数,g(x(t),u(t),t)表示牵引电机性能参数约束函数。因此,桥式集装箱起重机摆动能量最小控制问题可以最终表示为:
本发明解决其技术问题所采用的技术方案是:在分散控制系统(dcs)中集成了最优控制算法,并以此为基础构建了一种最优控系统。
所述的控制系统的完整结构包括集装箱位置传感器21、模数转换器22、现场总线网络23、dcs24、控制室显示25、数模转换器26、牵引电机控制器27、牵引电机28。
所述的系统的运行过程包括:
步骤1):控制室工程师指定集装箱需要到达的位置坐标、装卸过程时间限制以及牵引电机的性能参数约束;
步骤2):dcs执行内部最优控制算法,获得使集装箱装卸过程摆动能量最小的牵引电机速度控制策略;
步骤3):dcs将得到的电机速度控制策略转换为牵引电机的控制指令,通过现场总线网络发送给牵引电机控制器前段的数模转换器,使牵引电机控制器根据收到的控制指令控制牵引电机执行相应动作;
步骤4):集装箱位置传感器实时采集集装箱的位置信息,经过经过模数转换后用现场总线网络回送给dcs,并在主控室内显示,使工程师随时监控装卸过程。
所述的dcs,包括信息采集模块、初始化模块、ode求解模块、梯度计算模块、nlp问题求解模块、控制指令输出模块。其中信息采集模块包括集装箱起止位置采集、性能指标采集、速度控制约束采集三个子模块,nlp问题求解模块包括寻优方向计算、寻优步长计算、nlp收敛性判断三个子模块。
所述的dcs,包括信息采集模块、初始化模块、ode快速求解模块、梯度求解模块、非线性规划问题求解模块、控制指令输出模块。其中信息采集模块包括集装箱位置采集、牵引电机性能约束采集、装卸时间设置采集三个子模块,nlp问题求解模块包括寻优方向求解、寻优步长求解、寻优校正、nlp收敛性判断四个子模块。
所述的dcs执行内部最优控制算法得到使集装箱装卸过程摆动角最小的牵引电机速度控制策略,运行步骤如下:
步骤1):信息采集模块31获取集装箱的初始位置和工程师指定的到达位置、牵引电机性能约束和装卸时间设置;
步骤2):初始化模块32开始运行,采用分段常量参数化,设置装卸过程的分段数ne、牵引电机控制量的参数化向量的初始猜测值u(k),设定计算精度tol,将迭代次数k置零;
步骤3):通过ode快速求解模块33获取本次迭代的状态信息x(k)(t)和目标函数值j(k)。
步骤4):通过梯度求解模块34获取本次迭代目标函数梯度信息dj(k)和约束条件梯度信息g(k);当k=0时跳过步骤5)直接执行步骤7);
步骤5):nlp问题求解模块35运行,通过nlp收敛性判断模块进行收敛性判断,如果本次迭代的目标函数值j(k)与上一次迭代的目标函数值j(k-1)的绝对值之差小于精度tol,则判断收敛性满足,并将本次迭代的牵引电机速度控制策略转换为电机的控制指令输出;如果收敛性不满足,则继续执行步骤6);
步骤6):用u(k),j(k),dj(k),g(k)的值覆盖上一次迭代u(k-1),j(k-1),dj(k-1),g(k-1)的值,并将迭代次数k加1;
步骤7):nlp问题求解模块35利用在步骤3)和4)中获得的目标函数值和梯度信息,求解寻优方向和寻优步长,并进行寻优修正,获得比u(k-1)更优的新的速度控制策略u(k)。该步骤执行完成后再次跳转至步骤3),直至nlp收敛性判断模块满足为止。
所述的ode快速求解模块,采用的是四级五阶龙格库塔方法,求解公式为:
其中,t表示时间,ti表示龙格库塔方法选择的积分时刻,h为积分步长,f(·)是描述状态微分方程的函数,k1、k2、k3、k4分别表示龙格库塔法积分过程中的4个节点的函数值,x(k)(ti)表示集装箱在第k次迭代中第ti时刻的状态信息,
所述的梯度求解模块,采用灵敏度轨迹方程法:
步骤1):定义第k次迭代的灵敏度轨迹方程γ(k)(t)为:
γ(k)(t)的求解公式为:
其中,t表示时间,
步骤2):采用四级五阶龙格库塔方法求解灵敏度轨迹方程γ(k)(t)在各积分时刻的值,求解公式为:
其中,t表示时间,ti表示龙格库塔方法选择的控制过程中某一时间点,h为积分步长,x(k)(ti)表示集装箱在第k次迭代中第ti时刻的状态信息,s(·)是描述灵敏度方程的函数,q1、q2、q3、q4分别表示龙格库塔法积分过程中的4个节点的函数值。
步骤3):根据得到的集装箱状态信息x(k)(t)和灵敏度轨迹方程γ(k)(t),求解目标函数的梯度信息dj(k):
其中,φ0(u(k),x(k)(t),tf)表示目标函数的终端约束项,l0(u(k),x(k)(t),t)表示目标函数的积分项。
步骤4):根据得到的集装箱状态信息x(k)(t)和灵敏度轨迹方程γ(k)(t),求解约束条件的梯度信息g(k):
其中,φj(u(k),x(k)(t),tf)表示第j个约束条件函数的终端约束项,lj(u(k),x(k)(t),t)表示第j个约束条件函数的积分项,m表示约束条件的个数。
所述的nlp问题求解模块,采用如下步骤实现:
步骤1):如果本次迭代的目标函数值j(k)与上一次迭代的目标函数值j(k-1)的绝对值之差小于精度tol,则判断收敛性满足,并将本次迭代的速度控制策略转换为牵引电机的控制指令输出;如果收敛性不满足,则继续执行步骤2);
步骤2):用u(k),j(k),dj(k),g(k)的值覆盖上一次迭代u(k-1),j(k-1),dj(k-1),g(k-1)的值,并将迭代次数k增加1;
步骤3):将电机速度控制策略u(k-1)作为向量空间中的某个点,记作p1,p1对应的目标函数值就是j(k-1);
步骤4):从点p1出发,根据选用的nlp算法和点p1处的目标函数梯度信息dj(k-1)和约束条件梯度信息g(k-1),构造向量空间中的一个寻优方向d(k-1)和步长α(k-1);
步骤5):通过式u(k)=u(k-1)+α(k-1)d(k-1)构造向量空间中对应u(k)的另外一个点p2;
步骤6):采用寻优校正得到向量空间中对应u(k)的另外一个点p3,使得p3对应的目标函数值j(k)比j(k-1)更优。
本发明的有益效果主要表现在:基于控制向量参数化方法的桥式集装箱起重机摆动最优控制系统,能够计算出桥式集装箱起重机最优的控制策略。采用四级五阶龙格库塔方法求解灵敏度轨迹方程组,可以得到较为精确的结果。给出了该问题的梯度信息的求解方法,可以加快问题的收敛速度,减少桥式集装箱起重机摆动的最优策略的计算时间。本发明可以实现桥式集装箱起重机集装箱装卸过程摆动能量最小,提港口高集装箱装卸的安全性和效率。
附图说明
图1是本发明的功能示意图;
图2是本发明的结构示意图;
图3是本发明dcs内部模块结构图;
图4是对实施例1获得的牵引电机速度控制策略图;
图5是图4中牵引电机速度控制策略对应的集装箱摆动角度变化图。
具体实施方式
如图1所示,港口集装箱集起重机的装卸过程的模型可以描述为:
其中,t表示时间,u(t)表示由各方向速度分量组成的速度向量;x(t)表示装卸过程的状态信息;f(x(t),u(t),t)是根据起重机的物理学原理建立的微分方程组。从该描述可以看出,集装箱的装卸过程可以用数学上的一组微分方程组来表示。
本系统的控制目标是使集装箱在装卸过程中摆动能量最小,因此目标函数表示为:
其中,t0表示装卸过程的起始时间,tf表示控制室工程师指定的装卸过程终值时间,j表示目标函数,l0(x(t),u(t),t)表示集装箱装卸过程中目标函数中的摆动角函数。
同时,桥式集装箱起重机受牵引电机性能参数影响和集装箱移动达到位置要求,存在约束条件,其函数表达为:
其中,e(x(t),u(t),t)表示集装箱达到位置约束函数,g(x(t),u(t),t)表示牵引电机性能参数约束函数。因此,桥式集装箱起重机摆动能量最小控制问题可以最终表示为:
本发明解决其技术问题所采用的技术方案是:在分散控制系统(dcs)中集成了最优控制算法,并以此为基础构建了一种最优控系统。
所述的控制系统的完整结构如图2所示,包括集装箱位置传感器21、模数转换器22、现场总线网络23、dcs24、控制室显示25、数模转换器26、牵引电机控制器27、牵引电机28。
所述的系统的运行过程包括:
步骤1):控制室工程师指定集装箱需要到达的位置坐标、装卸过程时间限制以及牵引电机的性能参数约束;
步骤2):dcs执行内部最优控制算法,获得使集装箱装卸过程摆动能量最小的牵引电机速度控制策略;
步骤3):dcs将得到的电机速度控制策略转换为牵引电机的控制指令,通过现场总线网络发送给牵引电机控制器前段的数模转换器,使牵引电机控制器根据收到的控制指令控制牵引电机执行相应动作;
步骤4):集装箱位置传感器实时采集集装箱的位置信息,经过经过模数转换后用现场总线网络回送给dcs,并在主控室内显示,使工程师随时监控装卸过程。
所述的dcs,包括信息采集模块、初始化模块、ode求解模块、梯度计算模块、nlp问题求解模块、控制指令输出模块。其中信息采集模块包括集装箱起止位置采集、性能指标采集、速度控制约束采集三个子模块,nlp问题求解模块包括寻优方向计算、寻优步长计算、nlp收敛性判断三个子模块。
所述的dcs,包括信息采集模块、初始化模块、ode快速求解模块、梯度求解模块、非线性规划问题求解模块、控制指令输出模块。其中信息采集模块包括集装箱位置采集、牵引电机性能约束采集、装卸时间设置采集三个子模块,nlp问题求解模块包括寻优方向求解、寻优步长求解、寻优校正、nlp收敛性判断四个子模块。
所述的dcs执行内部最优控制算法得到使集装箱装卸过程摆动角最小的牵引电机速度控制策略,运行步骤如下:
步骤1):信息采集模块31获取集装箱的初始位置和工程师指定的到达位置、牵引电机性能约束和装卸时间设置;
步骤2):初始化模块32开始运行,采用分段常量参数化,设置装卸过程的分段数ne、牵引电机控制量的参数化向量的初始猜测值u(k),设定计算精度tol,将迭代次数k置零;
步骤3):通过ode快速求解模块33获取本次迭代的状态信息x(k)(t)和目标函数值j(k)。
步骤4):通过梯度求解模块34获取本次迭代目标函数梯度信息dj(k)和约束条件梯度信息g(k);当k=0时跳过步骤5)直接执行步骤7);
步骤5):nlp问题求解模块35运行,通过nlp收敛性判断模块进行收敛性判断,如果本次迭代的目标函数值j(k)与上一次迭代的目标函数值j(k-1)的绝对值之差小于精度tol,则判断收敛性满足,并将本次迭代的牵引电机速度控制策略转换为电机的控制指令输出;如果收敛性不满足,则继续执行步骤6);
步骤6):用u(k),j(k),dj(k),g(k)的值覆盖上一次迭代u(k-1),j(k-1),dj(k-1),g(k-1)的值,并将迭代次数k加1;
步骤7):nlp问题求解模块35利用在步骤3)和4)中获得的目标函数值和梯度信息,求解寻优方向和寻优步长,并进行寻优修正,获得比u(k-1)更优的新的速度控制策略u(k)。该步骤执行完成后再次跳转至步骤3),直至nlp收敛性判断模块满足为止。
所述的ode快速求解模块,采用的是四级五阶龙格库塔方法,求解公式为:
其中,t表示时间,ti表示龙格库塔方法选择的积分时刻,h为积分步长,f(·)是描述状态微分方程的函数,k1、k2、k3、k4分别表示龙格库塔法积分过程中的4个节点的函数值,x(k)(ti)表示集装箱在第k次迭代中第ti时刻的状态信息,
所述的梯度求解模块,采用灵敏度轨迹方程法:
步骤1):定义第k次迭代的灵敏度轨迹方程γ(k)(t)为:
γ(k)(t)的求解公式为:
其中,t表示时间,
步骤2):采用四级五阶龙格库塔方法求解灵敏度轨迹方程γ(k)(t)在各积分时刻的值,求解公式为:
其中,t表示时间,ti表示龙格库塔方法选择的控制过程中某一时间点,h为积分步长,x(k)(ti)表示集装箱在第k次迭代中第ti时刻的状态信息,s(·)是描述灵敏度方程的函数,q1、q2、q3、q4分别表示龙格库塔法积分过程中的4个节点的函数值。
步骤3):根据得到的集装箱状态信息x(k)(t)和灵敏度轨迹方程γ(k)(t),求解目标函数的梯度信息dj(k):
其中,φ0(u(k),x(k)(t),tf)表示目标函数的终端约束项,l0(u(k),x(k)(t),t)表示目标函数的积分项。
步骤4):根据得到的集装箱状态信息x(k)(t)和灵敏度轨迹方程γ(k)(t),求解约束条件的梯度信息g(k):
其中,φj(u(k),x(k)(t),tf)表示第j个约束条件函数的终端约束项,lj(u(k),x(k)(t),t)表示第j个约束条件函数的积分项,m表示约束条件的个数。
所述的nlp问题求解模块,采用如下步骤实现:
步骤1):如果本次迭代的目标函数值j(k)与上一次迭代的目标函数值j(k-1)的绝对值之差小于精度tol,则判断收敛性满足,并将本次迭代的速度控制策略转换为牵引电机的控制指令输出;如果收敛性不满足,则继续执行步骤2);
步骤2):用u(k),j(k),dj(k),g(k)的值覆盖上一次迭代u(k-1),j(k-1),dj(k-1),g(k-1)的值,并将迭代次数k增加1;
步骤3):将电机速度控制策略u(k-1)作为向量空间中的某个点,记作p1,p1对应的目标函数值就是j(k-1);
步骤4):从点p1出发,根据选用的nlp算法和点p1处的目标函数梯度信息dj(k-1)和约束条件梯度信息g(k-1),构造向量空间中的一个寻优方向d(k-1)和步长α(k-1);
步骤5):通过式u(k)=u(k-1)+α(k-1)d(k-1)构造向量空间中对应u(k)的另外一个点p2;
步骤6):采用寻优校正得到向量空间中对应u(k)的另外一个点p3,使得p3对应的目标函数值j(k)比j(k-1)更优。
实施例1
用桥式起重机将集装箱在指定的时间范围内从货轮装卸到码头的转运货车上,要求在装卸过程中集装箱的摆动能量最小,结合起重机的性能约束条件得到该问题的数学模型为:
其中,j表示要最小化的集装箱的摆动能量目标函数,x1(t)表示集装箱的水平位置,x2(t)表示集装箱的垂直位置,x3(t)表示集装箱的摆动角度,x4(t)表示起重机的水平速度,x5(t)是起重机的垂直速度,x6(t)是集装箱的摆动角速度,u1(t)和u2(t)表示起重机水平和垂直方向的速度控制量。实施例1中,控制室工程师要求在10秒内集装箱从位置(0,22)移动到(10,14),为了获得使目标函数最小化的牵引电机速度控制策略,dcs运行最优控制算法,其运行过程如图3所示,执行步骤为:
步骤1):控制室工程师将集装箱的初始位置x(t0)=[0,22,0,0,0,0]、指定到达位置x(tf)=[10,14,0,0,0,0]、装卸时间设置tf=10和牵引电机的性能约束-2.5≤x4(t)≤2.5,-1≤x5(t)≤1,-2.83374≤u1(t)≤2.83374,-0.80865≤u2(t)≤0.71265输入信息采集模块31;
步骤2):初始化模块32开始运行,采用分段常量参数化,设置装卸过程的分段数为ne=50、牵引电机控制量的参数化向量的初始猜测值u(k)为0.5,设定计算精度tol为10-4,将迭代次数k置零;
步骤3):通过ode快速求解模块33获取本次迭代的状态信息x(k)(t)和目标函数值j(k)。
步骤4):通过梯度求解模块34获取本次迭代目标函数梯度信息dj(k)和约束条件梯度信息g(k);当k=0时跳过步骤5)直接执行步骤7);
步骤5):nlp问题求解模块35运行,通过nlp收敛性判断模块进行收敛性判断,如果本次迭代的目标函数值j(k)与上一次迭代的目标函数值j(k-1)的绝对值之差小于精度10-4,则判断收敛性满足,并将本次迭代的牵引电机速度控制策略转换为电机的控制指令输出;如果收敛性不满足,则继续执行步骤6);
步骤6):用u(k),j(k),dj(k),g(k)的值覆盖上一次迭代u(k-1),j(k-1),dj(k-1),g(k-1)的值,并将迭代次数k加1;
步骤7):nlp问题求解模块35利用在步骤3)和4)中获得的目标函数值和梯度信息,求解寻优方向和寻优步长,并进行寻优修正,获得比u(k-1)更优的新的速度控制策略u(k)。该步骤执行完成后再次跳转至步骤3),直至nlp收敛性判断模块满足为止。
所述的ode快速求解模块,采用的是四级五阶龙格库塔方法,求解公式为:
其中,t表示时间,ti表示龙格库塔方法选择的控制过程中某一时间点,x(k)(ti)表示集装箱在第k次迭代中第ti时刻的状态信息,f(·)是描述状态微分方程的函数,k1、k2、k3、k4分别表示龙格库塔法积分过程中的4个节点的函数值,积分步长h的确定公式为:
ti+1表示龙格库塔方法选择控制过程中ti的后一时间节点。
所述的梯度求解模块,采用灵敏度轨迹方程法:
步骤1):定义第k次迭代的灵敏度轨迹方程γ(k)(t)为:
γ(k)(t)的求解公式为:
其中,t表示时间,
步骤2):采用四级五阶龙格库塔方法求解灵敏度轨迹方程γ(k)(t)在各积分时刻的值,求解公式为:
其中,t表示时间,ti表示龙格库塔方法选择的控制过程中某一时间点,h为积分步长,x(k)(ti)表示集装箱在第k次迭代中第ti时刻的状态信息,s(·)是描述灵敏度方程的函数,q1、q2、q3、q4分别表示龙格库塔法积分过程中的4个节点的函数值。
步骤3):根据得到的集装箱状态信息x(k)(t)和灵敏度轨迹方程γ(k)(t),求解目标函数的梯度信息dj(k):
其中,φ0(u(k),x(k)(t),tf)表示目标函数的终端约束项,l0(u(k),x(k)(t),t)表示目标函数的积分项。
步骤4):根据得到的集装箱状态信息x(k)(t)和灵敏度轨迹方程γ(k)(t),求解约束条件的梯度信息g(k):
其中,φj(u(k),x(k)(t),tf)表示第j个约束条件函数的终端约束项,lj(u(k),x(k)(t),t)表示第j个约束条件函数的积分项,m表示约束条件的个数。
所述的nlp问题求解模块,采用如下步骤实现:
步骤1):如果本次迭代的目标函数值j(k)与上一次迭代的目标函数值j(k-1)的绝对值之差小于精度tol,则判断收敛性满足,并将本次迭代的速度控制策略转换为牵引电机的控制指令输出;如果收敛性不满足,则继续执行步骤2);
步骤2):用u(k),j(k),dj(k),g(k)的值覆盖上一次迭代u(k-1),j(k-1),dj(k-1),g(k-1)的值,并将迭代次数k增加1;
步骤3):将电机速度控制策略u(k-1)作为向量空间中的某个点,记作p1,p1对应的目标函数值就是j(k-1);
步骤4):从点p1出发,根据选用的nlp算法和点p1处的目标函数梯度信息dj(k-1)和约束条件梯度信息g(k-1),构造向量空间中的一个寻优方向d(k-1)和步长α(k-1);
步骤5):通过式u(k)=u(k-1)+α(k-1)d(k-1)构造向量空间中对应u(k)的另外一个点p2;
步骤6):采用寻优校正得到向量空间中对应u(k)的另外一个点p3,使得p3对应的目标函数值j(k)比j(k-1)更优。
最后,dcs将通过连续快速响应方法获得的速度控制策略转换为电机的控制指令,通过现场总线网络发送给电机控制器,使执行电机执行相应动作,同时用位置传感器实时采集集装箱的位置信息并回送给dcs,使控制室工程师随时掌握装卸过程。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。