17西门子各组织块详解

合集下载

西门子OB块使用说明

西门子OB块使用说明
OB86
OB87 OB88 OB90
1-2
循环中断3(默认时间间隔:500ms) 10
循环中断4(默认时间间隔:200ms) 11
循环中断5(默认时间间隔:100ms) 12
循环中断6(默认时间间隔:50ms) 13
循环中断7(默认时间间隔:20ms) 14
循环中断8(默认时间间隔:10ms) 15
STEP 7 激活日期时间中断的基本可能性。
• 您可以在STEP 7 中设置日期时间中断,然后通过程序调用SFC30
“ACT-TINT”,激活日期时间中断。
• 您可以通过调用SFC28 “ SET_TINT ” 设置日期时间中断,通过调用SFC30
“ACT_TINT”,激活日期时间中断。
时间间隔 没有激活
过程中断
28
暖或冷启动或删除一个正在OB90 292)
中执行的块或装载一个OB90 到CPU
或中止OB90
硬件中断
DPV1 中断 多处理器中断 同步循环中断 冗余故障中断 同步故障中断
背景循环
OB OB100 OB101 OB102
OB121
OB122
启动事件 暖启动 热启动 冷启动
编程故障
I/O 访问故障
中断OB1 的执行。以下事件可导致操作系统调用OB1:
• CPU 启动完毕。 • OB1 执行到上一个循环周期结束。 OB1 执行完后,操作系统发送全局数据。再次启动OB1 之前,操作系统会将
输出映像区数据写入输出模板,刷新输入映像区并接收全局数据。S7 监视最
长循环时间,保证最长的响应时间。最长循环时间缺省设置为150ms。您可以
设一个新值或通过SFC43“RE_TRIGR”重新启动时间监视功能。如果您的程序

西门子 PLC中OB、FC、FB、SFC、SFB中功能块

西门子 PLC中OB、FC、FB、SFC、SFB中功能块

西门子 PLC中OB、FC、FB、SFC、SFB中功能块使用概述(2013-12-05 16:13:52)S7-300/400PLC程序采用结构化程序,把程序分成多个模块,各模块完成相应的功能。

结合起来就能实现一个复杂的控制系统。

就像高级语言一样,用子程序实现特定的功能,再通过主程序调用各子程序,从而能实现复杂的程序。

在S7-300/400PLC中写在OB1模块里和程序就是主程序,子程序写在功能(FC),功能块(FB)。

FC运行是产生临时变量执行结束后数据就丢失-----不具有储存功能FB运行时需要调用各种参数,于是就产生了背景数据块DB。

例如用FB 41来作PID控制,则它的PID控制参数就要存在DB里面。

FB具有储存功能系统功能块(SFB)和系统功能(SFC)也是相当于子程序,只不过SFB 和SFC是集成在S7 CPU中的功能块,用户能直接调用不需自已写程序。

SFC与FC不具有储存功能,FB和SFB具有储存功能。

OB模块相当于子程序,负责调用其他模块。

如果程序简单只需要OB就可以实现。

用西门子PLC编程时,可以用到功能块FB和功能FC(FB、FC都是组织块)资料上说FB与FC都可以作为用户编写的子程序,但是我不明白这两个组织块之间到底有什么区别阿?在应用上到底有什么不同之处吗?FB--功能块,带背景数据块FC--功能,相当于函数他们之间的主要区别是:FC使用的是共享数据块,FB使用的是背景数据块举个例子,如果您要对3个参数相同的电机进行控制,那么只需要使用FB编程外加3个背景数据块就可以了,但是,如果您使用FC,那么您需要不断的修改共享数据块,否则会导致数据丢失。

FB确保了3个电机的参数互不干扰。

FB,FC本质都是一样的,都相当于子程序,可以被其他程序调用(也可以调用其他子程序)。

他们的最大区别是,FB与DB配合使用,DB中保存着F B使用的数据,即使FB退出后也会一直保留。

FC就没有一个永久的数据块来存放数据,只在运行期间会被分配一个临时的数据区。

西门子功能块

西门子功能块

