如何读取冗余控制器状态灯_第1页
如何读取冗余控制器状态灯_第2页
如何读取冗余控制器状态灯_第3页
如何读取冗余控制器状态灯_第4页
如何读取冗余控制器状态灯_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

1、问题:如果读取冗余控制器状态灯的状态?回答:本文将简单介绍通过编程的方式如何读取冗余控制器的状态灯,并附录相关源代码。控制器运行过程中,控制器内部的各种不同信息都被保存在CPU的内部存储器中,并根据运行情况由控制器内部的操作系统实时进行更新。在冗余控制器中,这些内部信息也包含了冗余控制器的状态灯信息。在系统提供的系统功能SFC中,功能SFC51 ( RDSYSST )专门用于读取系统的状态信息。该功能块提供的SSL-ID功能码输入管脚用于设置需要读取的信息类型,例如,16#0013用于读取控制器内部工作内存分配情况;16#00B1用于读取模块的诊断信息;而16#0074则可以用于读取控制器的状

2、态灯(包括单 CPU和冗余CPU )。注意:功能码16#0019仅仅支持单 CPU和冗余CPU单机模式,不能用在普通的冗余CPU中。关于SFC51的详细帮助请参考Step7在向帮助或有个系统提供的系统功能介绍。参数声明数据类型描述REQINPUTBOOLREQ = 1 :启动处理SSL-IDINPUTWORD需要读取的系统状态功能码INDEXINPUTWORD部分功能码中对象的类型或编号RET VALOUTPUTINT如果执行SFC时岀错,贝U RET VAL将包含岀错代码BUSYOUTPUTBOOLTRUE :尚未完成读取SSL_HEADEROUTPUTSTRUCT数据记录信息:LENTHD

3、R:单条数据记录长度N DR:DR中记录的数据记录的条数DROUTPUTANY读取的数据记录存储区域:?如果仅读取了 SSL列表的单条信息,则不能评估DR的值,而只能评估 SSL_HEADER的值。?否则,LENTHDR 和N_DR的乘积为已在 DR中存储的字节数表 1. SFC51 接口据记录的读取,则此时可以通过INDEX管脚输入;SSL_HEADER 指示读取的数据记录的长度及数据记录的条数;DR中则为读取的数据记录的存储空间;使用SSL-ID=16#0074 读取冗余 CPU的状态灯时, SSL_HEADER 数据结构中 LENTHDR= 16#0004 ,即每条数据记录占用4个字节,

4、具体结构如下表所示:名舔cpuledJD1牛字- 字节。-H-CPU.位0至Z机聲号符3 0二侍机CPU* 1 =主站CPU 符 4 到了; 111171: LED标取苻led onLED的状据 0:关闭 打开ied_binkI M1 r pLED的闪烁状臺t0:平闪烁1:止常闪烁(2祸霞)2滾幔闪烁5箱眩)表2. DR数据记录结构也就是说通过 SFC51 (功能码16#0074 )读取的数据记录存储在DR中,每条数据记录都拥有上述的结构,每条数据记录通过CPU_LED_ID 字节1( LED标识符)来标识该记录对应的具体LED,通过评估记录的后两字节,即可判断该LED的当前状态,LED标识符

5、如下所示:W#16#0001:SF(组岀错)W#16#000A:USR1(用户自定义)W#16#0002:INTF(内部岀错)W#16#000B :BUS1F(总线岀错接口1)W#16#0003:EXTF(外部岀错)W#16#000C :BUS2F(总线岀错接口2)W#16#0004:RUNW#16#000D:REDF(冗余岀错)W#16#0005:STOPW#16#000E:MSTR(主站)W#16#0006:FRCE(强制)W#16#000F :RACK0(机架号0)W#16#0007:CRST(冷重启)W#16#0010 :RACK1(机架号1)W#16#0008 : BAF(总线上的电

6、池故障 /W#16#0011: RACK2(机架号 2)超载、电池电压短路 )W#16#0009 : USR(用户自定义)W#16#0012 : IFM1F(接口岀错接口模块 1) 使用 SSL-ID=16#0074读取冗余CPU的状态灯时,SSL_HEADER 数据结构中 N_DR= 16#001A,即每次读取并存储在DR中的数据记录条数最大为26条。因此,设置接受 DR的数据区间长度应该至少大于等于:LENTHDR XN_DR=4 怎6 = 104 bytes采用Step7编程时,手动构建如下DB块结构:AdjdressNaneTypeInitial vaiueCoranent0,0STR

7、UCT+0.0REQ SBOOLFALSErequest signal+2,0RHTVALINTQreturn valueBUSYBOOLFALSEbusy status+ .0SL HEAIERSTRUCTSSL lieader structure+ 0.0LENTHDRWORD+ 2.0WOftU= 4.0EML STRUCT+10.0DRARHAYI1.26dat.a record*0.0STKUCT+0.0CPU L1D IDwomWISfO+2.0LHD 0NBYTEB016tO+ 3.0LHD ELIBKBYTEE#16#0=4.0END STHUCT=114.0END STHUC

8、T表3.典型数据块结构在相应的循环0B中调用SFC51 ,具体调用如下:CALL KDSYSSTRFQINPEXHFTVALBUSY=-51_74.=W#lj?4=W#16jfO=SSL_74.FBTVAL S3L 74.BUSYSZL HEADER DR= ,ISSL_74 . SSL_HEACEt=-DR W#16#0013 : IFM2F(接口岀错接口模块 2)注意:由于调用 SFC51将占用CPU系统资源,建议采用较慢循环周期的0B来调用该SFC51 ,例如OB32 , 1秒钟调用一次或更慢。通过SSL_74.REQ_S 来启动读取LED信息,所有信息将存储在SSL_74.DR。根据上述的 DR数据记录结构表 2来分析每条数据记录,并将其显示在OS上即可。随本文同时附录的源代码有:? SFC51_LED_H :采用SCL编写的读取LED的源代码,支持冗余 CPU和单CPU两种类型的控制器,已经在 41x-H V4.0 CPU 测试通过;请看 90318924.rar( 157 KB )? *.PDL文件:专门为 PCS7开发的上位显示图标和面板,需结合上述源代码一起使用;请看 90318924.rar( 157 KB )在CFC中调用上述源代码编写的功能块及面板,最终上位显示效果如下图所示:图1.上位显示效

温馨提示

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

评论

0/150

提交评论