SFC51功能块的使用说明

上传人:壹****1 文档编号:509553519 上传时间:2023-06-25 格式:DOC 页数:11 大小:1.07MB
返回 下载 相关 举报
SFC51功能块的使用说明_第1页
第1页 / 共11页
SFC51功能块的使用说明_第2页
第2页 / 共11页
SFC51功能块的使用说明_第3页
第3页 / 共11页
SFC51功能块的使用说明_第4页
第4页 / 共11页
SFC51功能块的使用说明_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《SFC51功能块的使用说明》由会员分享,可在线阅读,更多相关《SFC51功能块的使用说明(11页珍藏版)》请在金锄头文库上搜索。

1、1 SFC 51简介11 程序功能介绍通过系统功能SFC 51 RDSYSST读(取系统状态),可以读取系统状态列表或部分系统状态列表,例如指示灯状态,序列号,从站状态等等。调用 SFC 51时,通过将值 “1赋”给输入参数REQ来启动读取。如果可以立即读取系统状态,则SFC将在 BUSY输出参数中返回值0。如果 BUSY包含值 1,则尚未完成读取功能。表 1 SFC51参数说明参数描述REQ输入参数REQ = 1:启动处理SSL_ID输入参数将要读取的系统状态列表或部分列表的ID 号INDEX输入参数部分列表中对象的类型或编号。RET_VAL输出参数如果执行 SFC时出错,则 RET_VAL

2、参数将包含错误代码。BUSY输出参数:尚未完成读取。TRUELENTHDR是 SSL列表或 SSL部分列表的数据记录的长度。SSL_HEADER输出参数? 如果仅读取了 SSL列表的标题信息,则N_DR 包含属于它的数据记录数。? 否则, N_DR包含传送到目标区域的数据记录数。SSL列表读取或 SSL部分列表读取的目标区域:? 如果仅读取了 SSL列表的标题信息,DR输出参数则不能评估 DR 的值,而只能评估 SSL_HEADER的值。? 否则, LENTHDR和 N_DR的乘积将指示已在 DR 中输入了多少字节。2 读取 CPU指示灯可以通过 SFC 51读取 CPU的指示灯状态,使用的S

3、SL_ID参数为 16#74( 16#19)读取全部指示灯状态或者 16#174(16#119 )读取单个指示灯状态编程首先需要创建一个数据块,用来存放读取出来的指示灯状态结果图 1 创建 DB1,存放读取结果打开 OB1,在 OB1 的临时变量区创建一个变量length ,类型设置为Struct (结构)图 2双击创建名为 length 的结构变量length 变量,进入结构变量成员定义,创建两个word类型的变量,本例中分别为size 和 number :图 3 创建 length 的结构变量的两个 word 成员编写 SFC51程序:CALL RDSYSSTREQ :=TRUESZL_I

4、D :=W#16#74 /读取全部指示灯状态INDEX :=W#16#0RET_VAL :=MW0BUSY :=SZL_HEADER:=#lengthDR :=P# BYTE 500 /结果输出到 DB1 数据块中DB1 存放的结果即为模块的指示灯状态,每个指示灯有4 个字节的长度来描述。前两个字节表示灯的类型(见表二),表示是SF灯还是 BF 灯等等。第三个字节表示灯是亮还是灭,如果为1 则灯亮,如果为 0 则灯的状态是灭。第四个字节表示灯是否闪烁,0 表示不闪, 1 表示正常闪烁( 2hz), 2,表示慢闪()灯的类型列表如下 (不同的 CPU会有不同数目的指示灯):表 2 前两个字节的含

5、义16#1SF16#2INTF16#3EXTF16#4RUN16#5STOP16#6FORCE16#7CRST16#8BAF16#9USR16#AUSR116#BBUS1F16#CBUS2F16#DREDF16#EMSTR注意事项:关于系统功能SFC51的更多详情请参阅STEP 7的在线帮助,或者通过Start SIMATIC DOCUMENTATION选择手册“ System Software for S7-300/400 System and Standard Funct ions ”3 读取 Profibus DP 从站状态编程首先需要创建一个数据块,用来存放读取出来的状态结果图 4创建

6、 DB1,存放读取结果打开OB1,首先在 OB1 的临时变量区创建一个变量length ,类型设置为Struct (结构)图 5双击创建名为 length 的结构变量length 变量,进入结构变量成员定义,创建两个word类型的变量,本例中分别为size 和 number :图 6 创建 length 的结构变量的两个 word 成员编写 SFC51程序:CALL RDSYSSTREQ :=TRUESZL_ID :=W#16#294 /读取从站是否存在INDEX :=W#16#1RET_VAL :=MW0BUSY :=SZL_HEADER:=#lengthDR :=P# BYTE 500 /

7、结果输出到DB1 数据块中在本例中, P# BYTE 500中为每个DP 从站 (16 x 8 = 128)保留一位,地址为Address 1 的 DP从站的状态保存在第三个字节的 Bit 1 位中 , 地址为 Address 3 的 DP 从站的状态保存在第三个字节的Bit 3 位中 ,依次类推。如果从站对应的位未被置位,则表明那个DP 从站没有通信上或不存在。举例:从开始,每个位对应一个bit ,例如 3 号站对应的位是,站点存在的位为1,不存在的为0。注意事项:关于系统功能SFC51的更多详情请参阅STEP 7的在线帮助,或者通过Start SIMATIC DOCUMENTATION选择

8、手册“ System Software for S7-300/400 System and Standard Functions”4 读取 CPU 的序列号编程说明:通过SFC 51“RDSYSST可”以从系统状态列表(SSL)中读取下列标识数据:下面的表格指明了可以从不同型号和固件版本的CPU 读取其它哪些标识数据。为此使用SFC 51 和 SSL IDW#16#011C。表 3 INDEX 说明索引名称S7-300/C7S7-400W#16#0001自动化系统的名称从固件版本 起支持W#16#0002CPU的名称从固件版本 起支持W#16#0003CPU的设备 ID从固件版本 起支持W#16#0004版权条目从固件版本 起支持W#16#0005CPU的序列号从固件版本 起从 MLFB6ES741x-xxx04-0AB0起W#16#0006为操作系统保留-W#16#0007CPU型号名称-支持W#16#0008MMC 或 MC 的序列号从固件版本 起-(参见条目号: )(CPU317:从 开始 )需要注意,老CPU 升级到上表版本也无法实现此功能。首先需要创建一个数据块,用来存放读取出来的状态结果图 7创建 DB1,存放读取结果打开OB1,首先在

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 幼儿教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号