TEP7 常用功能块说明1. SFB0 "CTU" SFB1 "CTD" SFB2 "CTUD" SFB4 "TON" SFB5 TOF兼容IEC61131-3的计数和计时功能块2. SFB41 "CONT_C" SFB42 "CONT_S" SFB43 "PULSEGEN"用于PID控制41---连续42---离散43---用于将一个模拟量转化为与之对应的周期性开关量脉冲信号,该脉冲的占空比与模拟量的数值大小成正比.3. SFC0 "SET_CLK" SFC1 "READ_CLK"用于读写PLC中的系统时间4. SFC14 "DPRD_DAT" SFC15 "DPWR_DAT"用于读写DP从站中的一致性数据如:读写用DP通讯的变频器中的控制字5. SFC20 "BLKMOV" SFC21 "FILL"块拷贝,块填充6. SFC46 "STP" SFC47 "WAIT"SFC46 使PLC进入STOP状态,挺有用的:可以当软件陷阱,或利用上位控制PLC停机7. SFC60 "GD_SND" SFC61 "GD_RCV"MPI的GD通讯8.IEC Function BlocksFC22 "LIMIT" FC25 "MAX" FC27 "MIN"FC22 ---限幅输出FC25,FC27 --- 3个数比大小9.PID Control BlocksFB41/42/43 同SFB41 "CONT_C" SFB42 "CONT_S" SFB43 "PULSEGEN" FB58 "TCON_CP" FB59 "TCONT_S" 用于温度控制PID10.Ti-S7 Converting BlocksFC105 "SCALE" FC106 "UNSCALE"模拟量输入输出的比例和数据类型转换11、SFC1 读取系统时钟12、SFC3 启动/停止运行时间定时器13、OB1:主程序循环14、OB10--OB17:在设置的日期和时间启动15、OB20--OB23:延时后启动16、OB30--OB38:以设定的时间为周期17、OB40--OB47:检测到来自外部模块的中断请求时启动18、OB55:DPV1中断(PROFIBUS-DP中断)目录1 组织块1-11.1组织块(OB)概述................................................................................................1-11.2程序循环组织块(OB1).......................................................................................1-41.3 时钟中断组织块(OB10到OB17) .......................................................................1-61.4 时间延迟中断组织块(OB20到OB23)..............................................................1-101.5 周期性中断组织块(OB30 到OB38) .................................................................1-121.6 硬件中断组织块(OB40到OB47) .....................................................................1-141.7 状态中断OB(OB 55)........................................................................................1-161.8 更新中断OB(OB 56)........................................................................................1-171.9制造商特定中断OB(OB57)..............................................................................1-181.10多值计算中断组织块(OB60)............................................................................1-191.11 同步周期性中断OB(OB 61 到OB 64)...............................................................1-211.12I/O冗余出错OB(OB70)....................................................................................1-221.13CPU冗余出错OB(OB72).................................................................................1-241.14 通讯冗余出错OB(OB73) .................................................................................1-271.15时间出错组织块(OB80)...................................................................................1-281.16电源出错组织块(OB81)...................................................................................1-301.17诊断中断组织块(OB82)...................................................................................1-321.18 插入/删除模块中断组织块(OB83) ...................................................................1-341.19 CPU硬件故障组织块(OB84) ...........................................................................1-371.20 优先级出错组织块(OB85) ...............................................................................1-381.21机架故障组织块(OB86)...................................................................................1-421.22通讯出错组织块(OB87)...................................................................................1-451.23 处理中断OB(OB 88)........................................................................................1-471.24 后台组织块(OB90) ..........................................................................................1-481.25 启动组织块(OB100、OB101和OB102).......................................................... 1-501.26编程出错组织块(OB121).................................................................................1-551.27 I/O访问出错组织块(OB122) ............................................................................1-572 SFC的公共参数2-12.1通过输出参数RET_VAL判断出错......................................................................2-12.2异步SFC的REQ、RET_VAL和BUSY参数的含义............................................. 2-4目录用于S7-300/400系统和标准功能的系统软件x A5E00446508-013 复制功能和块功能3-13.1 使用SFC20“BLKMOV”复制存储区域...............................................................3-13.2 使用SFC81“UBLKMOV”不间断地复制变量.....................................................3-43.3 使用SFC21“FILL”初始化存储区.......................................................................3-63.4 使用SFC22“CREAT_DB”创建数据块...............................................................3-83.5 使用SFC23“DEL_DB”删除数据块..................................................................3-103.6 使用SFC24“TEST_DB”测试数据块................................................................3-123.7 使用SFC25“COMPRESS”压缩用户存储器....................................................3-133.8 使用SFC44“REPL_VAL”传送一个替换值到累加器1...................................... 3-153.9 使用SFC82“CREA_DBL”在装载存储器中生成数据块................................... 3-163.10 使用SFC83 “READ_DBL”从装载存储器的数据块中读取数据........................ 3-193.11 使用SFC84“WRIT_DBL”在装载存储器中写入数据块.................................... 3-213.12 使用SFC85“CREA_DB”创建数据块...............................................................3-234 用于控制程序执行的SFC 4-14.1 使用SFC43“RE_TRIGR”重新触发循环时间监视.............................................4-14.2 使用SFC46“STP”将CPU切换为STOP.............................................................4-14.3 使用SFC47“WAIT”延时用户程序执行..............................................................4-24.4 使用SFC35“MP_ALM”触发多处理器中断........................................................4-34.5 使用SFC104“CiR”控制CiR...............................................................................4-45 用于处理系统时钟的SFC 5-15.1 使用SFC0“SET_CLK”设定TOD.......................................................................5-15.2 使用SFC1“READ_CLK”读取时间....................................................................5-25.3 使用SFC48“SNC_RTCB”同步子时钟..............................................................5-35.4 使用SFC100“SET_CLKS”设定时间日期和TOD状态....................................... 5-46 用于处理运行系统计时器的SFC 6-16.1运行时间定时器.................................................................................................6-16.2 使用SFC101“RTM”控制运行时间定时器..........................................................6-26.3 使用SFC2“SET_RTM”设置运行时间定时器.....................................................6-46.4 使用SFC3“CTRL_RTM”启动和停止运行时间定时器....................................... 6-56.5 使用SFC4“READ_RTM”读取运行时间定时器..................................................6-66.6 使用SFC64“TIME_TCK”读取系统时间............................................................6-77 用于传送数据记录的SFC 7-17.1读写一条数据记录.............................................................................................7-17.2 使用SFC54“RD_DPARM”读取定义的参数......................................................7-37.3 使用SFC102“RD_DPARA”读取预定义参数.....................................................7-47.4 使用SFC55“WR_PARM”写动态参数...............................................................7-57.5 使用SFC56“WR_DPARM”写一条数据记录......................................................7-77.6 用SFC57 “PARM_MOD”将参数分配给模块..................................................... 7-87.7 使用SFC58“WR_REC”写入数据记录.............................................................7-117.8 使用SFC59“RD_REC”读一个数据记录..........................................................7-137.9 SFC55到59的进一步出错信息....................................................................... 7-18目录用于S7-300/400系统和标准功能的系统软件A5E00446508-01 xi8 符合PNO AK 1131的DPV1 SFB 8-18.1 使用SFB“RDREC”从DP从站读一个数据记录..................................................8-18.2使用SFB53“WRREC”将数据记录写入DP从站.................................................. 8-38.3 用SFB54“RALRM”STATUS[3]从DP从站接收中断.......................................... 8-58.4用SFB75“SALRM”向DP主站发送中断............................................................ 8-149 用于处理时钟中断的SFC 9-19.1处理时钟中断....................................................................................................9-19.2 SFC28到31的特征...........................................................................................9-29.3 使用SFC28“SET_TINT”设置日时钟中断..........................................................9-49.4 使用SFC29“CAN_TINT”取消时钟中断.............................................................9-59.5 使用SFC30“ACT_TINT”激活时钟中断.............................................................9-69.6 使用SFC31“QRY_TINT”查询日时钟中断.........................................................9-710 用于处理延时中断的SFC 10-110.1处理延时中断..................................................................................................10-110.2 使用SFC32“SRT_DINT”启动延时中断...........................................................10-310.3 使用SFC34“QRY_DINT”查询日时钟中断......................................................10-410.4 使用SFC33“CAN_DINT”取消延时中断..........................................................10-511 用于处理同步出错的SFC 11-111.1屏蔽同步出错..................................................................................................11-111.2 使用SFC36“MSK_FLT”屏蔽同步出错..........................................................11-1011.3 使用SFC37“DMSK_FLT”解除屏蔽同步出错................................................11-1111.4 使用SFC38“READ_ERR”读取出错寄存器...................................................11-1212 用于处理中断和异步出错的SFC 12-112.1延迟和禁用中断和异步出错.............................................................................12-112.2 使用SFC39“DIS_IRT”禁用新中断和异步出错的处理..................................... 12-312.3 使用SFC40“EN_IRT”启用新中断和异步出错的处理...................................... 12-512.4 使用SFC41 “DIS_AIRT”延迟更高优先级中断和异步出错的处理.................... 12-712.5 使用SFC42 “EN_AIRT”启用处理较高优先级的中断和异步出错..................... 12-813 用于诊断的SFC 13-113.1系统诊断......................................................................................................... 13-113.2 使用SFC6“RD_SINFO”读取OB启动信息.......................................................13-113.3 使用SFC51“RDSYSST”读取系统状态列表或部分列表.................................. 13-413.4 使用SFC52 “WR_USMSG”将自定义诊断事件写入诊断缓冲区................... 13-1013.5 使用SFC78“OB_RT”确定OB程序运行时间..................................................13-1413.6 使用SFC87“C_DIAG”诊断当前连接状态......................................................13-1813.7 使用SFC103 “DP_TOPOL”识别DP主站系统的总线拓扑.............................. 13-2314 用于更新过程映像和处理位域的SFC和SFB 14-114.1 使用SFC26“UPDAT_PI”更新过程映像输入表................................................14-114.2 使用SFC27“UPDAT_PO”更新过程映像输出表..............................................14-314.3 使用SFC79“SET”在I/O区域中设置位域.........................................................14-514.4 使用SFC 126 “SYNC_PI”在同步循环中更新过程映像分区输入表................. 14-614.5 使用SFC 127 “ISO_PO”在同步循环中更新过程映像分区输出表.................... 14-814.6 使用SFC80“RSET”复位I/O区域中的位域.....................................................14-1014.7 使用SFB 32“DRUM”实现一个操作序列.......................................................14-11目录用于S7-300/400系统和标准功能的系统软件xii A5E00446508-0115 用于寻址模块的系统功能15-115.1 使用SFC5“GADR_LGC”查询模块的逻辑基址................................................15-115.2 使用SFC49 “LGC_GADR”查询属于一个逻辑地址的模块插槽....................... 15-315.3 使用SFC50“RD_LGADR”查询模块的所有逻辑地址...................................... 15-516 用于分布式I/O的SFC 16-116.1 使用SFC7“DP_PRAL”在DP主站上触发硬件中断.......................................... 16-116.2 用SFC11“DPSYC_FR”同步DP从站组...........................................................16-416.3 用SFC12“D_ACT_DP”激活和取消激活DP从站...........................................16-1016.4 用SFC13 “DPNRM_DG”读取DP从站的诊断数据(从站诊断) ........................ 16-1416.5 使用SFC14 “DPRD_DAT”读取DP标准从站的连续数据................................ 16-1816.6 使用SFC15 “DPWR_DAT”将连续数据写入到DP标准从站........................... 16-2017 用于全局数据通讯的SFC 17-117.1 使用SFC60“GD_SND”发送一个GD信息包....................................................17-117.2 通过SFC61“GD_RCV”编程接受已接收到的GD信息包.................................. 17-418 通讯和S7基本通讯的概述18-118.1S7通讯块和S7基本通讯块之间的差别............................................................ 18-118.2数据的一致性..................................................................................................18-418.3S7通讯块概述.................................................................................................18-618.4用于S7基本通讯的功能块总览........................................................................ 18-819 S7通讯19-119.1用于S7通讯的SFB/FB和SFC/FC的公用参数.................................................. 19-119.2用于组态的S7连接的SFB启动例行程序.......................................................... 19-519.3SFB对故障如何反应........................................................................................19-719.4通过SFB8/FB8“USEND”进行无协调的数据发送.............................................19-919.5通过SFB/FB9“URCV”进行无协调的数据接收...............................................19-1219.6 通过SFB/FB12“BSEND”发送分段数据........................................................19-1519.7 通过SFB/FB13“BRCV”接收分段数据...........................................................19-1819.8通过SFB/FB15“PUT”向远程CPU写入数据................................................... 19-2119.9通过SFB/FB14GET”从远程CPU中读取数据................................................. 19-2419.10使用SFB16“PRINT”将数据发送到打印机...................................................... 19-2719.11 通过SFB 19“START”在远程设备上开始一个暖重启或冷重启...................... 19-3319.12 通过SFB20“STOP”将远程设备切换到STOP状态........................................ 19-3619.13 通过SFB21“RESUME”在远程设备上开始一个热重启.................................. 19-3819.14 使用SFB22“STATUS”查询远程伙伴的状态.................................................19-4019.15 通过SFB23“USTATUS”接收远程设备的状态改变....................................... 19-4219.16 通过SFC62 “CONTROL”查询属于SFB实例的连接状态............................... 19-4419.17 通过FC62“C_CNTRL”查询连接状态............................................................19-4619.18S7通讯SFB/FB的工作存储器要求................................................................. 19-48目录用于S7-300/400系统和标准功能的系统软件A5E00446508-01 xiii20 用于未组态S7连接的通讯SFC 20-120.1通讯SFC的公用参数.......................................................................................20-120.2用于未组态S7连接的通讯SFC的出错信息......................................................20.3 使用SFC65 “X_SEND”将数据发送给在本地S7站外的一个通讯伙伴.............. 20-720.4 通过SFC66 “X_RCV”从本地S7站以外的通讯伙伴中接收数据....................... 20-820.5 通过SFC68 “X_PUT”将数据写入本地S7站以外的通讯伙伴.......................... 20-1120.6 通过SFC67 “X_GET”从本地S7站以外的通讯伙伴中读取数据..................... 20-1320.7 通过SFC69 “X_ABORT”中止已存在的、到本地S7站以外的通讯伙伴的连接20-15 20.8 使用SFC72 “I_GET”从本地S7站内的一个通讯伙伴上读取数据.................... 20-1620.9 使用SFC73 “I_PUT”将数据写入到本地S7站内的一个通讯伙伴.................... 20-1820.10 通过SFC74 “I_ABORT”中止已存在的、到本地S7站内的通讯伙伴的连接.... 20-2021 PROFInet 21-121.1SFC112、113和114背景信息.........................................................................21-121.2 使用SFC112 “PN_IN”更新用于PROFInet组件的用户程序接口的输入........... 21-421.3 使用SFC113 “PN_OUT”更新用于PROFInet组件的用户程序接口的输出....... 21-521.4 使用SFC114“PN_DP”更新DP互连................................................................21-622 生成与块相关的消息22-122.1关于使用SFB生成块相关消息的介绍.............................................................. 22-122.2 使用SFB 36“NOTIFY”生成无需确认的块相关消息........................................ 22-522.3 使用SFB31 “NOTIFY_8P”生成无确认显示的块相关消息............................... 22-722.4 使用SFB 33“ALARM”生成需要确认的块相关消息....................................... 22-1022.5 使用SFB35 “ALARM_8P”生成针对八个信号的带有关联值的块相关消息..... 22-1322.6 使用SFB34 “ALARM_8”生成针对八个信号的不附带关联值的块相关消息.... 22-1622.7 使用SFB37“AR_SEND”发送归档数据.........................................................22.8 使用SFC10 “DIS_MSG”禁止与块相关的消息、与符号相关的消息以及组状态消息................................................................ 22-2022.9 使用SFC9 “EN_MSG”启用块相关、符号相关和组状态消息......................... 22-2222.10用于生成与块相关的消息的SFB的启动特性.................................................22-2422.11用于生成与块相关的消息的SFB如何响应故障..............................................22-2522.12使用SFC生成与块相关的消息简介................................................................ 22-2622.13 使用SFC17 “ALARM_SQ”生成可确认的与块相关的消息以及使用SFC18 “ALARM_S”生成永久确认的与块相关的消息................................................22-2922.14 使用SFC19 “ALARM_SC”查询上一ALARM_SQ/ALARM_DQ进入事件消息的确认状态.......................................................... 22-3222.15 使用SFC 107 “ALARM_DQ”和108 “ALARM_D”生成可确认和永久确认的块相关消息............................................................22-3322.16 使用SFC105“READ_SI”读取动态系统资源..................................................22-3522.17 使用SFC106“READ_SI”读取动态系统资源..................................................22-3823 IEC定时器和IEC计数器23-123.1 使用SFB3“TP”生成一个脉冲..........................................................................23-123.2 使用SFB4“TON”生成一个接通延迟................................................................23-323.3 使用SFB5“TOF”生成一个关闭延迟................................................................23-523.4 使用SFB 0“CTU”递增计数.............................................................................23-723.5 使用SFB 1“CTD”递减计数.............................................................................23-823.6 使用SFB2“CTUD”递增/递减计数...................................................................23-9目录用于S7-300/400系统和标准功能的系统软件xiv A5E00446508-0124 IEC功能24-124.1概述......................................................................................................... ........24-124.2IEC功能的技术数据.........................................................................................24-324.3日期和时间作为复杂数据类型......................................................................... 24-524.4时间功能......................................................................................................... 24-624.5比较DATE_AND_TIME变量......................................................................... 24-1024.6比较STRING变量..........................................................................................24-1324.7编辑数值....................................................................................................... 24-1624.8STL示例........................................................................................................ 24-1724.9STL示例........................................................................................................ 24-1824.10编辑STRING变量..........................................................................................24-1924.11转换数据类型格式.........................................................................................24-2425 用于集成控制的SFB 25-125.1 使用SFB41/FB41“CONT_C”实现连续控制....................................................25-125.2 使用SFB42/FB42“CONT_S”进行步控制........................................................25-825.3 使用SFB43/FB43“PULSEGEN”生成脉冲....................................................25-1425.4PULSEGEN块的实例....................................................................................25-2526 用于紧凑型CPU的SFB 26-126.1 通过SFB44“Analog”使用模拟量输出进行定位...............................................26-126.2 通过SFB46“DIGITAL”使用数字量输出进行定位.......................................... 26-1326.3 使用SFB47“COUNT”控制计数器.................................................................26-2326.4 使用SFB48“FREQUENC”控制频率测量......................................................26-2826.5 使用SFB49“PULSE”控制脉宽调制...............................................................26-3226.6 使用SFB60 “SEND_PTP”发送数据(ASCII,3964(R)) .................................. 26-3526.7 使用SFB61 “RCV_PTP”接收数据(ASCII,3964(R)) .................................... 26-3826.8 使用SFB62 “RES_RCVB”删除接收缓冲区(ASCII,3964(R))...................... 26-4126.9 使用SFB63 “SEND_RK”发送数据(512(R))................................................... 26-4326.10 使用SFB64 “FETCH RK”获取数据(RK 512) ................................................. 26-4726.11 使用SFB65 “SERVE_RK”接收和提供数据(RK 512) ..................................... 26-5226.12 SFB60至65的附加出错信息......................................................................... 26-5727 用于H CPU的SFC 27-127.1 在H系统中使用SFC90“H_CTRL”控制操作....................................................27-128 集成功能(对于带集成I/O的CPU) 28-128.1SFB29(HS_COUNT)................................................................................. ......28-128.2SFB30(FREQ_MES).................................................................................. .....28-328.3SFB38(HSC_A_B).................................................................................... ......28-428.4SFB39(POS)........................................................................................... ........28-529 Plastics Techology 29-129.1 SFC63 (AB_CALL) .........................................................................................29-130 诊断数据30-130.1诊断数据结构概述...........................................................................................30-130.2诊断数据......................................................................................................... 30-230.3通道专有诊断数据的结构................................................................................30-4目录用于S7-300/400系统和标准功能的系统软件A5E00446508-01 xv31 系统状态列表(SSL) 31-131.1系统状态列表(SSL)概述..................................................................................31-131.2部分SSL列表的结构........................................................................................31-331.3 SSL-ID ............................................................................................................ 31-431.4可能的部分系统状态列表................................................................................31-531.5 SSL-ID W#16#xy11 -模块标识......................................................................31-631.6 SSL-ID W#16#xy12 -CPU特征......................................................................31-731.7 SSL-ID W#16#xy13 -存储区域......................................................................31-931.8 SSL-ID W#16#xy14 -系统区........................................................................31-1031.9 SSL-ID W#16#xy15 -块类型........................................................................31-1231.10 SSL-ID W#16#xy19 -模块LED的状态..........................................................31-1331.11 SSL-ID W#16#xy1C -组件标识....................................................................31-1531.12 SSL ID W#16#xy25 -将过程映像分区分配到OB.......................................... 31-1831.13 SSL-ID W#16#xy32 -通讯状态数据.............................................................31-2131.14 SSL-ID W#16#0132,索引为W#16#0005的部分列表的数据记录摘录....... 31-2231.15 SSL-ID W#16#0132,索引为W#16#0008的部分列表的数据记录摘录....... 31-2331.16 SSL-ID为W#16#0132、索引为W#16#000B的部分列表摘录的数据记录.... 31-2531.17 SSL-ID为W#16#0132、索引为W#16#000C的部分列表摘录的数据记录.... 31-2631.18 SSL-ID W#16#0232,索引为W#16#0004的部分列表的数据记录摘录....... 31-2731.19 SSL-ID W#16#xy71 - HCPU的组信息.........................................................31-2831.20 SSL-ID W#16#xy74 -模块LED的状态..........................................................31-3131.21 SSL-ID W#16#xy75 -H系统中切换的DP从站.............................................. 31-3331.22 SSL-ID W#16#xy90 -DP主站系统信息........................................................31-3531.23 SSL-ID W#16#xy91 -模块的状态信息..........................................................31-3731.24 SSL-ID W#16#xy92 -机架/站的状态信息..................................................... 31-4131.25 SSL-ID W#16#xy95 -扩展DP主站系统信息................................................. 31-4431.26 SSL-ID W#16#xyA0 -诊断缓冲区................................................................31-4631.27 SSL-ID W#16#00B1 -模块的诊断信息.........................................................31-4731.28 SSL-ID W#16#00B2 -对应物理地址的诊断数据记录1................................. 31-4931.29 SSL-ID W#16#00B3 -带逻辑基址的模块诊断数据....................................... 31-5031.30 SSL-ID W#16#00B4 -DP从站的诊断数据.................................................... 31-5132 事件32-132.1事件和事件标识符...........................................................................................32-132.2 事件等级1 -标准OB事件.................................................................................32-332.3 事件等级2 -异步出错......................................................................................32-332.4 事件等级3 -异步出错......................................................................................32-432.5 事件等级4 -停止事件和其它模式改变............................................................32-732.6 事件等级5 -模式运行期事件.........................................................................32-1032.7 事件等级6 -通讯事件....................................................................................32-1132.8 事件等级7 -H/F事件.....................................................................................32-1232.9 事件等级8 -模块的诊断事件.........................................................................32-1432.10 事件等级9 -标准用户事件.............................................................................32-1632.11 事件等级A和B -自由用户事件......................................................................32-1732.12保留的事件等级.............................................................................................32-18目录用于S7-300/400系统和标准功能的系统软件xvi A5E00446508-0133 SFC和SFB列表33-133.1按编号排序的SFC列表....................................................................................33-133.2按字母排序的SFC列表....................................................................................33-433.3按编号排序的SFB列表....................................................................................33-733.4按字母排序的SFB列表....................................................................................33-9参考书目词汇表索引用于S7-300/400系统和标准功能的系统软件A5E00446508-01 1-11 组织块1.1 组织块(OB)概述何为组织块?组织块(OB)是指CPU的操作系统与用户程序之间的接口。

