网站首页
手机版

笔记——S7300400的SFC和SFB功能说明

更新时间:作者:小小条

此为笔记,记下搜索到的资料。

SFC和SFB使用于STEP 7 中,在博图中可以根据名称在指令中进行查找。

西门子官家地址:

笔记——S7300400的SFC和SFB功能说明

https://cache.industry.siemens.com/dl/files/604/44240604/att_67026/v1/s7sfc__k.pdf

知乎地址:

https://zhuanlan.zhihu.com/p/639604144

系统功能(SFC)和系统功能块(SFB)是集成在西门子S7 CPU操作系统中的预定义程序模块,用户可在用户程序中直接调用它们来实现特定的系统级操作。

SFC(System Function,系统功能)
SFC属于操作系统的一部分,不作为用户程序的一部分下载到CPU。它们类似于函数(FC),没有自己的存储区(即无静态数据),但提供了对关键系统功能的访问能力。常见的SFC包括:

SFC 2~4:用于实时时钟操作,如设置、读取和控制运行时间表 [4]。SFC 14 "DPRD_DAT" 和 SFC 15 "DPWR_DAT":用于通过PROFIBUS DP接口读写从站数据 [3]。SFC 20 "BLKMOV" 和 SFC 21 "FILL":用于块移动和填充数据区域 [4]。SFC 30~34:用于中断管理,例如激活、取消或查询延时中断 [4]。SFC 58 "WR_REC" 和 SFC 59 "RD_REC":用于向I/O设备写入或从中读取记录数据,在PROFINET IO中已被SFB替代 [5]。 这些功能通常用于执行一次性任务或获取系统信息,调用时不需要实例数据块。

SFB(System Function Block,系统功能块) 与FB类似,SFB也是“具有内存”的块,并且必须为其创建实例数据块(Instance DB),该DB作为程序的一部分下载到CPU中。常见的SFB包括:

计数器类:如 SFB0 (CTU)、SFB1 (CTD)、SFB2 (CTUD),提供增计数、减计数及双向计数功能 [2]。定时器类:如 SFB3 (TP) 脉冲定时器、SFB4 (TON) 接通延时定时器、SFB5 (TOF) 断开延时定时器 [2]。通信类:SFB8/9 ("USEND"/"URCV") 和 SFB12/13 ("BSEND"/"BRCV") 支持异步数据传输;SFB14 ("GET") 和 SFB15 ("PUT") 实现远程CPU的数据读写;SBF20 ("STOP") 可将远程站点设置为STOP状态; 这些通信服务支持高达64 KB的数据传输,并可通过多种网络协议(如PROFINET、工业以太网等)进行组态连接 [3]。 此外,在顺序控制系统中,PCS7环境下的顺序控制图表可基于"SFC类型 AM"或"SFC计划 AM"等模板构建,并通过模式指示器显示自动(A)/手动(M)状态以及运行(RUN)、完成(COMPLETED)、错误(ERROR)等详细操作状态 [1][6]。 综上所述,两者均提供高效可靠的标准化接口以简化编程工作;区别在于是否需要关联实例DB——这是使用前需注意的关键点之一。

具体罗列出来:

编号

名称缩写

功能

SFC0

SET_CLK

设系统时钟

SFC1

READ_CLK

读系统时钟

SFC2

SET_RTM

运行时间定时器设定

SFC3

CTRL_RTM

运行时间定时器启/停

SFC4

READ_RTM

运行时间定时器读取

SFC5

GADR_LGC

查询模板的逻辑起始地址

SFC6

RD_SINFO

读OB启动信息

SFC7

DP_PRAL

在DP主站上触发硬件中断

SFC9

EN_MSG

使能块相关、符号相关的和组状态的信息

SFC10

DIS_MSG

禁止块相关的、符号相关的和组状态信息

SFC11

DPSYC_FR

同步DP从站组

SFC12

D_ACT_DP

取消和激活DP从站

SFC13

DPNRM_DG

读DP从站的诊断数据(从站诊断)

SFC14

DPRD_DAT

读标准DP从站的连续数据

SFC15

DPWR_DAT

写标准DP从站的连续数据

SFC17

ALARM_SQ

生成可确认的块相关信息

SFC18

ALARM_S

生成恒定可确认的块相关信息

SFC19

ALARM_SC

查询最后的LAARM_SQ到来的事件信息的应答状态

SFC20

BLKMOV

拷贝变量

SFC21

FILL

初始化存储区

