全新的西门子S7-1500PLC 带来了标准型,紧凑型,分布式以及开放式不同类型的 CPU 模块。凭借快速的响应时间、集成的 CPU 显示面板以及相应的调试和诊断机制,SIMATIC S7-1500 的 CPU *地提升了生产效率,降低了生产成本。
产品简介
详细介绍
安徽西门子S7-1500PLC模块(代理商)
如何在S7-200CPU断电后保持高速计数器的当前值
1 问题描述
S7-200 的断电数据保持不支持高速计数器的范围设置,因此高速计数器的当前值在CPU每次断电后都会复位为数值0。要使S7-200高速计数器的当前值在CPU断电重启后依然保持,可以通过以下的编程来实现。
2 实现方法
在此以高速计数器0的模式1为例来说明如何在S7-200 CPU断电后保持高速计数器的当前值,具体可参考以下三个部分的编程来实现:
首先,在除了*个扫描周期之外的其它周期,将高速计数器0的当前值HC0传送到寄存器VD1000中,如下图1所示,以保证寄存器VD1000始终存储的是HC0的当前值。
图1 传送当前值到寄存器
其次,在上电的*周期将寄存器VD1000存储的数值传送到高速计数器的当前值,保证高速计数器以VD1000为初始值开始计数,并初始化高速计数器0,如下图2所示:
图2 初始化HSC0
后,在系统块的断电数据保持处设置寄存器VD1000为断电保持区域,如下图3所示。需要注意的是CPU224及其以上的型号多支持100个小时(理论值)的断电保持时间,如果断电时间超过100个小时的话,可以考虑增加电池卡;或者将当前值保存到MB0-MB13这14个字节的存储单元。
图3 设置断电数据保持
西门子S7-200高速计数器向导?
高速计数器向导
在 Micro/WIN 中的命令菜单中选择 Tools(工具) > Instruction Wizard(指令向导),然后在指令窗口中选择 HSC 向导,
图1.选择 HSC 向导
*步,项目编译无错误后,选择HSC编号和模式
图2. 高速计数器及模式选择
第二步,配置初始化信息
图3. HSC 初始化选项
在上图中:
- 为初始化子程序命名,或者使用默认名称。
- 设置计数器预置值:可以为整数、双字地址或 符号名:如 5000、VD100、PV_HC1。用户可使用全局符号表中双字整数对应的符号名。如果用户输入的符号名尚未定义,点击‘下一步’后会看到:
点击‘Yes’。
填入地址和注释,注意:地址必须为双字地址, 注释可以不填。
- 设置计数器初始值:可以为整数、双字地址或符号名:5000、VD100、CV_HC1。
- 初始化计数方向:增,减。
- 对于带外部复位端的高速计数器,可以设定复位信号为高电平有效或者低电平有效。
- 对于带外部启动端的高速计数器,可以设定启动信号为高电平有效或者低电平有效。如果使用的高速计数器或工作模式没有外部复位或启动端,则对应选项为虚。
- 使用A/B相正交计数器时,可以将计数频率设为1倍速或4倍速。使用非A/B相正交计数器时,此项为虚。
注意:所谓“高/低电平有效”指的是在物理输入端子上的有效逻辑电平,即可以使 LED 灯点亮的电平。这取决于源型/漏型输入接法,并非指实际电平的高、低。
第三步:配置中断事件及步骤总数:
图 4.配置中断及步骤
如图 4 所示,一个高速计数器多可以有 3 个中断事件,在白色方框中填写中断服务程序名称或者使用默认名称:
在这里配置的中断事件并非必须,系由用户根据自己的控制工艺要求选用。
- 外部复位输入有效值是中断,如果使用的高速计数器模式不具有外部复位端,则此项为虚。
- 方向控制输入状态改变时的中断,有以下 3 种情况会产生该中断:
- 单项计数器的内部或外部方向控制位改变瞬间
- 双相计数器增、减时钟交替的瞬间
- A/B相脉冲相对相位(超前或滞后)改变时瞬间
- 当前值等于预置值时产生的中断,通过向导,可以在该中断的服务程序中重新设置高速计数器的参数,如预置值、当前值。一个这样的过程称为‘一步‘。
- 填写 HSC 的步数,多可以设置 10 步。
第五步、定义高速计数器每一步中的操作:
图 5. HSC 第 1 步
在这里配置的是当前值等于设定值中断的服务程序中的操作:
- 向导会自动为当前值等于预置值匹配一个新的中断服务程序,用户可以对其重新命名,或者使用默认的名称。
- 勾选后,用户在右侧输入新的预置值。
- 勾选后,用户在右侧输入新的当前值。
- 如果选用的高速计数器模式有内部方向控制位。
- 点击‘下一步‘,继续配置其余步。
第六步、完成向导:
图 6. 完成向导
第七步、调用子程序:
注意:
- HSC_INIT 为初始化子程序,请在主程序块中使用 SM0.1 或一条边沿触发指令调用一次此子程序。
- 向导生成的中断服务程序及子程序都未上锁,用户可以根据自己的控制需要进行修改。
安徽西门子S7-1500PLC模块(代理商)