西门子组织块说明书

西门子组织块说明书

Time-Delay Interrupt Organization Blocks Time-Delay Interrupt Organization Blocks Time-Delay Interrupt Organization Blocks Time-Delay Interrupt Organization Blocks 5 s 2 s 1 s 500 ms 200 ms 100 ms 50 ms 20 ms 10 ms Hardware Interrupt Organization Blocks Hardware Interrupt Organization Blocks Hardware Interrupt Organization Blocks Hardware Interrupt Organization Blocks Hardware Interrupt Organization Blocks Hardware Interrupt Organization Blocks Hardware Interrupt Organization Blocks Hardware Interrupt Organization Blocks Status Interrupt OB (OB 55) Update Interrupt OB (OB 56) Manufacturer Specific Interrupt OB (OB57) Multicomputing Interrupt Organization Block (OB60) Synchronous Cycle Interrupt OB (OB61) I/O Redundancy Error OB (OB70) CPU Redundancy Error OB (OB72) Communication Redundancy Error OB (OB73) Time Error Organization Block (OB80) Power Supply Error Organization Block (OB81) Diagnostic Interrupt Organization Block (OB82) Insert / Remove Module Interrupt Organization Block (OB83) CPU Hardware Fault Organization Block (OB84) Priority Class Error Organization Block (OB85) Rack Failure Organization Block (OB86) Communication Error Organization Block (OB87) Background Organization Block (OB90) Startup Organization Blocks (OB100, OB101 and OB102) Startup Organization Blocks (OB100, OB101 and OB102) Startup Organization Blocks (OB100, OB101 and OB102) Programming Error Organization Block (OB121) I/O Access Error Organizati 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52