SFC22

CREAT_DB

生成DB

SFC23

DEL_DB

删除DB

SFC24

TEST_DB

测试DB

SFC25

COMPRESS

压缩用户内存

SFC26

UPDAT_PI

刷新过程映像输入表

SFC27

UPDAT_PO

刷新过程映像输出表

SFC28

SET_TINT

设置日时钟中断

SFC29

CAN_TINT

取消日时钟中断

SFC30

ACT_TINT

激活日时钟中断

SFC31

QRY_TINT

查询日时钟中断

SFC32

SRT_DINT

启动延时中断

SFC33

CAN_DINT

取消延时中断

SFC34

QRY_DINT

查询延时中断

SFC35

MP_ALM

触发多CPU中断

SFC36

MSK_FLT

屏蔽同步故障

SFC37

DMSK_FLT

解除同步故障屏蔽

SFC38

READ_ERR

读故障寄存器

SFC39

DIS_IRT

禁止新中断和非同步故障

SFC40

EN_IRT

使能新中断和非同步故障

SFC41

DIS_AIRT

延迟高优先级中断和非同步故障

SFC42

EN_AIRT

使能高优先级中断和非同步故障

SFC43

RE_TRIGR

再触发循环时间监控

SFC44

REPL_VAL

传送替代值到累加器1

SFC46

STP

使CPU进入停机状态

SFC47

WAIT

延迟用户程序的执行

SFC48

SNC_RTCB

同步子时钟

SFC49

LGC_GADR

查询一个逻辑地址的模块槽位的属性

SFC50

RD_LGADR

查询一个模块的全部逻辑地址

SFC51

RDSYSST

读系统状态表或部分表

SFC52

WR_USMSG

向诊断缓冲区写用户定义的诊断事件

SFC54

RD_PARM

读取定义参数

SFC55

WR_PARM

写动态参数

SFC56

WR_DPARM

写默认参数

SFC57

PARM_MOD

为模块指派参数

SFC58

WR_REC

写数据记录

SFC59

RD_REC

读数据记录

SFC60

GD_SND

全局数据包发送

SFC61

GD_RCV

全局数据包接收

SFC62

CONTROL

查询通讯的连接状态

SFC63

AB_CALL

汇编代码块

SFC64

TIME_TCK

读系统时间

SFC65

X_SEND

向本地S7站之外的通讯伙伴发送数据

SFC66

X_RCV

接收本地S7站之外的通讯伙伴发送的数据

SFC67

X_GET

读取本地S7站之外的通讯伙伴的数据

SFC68

X_PUT

写数据到本地S7站之外的通讯伙伴

SFC69

X_ABORT

中断与本地S7站之外的通讯伙伴已建立的连接

SFC72

I_GET

读取本地S7站内的通讯伙伴的数据

SFC73

I_PUT

写数据到本地S7站内的通讯伙伴

SFC74

I_ABORT

中断现与本地S7站内的通讯伙伴已建立的连接

SFC78

OB_RT

确定OB的程序运行时间

SFC79

SET

置位输出范围

SFC80

RSET

复位输出范围

SFC81

UBLKMOV

不间断拷贝变量

SFC82

CREA_DBL

在装载存储器中生成DB块

SFC83

READ_DBL

读装载存储器中的DB块

SFC84

WRIT_DBL

写装载存储器中的DB块

SFC87

C_DIAG

实际连接状态的诊断

SFC90

H_CTRL

H系统中的控制操作

SFC100

SET_CLKS

设日期时间和日期时间状态

SFC101

RTM

运行时间记时器

SFC102

RD_DPARA

读取预定义参数(重新定义参数)

SFC103

DP_TOPOL

识别DP主系统中总线的拓扑

SFC104

CiR

控制CiR

SFC105

READ_SI

读取动态系统资源

SFC106

DEL_SI

删除动态系统资源

SFC107

ALARM_DQ

生成可确认的块相关信息

SFC108

ALARM_D

生成恒定可确认的块相关信息

SFC126

SYNC_PI

同步刷新过程映像区输入表

SFC127

SYNC_PO

同步刷新过程映像区输出表


编号

名称缩写

功能

SFB0

CTU

加大记数

SFB1

CTD

减记数

SFB2

CTUD

加/减记数

SFB3

TP

定时脉冲

SFB4

TON

延时接通

SFB5

TOF

延时断开

SFB8

USEND

非协调数据发送

SFB9

URCV

非协调数据接收

SFB12

