• 发文
  • 评论
  • 微博
  • 空间
  • 微信

液压伺服运动控制使用PLC?

液压传动与控制 2019-08-19 13:59 发文

作者:Peter Natchey,Delta Computer System

译者:腾益登


只有比例环节的控制器响应都相对较慢,而为了增加响应常常导致振荡运动。误差衰减的时间常数太长,带宽不够高都不能较好实现实时跟踪,即使加速速率不高。最佳响应由固有频率和阻尼系数决定,这两者都不是PLC编程者可控制的。为了实现合理且可接受的响应,油缸和负载的固有频率都必须大大的提高。

图1和图2显示了自然频率从10 Hz增加到20 Hz的响应。改进不是很大,但是固有频率加倍意味着油缸的直径也必须加倍。然而,这也会导致油液流量需求增加了四倍。加倍固有频率是成本过高的。

图1 简单的比例运动,系统的固有频率为10 Hz。

图2 简单的比例运动,系统的固有频率为20 Hz。

请注意,没有加速和减速斜坡。可以将比例增益增加到高于最佳比例增益。将比例增益加倍会减少跟踪误差,但不会缩短建立时间。增加比例增益太多会导致过冲或可能持续的振荡,这可能会损坏机器。


更快响应的选项

有几个选项,但大多数都需要目标发生器。目标发生器在每个循环时间计算目标位置,速度和加速度。使用指令速度和加速度,目标位置从当前位置平稳且连续地移动到指令位置。目标发生器还可以在每个循环时间生成目标速度和加速度。这极大的使目标发生器复杂化。计算目标速度和加速度的目的是使用这些值来估计所需的控制输出,以在不使用比例增益的情况下以目标速度和加速度移动。


例如,如果系统的开环增益为10(mm / s)/%的控制输出,则发送50%的控制信号(通常在±10V输出上为5V)将导致执行器达到500mm/s。输出10%将导致100 mm / s的速度。其目标是预测任何速度或加速度的控制输出。


然而,液压系统中广泛使用的液压阀的非线性行为存在一些困难。即使是线性阀也不是完全线性的。但是,输出不需要完美预测。将预知的输出精确地保持在实际值的5%以内,那么只有比例控制的控制器就不需要为这5%的误差去纠错了。这有效地将跟随误差减少了20倍。因此,改进的运动控制器使用比例增益乘以目标位置和实际位置之间的误差 - 但它也增加了速度前馈项。很容易看出图3中的改进。有一点超调,但反应更快。此外,目标位置与实际位置之间的均方根误差(RMSE)也小很多。

图3 对于仅有速度和加速度前馈的比例增益,请注意在减速时加速和超调命令时,实际位置和速度滞后于命令。

积分和微分增益

如果在不使用前馈的情况下将积分增益添加到闭环控制中,积分将wind up并在unwinding时引起过冲。基本上,前馈将预测积分控制器将做什么,但不会有误差。如果正确设置了前馈增益,则很少或不会发生跟随误差,(监控积分器是判断前馈增益是否设置正确的好方法!如果积分项保持接近零,这意味着前馈增益可以准确预测控制输出。)

图4A  比例积分器控制响应显示由于积分器清零引起的响应和过冲。


图4B 比例积分器控制饱和度超过20%。

图5A  具有前馈的比例积分器控制。

图5B  具有前馈的比例积分器控制显示很少的积分器饱和。该图的比例与图4b大不相同。

请注意,使用前馈时,积分控制不会结束。图5a和b之间的积分器输出标度差异大约为50倍。因此,当使用PI控制器前馈时,整体响应要好得多。此外,比例控制和前馈的RMSE略低于带前馈的比例和积分器控制。


微分增益将为系统增加带宽。这意味着执行器将更好地响应更高频率的目标。因为微分增益乘以目标速度和实际速度之间的误差,所以必须生成目标速度。另一个挑战是从位置反馈计算准确的实际速度。

图6 具有前馈的比例 - 微分控制。