西门子PLC S7OB组织块功能一览表

西门子PLC S7OB组织块功能一览表
OB组织块一览表
组织块一览表
OB编号
启动事件
默认优先级
说明
OB1
启动或上一次循环结束时执行OB1
1
主程序循环
OB10~OB17
日期时间中断0~7
2
在设置的日期时间启动
OB20~OB23
时间延时中断0~3
3~6
延时后启动
OB30~OB38
循环中断0~8时间间隔分别为5s,2s,1s
7~15
以设定的时间为
同步循环中断1~4
25
同步循环中断
OB70
I/O冗余错误
25
冗余故障中断
OB72
CPU冗余错误,例如一个CPU发生故障
28
只用于H系列的CPU
OB73
通行冗余错误中断,例如冗余连接的冗余丢失
25
OB80
时间错误
26启动为28
OB81
电ቤተ መጻሕፍቲ ባይዱ故障
27启动为28
OB82
诊断中断
28启动为28
OB83
插入/拔出模块中断
27
启动
OB102
冷启动
27
OB121
编程错误
与引起中断的
同步错误中断
OB122
I/O访问错误
OB相同
500ms,200ms,100ms,50ms,20ms,10ms
周期运行
OB40~OB47
硬件中断0~7
16~23
检测外部中断请求时启动
OB55
状态中断
2
DPV1中断(profibus-dp)
OB56
刷新中断
2
OB57
制造厂特殊中断
2

DB块的内容说明及常用信号和功能块及功能说明

DB块的内容说明及常用信号和功能块及功能说明

DB块的内容说明:DB1 西门子保留DB2~DB4 PLC messagesDB5~DB8 basic programDB9 NC compile NC编译循环接口DB10 NCK interface 中央NC接口DB11 mode group interface 方式组接口DB18 SPL接口(安全集成)DB19 PCU接口DB20 PLC机床数据DB21~DB30 NC channel interface NC通道接口DB31~DB61 interface for axis/spindles 轴/主轴号1到31预留接口DB71~DB74 tool management 用户刀具管理DB75~DB76 M 功能代码PLC到MMC的信号:DB 19 DBX 0.0 screen brightDB 19 DBX 0.1 screen darkeningDB 19 DBX 0.2 key disableDB 19 DBX 0.3 清除通道报警DB 19 DBX 0.7 机床坐标或工件坐标DB 19 DBX 0.7=1 工件坐标DB 19 DBX 0.7=0 机床坐标MMC到PLC的信号:DB 19 DBX 20.3 报警已清除NCK 与PLC之间的信号传递DB2~~PLC 信息DB10 ~NCK信息PLC给NCK的信号DB 10 DBX 56.1 急停信号MMC给PLC的信号DB10 DBX 103.6 MMC过热DB10 DBX 103.7 电池报警NCK给PLC的信号DB10 DBX 104.7 NCK CPU readyDB10 DBX 108.7 NC readyDB10 DBX 108.6 drive readyDB10 DBX 106.7 急停信号DB10 DBX 109.0 NCK报警存在DB10 DBX 109.5 NCK过热DB10 DBX 109.6 NCU温度过高DB10 DBX 109.7 电池报警DB 11~ DB 14 方式组信号PLC给NCK的信号:DB11DBX0.0 AUTODB 11 DBX 0.1 MDADB 11 DBX 0.2 JOGDB 11 DBX 0.4 方式组切换禁止DB 11 DBX 0.5 方式组停止,进给轴。

西门子PLC简介 硬件结构

西门子PLC简介 硬件结构
外部接线图:
直流输入模块(EM221 8×24VDC)有8个数字量输 入端子。接线图中,8个数 字量输入点分成2组。1M、 2M分别是2组输入点内部 电路的公共端,每组需用 户提供一个24VDC电源。
+
. 1M .0 .1 .2 .3 . 2M .4 .5 .6 .7
+
b.交流输入模块
L1
外部接线图:
5.人机界面
• 人机界面主要指专用操作员界面,例如操作员 面板、触摸屏、文本显示器等,这些设备可以 使用户通过友好的操作界面轻松地完成各种调 整和控制的任务。
基本功能 • 操作员面板和触摸屏 :过程状态和过程控
示制与的控可制视功化能。可以用Protool软件组态它们的显 • 文本显示器:文本显示和实施操作。
• 扩展接口 ——PLC主机与输入、输出扩展
模块的接口,作扩展系统之用。主机与扩 展模块之间由导轨固定,并用扩展电缆连 接。
(2) 个人计算机(PC)或编程器
个人计算机(PC)或编程器需装上 STEP7-Micro/WIN32编程软件后,才可供用 户进行程序的编制、编辑、调试和监视等。
要求个人计算机CPU为80586或更高的处 理器,16M内存(最低要求为:CPU80486, 8M内存)
1.3 S7-200 PLC的接口模块
• S7-200 PLC的接口模块有数字模块、模拟模 块、智能模块等。
一、数字量模块
1.数字量输入模块 分为直流输入模块和交流输入模块
每一个输入点可接收一个来自用户设备的 离散信号(ON/OFF)。
输入设备:按钮、限位开关、选择开关、 继电器触点等。
a.直流输入模块
a. 直流输出模块
外部接线图:
直流输出模块(EM222 8×24VDC),有8个数 字量输出点,接线图中8 个数字量输出点分成2组。 1L+、2L+分别是两组输 出点内部电路的公共端, 每组需用户提供一个 DC24V的电流。

STEP7常用功能块教程

STEP7常用功能块教程

STEP7常用功能块教程STEP7(Siemens Totally Integrated Automation Portal)是西门子公司的一款集成的自动化工程软件,用于配置、程序和诊断西门子的可编程逻辑控制器(PLC)系统。

STEP7具有许多强大的功能块,可以帮助用户更高效地编程和管理PLC系统。

本文将介绍一些常用的STEP7功能块和它们的应用。

1.FC(函数块):函数块是一种可重用的程序单元,允许用户编写自定义函数。

通过使用函数块,可以将常用的代码片段封装为函数,以便在不同的程序中重复使用。

例如,可以创建一个函数块来实现PID控制算法,使其可以在不同的工程中重复使用。

2.FB(功能块):功能块是STEP7中的另一种可重用程序单元,类似于函数块。

不同之处在于,功能块可以包含状态信息,并可以在程序中直接调用。

功能块通常用于处理系统的输入和输出信号,并执行相关的逻辑操作。

例如,可以创建一个功能块来处理PLC的输入和输出模块,并根据逻辑条件执行相应的控制操作。

3.OB(组织块):组织块是STEP7中的一种特殊类型的函数块,用于定义PLC程序的执行顺序和事件触发条件。

组织块分为不同的类型,如主程序(OB1)和中断(OB35),每个类型都有不同的功能和触发条件。

通过使用组织块,可以精确控制PLC程序的执行流程,并根据需要触发特定的事件。

4.DB(数据块):数据块是STEP7中用于存储和管理数据的容器。

数据块包含一个或多个变量,可以在PLC程序中访问和使用。

通过使用数据块,可以将相关的数据组织在一起,并轻松地进行数据的传输和处理。

例如,可以创建一个数据块来存储传感器和执行器的输入和输出数据,并在程序中使用这些数据进行逻辑判断和控制操作。

5.SFC(顺序功能图):顺序功能图是一种图形化编程语言,用于描述程序的执行顺序和组织结构。

SFC可以将PLC程序分解为不同的步骤,并定义不同的条件和转换规则。

通过使用SFC,可以更直观地理解和设计复杂的PLC程序,并使其易于修改和维护。

西门子STEP7常用功能块说明

西门子STEP7常用功能块说明

1. SFB0 "CTU" SFB1 "CTD" SFB2 "CTUD" SFB4 "TON" SFB5 TOF兼容IEC61131-3的计数和计时功能块2. SFB41 "CONT_C" SFB42 "CONT_S" SFB43 "PULSEGEN"用于PID控制41---连续42---离散43---用于将一个模拟量转化为与之对应的周期性开关量脉冲信号,该脉冲的占空比与模拟量的数值大小成正比.3. SFC0 "SET_CLK" SFC1 "READ_CLK"用于读写PLC中的系统时间4. SFC14 "DPRD_DAT" SFC15 "DPWR_DAT"用于读写DP从站中的一致性数据如:读写用DP通讯的变频器中的控制字5. SFC20 "BLKMOV" SFC21 "FILL"块拷贝,块填充6. SFC46 "STP" SFC47 "WAIT"SFC46 使PLC进入STOP状态,挺有用的:可以当软件陷阱,或利用上位控制PLC停机7. SFC60 "GD_SND" SFC61 "GD_RCV"MPI的GD通讯Function BlocksFC22 "LIMIT" FC25 "MAX" FC27 "MIN"FC22 ---限幅输出FC25,FC27 --- 3个数比大小Control BlocksFB41/42/43 同SFB41 "CONT_C" SFB42 "CONT_S" SFB43 "PULSEGEN" FB58 "TCON_CP" FB59 "TCONT_S" 用于温度控制PIDConverting BlocksFC105 "SCALE" FC106 "UNSCALE"模拟量输入输出的比例和数据类型转换。

西门子STEP7常用功能块说明

西门子STEP7常用功能块说明