BSEND

段数据发送

SFB13

BRCV

段数据接收

SFB14

GET

向远程CPU写数据

SFB15

PUT

从远程CPU读数据

SFB16

PRINT

向打印机发送数据

SFB19

START

在远程装置上实施暖启动或冷启动

SFB20

STOP

将远程装置变为停止状态

SFB21

RESUME

在远程装置上实施暖启动

SFB22

STATUS

查询远程装置的状态

SFB23

USTATUS

接收远程装置的状态

SFB29

HS_COUNT

计数器(高速计数器,集成功能)

SFB30

FREQ_MES

频率计(频率计,集成功能)

SFB31

NOTIFY_8P

生成不带确认显示的块相关信息

SFB32

DRUM

执行顺序器

SFB33

ALARM

生成带确认显示的块相关信息

SFB34

ALARM_8

生成不带8个信号值的块相关信息

SFB35

ALARM_8P

生成带8个信号值的块相关信息

SFB36

NOTIFY

生成不带确认显示的块相关信息

SFB37

AR_SEND

发送归档数据

SFB38

HSC_A_B

计数器A/B转换

SFB39

POS

定位(集成功能)

SFB41

CONT_C

连续调节器

SFB42

CONT_S

步进调节器

SFB43

PULSEGEN

脉冲发生器

SFB44

ANALOG

带模拟输出的定位

SFB46

DIGITAL

带数字输出的定位

SFB47

COUNT

计数器控制

SFB48

FREQUENC

频率计控制

SFB49

PULSE

脉冲宽度控制

SFB52

RDREC

读来自DP从站的数据记录

SFB53

WRREC

向DP从站写数据记录

SFB54

RALRM

接收来自DP从站的数据记录

SFB60

SEND_PTP

发送数据(ASCⅡ,3964(R))

SFB61

RCV_PTP

接收数据(ASCⅡ,3964(R))

SFB62

RES_RECV

清除接收缓冲区(ASCⅡ,3964(R))

SFB63

SEND_RK

发送数据(RK512)

SFB64

FETCH_RK

获取数据(RK512)

SFB65

SERVE_RK

接收和提供数据数据(RK512)

SFB75

SALRM

向DP从站发送中断

一些系统功能和系统功能块只用于特殊CPU中。

版权声明:本文转载于今日头条,版权归作者所有,如果侵权,请联系本站编辑删除

为您推荐

杭州男子从殡仪馆打来电话:能不能写写我们的天才儿子

写在前面 阳光很好的一天,金晓宇陪着父亲来报社送照片。目送他们远去的背影,我想到,站在眼前的是一个天才翻译家和他的父亲。 了解他们的故事,你会潸然泪下。这诚然是一个悲伤

2025-12-23 18:08

中考黑幕曝光!重高学姐含泪揭秘:初中各科的淘汰顺序太准了

“姐,我数学又考砸了,是不是真的不是学理科的料?”刚上初二的表妹发来消息,附带一张满是红叉的试卷。看着屏幕,我瞬间想起三年前的自己——初二上学期,数学从90多分掉到60分,物理刚

2025-12-23 18:08

2017年高考明日开始 今年起陕西省不再分AB卷

西安考生持准考证,可免费坐地铁、公交车、出租车咸阳高考期间对机动车实施自主限行,今日限行尾号0、1、22017年全国普通高考明天举行,华商报记者昨日从陕西省招办获悉,今年陕西

2025-12-23 18:08

特殊值巧解高考数学真题!(关注送李永乐高中数学视频)

(2023全国甲卷理数第4题) 若等比数列 {an}{an} 满足 a2a4=1a2a4=1,则 a1a32a5=a1a32a5= 特殊值:取 an=1an=1(常数列),显然满足条件,直接得 a1a32a5=1a1a32a5=1。2.(2022新高考Ⅰ卷

2025-12-23 18:07

11月18日,这项成绩可查!

公 告2025 年江西省成人高校招生考试成绩查询通道即将开启,为方便大家及时获取成绩、顺利办理成绩复核相关事宜,现将具体安排公告如下。一、成绩公布时间。我省2025年成人高考

2025-12-23 18:07

最低100分,江西2025年成人高校招生录取控制分数线划定

今视频客户端讯 12月1日,江西省教育考试院公布2025年成人高校招生录取控制分数线,最低100分。2025年江西省成人高校招生各层次科类录取控制分数线具体如下:高中起点升专科的文

2025-12-23 18:07