loveplc

 找回密码
 立即注册
搜索
热搜: 活动 交友
查看: 206|回复: 0

SMART200时钟库指令的使用

[复制链接]

284

主题

317

帖子

986

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
986
发表于 2019-9-29 09:21:57 | 显示全部楼层 |阅读模式
使用 S7-200 SMART的 READ_RTC(读取实时时钟)和 SET_RTC(设置实时时钟)指令时, 读取和设置的数据格式都是 BCD 码的。如果觉得不便计算、处理,可使用 Clock Integer 指令库。
Clock_Integer 指令库用于将 BCD 码格式的 S7-200 SMART日期、时间转换为十进制整数格式,以及将十进制整数格式的日期、时间值设定为 S7-200 SMART时钟。
要使用 Clock_Integer 指令库,须遵循下列步骤:
  • 取得 Clock_Integer 指令库文件,并添加到编程软件 STEP 7-Micro/WIN SMART中;
  • 按照要求编写用户程序调用 Clock_Integer 指令库。
添加 Clock_Integer 指令库
下载 Clock_Integer 指令库到本地计算机硬盘, 然后将指令库库手动添加到STEP 7 Micro/WIN SMART软件中。
成功添加指令库后,用户可以在STEP7 Micro/win的指令树中找到‘Clock_Integer (v1.1)'
图1.Clock_Integer 库
Clock_Integer 指令库编程应用 - 读取系统时钟
1、调用 READ_RTC_I,读取 PLC 时钟 ,并将其转换为十进制整数格式
图 2. READ_RTC_I
表 1. READ_RTC_I参数
参数
数据类型
注释
EN
BOOL
信号为‘1’时激活库指令
Address
DWORD
起始偏移地址,转换为十进制格式的 PLC 时钟被保存在以此地址为起始地址的 8 个字节中
2、分配库存储区:
调用指令 READ_RTC_I 或 SET_RTC_I 后,必须定义 8个字节的 V 存储区为库存储区,库存储区分配过程如图3. 所示。
图 3. 分配库存储区
注意:库存储区分配地址不能与程序中其他部分使用的地址重叠!
表2. 字节时间缓冲区的格式
Address
Address+1

Address+2
Address+3
小时
Address+4
分钟
Address+5
Address+6
保留
Address+7
星期(1)
(1) 1 = 星期天;7 = 星期日;0 = 禁止星期
如图 2 所示,当 V50.0 为 ‘1’ 时,转换后的实时时钟被存储在 VB10 至 VB17 中。
注意:此指令库读取的整数格式时钟数据以连续字节的形式保存,而后续的整数运算需要一个字(两个字节)长度的数据。编程时要注意这一点。
Clock_Integer 指令库编程应用 - 设置系统时钟
1、调用 SET_RTC_I,将以十进制整数格式存储的日期时间设定为 PLC 时钟
图4.SET_RTC_I
参数
数据类型
注释
EN
BOOL
信号为‘1’时激活库指令
Address
DWORD
起始偏移地址,以此地址为起始地址的 8 个字节中,应已经存储着用户时间数据
表 3. SET_RTC_I 参数
8 字节时间缓冲区的格式同表 2。
2、分配库存储区:
调用指令 READ_RTC_I 或 SET_RTC_I 后,必须定义 8 个字节的 V 存储区为库存储区。

时钟库指令:

clock_integer.smartlib

3.48 KB, 下载次数: 0

时钟库指令

回复

使用道具 举报

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

本版积分规则

京ICP备17066637号-1|京公网安备|手机版|Archiver|小黑屋|loveplc

GMT+8, 2025-12-6 14:00 , Processed in 0.030251 second(s), 21 queries .

Powered by Discuz! Comsenz Inc.

© 2019 技高志远.

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