根据OB86诊断有故障的DP从站(最新整理)_1_第1页
根据OB86诊断有故障的DP从站(最新整理)_1_第2页
根据OB86诊断有故障的DP从站(最新整理)_1_第3页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、题:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-05-03 10:08:02 楼 主本帖转载自:/blog.asp?name=liaochangchu一直想编这样一个程序,用仿真调试完后,发现程序很短,功能很强,有较大的实用价值。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

2、主站系统的 id(网络的编号),lb11 是有故障的 dp 从站的编号。假设项目中只有一个dp 网络,12 个dp 从站的编号分别为314,它们分别对应于m10.3m1 1.6。出现dp 主站系统故障时(lw0 为w#16#39c3),将m10.3m11.6 全部置为1(将w#16#f8 7f 送 mw10)。某个 dp 从站出现故障时(lw0 为 w#16#39c4),将故障从站编号和 m10.0 的地址相加, 计算出故障从站对应的地址,然后用间接寻址点亮故障从站对应的指示灯。某个 dp 从站故障消失时(lw0 为 w#16#38c4),将故障从站编号和 m10.0 的地址相加, 计算出故障

3、从站对应的地址,然后用间接寻址熄灭故障从站对应的指示灯。在 simatic 管理器中生成一个人机界面的站点,双击站点中的画面 1,打开 wincc flexible的项目,在画面中生成 12 个指示灯。它们分别通过 m10.3m11.6 来显示 314 号从站的状态。下面是 ob86 中的程序。lw#16#39c3 llw0=ijcn m001/不是主站系统故障则跳转lw#16#f87ftmw10/点亮 314 号从站的指示灯m001: lw#16#39c4 llw0=ijcn m002/不是从站故障出现则跳转llb11/故障从站编号送累加器 1lp#10.0/起始地址送累加器 1+dtld2

4、0/故障从站地址送地址指针 sm ld 20/点亮故障从站对应的指示灯m002: lw#16#38c4 llw0=ijcn m003/不是从站故障消失则跳转llb11/故障从站编号送累加器 1lp#10.0/起始地址送累加器 1+dtld20/故障从站地址送地址指针rm ld 20/熄灭故障从站对应的指示灯m003: nop 0下图是 5 号和 13 号从站有故障时指示灯的状态。点击此处查看附件使用 16 个字节(例如 mb10mb25),最多可以用画面上的指示灯显示 120 多个从站的状态。付出中收获希望 _ email:引用 收藏(6)划痕侠士经验值: 19

5、68发帖数: 1322精华帖: 17主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-05-10 15:21:09 1 楼ob86 为通讯中断组织块,当通讯网络上出现故障时,通过读取 ob86 局部变量实现对 dp 网络诊断,在项目的调试过程中发挥了巨大的作用付出中收获希望 _ email:引用aabbcc 游侠经验值: 554发帖数: 274精华帖: 2主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-05-19 23:35:04 3 楼好帖子,一般出现通讯故障不是通过

6、程序来判断,而是通过硬件诊断,下次可以考虑用这个了引用雾里赏花新手经验值: 47发帖数: 21精华帖: 0主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-09-01 14:36:38 4 楼请教 根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站这段程序目前本人项目中引用了这段程序,结果发现没有起作用。mw10 没变化现在还没找到原因。总共 12 个 dp 从站,地址 314包括 2 个 im153,9 个 vsd,1 个 313c-2dp 从站。想引用楼主的程序来进行从站的通讯故障或者从站 im153 掉电判断。针对这段

7、程序问题如下:1、“出现dp 主站系统故障时(lw0 为w#16#39c3),将m10.3m11.6 全部置为1(将w#16#f87f送 mw10)。”为什么是 w#16#f87f,不是 w#16#ffff2、“lb10 是 dp 主站系统的 id(网络的编号),lb11 是有故障的 dp 从站的编号。”为什么 lb10 是主站 id?我看 ob86 里 ob86_racks_fltd 是从 lb8 开始的呀? 3、在 ob86 中作了一个触发计数,触发计数会有变化,但是 mw10 没有变化?虚心请教高手解答。万分感谢。另外我还尝试用 sfc51 ,szl_id=w#16#294 来读取从站是

8、否存在,还是不起作用。是在 ob1中调用的 sfc51。具体方法查看手册 a0540。也请指教。学无止境引用雾里赏花新手经验值: 47发帖数: 21精华帖: 0主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-09-01 18:19:05 5 楼quote:以下是引用雾里赏花在 2011-09-01 14:36:38 的发言:请教 根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站这段程序目前本人项目中引用了这段程序,结果发现没有起作用。mw10 没变化现在还没找到原因。总共 12 个 dp 从站,地址 314包括 2 个

9、im153,9 个 vsd,1 个 313c-2dp 从站。想引用楼主的程序来进行从站的通讯故障或者从站 im153 掉电判断。针对这段程序问题如下:1、“出现dp 主站系统故障时(lw0 为w#16#39c3),将m10.3m11.6 全部置为1(将w#16#f87f送 mw10)。”为什么是 w#16#f87f,不是 w#16#ffff2、“lb10 是 dp 主站系统的 id(网络的编号),lb11 是有故障的 dp 从站的编号。”为什么 lb10 是主站 id?我看 ob86 里 ob86_racks_fltd 是从 lb8 开始的呀? 3、在 ob86 中作了一个触发计数,触发计数会

10、有变化,但是 mw10 没有变化?虚心请教高手解答。万分感谢。另外我还尝试用 sfc51 ,szl_id=w#16#294 来读取从站是否存在,还是不起作用。是在 ob1中调用的 sfc51。具体方法查看手册 a0540。也请指教。刚才测试过,sfc51 来判断 dp 从站的方法可行。不过 294 不对。学无止境引用huangze75奇侠经验值: 5842发帖数: 4681精华帖: 19主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-09-02 09:56:07 6 楼对于使用 dp 总线系统,需要使用 ob86 来作为 dp 故障诊断.需要对

11、ob86 内变量做编程处理, 1.#ob86_ev_class。事件等级和标识符:b#16#38:离开事件,b#16#39:进入事件。2. #ob86_flt_id。错误代码:(可能值:b#16#c1、b#16#c2、b#16#c3、b#16#c4、b#16#c5、b#16#c6、b#16#c7、b#16#c8、b#16#ca、b#16#cb、b#16#cc、b#16#cd、b#16#ce)分布式 i/o 设备:dp 主站系统故障报 错 误 代 码 为 b#16#c3 3.#ob86_z23,l #ob86_z23 l dw#16#ff awl 1/dp 地 址=i r来复位 dp 站点报警信

12、号l#ob86_z23ldw#16#ff awl37/dp 地址=i s来置位 dp 子站站点报警引用like821080 侠客经验值: 892发帖数: 410精华帖: 0主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-09-02 10:23:44 7 楼llb11/故障从站编号送累加器 1lp#10.0/起始地址送累加器 1+dtld20/故障从站地址送地址指针sm ld 20/点亮故障从站对应的指示灯这个我有疑问,怎么读取 100 多个总站的故障信息呢,就一个 lb11引用n 次看你的背影侠士经验值: 1924发帖数: 1110精华帖: 27

13、主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-09-02 13:36:24 8 楼呵呵,当 dp 故障发生时或者 dp 故障消失时:可以通过 loop 循环,比较 lb11 里面内容来判断那些 dp 站故障!ob86 里面参考代码如下:lar1 p#10.0/常数指针l3/dp 站的起始地址 3tlb20l100next: tlw21/100 个 dp 站查询llb11/故障站地址编号llb20/与当前的 dp 站地址比较=i=m ar1,p#0.0/状态为“1”故障,“0”无故障llb20l1+itlb20/dp 站的起始地+1+ar1 p#

14、0.1/m 输出的地址向前推进一位llw21loop next佛对我说:“你的痛苦来自于你的欲望,没有欲望也就没有痛苦!” 引用staples游士经验值: 263发帖数: 73精华帖: 0主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-09-06 13:45:53 9 楼quote:以下是引用雾里赏花在 2011-09-01 18:19:05 的发言:quote:以下是引用雾里赏花在 2011-09-01 14:36:38 的发言:请教 根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站这段程序目前本人项目中引用了这段程序

15、,结果发现没有起作用。mw10 没变化现在还没找到原因。总共 12 个 dp 从站,地址 314包括 2 个 im153,9 个 vsd,1 个 313c-2dp 从站。想引用楼主的程序来进行从站的通讯故障或者从站 im153 掉电判断。针对这段程序问题如下:1、“出现dp 主站系统故障时(lw0 为w#16#39c3),将m10.3m11.6 全部置为1(将w#16#f87f送 mw10)。”为什么是 w#16#f87f,不是 w#16#ffff2、“lb10 是 dp 主站系统的 id(网络的编号),lb11 是有故障的 dp 从站的编号。”为什么 lb10 是主站 id?我看 ob86

16、里 ob86_racks_fltd 是从 lb8 开始的呀? 3、在 ob86 中作了一个触发计数,触发计数会有变化,但是 mw10 没有变化?虚心请教高手解答。万分感谢。另外我还尝试用 sfc51 ,szl_id=w#16#294 来读取从站是否存在,还是不起作用。是在 ob1中调用的 sfc51。具体方法查看手册 a0540。也请指教。刚才测试过,sfc51 来判断 dp 从站的方法可行。不过 294 不对。sfc51 诊断 dp 或 profinet,我这里 szl_id 都是用的 694 never give up引用1 学无止境新手经验值: 38发帖数: 12精华帖: 0主题:回复:

17、根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-10-08 20:28:56 10 楼我还是不太懂故障站号是怎么读出来的,一个站有故障我明白 比如 3 号站故障读出 ob86_z23 中 07 位的 0000011 4 号站是 00000100 那么 3 号站和四号站都有故障 怎么区分是 3 号站还是 4 号站 还是 7 号站呢?谢谢各位高手指教!学无止境引用automann侠圣经验值: 4185发帖数: 2007精华帖: 71主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-10-08 21:16:25 11

18、楼回答大家的疑问:如果同时有多个从站出现故障或故障消除,能显示出多个从站的状态吗?我做过这样的硬件实验:3 个 dp 从站共用同一个电源,断开电源,三个从站几乎同时出现故障, 要先后调用 3 次 ob86,通过 ob86 的程序,每次点亮一个指示灯。接通从站电源,三个从站的故障几乎同时消失,也要调用 3 次 ob86,通过 ob86 的程序,每次关闭一个指示灯。上述实验是不能用仿真来做的。追求完美引用n 次看你的背影侠士经验值: 1924发帖数: 1110精华帖: 27主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-10-08 23:50:11

19、12 楼呵呵还有一种特殊情况,如果 cpu 断电了,就一个灯也不闪了!这个实验也不能用仿真来做的。佛对我说:“你的痛苦来自于你的欲望,没有欲望也就没有痛苦!” 引用1 学无止境新手经验值: 38发帖数: 12精华帖: 0主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-10-09 08:42:24 13 楼多谢 11 楼的回答!是不是顺序由低站号到高站号循环显示? 学无止境引用automann 侠圣经验值: 4185发帖数: 2007精华帖: 71主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-10-

20、09 10:46:55 14 楼顺序无所谓,每个从站的故障出现和消失都要调用一次 ob86,执行亮灯和灭灯的操作。追求完美引用1 学无止境新手经验值: 38发帖数: 12精华帖: 0主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-10-09 14:30:17 15 楼多谢高手的回答! 不过还是有些疑问第一个站有故障时 ob86 扫描一次,这时 ob86_z23 中 07 位的状态是第一个站的地址。第二个站有故障时 ob86 扫描一次,这时 ob86_z23 中 07 位的状态是第二个站的地址。第一个站的状态被替代,这时我要显示的值也被改了,只显示

21、第二个站的值。个也就是 ob86_z23 中 07 位的状态停留在最后一个分站故障 的状态吗? 站号都能显示出来是怎么实现的? 懵了。学无止境引用automann 侠圣经验值: 4185发帖数: 2007精华帖: 71主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2011-10-09 16:12:28 16 楼每个从站用一个 m 位来表示,对应一个指示灯,没有替代的问题,估计楼上的是看不懂程序中的间接寻址指令吧?m ld 20 的地址在局部双字 ld 中,该地址由 0 号站对应的 m10.0 的地址 p#10.0 加上 lb11中从站的编号组成。追求完美

22、引用学习方法新手经验值: 44发帖数: 6精华帖: 0主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2012-01-03 18:01:10 17 楼还在测试,有学到一点东西,慢慢积累引用花 0 花 0 花游民经验值: 144发帖数: 131精华帖: 0主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2012-01-04 13:11:43 18 楼没有看明白,还要努力呀,引用偶尔一鸣游士经验值: 246发帖数: 42精华帖: 0主题:回复:根据 ob86 的局部变量诊断和显示有故障的 profibus-dp 从站2012-01-04 14:49:38 19 楼廖老师的程序很有借鉴意义,思路很好,值得学习。不过,个人觉得,如果仅仅是判断 d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论