倍福NC轴过程映像参数释义

文章详细介绍了倍福NC系统中对伺服的分层控制方式,包括PLC轴与NC轴的交互、实轴与虚轴的概念以及过程映像在伺服控制中的作用。实轴对应物理伺服电机,虚轴用于测试和解耦控制逻辑。过程映像涉及编码器和驱动的数据交换,强调了自动链接与手动关联的场景,特别是DS402标准的伺服和CANopen协议的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

NC

Numerical Control(NC)数字控制,倍福对伺服的控制进行了分层,代码不直接控制伺服,与代码交互的轴称为PLC轴,PLC轴通过轴结构体(AXIS_REF)与NC轴的process image映射实现与NC轴的交互,交互周期是PLC的运行周期(通常默认为10ms),NC轴通过process image与物理轴交互,交互周期为NC SAF任务周期(通常默认为2ms),物理轴的变量是真正伺服驱动器能够提供出来的变量。

实轴

实轴指的是伺服+电机的轴,是现实当中存在的真实的轴,一套伺服+电机的组合就是一个实轴,在倍福的体系中,从IO-configuration中能scan到的drive就是实轴。

虚轴

虚轴是现实中不存在的轴,但是为了测试控制逻辑,或者为了方便做控制层面和物理层面的解耦或耦合等需求而添加的一个“虚拟的”轴,在倍福的体系中,虚轴指的就是没有链接到物理轴的NC轴。

虚轴的典型应用案例是在凸轮方面,在包装行业内,例如需要将一个铝箔药片装进药盒里,那么药盒的展开成型,铝箔药片推入药盒,药盒封口,生产日期印刷,需要在药盒和铝箔药片在传送带行进的过程中完成,以便提高生产效率,这时就可以设置一个“虚轴”,所有这些实轴操作的步骤都可以按凸轮曲线关联到此虚轴上,这个虚轴就扮演了凸轮关系中的主轴角色,这样的设计可以提高可靠性,虚轴模拟出了一个实轴的行为,却不会像实轴那样可能产生各种各样的伺服故障,因为它本质上就是在进行数学运算。

过程映像

倍福NC支持多种伺服类型和编码器类型,通常情况下NC下的Enc和Drive的过程映像在实体伺服scan到以后是自动链接的,无需手动一项一项地进行变量关联,能进行自动链接的伺服都是符合国际标准的,例如DS402标准。在极特殊的情况下,例如TwinCAT的scan功能没有识别出来伺服的类型,此时需要自己手动关联,这种情况需要明白NC的Enc和Drive过程映像每一项参数的含义,以便和实体伺服交互数据。

一个典型的应用情况是例如我们使用的是符合DS402标准CANopen协议的伺服,配合EL6751的CANopen网关实现PLC对该伺服的控制,如果需要直接在PLC的程序中对伺服进行控制,那么CANopen伺服的IO变量可以直接关联到PLC的变量上,但是若想使用NC进行伺服控制,那么就需要自己将伺服的IO变量与NC变量进行关联,关联的原则可以参考同系列伺服EtherCAT协议型号的关联情况,或者参考本片文章下述的方法,一般情况下,对于一些简单的应用场合,我们只关注伺服的以下几个主要参数:

  1. 伺服的当前位置(actual position),一般关联到Enc下Inputs的nDataIn1
  2. 伺服的当前速度(actual velocity),一般关联到Enc下Inputs的nDataIn7
  3. 伺服的当前扭矩(actual torque),一般关联到Drive下Inputs的nDataIn3[0]
  4. 伺服的当前跟随误差(actual following error),一般关联到Drive下Inputs的nDataIn1
  5. 伺服的数字输入(digital inputs)
  6. 伺服的状态字(status word),一般关联到Drive下Inputs的nState1和nState2
  7. 伺服的控制字(controlword),一般关联到Drive下Outputs的nCtrl1和nCtrl2
  8. 伺服的工作模式(mode of operation),一般关联到Drive下Outputs的nCtrl5
  9. 伺服的目标位置(target position),一般关联到Drive下Outputs的nDataOut1
  10. 伺服的目标速度(target velocity),一般关联到Drive下Outputs的nDataOut2
  11. 伺服的目标扭矩(target torque),一般关联到Drive下Outputs的nDataOut4[0]

