电工学习网

 找回密码
 立即注册
查看: 13311|回复: 0
打印 上一主题 下一主题

西门子PLC带断电保持功能的那些事

[复制链接]
跳转到指定楼层
楼主
发表于 2018-3-31 15:24:29 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
    西门子200(200 smart);300;400以及s7-1200;s7-1500系列的plc均具有带断电保持功能,通过设置或者编辑相应的程序均能够满足这一需求。但在某一些场合的应用不仅仅只是设置断电保持区域就可以应用的,如、高速计数器的当前计数值。
   下面分别说说这些高速计数器然后通过程序来保持高速数据的方式:
200的程序:(因为200已经离我们渐行渐远了,就以200smart举例)
1)  在初始化高速计数时,需要设置高速计数器的控制字节SMB37(47、57、137),其中如、SMB37.6(更新当前值必须设置为1);
2)  在预设高速计数器的当前值(SMD38)必须使用寄存器地址,而不能够使用常数,这里寄存器地址为VD0;
3)  然后在主程序中编辑始终传送高速计数器的计数值到VD0;
4)  将VD0地址设置为断电保持区;
程序例子:
1)高速计数器初始化子程序
西门子PLC带断电保持功能的那些事


2)主程序调用高速计数器初始化子程序及初始高速计数器的计数值
西门子PLC带断电保持功能的那些事


3)将VD0在系统块中设置为断电保持区
西门子PLC带断电保持功能的那些事


5)  将程序及系统设置下载到cpu中验证
300、400的程序:以S7-315-2DP+FM350-2(8通道)高速计数器模块,来说明如何将高速计数器的计数值做带断电保持功能
1)首先组态300站点及添加高速计数器模块、分配参数(略)
2)根据FM350-2高速计数器各通道的数据分配,1~8通道的实时数据分别对应到DB1.DBD148~DB1.DBD204的当前值、DB1.DBD52~DB1.DBD80的装载值
3)创建带断电保持的数据块,如、DB5(数据块使用默认值均带断电保持型)
4)创建初始化组织块OB100
5)在主程序中调用高速计数器的控制程序及高速计数器的数据传送
6)在初始化组织块OB100中传送断电后的原始数据
程序:
1)  创建数据块(按高速计数器的数据类型创建)DINT
西门子PLC带断电保持功能的那些事


2)  在OB1中调用的数据传送
西门子PLC带断电保持功能的那些事


3)  OB100中编辑上电初始时的原始数据传送,将原值装载到高速计数器的装载寄存器地址中
西门子PLC带断电保持功能的那些事


   这样,当300cpu重新上电时,由于OB100(初始化组织块)的功能将断电前的数据重新装载到高速计数器的装载值中,实现了带断电保持的功能。
本文转载自:西门子工业技术论坛

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

电工学习网 ( )

GMT+8, 2024-4-26 02:51

Powered by © 2011-2022 www.diangon.com 版权所有 免责声明 不良信息举报

技术驱动未来! 电工学习网—专业电工基础知识电工技术学习网站。

栏目导航: 工控家园 | 三菱plc | 西门子plc | 欧姆龙plc | plc视频教程

快速回复 返回顶部 返回列表