控制器SIMOTION同步功能的原理与应用

分享到:
2491
下一篇 >

应用探讨——SIMOTION同步功能的原理与应用

SIMOTION是西门子推出的一款经典的运动控制器,已经在各类生产机械中得到了广泛应用。SIMOTION产品家族也不断推陈出新,随着S120控制单元的升级,SIMOTION运动控制器D4xx-2开始出现,让大家耳目一新:硬件上更加紧凑,功能上更加强大,性能也得到进一步提高,其**产品D455-2 DP/PN可以支持高达128个Axis的控制。除了硬件更新以外,SIMOTION还提供了丰富的应用功能库,直接调用这些功能库,即可实现Rotary Knife、FlyingSaw、Winder、Toploading、Line Tension Control等等各类应用,大大减小了编程人员的工作量,提高工作效率。


从功能上讲,我们都知道,SIMOTION除了能完成逻辑控制和工艺控制的功能以外,还有丰富而强大的运动控制功能,比如电子齿轮同步、电子凸轮同步、3轴路径插补等等。其中,同步功能在工业现场有着十分广泛的应用,广泛应用于包装、纺织、印刷、塑料、金属成型等各行业中,有些场合要求简单,而有些场合要求就很复杂。不同的应用场合同步的方式、精度等等有着不同的要求,高精度的同步的实现对于提高产品质量、提高产能、提高竞争力有重要的现实意义。


SIMOTION的同步功能有很多地方值得我们在这里相互讨论:

1.统一思想:同步的概念与定义?与负载平衡的区别?

2.分类清晰:SIMOTION的同步功能有哪些类型?有什么区别?

3.应用明确:哪些应用场合需要使用同步功能?使用哪种类型的同步更合适?

4.功能实现:同步功能如何实现?编程方法?

5.注意事项:同步功能调试时要注意哪些问题?有哪些技巧?

6.更进一步:外推Extrapolation的概念?外推时间的计算?


高手:

GEAR同步可以处理线性位置关系,CAM功能可以处理非线性关系,利用SCOUT组态MCC环境下编程比较直观,感觉比较方便,但中文符号名及注视目前还不支持,比较遗憾。




大虾:

感谢楼主跟咱们提供一个交流平台,这个题目很大,好在坛主对问题进行了分类,

我就按照这个分类谈谈我的理解.


1.统一思想:同步的概念与定义?与负载平衡的区别?

同步指的是两个轴(也可以是其他TO)在位置或者速度上面的关系,同步功能本身并不考虑扭矩和功率.

负载平衡首先关注的是扭矩和功率的分配.根据应用类型的不同,同步和负载平衡有时都要考虑.


例1),用两个伺服电机推动一个工作台进给,两个电机都是齿条传动,出力方向相同.

控制目标是:两个电机的速度,位置都相同,并且两个电机的实际扭矩也基本相同.

使用的方法: X1为主轴,X2为从轴,在两个轴使能后,速度同步.

在Simotion的IPO程序中,检测X1和X2电机的扭矩差,如果TorqueX1>TorqueX2,那么在X2轴上叠加(superimpose)一个速度,

通过这种扭矩反馈调速的方法保证X1和X2的扭矩近似一致.

这种控制方法的思路来自于840D系统的master-slave控制的功能图.


2.分类清晰:SIMOTION的同步功能有哪些类型?有什么区别?

Gearing: 位置同步,速度同步

Camming: 位置凸轮同步


4.功能实现:同步功能如何实现?编程方法?

MCC和ST都可以方便的实现.主要常用几个指令

GearOn/GearOff

CamOn/CamOff

SetMaster

这些指令的参数很多,需要在实践和实验中反复摸索.


5.注意事项:同步功能调试时要注意哪些问题?有哪些技巧?

在此,我简要说几个我碰到过的和同步有关的问题

1)同步是一个过程,当在ST中编程时,需要注意如过一个同步正在建立中,则不应该反复执行同一个同步命令.

建立同步-->同步运行-->解除同步


2)和同步相关的时序问题