西门子STEP7常用功能块说明西门子step7常用功能块说明【工控老鬼】(2021-10-2609:02:55)转载标签:plc培训plc实例感悟人生工控老鬼深圳plc培训分类:plc1.sfb0\相容iec61131-3的计数和计时功能块2.sfb41\用于pid控制41---连续42---离散43---用作将一个模拟量转变为与之对应的周期性控制器量脉冲信号,该脉冲的充电电流与模拟量的数值大小成正比.3.sfc0\用于读写plc中的系统时间4.sfc14\用于读写dp从站中的一致性数据如:读写用dp通讯的变频器中的控制字5.sfc20\块拷贝,块充填6.sfc46\sfc46并使plc步入stop状态,挺有价值的:可以当软件陷阱,或利用上位掌控plc停机7.sfc60\mpi的gd通讯8.iecfunctionblocksfc22\fc22---限幅输出fc25,fc27---3个数比大小9.pidcontrolblocksfb41/42/43同sfb41\fb58\用于温度控制pid10.ti-s7convertingblocksfc105\模拟量输入输出的比例和数据类型转换【工控旧鬼】(2021-10-2609:02:55)转载标签:plc培训plc实例感悟人生工控老鬼深圳plc培训分类:plc1.sfb0\相容iec61131-3的计数和计时功能块2.sfb41\用于pid控制41---连续42---离散43---用作将一个模拟量转变为与之对应的周期性控制器量脉冲信号,该脉冲的充电电流与模拟量的数值大小成正比.3.sfc0\用于读写plc中的系统时间4.sfc14\用于读写dp从站中的一致性数据如:读写用dp通讯的变频器中的控制字5.sfc20\块拷贝,块充填6.sfc46\sfc46并使plc步入stop状态,挺有价值的:可以当软件陷阱,或利用上位掌控plc停机7.sfc60\mpi的gd通讯8.iecfunctionblocksfc22\fc22---限幅输出fc25,fc27---3个数比大小9.pidcontrolblocksfb41/42/43同sfb41\fb58\用于温度控制pid10.ti-s7convertingblocksfc105\模拟量输入输出的比例和数据类型转换。

西门子编程里面的各种块(Block)宝宝-OBFBFCDBSFC科普

西门子编程里面的各种块(Block)宝宝-OBFBFCDBSFC科普

西门子编程里面的各种块(Block)宝宝-OBFBFCDBSFC科普引言西门子程序采用结构化编程,把程序分成多个模块,各模块完成相应的功能结合起来就能实现一个复杂的控制系统,就像高级语言一样用子程序实现特定的功能,再通过主程序调用各子程序,从而能实现复杂的程序。

结构化编程STEP7的程序结构 l 线性程序结构 l 分块程序结构 l 结构化程序结构一、西门子编程里面的块简介1.编程块概述变成块汇总2.程序访问顺序程序访问西门子PLC CPU 程序访问顺序:主程序OB块、功能块FB&FC、数据块DB二、西门子编程各块应用案例分析1.OB块案例组织块代号1.1组织循环(OB1)块程序循环 OB 在 CPU 处于 RUN 模式时,周期性地循环执行。

可在程序循环OB 中放置控制程序的指令或调用其它功能块(FC 或 FB)。

主程序(Main)为程序循环 OB ,要启动程序执行,项目中至少有一个程序循环OB 。

操作系统每个周期调用该程序循环 OB 一次,从而启动用户程序的执行。

1.2延时中断( OB20)块延时中断块1、调用“SRT_DINT”指令启动延时中断;2、当到达设定的延时时间,操作系统将启动相应的延时中断 OB ;3、图例中,延时中断 OB20 中断程序循环 OB1 优先执行;4、当启动延时中断后,在延时时间到达之前,调用“CAN_DINT”指令可取消已启动的延时中断。

1.3 循环中断(OB30)块循环中断OB 在经过一段固定的时间间隔后执行相应的中断OB 中的程序。

循环中断块1、PLC 启动后开始计时;2、当到达固定的时间间隔后,操作系统将启动相应的循环中断OB ;3、图例中,到达固定的时间间隔后,循环中断 OB30 中断程序循环 OB1 优先执行。

1.4硬件中断(OB 40)块硬件中断OB 在发生相关硬件事件时执行,可以快速的响应并执行硬件中断 OB 中的程序(例如立即停止某些关键设备)。

siemens组织块使用说明

siemens组织块使用说明

OB10_OB_NUMBR BYTE OB10_RESERVED_1 BYTE OB10_RESERVED_2 BYTE
OB 号(10 到17) 保留 保留
OB10_PERIOD_EXE WORD
OB 以特殊的间隔运行:W#16#0000: 一次W#16#0201:每分钟一次 W#16#0401:每小时一次W#16#1001: 每天一次W#16#1201:每周一次 W#16#1401:每月一次W#16#1801:每 年一次W#16#2001:每月底
CPU 冗余故障(只对于H CPU) 28
通讯冗余故障(只对于H CPU) 25
时间故障
26,281)
电源故障
25,281)
诊断中断
25,281)
模板插/拔中断
25,281)
CPU 硬件故障
25,281)
程序故障
25,281)
扩展机架、DP 主站系统或分布式 I/O 从站故障
25,281)
通讯故障
25,281)
OB86
OB87 OB88 OB90
1-2
循环中断3(默认时间间隔:500ms) 10
循环中断4(默认时间间隔:200ms) 11
循环中断5(默认时间间隔:100ms) 12
循环中断6(默认时间间隔:50ms) 13
循环中断7(默认时间间隔:20ms) 14
循环中断8(默认时间间隔:10ms) 15
OB1_SCAN_1
OB1_PRIORITY OB1_OB_NUMBR OB1_RESERVED_1 OB1_RESERVED_2 OB1_PREV_CYCLE OB1_MIN_CYCLE OB1_MAX_CYCLE OB1_DATE_TIME

西门子各个组织块OB块作用

西门子各个组织块OB块作用

1、自由循环组织块OB1S7CPU启动完成后,操作系统循环执行OB1,OB1执行完成后,操作系统再次启动OB1。

在OB1中可以调用FB、SFB、FC、SFC等用户程序使其循环执行。

除OB90以外,OB1优先级最低,可以被其他OB中断。

OB1默认扫描监控时间为150ms(可设置),扫描超时,CPU自动调用OB80报错,如果程序中没有建立OB80,CPU进入停止模式。

2、日期中断组织块OB10~OB17在CPU属性中,可以设置日期中断组织块OB10~OB17触发的日期、执行模式(到达设定的触发日期后,OB 只执行一次或按每分、每小时、每周、每月周期执行)等参数,当CPU的日期值大于设定的日期值时,触发相应的OB并按设定的模式执行。

在用户程序中也可以通过调用SFC28系统函数设定CPU日期中断的参数,调用SFC30激活日期中断投入运行,与在CPU属性中的设置相比,通过用户程序,可以在CPU运行时灵活地修改设定的参数,两种方式可以任意选择,也可以同时对一个OB进行设置。

3、时间延迟中断组织块OB20~OB23时间延迟中断组织块OB20~OB23的优先级及更新过程映像区的参数需要在CPU属性中设置,通过调用系统函数SFC32触发执行,OB号及延迟时间在SFC32参数中设定,延迟时间为1~60000ms,大大优于定时器精度。

4、循环中断组织块OB30~OB38循环中断组织块OB30~OB38按设定的时间间隔循环执行,循环中断的间隔时间在CPU属性中设定,每一个OB默认的时间间隔不同,例如OB35默认的时间间隔为100ms,在OB35中的用程序将每隔100ms调用一次,时间间隔可以自由设定,最小时间间隔不能小于55ms。

OB中的用户程序执行时间必须小于设定的时间间隔,如果间隔时间较短,由于循环中断OB没有完成程序扫描而被再次调用,从而造成CPU故障,触发OB80报错,如果程序中没有创建OB80,CPU进入停止模式。

西门子PLC程序结构

西门子PLC程序结构
西门子PLC程序结构
控制一个任务或过程,是通过在运行( RUN)方式下,使主机循环扫描并连续执行用户程序来实现的,用户程序决定了一个控制系统的功能。程序的编制可以使用编程软件在计算机或其他专用编程设备中进行(如图形输入设备/编程器等)。
广义上的plc程序由三部分构成:用户程序、数据块和参数块。
(1)用户程序
(2)数据块
数据块(DB)为可选部分,它主要存放控制程序运行所需要的数据,在数据块中允许的数据类型为:①布尔型、表示编程元件的状态;②二进制、十进制或十六进制数;③字母、数字和字符型。
(3)参数块
参数块也是可选部分,它存放的是CPU的组态数据,如果在编程软件和其他编程工具上未进行CPU的组态,则系统以默认值进行自动配置。
图 PLC程序结构
①主程序(0Bl):是用户程序的主体。CPU在每个扫描周期都要执行一次主程序指令。
②子程序:是程序的可选部分,只有当主程序调用时,才能够执行。合理使用子程序,可以优化程序结构,减少扫描时间。
③中断程序:是程序的可选部分,只有当中断事件发生时用户程序是必选项。用户程序在存储器空间中也称为组织块( OB),它处于最高层次,可以管理其他块,可采用各种语言(如STL、LAD或FBD等)来编制。不同机型的CPU,其程序空间容量也不同。用户程序的结构比较简单,一个完整的用户控制程序应当包含一个主程序(OB1)、若干个子程序和若干个中断程序三大部分。不同的编程设备,对各程序块的安排方法也不同。其程序结构如图所示。
组态( ConFIGU RING)的含义:ConFIGURING -般被翻译为组态。在自动化领域中有一个趋势就是系统的模块化,即由带有智能功能技术模块组成的自动化系统,对这些模块预先的初始化、编程就是组态。

西门子功能块

西门子功能块