下表列出了一个Axis的Enc过程映像各项参数的含义,这里以汇川SV670N EtherCAT伺服为例,介绍各参数的含义

I/O变量名参数含义备注
nDataIn1伺服的当前位置值,以脉冲数标识,NC当中用这个值配合scaling参数的设置来计算轴的实际位置以mm或°标识出来计量单位:INC(脉冲数)
数据类型:数据类型:2个16位UINT数组
nDataIn2未关联到伺服的IO变量上,如果伺服反馈的位置数大于32位,则这个变量也会被关联计量单位:INC(脉冲数)
数据类型:数据类型:2个16位UINT数组
nState1可选的状态信息,参与NC SAF周期的数据交换,例如编码器错误,位置锁存信号或者参与伺服的寄存器通信。此参数未关联到伺服的IO变量上这个参数主要跟编码器类型和伺服类型有关
数据类型:8位USINT
nState2可选的状态信息,作为前一个nState1的补充,参与NC SAF周期的数据交换,例如编码器重置,位置锁存信号或者读取伺服的绝对位置。此参数未关联到伺服的IO变量上这个参数主要跟编码器类型和伺服类型有关,若使用到了nState1而且IO数据类型比USINT大,则IO数据关联的时候会同时使用nState1和nState2两个变量来保证位数能覆盖IO-tree里面变量的位数
数据类型:8位USINT
nState3保留参数,通常是空的,没有链接任何IO变量。此参数未关联到伺服的IO变量上数据类型:8位USINT
nState4可选的总线IO状态信息,例如在EtherCAT的CoE伺服中是关联到WcState的值,用来标识总线数据的有效性。关联到WcState的时候,有以下含义
0:数据有效
1:数据无效
数据类型:8位USINT
nDataIn3伺服驱动器的探针锁存位置1的位置值数据类型:2个16位UINT数组
nDataIn4未关联到IO变量上,推测是配合nDataIn3使用,以提供64bit的容量数据类型:2个16位UINT数组
nDataIn5伺服驱动器的探针锁存位置2的位置值数据类型:2个16位UINT数组
nDataIn6未关联到IO变量上,推测是配合nDataIn5使用,以提供64bit的容量数据类型:2个16位UINT数组
nState5伺服驱动器的探针状态字数据类型:8位USINT
nState6伺服驱动器的探针状态字,因为伺服的探针状态字是16位的UINT类型,所以需要nState5和nState6结合在一起才能提供16位的宽度数据类型:8位USINT
nState7未关联到IO变量上数据类型:8位USINT
nState8未关联到IO变量上数据类型:8位USINT
nDcInputTime伺服驱动器的infoData下的DcInputShift数据类型:32位DINT
此参数用来计算死区补偿的,在DC sync模式下,伺服采样上来的数据时间和PLC处理该数据的时间存在延迟,这个延迟时间就是DcInputShift
nDataIn7未关联到IO变量上,此参数通常是伺服的当前速度值数据类型:2个16位UINT数组
I/O变量名参数含义备注
nDataOut1未关联到IO变量上数据类型:2个16位UINT数组
nDataOut2未关联到IO变量上数据类型:2个16位UINT数组
nCtrl1未关联到IO变量上数据类型:8位USINT
nCtrl2未关联到IO变量上数据类型:8位USINT
nCtrl3未关联到IO变量上数据类型:8位USINT
nCtrl4未关联到IO变量上数据类型:8位USINT
nDataOut3未关联到IO变量上数据类型:2个16位UINT数组
nDataOut4未关联到IO变量上数据类型:2个16位UINT数组
nDataOut5未关联到IO变量上数据类型:2个16位UINT数组
nDataOut6未关联到IO变量上数据类型:2个16位UINT数组
nCtrl5伺服驱动器的探针功能,关联到伺服的Touch Probe Function上数据类型:8位USINT
nCtrl6伺服驱动器的探针功能,关联到伺服的Touch Probe Function,与nCtrl5配合数据类型:8位USINT
nCtrl7未关联到IO变量上数据类型:8位USINT
nCtrl8未关联到IO变量上数据类型:8位USINT