整流器使能-->主轴,从轴使能-->建立同步-->同步运行-->解除同步-->Stop轴-->轴使能关闭-->整流器使能关闭

如果程序中的指令执行没有按照合理的顺序,会触发各种奇怪的报警


3)指令间的替换关系

Cam/Gear/Pos/Move几个指令可以相互之间进行替换,TO会直接切断上一条指令,立即执行新的指令.两个指令切换时,速度可以不减速到0.

这种替换也需要反复的实验才能做到不报错.


4)同步的动态响应参数,加速度,Jerk

分为建立同步过程,同步运行过程,解除同步过程

建立同步过程:指令中输入的参数起作用.

同步运行过程:轴limit中的参数起作用.

解除同步过程:指令中输入的参数起作用.


5)同步中的主轴

实轴,虚轴,编码器,Addition object,Formular object都可以作为主轴

使用Addition object/Formular object作为主轴时,需要选择Cam_Ext程序包

甲:

Extrapolation 个人认为是预推断。跟PID中的D有点像。在高频次的往复运动中不适合用它来调节。

具体参数的选取,不是很明白。

手册中还提到Extrapolation是补偿通信延时的,具体的工作原理不是很明白。

问题

1:Extrapolation只有在同步时才考虑用吗?:

2:Extrapolation只有在主轴是外部编码器时才考虑用吗?

3:什么时候考虑用Extrapolation?

高手:

跟随完成信号是什么时候给出的?跟主轴和从轴的位置差有什么关系。

在定位的定义是position window,在同步中的参数参考是什么呢?




------------------------------------------------------------------------------

关于同步的技巧,一般情况下,可以建立一个虚拟轴。好处在于

1:在没有设备时,可以进行程序仿真

2:虚拟轴的特性理想,可以减少主轴的一些波动情况。


Extrapolation的时序图

乙:

上面的功能图没有给出extapolation的算法, 对于"外推"或者叫"外插补"对于我来讲是个黑匣子.

关于编码器作为主轴的问题, 滤波更有意义,因为外部编码器的信号往往是高频率波动的,如果把编码器直接作为同步中的主轴, 那么从轴也会剧烈波动. 

1)编码器的滤波分为速度滤波和位置滤波, 位置滤波在Signal flow中可以看到,有两个地方可以设置, 推荐使用Extrapolation前面的位置滤波. 因为使用这个滤波, 可以在在trace中观察滤波前和滤波后的速度和位置.

2)位置滤波的设置大概在10-50ms之间吧, 与编码器的抖动程度有关系

3)滤波能够使编码器的速度平滑, 但位置精度会有所损失, 这时就需要根据滤波前的位置和滤波后的位置进行比较,对滤波后的位置进行补偿. 

4)速度滤波也是有意义的,尤其是在方波编码器的时候

菜鸟:

外部编码器在做主轴时,应该考虑什么问题呢?

丙:

看来还得技术支持给讲解一下,技术支持赶快现身吧。

斑主:

本来想把外推放到*后,那就先在这里提一下吧。

滤波功能也很实用。

关于外推功能,在实际应用当是还是十分有用的。在使用实际值(比如轴的实际位置、外部编码器实测位置)作为位置同步的主值时,由于通讯、数据处理、滤波环节等影响,造成从轴在工作时位置一定滞后于主轴。这与位置同步的初衷是不一致。同步即要求位置一致,而从轴现在却落后了。外推即要解决这个问题。


有关“外推”的详细信息还是*后再讲吧。咱们按步骤来。

2楼一口气将所有问题都给出了一个笼统的解释。事无巨细,我们按顺序再深一步讨论一下吧。


前两个Topic是:同步的定义与分类。


引用2楼:

使用的方法: X1为主轴,X2为从轴,在两个轴使能后,速度同步.

在Simotion的IPO程序中,检测X1和X2电机的扭矩差,如果TorqueX1>TorqueX2,那么在X2轴上叠加(superimpose)一个速度, 通过这种扭矩反馈调速的方法保证X1和X2的扭矩近似一致.

这个功能是SIMOTION默认就有的吗?如果不是,是如何激活的?需要额外��程吗?