TEP7 常用功能块说明1. SFB0 "CTU" SFB1 "CTD" SFB2 "CTUD" SFB4 "TON" SFB5 TOF兼容IEC61131-3的计数和计时功能块2. SFB41 "CONT_C" SFB42 "CONT_S" SFB43 "PULSEGEN"用于PID控制41---连续42---离散43---用于将一个模拟量转化为与之对应的周期性开关量脉冲信号,该脉冲的占空比与模拟量的数值大小成正比.3. SFC0 "SET_CLK" SFC1 "READ_CLK"用于读写PLC中的系统时间4. SFC14 "DPRD_DAT" SFC15 "DPWR_DAT"用于读写DP从站中的一致性数据如:读写用DP通讯的变频器中的控制字5. SFC20 "BLKMOV" SFC21 "FILL"块拷贝,块填充6. SFC46 "STP" SFC47 "WAIT"SFC46 使PLC进入STOP状态,挺有用的:可以当软件陷阱,或利用上位控制PLC停机7. SFC60 "GD_SND" SFC61 "GD_RCV"MPI的GD通讯Function BlocksFC22 "LIMIT" FC25 "MAX" FC27 "MIN"FC22 ---限幅输出FC25,FC27 --- 3个数比大小Control BlocksFB41/42/43 同 SFB41 "CONT_C" SFB42 "CONT_S" SFB43 "PULSEGEN"FB58 "TCON_CP" FB59 "TCONT_S" 用于温度控制PIDConverting BlocksFC105 "SCALE" FC106 "UNSCALE"模拟量输入输出的比例和数据类型转换11、SFC1 读取系统时钟12、SFC3 启动/停止运行时间定时器13、OB1:主程序循环14、OB10--OB17:在设置的日期和时间启动15、OB20--OB23:延时后启动16、OB30--OB38:以设定的时间为周期17、OB40--OB47:检测到来自外部模块的中断请求时启动18、OB55:DPV1中断(PROFIBUS-DP 中断)目录1 组织块 1-1组织块(OB)概述............................................................................. ...................1-1程序循环组织块(OB1).......................................................................... .............1-4时钟中断组织块 (OB10到OB17)............................... ........................................1-6时间延迟中断组织块 (OB20到OB23)..............................................................1-10周期性中断组织块 (OB30 到OB38)............................... ..................................1-12硬件中断组织块 (OB40到OB47).....................................................................1-14状态中断OB(OB55)............................ ............................................................1-16更新中断OB(OB56)............................ ............................................................1-17制造商特定中断OB(OB57)....................................................................... .......1-18多值计算中断组织块(OB60)......................................................................... ...1-19同步周期性中断OB(OB 61 到OB64)............................ ...................................1-21I/O冗余出错OB(OB70)....................................................................... .............1-22CPU冗余出错OB(OB72)....................................................................... ..........1-24通讯冗余出错OB(OB73)............................... ..................................................1-27时间出错组织块(OB80)......................................................................... ..........1-28(OB81)......................................................................... ..........1-30诊断中断组织块(OB82)......................................................................... ..........1-32插入/删除模块中断组织块(OB83)............................... ....................................1-34CPU硬件故障组织块(OB84)............................... ............................................1-37优先级出错组织块(OB85)............................... ................................................1-38机架故障组织块(OB86)......................................................................... ..........1-42通讯出错组织块(OB87)......................................................................... ..........1-45处理中断OB(OB88)............................ ............................................................1-47后台组织块(OB90)............................... ...........................................................1-48启动组织块(OB100、OB101和OB102)............................... ........................... 1-50(OB121)........................................................................ .........1-55I/O访问出错组织块(OB122)............................... .............................................1-572 SFC的公共参数 2-1通过输出参数RET_VAL判断出错......................................................................2-1异步SFC的REQ、RET_VAL和BUSY 参数的含义.............................................2-4目录用于S7-300/400系统和标准功能的系统软件x A5E00446508-013 复制功能和块功能 3-1使用SFC20“BLKMOV”复制存储区域...............................................................3-1使用SFC81“UBLKMOV”不间断地复制变量.....................................................3-4使用SFC21“FILL”初始化存储区.......................................................................3-6使用SFC22“CREAT_DB”创建数据块...............................................................3-8使用SFC23“DEL_DB”删除数据块..................................................................3-10使用SFC24“TEST_DB”测试数据块................................................................3-12使用SFC25“COMPRESS”压缩用户存储器....................................................3-13使用SFC44“REPL_VAL”传送一个替换值到累加器1...................................... 3-15使用SFC82“CREA_DBL”在装载存储器中生成数据块................................... 3-16使用SFC83 “READ_DBL”从装载存储器的数据块中读取数据........................ 3-19使用SFC84“WRIT_DBL”在装载存储器中写入数据块.................................... 3-21使用SFC85“CREA_DB”创建数据块...............................................................3-234 用于控制程序执行的SFC 4-1使用SFC43“RE_TRIGR”重新触发循环时间监视.............................................4-1使用SFC46“STP”将CPU切换为STOP.............................................................4-1使用SFC47“WAIT”延时用户程序执行..............................................................4-2使用SFC35“MP_ALM”触发多处理器中断........................................................4-3使用SFC104“CiR”控制CiR............................................................................ ...4-45 用于处理系统时钟的SFC 5-1使用SFC0“SET_CLK”设定TOD.......................................................................5-1使用SFC1“READ_CLK”读取时间....................................................................5-2使用SFC48“SNC_RTCB”同步子时钟..............................................................5-3使用SFC100“SET_CLKS”设定时间日期和TOD 状态....................................... 5-46 用于处理运行系统计时器的SFC 6-1运行时间定时器............................................................................. ....................6-1使用SFC101“RTM”控制运行时间定时器..........................................................6-2使用SFC2“SET_RTM”设置运行时间定时器.....................................................6-4使用SFC3“CTRL_RTM”启动和停止运行时间定时器....................................... 6-5使用SFC4“READ_RTM”读取运行时间定时器..................................................6-6使用SFC64“TIME_TCK”读取系统时间............................................................6-77 用于传送数据记录的SFC 7-1读写一条数据记录............................................................................. ................7-1使用SFC54“RD_DPARM”读取定义的参数......................................................7-3使用SFC102“RD_DPARA”读取预定义参数.....................................................7-4使用SFC55“WR_PARM”写动态参数...............................................................7-5使用SFC56“WR_DPARM”写一条数据记录......................................................7-7用SFC57 “PARM_MOD”将参数分配给模块..................................................... 7-8使用SFC58“WR_REC”写入数据记录.............................................................7-11使用SFC59“RD_REC”读一个数据记录..........................................................7-13SFC55到59的进一步出错信息.......................................................................7-18目录用于S7-300/400系统和标准功能的系统软件A5E00446508-01 xi8 符合PNO AK 1131的DPV1 SFB 8-1使用SFB“RDREC”从DP从站读一个数据记录..................................................8-1使用SFB53“WRREC”将数据记录写入DP从站..................................................8-3用SFB54“RALRM”STATUS[3]从DP从站接收中断.......................................... 8-5用SFB75“SALRM”向DP主站发送中断............................................................8-149 用于处理时钟中断的SFC 9-1处理时钟中断............................................................................. .......................9-1SFC28到31的特征............................................................................. ..............9-2使用SFC28“SET_TINT”设置日时钟中断..........................................................9-4使用SFC29“CAN_TINT”取消时钟中断.............................................................9-5使用SFC30“ACT_TINT”激活时钟中断.............................................................9-6使用SFC31“QRY_TINT”查询日时钟中断.........................................................9-710 用于处理延时中断的SFC 10-1处理延时中断............................................................................. .....................10-1使用SFC32“SRT_DINT”启动延时中断...........................................................10-3使用SFC34“QRY_DINT”查询日时钟中断......................................................10-4使用SFC33“CAN_DINT”取消延时中断..........................................................10-511 用于处理同步出错的SFC 11-1屏蔽同步出错............................................................................. .....................11-1使用SFC36“MSK_FLT”屏蔽同步出错..........................................................11-10使用SFC37“DMSK_FLT”解除屏蔽同步出错................................................11-11使用SFC38“READ_ERR”读取出错寄存器...................................................11-1212 用于处理中断和异步出错的SFC 12-1延迟和禁用中断和异步出错.............................................................................12-1使用SFC39“DIS_IRT”禁用新中断和异步出错的处理..................................... 12-3使用SFC40“EN_IRT”启用新中断和异步出错的处理...................................... 12-5使用SFC41 “DIS_AIRT”延迟更高优先级中断和异步出错的处理.................... 12-7使用SFC42 “EN_AIRT”启用处理较高优先级的中断和异步出错..................... 12-813 用于诊断的SFC 13-1系统诊断............................................................................. ............................13-1使用SFC6“RD_SINFO”读取OB启动信息.......................................................13-1使用SFC51“RDSYSST”读取系统状态列表或部分列表.................................. 13-4使用SFC52 “WR_USMSG”将自定义诊断事件写入诊断缓冲区................... 13-10使用SFC78“OB_RT”确定OB程序运行时间..................................................13-14使用SFC87“C_DIAG”诊断当前连接状态......................................................13-18使用SFC103 “DP_TOPOL”识别DP 主站系统的总线拓扑..............................13-2314 用于更新过程映像和处理位域的SFC和SFB 14-1使用SFC26“UPDAT_PI”更新过程映像输入表................................................14-1使用SFC27“UPDAT_PO”更新过程映像输出表..............................................14-3使用SFC79“SET”在I/O区域中设置位域.........................................................14-5使用SFC 126 “SYNC_PI”在同步循环中更新过程映像分区输入表................. 14-6使用SFC 127 “ISO_PO”在同步循环中更新过程映像分区输出表.................... 14-8使用SFC80“RSET”复位I/O区域中的位域.....................................................14-10使用SFB 32“DRUM”实现一个操作序列.......................................................14-11目录用于S7-300/400系统和标准功能的系统软件xii A5E00446508-0115 用于寻址模块的系统功能 15-1使用SFC5“GADR_LGC”查询模块的逻辑基址................................................15-1使用SFC49 “LGC_GADR”查询属于一个逻辑地址的模块插槽....................... 15-3使用SFC50“RD_LGADR”查询模块的所有逻辑地址...................................... 15-516 用于分布式I/O的SFC 16-1使用SFC7“DP_PRAL”在DP主站上触发硬件中断.......................................... 16-1用SFC11“DPSYC_FR”同步DP从站组...........................................................16-4用SFC12“D_ACT_DP”激活和取消激活DP从站...........................................16-10用SFC13 “DPNRM_DG”读取DP从站的诊断数据(从站诊断) ........................16-14使用SFC14 “DPRD_DAT”读取DP 标准从站的连续数据................................16-18使用SFC15 “DPWR_DAT”将连续数据写入到DP标准从站...........................16-2017 用于全局数据通讯的SFC 17-1使用SFC60“GD_SND”发送一个GD信息包....................................................17-1通过SFC61“GD_RCV”编程接受已接收到的GD 信息包.................................. 17-418 通讯和S7基本通讯的概述 18-1S7通讯块和S7基本通讯块之间的差别............................................................18-1数据的一致性............................................................................. .....................18-4S7通讯块概述............................................................................. ....................18-6用于S7基本通讯的功能块总览........................................................................18-819 S7通讯 19-1用于S7通讯的SFB/FB和SFC/FC的公用参数..................................................19-1用于组态的S7连接的SFB启动例行程序..........................................................19-5SFB对故障如何反应............................................................................. ...........19-7通过SFB8/FB8“USEND”进行无协调的数据发送.............................................19-9通过SFB/FB9“URCV”进行无协调的数据接收...............................................19-12通过SFB/FB12“BSEND”发送分段数据........................................................19-15通过SFB/FB13“BRCV”接收分段数据...........................................................19-18通过SFB/FB15“PUT”向远程CPU写入数据...................................................19-21通过SFB/FB14GET”从远程CPU中读取数据.................................................19-24使用SFB16“PRINT”将数据发送到打印机......................................................19-27通过SFB 19“START”在远程设备上开始一个暖重启或冷重启...................... 19-33通过SFB20“STOP”将远程设备切换到STOP 状态........................................ 19-36通过SFB21“RESUME”在远程设备上开始一个热重启.................................. 19-38使用SFB22“STATUS”查询远程伙伴的状态.................................................19-40通过SFB23“USTATUS”接收远程设备的状态改变....................................... 19-42通过SFC62 “CONTROL”查询属于SFB实例的连接状态...............................19-44通过FC62“C_CNTRL”查询连接状态............................................................19-46S7通讯SFB/FB的工作存储器要求.................................................................19-48目录用于S7-300/400系统和标准功能的系统软件A5E00446508-01 xiii20 用于未组态S7连接的通讯SFC 20-1通讯SFC的公用参数............................................................................. ..........20-1用于未组态S7连接的通讯SFC的出错信息......................................................20-2使用SFC65 “X_SEND”将数据发送给在本地S7站外的一个通讯伙伴.............. 20-7通过SFC66 “X_RCV”从本地S7站以外的通讯伙伴中接收数据....................... 20-8通过SFC68 “X_PUT”将数据写入本地S7站以外的通讯伙伴..........................20-11通过SFC67 “X_GET”从本地S7站以外的通讯伙伴中读取数据..................... 20-13通过SFC69 “X_ABORT”中止已存在的、到本地S7站以外的通讯伙伴的连接20-15使用SFC72 “I_GET”从本地S7站内的一个通讯伙伴上读取数据.................... 20-16使用SFC73 “I_PUT”将数据写入到本地S7站内的一个通讯伙伴.................... 20-18通过SFC74 “I_ABORT”中止已存在的、到本地S7站内的通讯伙伴的连接.... 20-2021 PROFInet 21-1SFC112、113和114背景信息.........................................................................21-1使用SFC112 “PN_IN”更新用于PROFInet组件的用户程序接口的输入........... 21-4使用SFC113 “PN_OUT”更新用于PROFInet组件的用户程序接口的输出....... 21-5使用SFC114“PN_DP”更新DP互连................................................................21-622 生成与块相关的消息 22-1关于使用SFB生成块相关消息的介绍..............................................................22-1使用SFB 36“NOTIFY”生成无需确认的块相关消息........................................ 22-5使用SFB31 “NOTIFY_8P”生成无确认显示的块相关消息...............................22-7使用SFB 33“ALARM”生成需要确认的块相关消息....................................... 22-10使用SFB35 “ALARM_8P”生成针对八个信号的带有关联值的块相关消息..... 22-13使用SFB34 “ALARM_8”生成针对八个信号的不附带关联值的块相关消息.... 22-16使用SFB37“AR_SEND”发送归档数据.........................................................22-18使用SFC10 “DIS_MSG”禁止与块相关的消息、与符号相关的消息以及组状态消息................................................................22-20使用SFC9 “EN_MSG”启用块相关、符号相关和组状态消息......................... 22-22用于生成与块相关的消息的SFB的启动特性.................................................22-24用于生成与块相关的消息的SFB如何响应故障..............................................使用SFC生成与块相关的消息简介................................................................22-26使用SFC17 “ALARM_SQ”生成可确认的与块相关的消息以及使用SFC18“ALARM_S”生成永久确认的与块相关的消息................................................22-29使用SFC19 “ALARM_SC”查询上一ALARM_SQ/ALARM_DQ进入事件消息的确认状态..........................................................22-32使用SFC 107 “ALARM_DQ”和108 “ALARM_D”生成可确认和永久确认的块相关消息............................................................22-33使用SFC105“READ_SI”读取动态系统资源..................................................22-35使用SFC106“READ_SI”读取动态系统资源..................................................22-3823 IEC定时器和IEC计数器 23-1使用SFB3“TP”生成一个脉冲..........................................................................23-1使用SFB4“TON”生成一个接通延迟................................................................23-3使用SFB5“TOF”生成一个关闭延迟................................................................23-5使用SFB 0“CTU”递增计数.............................................................................使用SFB 1“CTD”递减计数.............................................................................23-8使用SFB2“CTUD”递增/递减计数...................................................................23-9目录用于S7-300/400系统和标准功能的系统软件xiv A5E00446508-0124 IEC功能 24-1概述............................................................................. ....................................24-1IEC功能的技术数据............................................................................. ............24-3日期和时间作为复杂数据类型.........................................................................24-5时间功能............................................................................. ............................24-6比较DATE_AND_TIME变量.........................................................................24-10比较STRING变量............................................................................. .............24-13编辑数值............................................................................. ..........................24-16STL示例............................................................................. ...........................24-17STL示例............................................................................. ...........................24-18编辑STRING变量............................................................................. .............24-19转换数据类型格式............................................................................. ............24-2425 用于集成控制的SFB 25-1使用SFB41/FB41“CONT_C”实现连续控制....................................................25-1使用SFB42/FB42“CONT_S”进行步控制........................................................25-8使用SFB43/FB43“PULSEGEN”生成脉冲....................................................25-14PULSEGEN块的实例............................................................................. .......25-2526 用于紧凑型CPU的SFB 26-1通过SFB44“Analog”使用模拟量输出进行定位...............................................26-1通过SFB46“DIGITAL”使用数字量输出进行定位.......................................... 26-13使用SFB47“COUNT”控制计数器.................................................................26-23使用SFB48“FREQUENC”控制频率测量......................................................26-28使用SFB49“PULSE”控制脉宽调制...............................................................26-32使用SFB60 “SEND_PTP”发送数据(ASCII,3964(R))............................... ... 26-35使用SFB61 “RCV_PTP”接收数据(ASCII,3964(R))............................... ..... 26-38使用SFB62 “RES_RCVB”删除接收缓冲区 (ASCII,3964(R))......................26-41使用SFB63 “SEND_RK”发送数据(512(R))............................... .................... 26-43使用SFB64 “FETCH RK”获取数据(RK 512)............................... .................. 26-47使用SFB65 “SERVE_RK”接收和提供数据(RK 512)............................... ...... 26-52SFB60至65的附加出错信息.........................................................................26-5727 用于H CPU的SFC 27-1在H系统中使用SFC90“H_CTRL”控制操作....................................................27-128 集成功能(对于带集成I/O的CPU) 28-1SFB29(HS_COUNT)................ .......................................................................28-1SFB30(FREQ_MES)................ .......................................................................28-3SFB38(HSC_A_B)................. .........................................................................28-4SFB39(POS)..................... ..............................................................................28-529 Plastics Techology 29-1SFC63 (AB_CALL)............................... ..........................................................29-130 诊断数据 30-1诊断数据结构概述............................................................................. ..............30-1诊断数据............................................................................. ............................30-2通道专有诊断数据的结构............................................................................. ...30-4目录用于S7-300/400系统和标准功能的系统软件A5E00446508-01 xv31 系统状态列表(SSL) 31-1系统状态列表(SSL)概述............................................................................. .....31-1部分SSL列表的结构............................................................................. ...........31-3SSL-ID............................... .............................................................................31-4可能的部分系统状态列表............................................................................. ...31-5SSL-ID W#16#xy11 -模块标识......................................................................31-6SSL-ID W#16#xy12 -CPU特征......................................................................31-7SSL-ID W#16#xy13 -存储区域......................................................................31-9SSL-ID W#16#xy14 -系统区........................................................................31-10SSL-ID W#16#xy15 -块类型........................................................................31-12模块LED的状态..........................................................31-13SSL-ID W#16#xy1C -组件标识....................................................................31-15SSL ID W#16#xy25 -将过程映像分区分配到OB.......................................... 31-18SSL-ID W#16#xy32 -通讯状态数据.............................................................31-21SSL-ID W#16#0132,索引为W#16#0005的部分列表的数据记录摘录....... 31-22SSL-ID W#16#0132,索引为W#16#0008的部分列表的数据记录摘录....... 31-23SSL-ID为W#16#0132、索引为W#16#000B的部分列表摘录的数据记录.... 31-25SSL-ID为W#16#0132、索引为W#16#000C的部分列表摘录的数据记录.... 31-26SSL-ID W#16#0232,索引为W#16#0004的部分列表的数据记录摘录....... 31-27SSL-ID W#16#xy71 - HCPU的组信息.........................................................31-28SSL-ID W#16#xy74 -模块LED的状态..........................................................31-31SSL-ID W#16#xy75 -H系统中切换的DP从站.............................................. 31-33SSL-ID W#16#xy90 -DP主站系统信息........................................................31-35SSL-ID W#16#xy91 -模块的状态信息..........................................................31-37机架/站的状态信息..................................................... 31-41SSL-ID W#16#xy95 -扩展DP主站系统信息................................................. 31-44SSL-ID W#16#xyA0 -诊断缓冲区................................................................31-46SSL-ID W#16#00B1 -模块的诊断信息.........................................................31-47SSL-ID W#16#00B2 -对应物理地址的诊断数据记录1................................. 31-49SSL-ID W#16#00B3 -带逻辑基址的模块诊断数据....................................... 31-50SSL-ID W#16#00B4 -DP从站的诊断数据.................................................... 31-5132 事件 32-1事件和事件标识符............................................................................. ..............32-1事件等级1 -标准OB事件............................................................................. ....32-3事件等级2 -异步出错............................................................................. .........32-3事件等级3 -异步出错............................................................................. .........32-4事件等级4 -停止事件和其它模式改变............................................................32-7事件等级5 -模式运行期事件.........................................................................32-10事件等级6 -通讯事件............................................................................. .......32-11事件等级7 -H/F事件............................................................................. ........32-12事件等级8 -模块的诊断事件.........................................................................32-14事件等级9 -标准用户事件.............................................................................32-16事件等级A和B -自由用户事件......................................................................32-17保留的事件等级............................................................................. ................32-18目录用于S7-300/400系统和标准功能的系统软件xvi A5E00446508-0133 SFC和SFB列表 33-1按编号排序的SFC列表............................................................................. .......按字母排序的SFC列表............................................................................. .......33-4按编号排序的SFB列表............................................................................. .......33-7按字母排序的SFB列表............................................................................. .......33-9参考书目词汇表索引用于S7-300/400系统和标准功能的系统软件A5E00446508-01 1-11 组织块组织块(OB)概述何为组织块?组织块(OB)是指CPU的操作系统与用户程序之间的接口。

