最新新闻
我要投稿
联系电话:027-87592219/20/21转188
投稿邮箱:tb@e-works.net.cn
您所在的位置:首页 > 智库 > 智能生产

基于1394总线通信的I/O模块在数控系统中的应用

发布时间:2013-11-21 作者:崔如娜 李坤 杨煜普  来源:万方数据
关键字:I/O模块 数控 系统 
本文设计了一种基于IEEE 1394总线通信,应用于高档数控系统中的I/O控制模块。该模块采用IEEE 1394通信方式,实现上位机与机床之间的高速数据传榆;采用光耦芯片对模块内部与外界进行隔离,并实现该I/O模块与机床之间的电平匹配,模数转换等功能。给出了软件和硬件设计,并进行了I/O模块功能测试和分析,验证了该模块满足高档数控系统要求数据传输的准确性和实时性。

  3.2中转时延测试分析

  TSIM3AA82是一种双端口1394芯片,因此可以将多个I/O模块串联,如图5所示。模块1最后上电,并进行总线复位,强制自己为根节点。模块1的节点号为0,模块2、3、4节点号相应为1、2、3。

中转时延测试结构图
图5 中转时延测试结构图

  寄存器Ping_Timer记录了Ping包从发出到收回的时间,每次40 as。现在从O节点分别向1、2、3节点发送Ping包,共测试20次。0节点到l节点的Ping_Timer值稳定为14;0节点到2节点的Ping_Timer值为19共14次,值为20共6次;0节点到3节点的Ping_Timer值为24共12次,值为25共8次,测试结果如表1所示。

中转时延测试数据表

  0到1节点不经过转发,仅仅是数据传输时间。0节点到2节点的传输增加了1节点的两次转发时间。0节点到3节点的传输增加了1节点两次转发及2节点两次转发的时间。

  按照以上分析,采用代数平均数算法,可计算得到节点转发时间为108.7 as。而TSB43AA82芯片的PHY Internal Registers中的delay字段定义了中转时延的最大值,即从数据的第1位接收到数据包被转发所需要的最大时间,为144+(delay×20)as,其中TSB43AA82中delay为0。故最坏情况下转发器转发数据的延迟为144 ns。所测得的中转时延为108.7 n8在144 ns以内,与理论值完全符合。

  3.3 多节点的伺服同步

  一个数控系统中有多个伺服单元,这些伺服单元可以通过各自的I/O模块与上位机进行通信。高档数控系统对于各个伺服单元之间的伺服周期同步有较高的要求。

 可以利用上位机向所有节点发送1394广播包作为同步信号,各节点收到广播包后开始执行新得到的插补命令,从而实现各个伺服节点同时执行同一插补周期的数据。根据1394网络拓扑结构及1394传输协议可知,数据的传输是经过各个节点的转发实现的,所以在逻辑位置上距离上位机较远的节点收到广播包比其他节点要晚,导致同步信号不够准确。

  针对这一情况,可以利用3.2节所测节点中转时延,人为地补足这个时间差,实现更高精度的同步。由于采用的TSB43AA82是双端口1394芯片,拓扑结构比较简单,呈线性,一般上位机强制为根节点,节点号为0。假设整个数控系统共有m个节点,则逻辑位置上距离上位机最远的节点号为m-1。可以编程控制节点号为i的节点在收到广播包后延时(m-1-i)×108.7 as,之后执行插补命令,从而实现各节点之间真正的伺服同步。

4 结束语

  本设计的基于IEEE 1394通信的I/O模块经测试完全满足高档数控系统的实时性要求。根据3.2节中转时延的测试结果,可以利用1394广播包来同步多个节点模块。另外该模块利用光耦芯片与外界环境隔离,能够有效预防干扰。除数控系统外,该模块还可广泛应用于很多其他场合,负责实时数据采集及高速数据传输。 

3
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
相关资料推荐