温馨提示:可通过文末“下载附件”窗口获取学习资料。
1 应用概述
1.1 通用描述
本文档介绍基于 S7-200 SMART 开发的速度跟随库,该库可以使脉冲输出的从轴跟 随编码器主轴的速度作同步速度运动,应用于对精度和速度要求不高的需要类似于 追剪功能的同速运动场合,比如食品加工中跟随切割,立式包装中跟随热封切等应 用,模块化的结构更易于重复调用,提高程序开发的效率。
1.2 硬件及软件需求
本应用软硬件的需求
为了使得本应用案例成功运行,必须满足以下硬件和软件需求。
硬件
S7-200 SMART CPU 控制器:
- SIMATIC S7-200 SMART 产品家族 V2.7
软件
- STEP 7-Micro/WIN SMART V2.7
2 S7-200 SMART 速度跟随库
2.1 速度跟随库
图 1 速度跟随库
库引脚
参数 &类型 | 数据类型 | 描述 | |
EN | BOOL | 使能 | |
runFlw | IN | BOOL | 随动轴随动启动 |
perimeter | IN | REAL | 主动轴负载机械部件周长(mm) |
resolution | IN | REAL | 主动轴编码器分辨率(一周脉冲数,单 位 P/R) |
hscValue | IN | DINT | 高速计数器当前值 |
trigPos | IN | DINT | 主动轴传感器触发位置(进入追随区间) |
velPresFlw | IN | REAL | 随动轴当前实时速度 |
posPresFlw | IN | REAL | 随动轴当前实时位置 |
velFlw | OUT | REAL | 随动轴目标随动速度 |
done | OUT | BOOL | 完成标志位 |
2.2 速度跟随库使用说明
库中包含 Follow_Velocity_Axis0,Follow_Velocity_Axis1,Follow_Velocity_Axis2 三个库文件以及 Follow_Velocity_Demo 一个示例程序。 本速度跟随库只能正向单方向使用,不能反方向使用或者双向使用。 如果主动轴编码器是增量型的,使用本速度跟随库时,需要另外编写 HSC 清零程序。 使用向导组态高速计数器时,如果计数速率选择 4X,则速度相应也会变成 4 倍关系。 如需多次调用本库的话,建议依次调用 Follow_Velocity_Axis0.smartlib, Follow_Velocity_Axis1.smartlib,Follow_Velocity_Axis2.smartlib 三个库文件,并分 别分配不同的库存储区。
库存储区默认占用 156 字节,速度表元素最大个数默认 10 个,但预留了 20 个位置, 如果需要更多的话则需要自行更改相关库程序。
库的内部参数只适合于库开发测试时的工艺环境和设备要求,可能不适合其他场合, 输入密码 SMART 后可以对库的内部参数赋新值,以适应现场不同工艺不同设备的 要求,部分参数值需要在现场多次测试后才能确定。内部参数见下表:
符号 | 注释 | 说明 |
hscValueMax | 高速计数器最大值 | 建议设为超过一个动作周 期的主动轴脉冲如 32767 |
encoderDiffNegLmt | 主动轴编码器负方向差值 限制 | |
计算移动平均值的数组长 度,建议值 10 | ||
encoderAveVelFactorMax | 主动轴平均速度最大值系 数 | 是否跟随成功判断标准, 参考值 1.1 |
是否跟随成功判断标准, 参考值 0.9 | ||
targetPositionLmt | 定位目标距离下限 | 按最小加速时间计算的速 度同步前主动轴大致运行 距离,单位 mm |
ishSRTR | S_RTR 输入上限 | 用于修正速度,经验值 |
islSRTR | S_RTR 输入下限 | 用于修正速度,经验值 |
oshSRTR | S_RTR 输出上限 | 用于修正速度,经验值 |
oslSRTR | S_RTR 输出下限 | 用于修正速度,经验值 |
3 S7-200 SMART 速度跟随库 DEMO 程序
3.1 步骤一
通过向导组态高速计数器(主动轴)和轴 0(随动轴)。
图 2 组态高速计数器(主动轴)
图 3 组态轴 0(随动轴)
3.2 步骤二
设置编码器参数和轴参数。
图 4 编码器参数
图 5 轴参数
3.3 步骤三
把库文件复制到库文件夹并刷新库。
图 6 库文件夹
3.4 步骤四
建立一个中断程序,在中断程序中调用库,并给库分配合适的库存储器,之后给库 的引脚填写相应参数变量。
图 7 中断程序中调用库
3.5 步骤五
建立一个子程序,在子程序中设置时间中断参数,并将之前的中断程序和定时中断 事件关联后启用中断。
图 8 关联中断程序
3.6 步骤六
使用 CTRL 指令启动和初始化跟随轴,并使用 DIS 指令使能轴,接着使用 RSEEK 指令寻完原点之后使用 MAN 指令让轴按照计算出的随动速度运行。退出跟随后用 GOTO 指令返回原点,等待下一个同步周期开始。指令用法参考 DEMO 程序及 S7-200 V2.7 系统手册。
图 9 编写随动轴运动程序
3.7 步骤七
编写主程序。
图 10 编写主程序
3.8 步骤八
调试程序,并根据现场工艺和设备要求,输入密码 SMART 后对库的内部参数赋新 值。
4 更新日志
法律信息
应用实例的使用
应用实例说明了通过文本、图形和/或软件模块形式的几个组件的交互来实现自动化任务的解决 方案。本应用程序示例是由西门子公司和/或西门子公司(以下简称“西门子”)的子公司提供的免费服 务。它们是非约束性的,并且不声明关于配置和设备的完整性或功能性。应用程序示例仅提供典型 任务的帮助;它们并不构成客户特定的解决方案。您有责任按照适用的法规,对产品的正确和安全操 作负责,并必须检查相应的应用示例的功能,并为您的系统定制它。
西门子授予您非排他性、不可再授权和不可转让的权利,让经过技术培训的人员使用应用示例。 对应用程序示例的任何更改都由您负责。与第三方共享应用示例,或复制应用示例或摘录,仅允许 与您自己的产品结合使用。该应用实例无须接受收费产品的惯常测试和品质检验;它们可能有功能和 性能缺陷以及错误。您有责任使用它们,使任何可能发生的故障不会导致财产损失或人身伤害。
免责声明
由于任何法律原因,Siemens 不承担任何责任,包括但不限于对应用示例的可用性、可用性、 完整性和不存在缺陷以及相关信息、配置和性能数据以及由此造成的任何损害承担责任。这个不适 用强制责任的情况下,例如在德国的产品责任法,或意图的情况下,重大过失,或有罪的生命损失,人身 伤害或损坏健康,不符合担保,欺骗性的非披露缺陷或有罪的违反合同义务。但因违反重大合同义务 而提出的损害赔偿要求应限于协议类型的典型可预见损害,但因故意或重大过失或基于生命损失、 身体伤害或健康损害而产生的责任除外。上述规定并不意味着对你不利的举证责任的任何改变。对 于第三方在此方面的现有或未来索赔,您应向西门子作出赔偿,除非西门子负有强制责任。
通过使用应用示例,您承认西门子对上述责任条款之外的任何损害不承担责任。
其他信息
西门子保留随时更改应用示例的权利,无需另行通知。如果应用实例中的建议与其他西门子出 版物(如目录)之间存在差异,则应优先考虑其他文件的内容。
安全信息
西门子提供具有工业安全功能的产品和解决方案,支持工厂、系统、机器和网络的安全运行。 为了保护工厂、系统、机器和网络免受网络威胁,有必要实施——并持续维护——一个整体的、 最先进的工业安全概念。西门子的产品和解决方案构成了这一概念的一个元素。
客户有责任防止对其工厂、系统、机器和网络的未经授权的访问。
这些系统、机器和组件只应在必要的情况下连接到企业网络或 Internet,并且只有在适当的安 全措施(例如防火墙和/或网络分割)到位的情况下才应连接到这种连接。有关可能实施的工业保安措 施的其他资料,请浏览 https://www.siemens.com/industrialsecurity.
西门子的产品和解决方案经过不断的发展,使其更加安全。西门子强烈建议,一旦产品更新可 用,就立即应用产品更新,并使用最新的产品版本。使用不再受支持的产品版本以及未能应用最新 更新可能会增加客户遭受网络威胁的风险。
了解产品更新,请订阅西门子工业安全 RSS Feed:https://www.siemens.com/industrialsecurity.