17 西门子各组织块详解精品课件

17 西门子各组织块详解精品课件
操作系统
组织块
OB1
其它
OBs
FC
FB
FB
FC
SFC
SFB
启动 OB 100 OB 101 OB 102
循环的 程序执行
OB 1
组织块概述
定期的 程序执行
OB 10...17
(日期时间中断)
OB 30...38
(循环中断)
事件驱动的 程序执行
OB 20...23
(延时中断)
OB 40...47
(硬件中断)
日时钟 OB (OB10 在 S7-314) 允许你在某一特定日期或特定间隔, 中断正在循环的 OB 而去执行中断程序。你可以对此 OB 编程使其 按下列间隔运行:
Once(一次): 只在特定日期和时间执行一次。 Every minute(每分钟): 从某一特定日期和时间开始,每分钟执行一次。 Hourly(每小时): 从某一特定日期和时间开始,每小时执行一次。 Daily(每天): 从某一特定日期和时间开始,每天执行一次。 Weekly(每周): 从某一特定日期和时间开始,每周执行一次。 Monthly(每月): 从某一特定日期和时间开始,每月执行一次。 Annually(每年): 从某一特定日期和时间开始,每年执行一次。
0 / 1 启动事件
序列号
2 / 3 优先级
OB 号
4 / 5 局部变量字节8, 9, 10, 11的数据格式
6 / 7 附加信息 1
(例如,中断模块的起始地址)
8 / 9 附加信息 2
(例如,中断状态)
10 / 11 附加信息 3
(例如,通道号码)
12 / 13 年

