6ES7214-1AG40-0XB0 秦皇西门子授权代理商
当前西家主流的基本定位控制方案是由S7-1200/S7-1500 PLC通过PROFINET通信连接S120/V90 PN驱动来实现的。但具体实现方法是不同的,在用户做控制方案时应根据不同的需求来确定使用何种方法。
我们以S7-1200/S7-1500配西家驱动V90PN为例来加以简单说明。
实现定位功能时,位置控制器可以在PLC中也可以在驱动器中,它们分别对应于PLC的工艺对象(TO)及驱动中的基本定位功能(EPOS)。
PLC的工艺对象(TO)
此种定位控制是将位置闭环放在PLC中执行,而V90PN工作在速度模式下。在TIA博途下,通过在S7-1200/S7-1500PLC中组态“定位轴”工艺对象(TO),使用PLCopen运动控制指令控制V90PN执行定位任务。此种方式会占用PLC资源,因此根据型号不同,PLC大带轴数量也有很大差别。
使用S7-1500/1500T PLC通过TO方式控制V90的优点在于,除了可以实现单轴基本定位功能外,还可以实现齿轮同步,凸轮同步等位置控制功能。
注意:由于S7-1500及V90PN均支持PROFINET IRT通信,使用TO的方式可以实现高动态,高精度的位置控制;
驱动中的基本定位功能(EPOS)
S120/V90PN驱动器内部都集成了基本定位控制器(EPOS),激活后可以通过EPOS功能实现单轴的点动、回零、程序步、相对定位以及定位等操作。此时,位置闭环由驱动器本身完成,PLC只需通过报文发送启动命令、定位速度、目标位置等信息至驱动器即可,如下图所示。
支持PROFINET通讯的PLC通过安装GSD文件的方式可以组态V90PN进行控制。此种控制方式的优点在于,基本定位功能不会占用PLC资源,PLC能控制的轴的大数量主要受PLC本身所能连接的PROFINET站点数量的限制,缺点在于只能实现单轴的定位。在TIA博途下,推荐使用驱动库中基于111报文的功能块FB284控制V90PN实现基本定位控制。
就以西门子 S7-1200PLC 高速计数器为主以及实例来做讲解,S7-1200 CPU 提供了多 6 个(1214C )高速计数器 ,其独立于 CPU 的扫描周期进行计数。
可测量的单相脉冲频率高为 100KHz ,双相或 A/B 相高为 30KHz ,除用来计数外还可用来进行频率测量,高速计数器可用于连接增量型旋转编码器,用户通过对硬件组态和调用相关指令块来使用此功能。
一、高速计数器工作模式
高速计数器定义为 5 种工作模式
1、计数器,外部方向控制 。
2、单相计数器,内部方向控制 。
3、双相增 /减计数器,双脉冲输入。
4、5A/B 相正交脉冲输入。
5、监控 PTO 输出。
每种高速计数器有两种工作状态。
1、外部复位,无启动输入。
2、内部复位,无启动输入。
所有的计数器无需启动条件设置,在硬件向导中设置完成后下载到 CPU 中即可启动高速计数器,在 A/B 相正交模式下可选择 1X(1 倍) 和 4X(4 倍)模式,高速计数功能所能支持的输入电压为 24V DC, 目前不支持 5V DC 的脉冲输入,表 8-1 列出了高速计数器的硬件输入定义和工作模式。并非所有的 CPU 都可以使用 6 个高速计数器,如 1211C 只有 6 个集成输入点,所以多只能支持 4 个(使用信号板的情况下)高速计数器。
由于不同计数器在不同的模式下,同一个物理点会有不同的定义,在使用多个计数器时需要注意不是所有计数器可以同时定义为任意工作模式。
高速计数器的输入使用与普通数字量输入相同的地址,当某个输入点已定义为高速计数器的输入点时,就不能再应用于其它功能,但在某个模式下,没有用到的输入点还可以用于其它功能的输入监控 PTO 的模式只有 HSC1 和 HSC2 支持,使用此模式时,不需要外部接线, CPU 在内部已作了硬件连接,可直接检测通过 PTO 功能所发脉冲。
二、高速计数器寻址
CPU 将每个高速计数器的测量值,存储在输入过程映像区内,数据类型为 32 位双整型有符号数,用户可以在设备组态中修改这些存储地址,在程序中可直接访问这些地址,但由于过程映像区受扫描周期影响,在一个扫描周期内,此数值不会发生变化,但高速计数器中的实际值有可能会在一个周期内变化,用户可通过读取外设地址的方式,读取到当前时刻的实际值。以 ID1000 为例,其外设地址为“ ID1000 :P”。表 8-2 所示为高速计数器寻址列表三、频率测量
S7-1200 CPU 除了提供计数功能外,还提供了频率测量功能,有 3 种不同的频率测量周期: 1.0 秒, 0.1 秒和 0.01 秒,频率测量周期是这样定义的:计算并返回新的频率值的时间间隔。返回的频率值为上一个测量周期中所有测量值的平均,无论测量周期如何选择,测量出的频率值总是以 Hz( 每秒脉冲数 )为单位。
四、高速计数器指令块
高速计数器指令块,需要使用指定背景数据块用于存储参数。图 8-5 所示为高速计数器指令块五、应用举例
为了便于理解如何使用高速计数功能,通过一个例子来学习组态及应用。
假设在旋转机械上有单相增量编码器作为反馈,接入到 S7-1200 CPU, 要求在计数 25 个脉冲时,计数器复位,并重新开始计数,周而复始执行此功能。针对此应用,选择 CPU 1214C ,高速计数器为: HSC1 。模式为:单相计数,内部方向控制,无外部复位。据此,脉冲输入应接入 I0.0 ,使用 HSC1 的预置值中断( CV=RV )功能实现此应用。
组态步骤:
先在设备与组态中,选择 CPU ,单击属性,激活高速计数器,并设置相关参数。此步骤必须实现执行, 1200 的高速计数器功能必须要先在硬件组态中激活,才能进行下面的步骤
添加硬件中断块,关联相对应的高速计数器所产生的预置值中断
在中断块中添加高速计数器指令块,编写修改预置值程序,设置复位计数器等参数
将程序下载,执行功能
1、硬件组态
选中 CPU
选择属性打开组态界面
激活高速计数功能
计数类型,计数方向组态
1 此处计数类型分为 3 种, Axis of motion( 运动轴 ),Frequency (频率测量),Counting( 计数 )。这里选择 Counting
2 模式分为 4 种: Single phase( 单相 ), Two phase (双相) , AB Quadrature 1X(A/B 相正交 1 倍速) , AB Quadrature 4X (A/B 相正交 4 倍速)。这里择 Single phase
3 输入源,这里使用的为 CPU 集成输入点。
4 计数方向选择,这里选用 User program (internal direction control) (内部方向控制)
5 初始计数方向。这里选择 Count up (向上计数)