引用2楼: 

Gearing: 位置同步,速度同步

位置同步与速度同步又有什么区别呢?速度一致了,位置不就一致了吗?为什么同一件事分开讲?

同样,前面,“X2轴上叠加(superimpose)一个速度”后速度不就不同步了?位置从而也不同步了?

如何才能在实现位置同步的同时,速度也同步,转矩也同步,功率也同步???


不知道大家怎么看哈。

菜鸟:

simtion 不知如何学习

乙:

在刚性负载的双电机共同驱动设备,比如龙门吊等

用同步比较好,还是负载平衡呢?看到网上的说法同意负载平衡的比较多。

高手:

http://support.automation.siemens.com/CN/view/zh/23819989

在网站tcpu有这么一篇文章,为了防止外部编码器波动,在外部编码器和从轴之间加了一个虚拟轴。



感觉也是进行滤波的意思。这篇文章较早,是不是现在不用这么做了,直接用滤波就行。

菜鸟:

Gearing: 位置同步,速度同步

位置同步与速度同步又有什么区别呢?速度一致了,位置不就一致了吗?为什么同一件事分开讲?

同样,前面,“X2轴上叠加(superimpose)一个速度”后速度不就不同步了?位置从而也不同步了?

如何才能在实现位置同步的同时,速度也同步,转矩也同步,功率也同步???


1:Gearing 和Camming 都是实现位置间的函数关系,同步对象将计算出从轴的位置设定值,一旦同步启动,从轴即按照指定的速度,加速度,jerk调整到同步位置

而Velocity Gearing 则是实现主值和从轴间的速度函数关系。同步对象将计算出从轴的速度设定值,一旦同步启动,从轴即按照指定的加速度调整到同步速度

2:速度一致,不意味着位置一致。在速度同步过程中,速度同步过程中,肯定会存在偏差,由 于偏差造成的位置丢失,在速度同步的模式下,是不进行校正的。

为什么同一件事分开讲?

同样,前面,“X2轴上叠加(superimpose)一个速度”后速度不就不同步了?位置从而也不同步了?

如何才能在实现位置同步的同时,速度也同步,转矩也同步,功率也同步???

这几个问题就不知道了。还需高手解答。

甲:

回复”上面的功能图没有给出extapolation的算法, 对于"外推"或者叫"外插补"对于我来讲是个黑匣子.


关于编码器作为主轴的问题, 滤波更有意义,因为外部编码器的信号往往是高频率波动的,如果把编码器直接作为同步中的主轴, 那么从轴也会剧烈波动. 

1)编码器的滤波分为速度滤波和位置滤波, 位置滤波在Signal flow中可以看到,有两个地方可以设置, 推荐使用Extrapolation前面的位置滤波. 因为使用这个滤波, 可以在在trace中观察滤波前和滤波后的速度和位置.

2)位置滤波的设置大概在10-50ms之间吧, 与编码器的抖动程度有关系

3)滤波能够使编码器的速度平滑, 但位置精度会有所损失, 这时就需要根据滤波前的位置和滤波后的位置进行比较,对滤波后的位置进行补偿. 

4)速度滤波也是有意义的,尤其是在方波编码器的时候“

在cam同步过程中,如果主轴或者从轴的位置值超出了cam曲线的范围,此时会出现什么情况?

菜鸟:

Gearing: 位置同步,速度同步

位置同步与速度同步又有什么区别呢?速度一致了,位置不就一致了吗?为什么同一件事分开讲?

同样,前面,“X2轴上叠加(superimpose)一个速度”后速度不就不同步了?位置从而也不同步了?

如何才能在实现位置同步的同时,速度也同步,转矩也同步,功率也同步???

乙:

如果速度是匀速的话位置同步应该可以得出速度同步,但是如果存在加减速度的情况下,位置的跟踪精度就无法保证,所以由位置同步无法判断出速度同步。


你可能感兴趣: 工控菜鸟园 图片 驱动技术 SIMOTION 整流器
无觅相关文章插件,快速提升流量