S7-1500 TM PosInput 2 模块测量SSI绝对值编码器

概述

TM PosInput 2,订货号:6ES7 551-1AB00-0AB0,是一个能够提供双通道的计数、测量和定位输入模块,能够连接 SSI 绝对编码器和 5 V (RS422/TTL) 增量编码器并输出5 V、24 V 编码器电源,如图1所示。

图1.TM PosInput 2 模块的视图

工艺模块TM PosInput 2的主要属性

1.支持的编码器/信号类型:

2.支持的技术功能:

3.集中式应用/分布式应用

工艺模块TM PosInput 2的接线

 

工艺模块TM PosInput 2 可以接入SSI编码器信号D和C,每个通道同时提供了2个数字量和2个数字量输出信号。具体接线方式如图2、3所示:

图2.TM PosInput2 前连接器的针脚分配

图3.TM PosInput2 模块的接线

计数功能组态实例

1.示例中使用的软件和硬件环境

①CPU1512C-1PN(6ES7 512-1CK00-0AB0),V2.6

②TM PosInput 2(6ES7 551-1AB00-0AB0),V1.1

③Absolute Encoder(6FX2001-5FS24),SSI,25bit

④TIA Portal STEP7(6ES7822-1AA05-0YA5),V15.1

实验目的:使用TM PosInput2模块对SSI绝对值编码器产生的脉冲进行计数。

2.硬件配置

首先将项目切换到设备视图,在右侧的硬件目录中找到:工艺模块->位置检测->TM PosInput2,并将位置检测模块拖拽到设备机架上,如图4所示;

图4.TM PosInput2模块硬件配置01

选中模块,点击属性,进入模板的基本参数设置界面,将通道0的工作模式选择为:通过工艺对象“计数和测量”操作,如图5所示;

图5.TM PosInput2模块硬件配置02

3.组态工艺对象

1).硬件配置完成后需要组态计数器的工艺对象。首先从左侧的项目树中,选择工艺对象下面的:新增对象,如图6所示;

图6.新增对象

2).在插入新对象时选择:计数和测量->SSI_Absolute_Encoder,如图7所示;

图7.选择工艺对象类型

3).插入对象后,在左侧的项目树下就能看到新建的计数器工艺对象,选择这个计数器工艺对象,点击“组态”即可在中间的工作区域看到工艺对象的参数配置界面。参数界面可以通过状态图标反映出参数分配状态:红色图标表示参数里包含错误或者不可用的参数;绿色图标表示配置里面包含手动修改过得可用参数;蓝色图标表示系统默认可用的配置参数,如图8所示;

图8.组态工艺对象

4).基本参数中,选择已组态的TM PosInput 2_1模块,并根据SSI绝对值编码器实际接线选择通道0或通道1(此处选择通道0),完成工艺对象与硬件的关联,如图9所示;

图9.为工艺对象分配硬件参数

5).在计数器输入参数中选择输入信号的数据类型等参数,如图10所示,LSB及MSB的输入可参考示例1和示例2所示(需要根据实际的SSI编码器选择):

图10.SSI绝对编码器输入信号类型

不同帧类型位置值的位数LSB/MSB如图10.1、10.2所示:

图10.1.SSI绝对编码器数据帧1

 

图10.2.SSI绝对编码器数据帧2

 

4.组态 DO 在计数值大于比较值时输出

该模块内置了两个比较器,可以将计数值与预设的比较值之间进行比较,在 DO 特性里面可以设置计数模块本体的两个数字量输出根据比较器的状态做相应的响应。在本例中,将 DQ0 设置为当计数值大于比较值且小于上限值时输出,也就是当计数值大于50000且小于计数上限值的时候,第一个数字量DQ 会输出为 1 ,同时,比较器的状态还可以在计数器指令输出管脚的“CompResult”中显示,如图11所示。