具有速度和加速度前馈的比例微分控制器比比例控制器好一点。然而,这种模拟并没有反映出由于量化位置输入和样本抖动而计算精确实际速度的困难!PLC编程者通常使用低通滤波器来消除实际速度中的一些噪声,但这会增加相位滞后。最后,一个简单的低通滤波器会带来的坏处跟好处一样多。有一些过滤反馈的高级方法,如卡尔曼滤波器和观察器,但这些在PLC中实现起来太困难了。


大多数运动控制器使用PID控制加速度和加速度前馈,具有上述所有优点和问题。实际上,对于欠阻尼液压执行器,微分增益几乎没有什么好处,因此PID加前馈的响应与PI 加上前馈控制器的响应大致相同。


目标生成器是运动控制器中最复杂的部分

编写目标生成器并不容易。求解梯形运动轮廓的简单点对点移动需要使用五个方程求解五个未知数。


最简单的启动方法是使用线性斜坡将目标速度提升到命令速度。该技术在斜坡上升和下降期间使用二阶方程。下一步以恒定速率递增目标位置,直到下降到命令位置为止。这听起来很简单,只要行进的距离足够长,因此目标速度可以上升到命令速度,并且仍然有足够的距离下降到命令位置。


如果只是短暂的运动怎么办?然后永远不会达到指令速度。编程者会发现有很多“假设”。如果在移动过程中指令位置和速度发生了变化怎么办?数学变得更复杂,调试需要很长时间。只有在移动过程中命令位置,速度和加速度没有改变并且距离足以使目标速度达到命令速度的简单情况下,才应尝试编写目标发生器。


商用运动控制器使用一系列三阶或更高阶的多项式。一个简单的举动可能需要解决17个具有17个未知数的方程。这远远超出了人们想要使用PLC解决的问题。


无需目标发生器

有一个选项不使用目标发生器,并且使积分器不参数windup现象,但这需要编写自己的闭环控制。此选项使用积分器和比例增益,微分增益是可选的。这种方法的不同之处在于比例增益不会乘以目标位置和实际位置之间的误差,而是乘以实际位置的变化,并且就像积分项一样被添加到最后一个控制输出。该误差计算为命令位置和实际位置之间的差值,但该值可能很大,因此误差受最大误差的限制。积分器增益乘以最小值命令与实际位置之间的误差值和最大误差。编程者可以通过设置最大误差的值来控制系统的速度。当实际位置接近指令位置时,如果正确选择积分器和比例增益的值,则两者之间的误差将减小并且致动器将减速至平稳停止。


图7是500 mm移动的示例,其中设置了最大误差,使得最大速度应为约250 mm / s。通过添加微分增益来平滑加速度,可以减少开始时的轻微速度过冲。

图7 比例增益乘以实际位置和前一个实际位置之间的差值,然后加到控制输出上。


这种方法并不快,但无论执行器移动有多远,它都能提供相对平稳的运动。最佳响应由固有频率和阻尼系数决定。


显然,在PLC或像Arduino这样的微控制器中尝试简单的点对点液压伺服控制时,还有很多需要考虑的问题。编写必要的算法需要时间,如果唯一可用的语言是梯形逻辑,这将变得更加困难。是否可以采用其它措施来提高性能?是! 然而,液压执行器的控制理论在教科书中没有得到很好的阐述或者就根本没有涉及。因此几乎没有人能够指导一个人自下而上地编写商业质量的液压伺服控制器。在被大量应用之前,商用运动控制器必须使用复杂的算法,且编写和调试时间均很长。


延伸阅读:

伺服液压运动控制-选择PLC还是运动控制器?

- END -

声明:本文为OFweek维科号作者发布,不代表OFweek维科号立场。如有侵权或其他问题,请及时联系我们举报。
2
评论

评论

    相关阅读

    暂无数据

    液压传动与控制

    工业液压设计与应用、产品与解决方...

    举报文章问题

    ×
    • 营销广告
    • 重复、旧闻
    • 格式问题
    • 低俗
    • 标题夸张
    • 与事实不符
    • 疑似抄袭
    • 我有话要说
    确定 取消

    举报评论问题

    ×
    • 淫秽色情
    • 营销广告
    • 恶意攻击谩骂
    • 我要吐槽
    确定 取消

    用户登录×

    请输入用户名/手机/邮箱

    请输入密码