技术论坛

 回复:产品技术介绍——Step7 OB组织块介绍和使用技巧

返回主题列表
作者 主题

奇侠

经验值:6044
发帖数:3917
精华帖:20
楼主    2011-04-25 20:35:09
主题:产品技术介绍——Step7 OB组织块介绍和使用技巧
组织块(OB)表示操作系统和用户程序之间的接口。组织块由操作系统调用,控制循环和中断驱动的程序执行、PLC启动特性和错误处理。STEP7中除了常用的的OB1、OB100、OB35等组织块,还有哪些组织块可以被用在用户程序中?本话题主要探讨以下内容:
1、STEP 7 提供了哪些类型的OB,它们的优先级是怎样的?
2、针对每种类型的OB块的深入分析及其使用方法探讨
活动奖励:
此次集中交流将持续至6月2日,其中所有精华帖作者将获得加倍精华奖励积分;最终所有有效留帖的网友将获得加倍发帖积分。更多积分带给您更多奖品兑换的自由。
对于有突出发言贡献的网友,还可以在当前的可兑换奖品中免费挑选任一款奖品。
交流结束后也将专门整理重要内容,供广大网友分享参考。
预祝大家交流愉快,收获丰富!
Automann
至圣

经验值:18299
发帖数:6168
精华帖:137
35楼    2011-05-03 07:32:12
精华帖  主题:回复:产品技术介绍——Step7 OB组织块介绍和使用技巧
根据OB86的局部变量诊断和显示有故障的PROFIBUS-DP从站
一直想编这样一个程序,用仿真调试完后,发现程序很短,功能很强,有较大的实用价值。
S7-300/400的OB86的局部变量OB86_EV_CLASS(LB0)为16#39和16#38分别表示故障出现和故障消失。OB86_FLT_ID(LB1)为16#C3和16#C4分别表示DP主站系统(DP网络)故障和DP从站故障。LB10是DP主站系统的ID(网络的编号),LB11是有故障的DP从站的编号。
假设项目中只有一个DP网络,12个DP从站的编号分别为3~14,它们分别对应于M10.3~M11.6。
出现DP主站系统故障时(LW0为W#16#39C3),将M10.3~M11.6全部置为1(将W#16#F87F送MW10)。
某个DP从站出现故障时(LW0为W#16#39C4),将故障从站编号和M10.0的地址相加,计算出故障从站对应的地址,然后用间接寻址点亮故障从站对应的指示灯。
某个DP从站故障消失时(LW0为W#16#38C4),将故障从站编号和M10.0的地址相加,计算出故障从站对应的地址,然后用间接寻址熄灭故障从站对应的指示灯。
在SIMATIC管理器中生成一个人机界面的站点,双击站点中的画面1,打开WinCC flexible的项目,在画面中生成12个指示灯。它们分别通过M10.3~M11.6来显示3~14号从站的状态。
下面是OB86中的程序。
L W#16#39C3
L LW 0
==I
JCN m001 //不是主站系统故障则跳转
L W#16#F87F
T MW 10 //点亮3~14号从站的指示灯
m001: L W#16#39C4
L LW 0
==I
JCN m002 //不是从站故障出现则跳转
L LB 11 //故障从站编号送累加器1
L P#10.0 //起始地址送累加器1
+D
T LD 20 //故障从站地址送地址指针
S M [LD 20] //点亮故障从站对应的指示灯
m002: L W#16#38C4
L LW 0
==I
JCN m003 //不是从站故障消失则跳转
L LB 11 //故障从站编号送累加器1
L P#10.0 //起始地址送累加器1
+D
T LD 20 //故障从站地址送地址指针
R M [LD 20] //熄灭故障从站对应的指示灯
m003: NOP 0
下图是5号和13号从站有故障时指示灯的状态。
使用16个字节(例如MB10~MB25),最多可以用画面上的指示灯显示120多个从站的状态。
此程序稍作修改,可以显示多个网络的从站故障。

追求完美
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。