预测控制 c语言,广义预测控制.doc

广义预测控制(GPC)是一种鲁棒性强、能够有效地克服系统滞后、可应用于开环不稳定非最小相位系统的先进控制算法,但由于它需要Diophantine方程计算、矩阵求逆和最小二乘的递推求解,因此计算量很大,本文针对此缺陷提出四种不基于对象模型且实时性高的广义预测控制快速算法,为广义预测控制应用于实时性要求高的快速系统奠定了理论基础,具体研究工作如下。 (1)对参数未知单输入单输出线性系统提出一种参数自适应直接广义预测控制(DGPC)方法,该方法直接辨识广义预测控制器参数,即基于广义误差估计值对控制器参数和广义误差估计值中的未知向量进行自适应调整。然后利用中值定理将参数未知单输入单输出非线性系统线性化变为时变线性系统,在自适应辨识中对时变参数采用三次样条函数进行逼近,以此将单输入单输出线性系统直接广义预测控制方法推广到单输入单输出非线性系统。最后,将此方法推广到多输入多输出线性系统和非线性系统。 (2)对参数未知单输入单输出线性系统提出一种径向基函数(RBF)网络的直接广义预测控制方法,该方法利用RBF网络来逼近控制增量表达式,直接设计出广义预测控制器,并基于广义误差估计值对控制器参数即网络权值和广义误差估计值中的未知向量进行自适应调整。然后将单输入单输出线性系统RBF网络广义预测控制方法推广到单输入单输出非线性系统。最后,将此方法推广到多输入多输出线性系统和非线性系统。 (3)对参数未知单输入单输出线性系统提出一种模糊自适应的直接广义预测控制方法,该方法利用模糊逻辑来逼近控制增量表达式,直接设计出广义预测控制器,并基于广义误差估计值对控制器参数权值和广义误差估计值中的未知向量进行自适应调整。然后将单输入单输出线性系统模糊自适应广义预测控制方法推广到单输入单输出非线性系统。最后,将此方法推广到多输入多输出线性系统和非线性系统。 (4)提出一种基于灰色模型的多变量广义预测控制算法,该算法所需估计的参数少,而且多步情况下无需求解Diophantine方程,从而使计算量明显减少,极大的提高了实时性。 上述四种方法都不需要被控对象数学模型,因此为更好地解决含参数不确定性对象的广义预测控制问题提供了一种新思路,同时避免了Diophantine方程的在线求解及矩阵求逆。

广义预测控制需要实现四个功能:1、参数估计,可以用递推最小二乘法实现;2、使用丢番图方程对模型分解,分解为当前状态和历史输入对模型未来输出值的作用公式,未来输入对模型未来输出值的作用公式;推导过程过于繁琐,可以直接套用公式计算。3、参考轨迹生成,可以使用下面公式递推得到:r(n)=(1-k)*y(n-1)+k*(s-y(n-1)),其中k为时间常量,决定系统的调节速度,s为设定值。4、最优值计算,可以直接套用公式。实现过程:首先辨识系统模型,然后使用丢番图方程对辨识得到的模型进行分解,计算参考轨迹,最后把参考估计和分解后的系统模型带入公式得到最优输出值(其实是次优解),如此反复即可实现预测控制。

经典PID计算:可以使用增量式的公式:y(n)=y(n-1)+Kp*[e(n)-e(n-1)]+Ki*e(n)+Kd*[e(n)+e(n-2)-2*e(n-1)]

需要说明广义预测控制和PID控制输出都需要设置输出值限幅。

工业实现:可以用c语言编写程序作为控制软件的控制代码,硬件平台可以是一台工控机或者PLC,另外也有这方面的软件包,不过很贵。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值