故事作者:Jerry1029

最近创作

看看TA的故事

程序如何识别模块通道断线?

已锁定

Jerry1029

  • 帖子

    190
  • 精华

    0
  • 被关注

    37

论坛等级:侠士

注册时间:2020-10-27

普通 普通 如何晋级?

程序如何识别模块通道断线?

875

2

2021-10-29 10:24:47

昨天,有客户咨询上位如何识别1200 AI模块通道断线检测?平时怎么注意这一块,趁有时间自己研究一下,丰富自己的知识库。

大家都知道,在硬件组态中,模块的通道有一个可勾选的启用短路诊断选项,是默认勾选的,如果未接线或者短线,模块会闪红灯,这个很好观察。那么,如何让不在现场的工程师们知道现场模块短线呢?

在官网搜了一下相关资料,还真有西友分享类似案例的,在此也搬运一下他人的成果和大家共享

S7-1200 如何诊断 IO访问错误?

https://support.industry.siemens.com/cs/document/42781105/s7-1200-%E5%A6%82%E4%BD%95%E8%AF%8A%E6%96%AD-io%E8%AE%BF%E9%97%AE%E9%94%99%E8%AF%AF%EF%BC%9F?dti=0&lc=zh-CN

博途1200 怎样使用带断线诊断的模拟量电流输出?

http://www.360doc.com/content/19/1014/12/55021079_866708447.shtml

1 、在项目树打开PLC站目录,打开“程序块”目录。

2、双击“添加新块”。

3、在“添加新块”对话框中点击“组织块”,在出现的列表中选择“Diagnostic error interrupt”OB块。

4、点击“OK”关闭对话框。然后再“程序块”文件夹中出现“Diagnostic error interrupt ”OB82,并且该程序块会自动打开

5、从诊断中断中读取启动信息,可以在诊断中断OB82的程序编辑器中插入3个“MOVE”指令编程。MOVE指令在“指令树”>“基本指令”>“移动操作”下面。

6.  为每一个“MOVE”指令的输入参数设置为OB82诊断中断块接口参数((“IO_State”, “LADDR”和 “Channel”)中的一个。

7.  使用DB块变量为每一个“MOVE”指令填写输出参数,数据类型与OB82诊断中断块接口参数里的变量的数据类型保持一致。

 8.  使用一个常开触点评估OB82块接口参数中的“MultiError”。

从“diagnostic error interrupt” OB82中读取诊断信息:

 IO_State:硬件状态

 LADDR:触发诊断中断的硬件对象的硬件标识

 Channel:通道编号

MultiError:为TRUE (如果有多个错误)

硬件标识符(HW ID)用于标识模块或者功能单元(比如:输出和高速计数器)。系统将这个整数和诊断错误中断一起传送,以识别故障模块或者功能单元。

在设备视图,选中模块,属性窗口,选择“系统常量” 可以查看模块硬件标识符




这种方式可以实现,亲测有效,那么,按理说,这些故障信息都存储在一个区间,有没有办法直接从区间地址直接读取故障信息呢?大家有没有什么好的办法呢?


程序如何识别模块通道断线? 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

网友专栏

共有3376条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

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