长沙工控帮教育科技有限公司整理 站。
STEP 7 V5.1,Service Pack 3
3.10.3 编程 DPV1 设备
用于DPV1 事件的新的中断 OB
DPV1 从站可以触发中断。可以使用迄今为止 S7 CPU 操作系统提供的各个 OB,用 于诊断/系统/抽出/插入中断。
用于下列中断的OB 是新的:
DPV1 中断 OB 解释
状态中断 OB 55 状态中断可以因模块的操作状态转变而触发,
例如,从RUN 到 STOP 模式。
参见各自的DPV1 从站制造商文档,以获取关于可
以触发状态中断的事件的详细信息。
更新中断 OB 56 插槽被重新组态后,可以触发更新中断。例如,这
可能是由本地或远程访问参数所引发的。
参见各自的DPV1 从站制造商文档,以获取关于可
以触发更新中断的事件的详细信息。
制造商特定中断 OB 57 触发制造商特定中断的事件可以由DPV1 从站的制
造商指定。
长沙工控帮教育科技有限公司整理
组态分布式 I/O(DP)
用于访问DPV1 从站的新的 SFB 和 SFC
为了使主题更全面,下表尽量显示新接口及其相对以前接口的功能。详细信息可参 阅SFB/SFC 和新 OB 的描述文档。不必将已存在的组态转换为新的 SFB/SFC。
然而,当用DPV1 组态创建新的项目以便能够使用所有 DPV1 功能时,应该使用新 的SFC/SFB。
功能 以前的接口 新接口(DPV1) 注意
读数据记录 SFC 59 RD_REC SFB 52 RDREC -
写数据记录 SFC 58 WR_REC SFB 53 WRREC -
从DP 从站接收中断 - SFB 54 RALRM SFB 必须在由中断触
发的OB 中调用。
测试现存用户程序的校验表
如果曾经使用STEP 7 V5.1,Service Pack 2 编辑组态,并且已切换到“DPV1”,
就必须检查现有用户程序的下列部分:
功能 检查什么?
地址转换 对于通过GSD 文件组态的 DP 从站,如果在用户程序(SFC 5、SFC 49、
SFC 50)中使用了地址转换,则必须检查插槽<->逻辑起始地址的分配。
插槽0 具有附加地址。插槽 0 具有附加地址。
• 通过GSD 文件实现的 DP 从站:
以前,为DP 从站的第一个 I/O 模块分配插槽 4。然而,现在为第一个 I/O
模块分配插槽(可参见硬件配置)。
• 集成在STEP 7 中的 DP 从站(例如,ET 200M):
接口模块(插槽 2)具有自己的地址。
用SFC13 读诊断信息 最初分配的诊断地址仍然有效。STEP 7 将此地址内部分配给插槽 0。
然而,DPV1 从站的诊断数据记录具有不同的结构(参见 DP 从站的描述文档。
例如,对于ET 200M 也可以参见关键字“扩展诊断”)。
长沙工控帮教育科技有限公司整理
组态分布式 I/O(DP)
组态硬件和通讯连接,STEP 7 V5.3版本
A5E00446503-01 3-57
功能 检查什么?
读/写数据记录 如果调用SFC58“WR_REC”将数据记录传送到 DPV1 从站,或者如果调用
SFC59“RD_REC”从 DPV1 从站取出数据记录,并且,如果此 DPV1 从站工
作于DPV1 模式,则 DP 主站按照下述步骤评估从从站接收的错误信息:如果
错误信息位于从W#16#8000 到 W#16#80FF 或从 W#16#F000 到 W#16#FFFF 的范围内,DP 主站将错误信息传送到 SFC。如果它超出此范
围,则CPU 将值 W#16#80A2 传送到 SFC,并将从站挂起。关于从 DPV1 从
站接收的错误信息的描述,请参见“用SFB 54‘RALRM’ STATUS[3]从 DP
从站接收 中断”。
参见:跳转到关于块、系统属性的语言描述与帮助
读系统状态列表 例如,如果使用SFC 51(RDSYSST)读模块状态或模块的机架/站状态信息,
必须考虑到插槽和附加插槽0(见以上)的含义已经改变。
实例1:使用 SFB 54“RALRM”评估来自 OB40 的中断信息。
分布式S7 数字输入模块(起始地址 288)触发硬件中断。关于此模块的补充中断信息 可通过调用SFB 54“DP_ALRM”从 OB 40 读取。检查第一个通道是否触发了硬件 中断。
也可以用S7 模块直接从 OB 40 的起始信息中读出附加的中断信息。然而,DPV1 标 准通常允许至多59 个字节的附加中断信息——对于 OB 40 起始信息来说太多了。
关于SFB 54 和各种中断类型的附加中断信息结构的信息,请参见“用于 S7-300/400 系统和标准功能的系统软件”手册或参见相关的在线帮助。
长沙工控帮教育科技有限公司整理
组态分布式 I/O(DP)
// ...
// ...
//触发中断(288)的地址开关 L DW#16#120 T "MD10"
CALL "RALRM" , "DB54"
MODE :=1 //功能模式: 1 = 设置所有输出参数 //(即,F_ID 无效)
F_ID :="MD10" //允许中断的起始插槽地址
MLEN :=8 //以字节为单位的补充中断信息的最大长度 //(例如,对于模块通道状态)
NEW :="Alarm_neu" //接收中断?(是 = 1)
STATUS:="DP_RALRM_STATUS" //包含函数结果/错误消息的返回值 ID :="Slotadresse_Alarm" //接收中断的起始插槽地址
LEN :="Laenge_Alarminfo" //补充中断信息的长度(例如,对于 S7 I/O //模块,4 字节标题信息+ 4 字节,) TINFO :=P#M 100.0 BYTE 28 //OB 起始信息+管理信息的指针:
//从 MB 100 起 28 字节 AINFO :=P#M 130.0 BYTE 8 //标题信息+
//辅助中断信息(最多 59 字节) U M 124.0 //输入 1(位 0)是否触发了中断?
SPB Alrm BEA
Alrm: S A 0.0 //中断处理
// ...
长沙工控帮教育科技有限公司整理
组态分布式 I/O(DP)
组态硬件和通讯连接,STEP 7 V5.3版本
A5E00446503-01 3-59
实例2:用 SFB 54“RALRM”评估 OB 82 中的诊断数据
组态分布式 I/O(DP)
BE
stp1: L MB 147 //取插槽 1 - 4 的模块状态 UW W#16#3 //过滤器插槽 1
L W#16#2 //2 位’错误模块’状态,插入了错误模块 ==I
S A 0.1 //对错误模块的反应
L MB 147 //取插槽 1 - 4 的模块状态 UW W#16#3 //过滤器插槽 1
L W#16#1 //2 位’无效模块’状态,无效的用户数据 ==I
S A 0.2 //对无效用户数据的反应
//..
长沙工控帮教育科技有限公司整理
组态分布式 I/O(DP)
组态硬件和通讯连接,STEP 7 V5.3版本
A5E00446503-01 3-61