注意:该参数界面还可以设置DO更多的响应特性,具体细节请参考功能手册(https://support.industry.siemens.com/cs/cn/zh/view/59709820)。

图11.组态 DO 在计数值大于比较值时输出

5.调试工艺对象

计数功能中必要的参数基本配置完毕,接下来进入计 数功能的调试阶段。计数工艺对象提供了一个可以调试的控制面板,在这个调试界面下可以进行计数器的基本操作和错误诊断。需要注意的是,使用调试界面前,需要先在主程序中调用高速计数功能块才能正常使用。

注意:其他功能如数字量输入/输出,测量等,可根据实际需要来做一定的修改,具体说明请参考功能手册(https://support.industry.siemens.com/cs/cn/zh/view/59709820)。

1).在OB1中,从右侧的指令列表里面找到工艺->计数和测量,找到 SSI_Absolute_Encoder 功能块并拖拽到程序段中,背景DB的名称选择与图7所建工艺对象名称一致,如图12所示:

图12.在程序中调用功能块

2).项目保存编译并下载,可以通过项目树或者功能块的快捷图标进入到工艺对象的调试功能,如图13所示;

图13.在程序中调用功能块

3).进入调试界面后,首先点击左上角的在线图标切换到在线模式,在在线模式下如果有外部脉冲信号输入,计数器将进行计数并将计数值反馈到”PositionValue”处,如图14所示。

图14.计数器工艺对象的调试界面

6.故障诊断

可以通过项目树或功能块上的快捷图标切换到诊断界面。在诊断界面可以看到错误的ID、描述和相关的状态位,如图15所示:

图15.计数器工艺对象的诊断界面

7.编程

如果调试面板没有问题可以回到程序块进行编程,程序块的管脚及使用方法与之前的调试面板完全一致,所以非常方便的参考调试面板进行编程,如图16所示,工艺功能块的部分主要参数及功能请参见表01。

图16.程序功能块在线

计数器工艺功能的主要参数:

序号 名称 功能
1 CaptureEnable 启用 Capture 功能
2 ErrorAck 错误应答:出现错误并处理错误后通过此控制位来复位故障状态;
3 EventAck 事件应答:确认计数器事件状态,如:计数值超限等;
4 StatusHW 工艺模块状态位:模块已组态并准备好运行。模块数据有效。
5 StatusUp 状态位:上一个位置值在正方向上发生了更改,并且是在不超过 0.5 s 的时间内完成的。
6 StatusDown 状态位:上一个位置值在负方向上发生了更改,并且是在不超过 0.5 s 的时间内完成的。
7 PosOverflow 状态位:PositionValue 在正方向上超出了编码器位置值范围的上限。
8 NegOverflow 状态位:PositionValue 在负方向上低于编码器位置值范围的下限。
9 Error 发生错误。
10 ErrorID 错误消息的编号。
11 PositionValue 当前位置值。
12 CompleteSSIFrame 最后接收到的完整 SSI 帧(32 位最低有效位)。需要在工艺对象中组态测量值。

表01.计数器工艺功能的主要参数

8.通过用户程序修改比较值
同修改实际计数值的方法类似,用户也可以通过用户程序修改该组态里面预制的比较值,如图17所示,具体步骤如下:

(1). 选中左侧项目树下新增的工艺对象"SSI_Absolute_Encoder_1";
(2). 展开下面的详细视图,则可以看到工艺DB中的所有变量;
(3). 找到"NewReferenceValue0"变量,并将其拖拽到用户程序中进行赋值;
(4). 找到"SetReferenceValue0"变量,并将其拖拽到用户程序中进行置位,就可以将刚刚修改的新比较值写到计数器模块中。

图17.通过用户程序修改比较值

9.查看工艺对象 DB 中的所有变量

上述查找工艺对象变量的方法适用于 STEP 7 TIA Protal V13 以上版本,之前的版本可以通过鼠标右键点击工艺对象名称,选则最下面的"打开 DB 编辑器" ,这样可以通过数据视图显示工艺对象 DB 里面的所有变量,使用变量的时候可以在用户程序中直接敲入相应的变量名即可,如图18所示。

图18.查看工艺对象 DB 中的所有变量

本文档仅为通过使用TM PosInput 2模块对SSI绝对值编码器组态工艺对象进行脉冲计数的示例文档。更多信息,请参考博途软件中SSI_Absolute_Encode的在线帮助。