您的位置:控制工程论坛网论坛 » 技术争鸣 » [分享]运动控制加速过程的设计方法,[求助]求减速过程的设计思路

yutian

yutian   |   当前状态:离线

总积分:63  2024年可用积分:0

注册时间: 2008-09-03

最后登录时间: 2008-12-11

空间 发短消息加为好友

[分享]运动控制加速过程的设计方法,[求助]求减速过程的设计思路

yutian  发表于 2009/3/26 7:34:02      1062 查看 2 回复  [上一主题]  [下一主题]

手机阅读

运动控制的设计要求:

逐级加速,逐级减速(各个位置、速度值可以在0到最大值范围内自行设定)
位置为 0 mm时,                 速度为     0 mm/s
位置在    0~200 mm 之间,  速度为   10 mm/s
位置在 200~500 mm 之间,  速度为   30 mm/s
位置在 500~800 mm 之间,  速度为   50 mm/s
位置在 800~1000 mm 之间,速度为   20 mm/s
位置为 1000 mm时,            速度为     0 mm/s

如下列表所示
位置(mm):      0        200         500         800        1000
速度(mm/s):   0   10          30           50          20       0   

===================================================  
本人已实现的加速过程的设计方法:

程序循环执行的周期:1ms

写入设定的位置N,速度N

开始:读取电子尺反馈的实际位置 S'n

判断实际位置是否到达位置N?

是,写入位置N+1,速度N+1,回到“开始:”处往下执行

否,则

结合前一周期(1ms)保存的实际位置值
计算出当前周期实际速度 Vn' = (S'n - S'n-1) / dt ( dt = 1 )

保存当前实际位置以备计算下一周期(1ms)的实际速度 

*******************************************************************
判断实际速度是否达到速度N?

是,则

根据匀速直线运动公式,计算出当前周期(1ms)应到达的理论位置 Sn = a * t

否,则

根据匀加速直线运动公式,计算出当前周期(1ms)应到达的理论位置 Sn = a * t^2 / 2
*******************************************************************
 
由当前理论位置和实际位置,计算出位置偏差 dSn = Sn - S'n

由当前实际速度和位置偏差,计算出相应的输出速度进行控制调节 Vn =Vn' + dSn / dt

为精确控制可以将PID算法应用于输出速度的计算上
====================================================

====================================================
以上是逐级加速过程的设计思路,由于逐级减速过程,本人能想到的方法因为涉及到每次减速前要先确定实际的减速距离,而实际减速距离的确定相当困难(设计要求实际速度必须在到达下一个指定位置时达到设定值,不能从到达下一个指定位置后开始减速),所以恳请论坛里的各位前辈和大侠不吝赐教,能够提供一个逐级减速的设计思路给在下,相互学习一下
====================================================

1楼 0 0 回复
总共 , 当前 /