下面列出来Axis的Drive项下的过程映像各项参数的含义,这里以汇川SV670N EtherCAT伺服为例,介绍各参数的含义

I/O变量名参数含义备注
nDataIn1伺服的当前位置跟随误差计量单位:INC(脉冲数) 数据类型:数据类型:2个16位UINT数组
nDataIn2未关联到伺服的IO变量上,如果伺服反馈的位置数大于32位,则这个变量也会被关联,配合nDataIn1使用以提供64位的容量计量单位:INC(脉冲数) 数据类型:数据类型:2个16位UINT数组
nState1伺服状态字数据类型:8位USINT
nState2伺服状态字数据类型:8位USINT,实际伺服的状态字是16位UINT,所以需要nState1和nState2组合来覆盖Status Word
nState3未关联到IO变量上数据类型:8位USINT
nState4此参数关联到了伺服的WcState变量和InputToggle变量,其中WcState关联到了nState4的bit0位,InputToggle关联到了nState4的bit1位数据类型:8位USINT
nDataIn3未关联到IO变量上数据类型:2个16位UINT数组
nDataIn4未关联到IO变量上数据类型:2个16位UINT数组
nDataIn5未关联到IO变量上数据类型:2个16位UINT数组
nDataIn6未关联到IO变量上数据类型:2个16位UINT数组
nState5关联到伺服的Modes of operation display变量上数据类型:8位USINT
nState6未关联到IO变量上数据类型:8位USINT
nState7未关联到IO变量上数据类型:8位USINT
nState8未关联到IO变量上数据类型:8位USINT
nDcOutputTime关联到伺服的InfoData下的DcOutputShift项上数据类型:16位DINT数组
I/O变量名参数含义备注
nDataOut1关联到伺服的Target position上数据类型:2个16位UINT数组
nDataOut2未关联到IO变量上数据类型:2个16位UINT数组
nCtrl1关联到伺服control word上数据类型:8位USINT
nCtrl2关联到伺服control word上数据类型:8位USINT,配合nCtrl1使用,提供16位的容量
nCtrl3未关联到IO变量上数据类型:8位USINT
nCtrl4未关联到IO变量上数据类型:8位USINT
nDataOut3未关联到IO变量上数据类型:2个16位UINT数组
nDataOut4未关联到IO变量上数据类型:2个16位UINT数组
nDataOut5未关联到IO变量上数据类型:2个16位UINT数组
nDataOut6未关联到IO变量上数据类型:2个16位UINT数组
nCtrl5关联到伺服的Modes of operation上伺服的操作模式,CoE类型的伺服上,此值一般是8,即CSP模式
数据类型:8位USINT
nCtrl6未关联到IO变量上数据类型:8位USINT
nCtrl7未关联到IO变量上数据类型:8位USINT
nCtrl8未关联到IO变量上数据类型:8位USINT

总的而言,伺服反馈上来的位置和速度,探针功能是关联到Axis的Enc项下的,NC给定的目标位置,目标速度,控制字等是给定到Axis的Drive项下的,这个比较容易理解,对于伺服驱动器而言,电机的速度和位置信息源于编码器,可以认为是个只读变量,所以与此相关的信息应放到Enc项下,探针功能本质也是和位置相关的,其行为是只读的,所以也放在Enc项下。NC的控制信息都是给定到伺服的,由伺服进一步控制电机的行为,所以针对运动控制的参数和一些限制参数都是由驱动器负责的,故这部分参数是放在Axis的Drive项下的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值