西门子6ES7505-0KA00-0AB0
SIMATIC S7-1500 自动化系统概述
3.1.1 SIMATIC 自动化系统
为确保设备和工厂中灵活经济的自动化生产运行,则需根据具体应用选择解决方案。
SIMATIC 控制器产品系列包含以下各种功能强大的系统:
● 凭借集成的通信和工艺功能,SIMATIC S7-1200 基本型控制器尤其适用于小型自动化
解决方案。
● SIMATIC S7-1500 自动化系统,高复杂性和高系统性能要求的工厂选择。
SIMATIC S7-1500 控制器中包含有 SIMATIC S7-1200 基本型控制器的诸多简单功
能,可*满足系统性能、灵活性和网络功能等各种严格要求。
● SIMATIC ET 200SP 分布式控制器集 S7-1500 的优势与 ET 200SP 的设计紧凑的高
密度通道于一身。该款控制器凭借其智能的分布式功能,可极大节省控制柜中的安装
空间与应用成本。
CPU 1516pro-2 PN 采用 ET 200pro 设计形式且防护等级高达 IP65/IP67,支持强大的
SIMATIC S7-1500 功能,尤其适用于室外控制柜中。
● 如果需要基于 PC 的自动化,则使用 SIMATIC S7-1500 软件控制器。在运行过程
中,这一款基于 PC 的控制器可独立于操作系统自主运行
西门子6ES7505-0KA00-0AB0
2. 建立V90 PN与PLC的网络连接,并分别设置S7-1500及V90 PN的IP地址及设备名称:
V90 的IP地址及设备名称设置:
3. 在网络视图中配置PROFINET IRT通信,需要注意当前V90 PN的通信时间短为2ms:
4. 在拓扑视图中配置通信的接口连接,本例为PLC的Port2连接V90 PN的Port1:
5. 插入一个位置轴
TM Count 2x24V,订货号: 6ES7550-1AA00-0AB0 是一个能够提供双通道计数、测量以及位置反馈功能的工艺模块。
图01. TM Count 2x24V 模块视图
工艺模块 TM Count 2x24V 可以接两路 24V 脉冲信号编码器,每个通道同时提供了三个数字量输入和两个数字量输出信号,具体接线方式请参考图02 和图03。
图02. TM Count 2x24V 端子分配
图03. TM Count 2x24V 模块的接线
在本例中,使用的是带有方向信号的 24V 脉冲编码器,所以将脉冲信号接到模块的1号端子,将方向信号接到模块的2号端子。
计数是指对事件进行记录和统计,工艺模块的计数器 捕获编码器信号和脉冲,并对其进行相应的评估。可以使用编码器或脉冲信号或通过用户程序计数的方向。也可以通过数字量输入控制计数过程。模块内置的比 较值功能可在定义的计数值处准确切换数字量输出(不受用户程序及 CPU 扫描周期的影响)。
1. 本文中所使用的系统硬件及软件信息:
名称 | 订货号 | 版本 |
CPU 1511 | 6ES7511-1AK00-0AB0 | FW V1.5 |
TM 2x24V | 6ES7550-1AA00-0AB0 | FW V1.0 |
STEP7 TIA Portal | 6ES7822-1AA03-0YA5 | V13 |
首先将项目切换到项目视图,然后从左侧的硬件目录中找到:工艺模块->计数->TM Count 2x24V, 并将计数模块拖拽到设备机架上(图04);
图04. TM Count 2x24V 硬件配置 01
在模板下方点击属性,进入模板的基本参数设置界面,将通道 0 的工作模式选择为:通过工艺对象组态通道(图05);
图05. TM Count 2x24V 硬件配置 02
硬件配置完成后需要组态计数器的工艺对象。首先从左侧的项目树中,选择工艺对象下面的:插入新对象(图06);
图06. 插入新对象
在插入新对象时选择:计数和测量,并填入对象名称(图07);
图07. 选择新对象类型
插 入对象后,在左侧的项目树下就能看到新建的计数器工艺对象,选择这个计数器工艺对象,点击“组态”即可在中间的工作区域看到工艺对象的参数配置界面。参数界面可以通过 状态图标反映出参数分配状态:红色图标表示参数里包含错误或者不可用的参数;绿色图标表示配置里面包含手动修改过得可用参数;蓝色图标表示系统默认可用的 配置参数(图08);
图08. 组态工艺对象
在工艺对象的基本参数中,首先需要给这个计数器工艺对象分配一个硬件,也就是前面组态的高速计数模块,并选择相应的模块通道,完成工艺对象与硬件的关联(图09);
图09. 为工艺对象分配硬件
在计数器输入参数中选择输入信号的类型,可选择的类型参见下表,在附加参数里面还可以选择对脉冲的滤波和传感器类型(图10),可以支持的信号类型请参见表01
图10. 选择计数器工艺对象的信号类型
计数器工艺对象支持的信号类型:
图例 | 名称 | 信号类型 |
增量编码器(A、B 相差) | 带有 A 和 B 相位差信号的增量编码器。 | |
增量编码器(A、B、N) | 带有 A 和 B 相位差信号以及零信号 N 的增量编码器。 | |
脉冲 (A) 和方向 (B) | 带有方向信号(信号 B)的脉冲编码器(信号 A)。 | |
单相脉冲 (A) | 不带方向信号的脉冲编码器(信号 A)。可以通过控制接口计数方向。 | |
向上计数 (A),向下计数 (B) | 向上计数(信号 A)和向下计数(信号 B)的信号。 |
表01. 计数器工艺对象支持的信号类型
在计数器特性里面可以配置计数器的起始值,上下极限值和计数值到达极限时的状态,以及门启动时计数值的状态。在本例中设置起始值为0,上下极限为+/-10000,设置当计数值到达极限时计数器将停止,并且将计数值重置为起始值,将门功能设置为继续计数(图11)。
图11. 设置计数器的上下限及门功能
该 计数模块内置了两个比较器,可以将计数值与预设的比较值之间进行比较,在 DO 特性里面可以设置计数模块本体的两个数字量输出根据比较器的状态做相应的响应。在本例中,将 DQ0 设置为当计数值大于比较值且小于上限值时输出,也就是当计数值大于1000且小于10000的时候,*个数字量DQ 会输出为 1 ,同时,比较器的状态还可以在后面的程序块输出管脚的“CompResult”中显示(图12)。该参数界面还可以设置DO更多的响应特性,具体细节请参 见模板手册。
图12. 组态 DO 在计数值大于比较值时输出
计 数功能中必要的参数基本配置完毕,其他功能如数字量输入/输出,测量等,可根据实际需要来做一定的修改,具体功能和使用方法请参考功能手册。接下来进入计 数功能的调试阶段。计数工艺对象提供了一个可以调试的控制面板,在这个调试界面下可以进行计数器的基本操作和错误诊断。需要注意的是,使用调试界面前,需 要先在主程序中调用高速计数功能块才能正常使用。
将主画面切换到 OB1 编辑界面,从右侧的指令列表里面找到工艺类->计数和测量,找到 High_Speed_Counter 功能块并拖拽到程序段中,并在背景数据块中选择之前建立的计数器工艺对象(图13):
图13. 在程序中调用功能块
将项目存盘编译并下载之后,可以通过项目树或者功能块的快捷图标进入到工艺对象的调试功能(图14);
图14. 在程序中调用功能块
进 入调试界面后,首先点击左上角的在线图标切换到在线模式,在在线模式下首先要使能软件门”SwGate”,然后观察反馈的门状态”StatusGate” 是否为 TRUE,如果为 TRUE 说明计数器已经开始工作,这时候如果有外部脉冲信号的话,计数器将进行计数并将计数值反馈到”CountValue”处(图15)。
图15. 计数器工艺对象的调试界面
图16. 计数器工艺对象的诊断界面
如果调试面板没有问题可以回到程序块进行编程,程序块的管脚及使用方法与之前的调试面板完全*,所以非常方便的参考调试面板进行编程(图17),工艺功能块的部分主要参数及功能请参见表02。
图17. 高速计数程序功能块
计数器工艺功能的主要参数:
序号 | 名称 | 功能 |
1 | SwGate | 软件门:通过该控制位来控制计数器启动和停止; |
2 | ErrorACK | 错误应答:出现错误并处理错误后通过此控制位来复位故障状态; |
3 | EventACK | 事件应答:确认计数器事件状态,如:计数值超限等; |
4 | SetCountValue | 设置计数值:通过该控制位可以将当前计数值更改为其他值,注意:修改值需要写到工艺对象静态变量“NewCountValue”中; |
5 | StatusHW | 工艺模块状态位: 模块已组态并准备好运行, 模块数据有效; |
6 | StatusGate | 门状态位:该状态位反映了内部门的实际状态,只有改状态为为"True"时,计数器才会工作; |
7 | StatusUp | 增计数状态位:表示当前计数方向为增计数; |
8 | StatusDown | 减计数状态位:表示当前计数方向为减计数; |
9 | PosOverflow | 超上限状态位:表示当前计数值已经超过设定的计数值上限; |
10 | NegOverflow | 超下限状态位:表示当前计数值已经超过设定的计数值下限; |
11 | Error | 错误状态位:表示当前计数工艺对象有错误; |
12 | ErrorID | 错误代码:显示当前工艺对象错误的故障代码; |
13 | CounterValue | 计数值:计数器工艺对象的实际计数值; |
表02. 计数器工艺功能的主要参数
7. 通过用户程序修改实际计数值:
在很多情况下都有可能需要人工修改一下当前的实际计数值,这需要首先将要修改的值传送到工艺DB的新计数值"NewCountValue"中,然后置位功能块输入管脚“SetCountValue” 则新计数值生效(图18)。具体步骤如下:
(1). 选中左面项目树的"High_Speed_Couter"工艺对象;
(2). 展开下面的详细视图,则可以看到工艺DB中的所有变量;
(3). 找到"NewCountValue"变量,并将其拖拽到用户程序的传送指令输出端;
(4). 将新的计数值传送到"NewCountValue";
(5). 置位功能块输入管脚“SetCountValue” ;
(6). 新的计数值生效