14 / 15 日
小时
16 / 17 分钟

西门子STEP7常用功能块说明

西门子STEP7常用功能块说明

西门子STEP7常用功能块说明1. SFB0 "CTU" SFB1 "CTD" SFB2 "CTUD" SFB4 "TON" SFB5 TOF兼容IEC61131-3的计数和计时功能块2. SFB41 "CONT_C" SFB42 "CONT_S" SFB43 "PULSEGEN"用于PID控制41---连续42---离散43---用于将一个模拟量转化为与之对应的周期性开关量脉冲信号,该脉冲的占空比与模拟量的数值大小成正比.3. SFC0 "SET_CLK" SFC1 "READ_CLK"用于读写PLC中的系统时间4. SFC14 "DPRD_DAT" SFC15 "DPWR_DAT"用于读写DP从站中的一致性数据如:读写用DP通讯的变频器中的控制字5. SFC20 "BLKMOV" SFC21 "FILL"块拷贝,块填充6. SFC46 "STP" SFC47 "WAIT"SFC46 使PLC进入STOP状态,挺有用的:可以当软件陷阱,或利用上位控制PLC停机7. SFC60 "GD_SND" SFC61 "GD_RCV"MPI的GD通讯8.IEC Function BlocksFC22 "LIMIT" FC25 "MAX" FC27 "MIN"FC22 ---限幅输出FC25,FC27 --- 3个数比大小9.PID Control BlocksFB41/42/43 同SFB41 "CONT_C" SFB42 "CONT_S" SFB43 "PULSEGEN"FB58 "TCON_CP" FB59 "TCONT_S" 用于温度控制PID10.Ti-S7 Converting BlocksFC105 "SCALE" FC106 "UNSCALE"模拟量输入输出的比例和数据类型转换。

西门子PLC S7-1200诊断错误组织块简介

西门子PLC S7-1200诊断错误组织块简介

西门子PLC S7-1200诊断错误组织块简介作为西门子PLC S7-200系列的升级版,西门子PLC S7-1200具有很多集成在CPU上的功能,与此同时,它的组态软件STEP7 V13具有各种功能块,可以帮助用户实现多种不同的功能。

用户在使用编程过程中,可以使用诊断错误组织块来获取错误信息,从而帮助用户更好的操作控制系统。

本文下面就对西门子PLC S7-1200的诊断错误组织块做一个介绍,供用户在编程过程中进行参考使用。

西门子PLC S7-1200诊断错误组织块西门子PLC S7-1200的编程软件STEP7 V13中,用户可以使用组织块OB82实现诊断错误的功能。

在西门子PLC S7-1200系列中,支持诊断错误中断,可以为具有诊断功能的模块启用诊断错误中断功能来检测模块状态。

当用户使用OB82时,出现故障和故障解除均会触发诊断中断OB82。

当模块检测到故障并且在软件中使能了诊断错误中断时,操作系统将启动诊断错误中断,诊断错误中断OB82将中断正常的循环程序优先执行。

此时无论程序中有没有诊断中断OB82,CPU都会保持运行模式,同时CPU的错误指示灯闪烁。

如果希望CPU在接收到该类型的错误时进入停止模式,用户可以在OB82中加入STP指令使CPU进入停止模式。

创建组织块OB82的步骤如下:1. 在编程软件中,选择项目中的程序块,然后添加新块,组织块,选择编号82,并确定;2. 在组织块OB82中进行编程,创建地址为MW0,MW2,MW4 的变量用于存储出现诊断错误时读取到的启动信息;3. 在硬件组态窗口中,选中模拟量输出模块,选择模拟量输出通道1的“启用短路诊断”功能;4. 测试结果,程序下载后,在监控表中给通道1设置输出值2000,如果此时出现了短路故障,则将立即触发诊断错误功能。

随着用户对其深入的了解,会更加体会到S7-1200在使用过程中为用户带来的便利,也更能体会到它的各项功能,如:通讯功能,扩展功能,集成功能等方面的强大。

图文详细介绍西门子S7-1200的主程序OB组织块

图文详细介绍西门子S7-1200的主程序OB组织块

图文详细介绍西门子S7-1200的主程序OB组织块OB 组织块● 什么是组织块?组织块是操作系统和用户程序之间的接口。

OB 用于执行具体的程序:1、在 CPU 启动时;2、在一个循环或延时时间到达时;3、当发生硬件中断时;4、当发生故障时;5、组织块根据其优先级执行。

OB 事件● 组织块 OB 的类型图1. OB 事件概览图1. OB 事件概览● 通过上图,可以看到OB 组织块分为三个优先组,高优先组中的组织块可中断低优先组中的组织块;如果同一个优先组中的组织块同时触发将按其优先级由高到低进行排队依次执行;如果同一个优先级的组织块同时触发时,将按块的编号由小到大依次执行。

● CPU 为三个 OB 优先级组中的每一个组都提供了临时(本地)存储器:1、16 KB 用于启动和程序循环(包括相关的 FB 和 FC)2、4 KB 用于标准中断事件(包括 FB 和 FC)3、4 KB 用于错误中断事件(包括 FB 和 FC)● 嵌套深度:是指可从 OB 调用功能 (FC) 或功能块 (FB) 等程序代码块的深度。

1、从程序循环 OB 或启动 OB 开始调用 FC 和 FB 等程序代码块,嵌套深度为16层;2、从延时中断、循环中断、硬件中断、时间错误中断或诊断错误中断 OB 开始调用 FC 和 FB 等程序代码块,嵌套深度为4层。

程序循环 OB● 程序循环 OB 的功能程序循环 OB 在 CPU 处于 RUN 模式时,周期性地循环执行。

可在程序循环 OB 中放置控制程序的指令或调用其它功能块(FC 或 FB)。

主程序(Main)为程序循环OB ,要启动程序执行,项目中至少有一个程序循环OB 。

操作系统每个周期调用该程序循环OB 一次,从而启动用户程序的执行。

S7-1200 允许使用多个程序循环 OB ,按 OB 的编号顺序执行。

OB1 是默认设置,其它程序循环 OB 的编号必须大于或等于123。

程序循环 OB 的优先级为1,可被高优先级的组织块中断;程序循环执行一次需要的时间即为程序的循环扫描周期时间。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档