[摘要] 结合工程应用实例介绍了
Profibus-DP
现场总线诊断功能开发和运用
[关键词] PROFIBUS-DP 现场总线 诊断功能
Abstract combined with practical application of engineering, this paper introduces how to develop and apply the diagnosing function of one kind important of field buses: PROFIBUS-DP.
Key words PROFIBUS-DP field bus diagnosing function
0 前言切丝机是烟草制丝线的主机设备。设备控制系统的可靠性、先进性直接影响用户生产效率和经济效益。我公司从一九九八年开发新型切丝机以来基于串行数据通讯总线电控系统先后开发了六套,其中运用西门从PROFIBUS-DP通用、标准型总线电控系统有三套。采用该控制系统切丝机销售量占切丝机销售总数95%以上。采用先进总线技术使控制信息纯数据化,简化了硬件电路、线缆的数量。提高了控制系统可靠性。塑造了切丝机控制系统的新形象。但是由于基于现代电子、计算机、通讯的串行数据传输新技术;是现代电子技术和低压电路融合;是二十世纪末崛起的工业
自动化控制新技术,所以在工程设计和使用中还存在不少新问题。比如与传统控制安装施工比较,总线的安装使用要求很高:总线的长度,和动力线并列铺放距离,接地方式和位置都有明确规定。无论设计还是安装、维护、使用抱着以往相对粗糙经验,总线都不可能在恶劣工业环境中正常使用。另外由于牵涉新技术多,在使用维护中对用户工程技术人员业务素质都有较高要求。
1 总线问题现状从全国切丝机用户售后服务反馈信息统计,因为总线电缆接线、布线和从站问题造成故障而不能及时处理占总故障率30%。如何提高总线控制可靠性,以及提高系统自诊断能力,让用户在第一时间发现问题,清楚问题准确位置,即时加以处理,是提高产品质量、售后服务效率和公司形象的当务之急。
2 图形信息式PROFIBUS-DP总线诊断自诊断功能。西门子PROFIBUS-DP总线是切丝机的核心应用技术之一,整个切丝机控制显示数据传递都由它完成。但是PROFIBUS-DP总线和挂接在总线上从站自诊断应用开发还是空白。现在切丝机总线一旦出问题完全凭经验处理,很多用户因缺乏实际操作经验无从下手。售后服务因缺少具体总线故障信息无法实现远程诊断,增加服务难度和服务成本。在查阅西门子PROFIBUS-DP总线诊断资料基础上。开发了关于切丝机PROFIBUS-DP总线系统图形信息自诊断功能。
2.1 PROFIBUS-DP总线诊断功能块应用说明在切丝机源程序中嵌入PROFIBUS-DP总线诊断功能块FB125。该功能块主要是针对西门子公司PROFIBUS-DP总线产品开发运用。由于切丝机电控系统内部挂接在总线上的从站分别是英国CT公司驱动器,德国PHONEIX公司INLINE分散式数字量、模拟量输入输出模块。是非西门子公司产品,诊断数据、格式、含义和西门子公司总线产品完全不一样。所以在熟悉FB125功能块接口参数含义基础上,还要研究PHONEIX公司INLINE分散模块,英国CT公司驱动器诊断数据规范,并进行测试和编译使FB125处理数据能够准确报告从站模块诊断信息。比如故障位置、故障器件名称、故障原因和排除方法。
2.1.1 总线诊断功能块调用和参数说明
FB125功能块在程序OB1、OB82 、OB86中直接调用,调用后及输入输出参数描述如下:
Network: 4该程序块用于切丝机分布PROFIBUS-DP总线的诊断(interrupt)
CALL "DETAIL_DP_DIAG" , "DETAIL_DIAG_DB"
DP_MASTERSYSTEM :=1 // 主站地址号。
EXTERNAL_DP_INTERFACE:=FALSE //PROFIBUS-DP是集成总线接口。
MANUAL_MODE :=DB50.DBX126.0 //诊断模式:自动模式设定为“0”;手动模式设定为“1”。
SINGLE_STEP_SLAVE :=DB50.DBX126.1 //切换显示另一个故障从站标志。
SINGLE_STEP_ERROR :=DB50.DBX126.2 //切换到已指示的故障从站上另一个错误标志。
RESET :=DB50.DBX126.3 //总线复位。
SINGLE_DIAG :=DB50.DBX126.4 //手动模式:读指定的DP从站信息。
SINGLE_DIAG_ADR :="DB50".SING_DIAG_ADR // 手动模式:被单独诊断的从站地址。
ALL_DP_SLAVES_OK :=DB50.DBX126.5 //所有DP从站无故障,总线“OK”。
SUM_SLAVES_DIAG :="DB50".SUM_SLAVES_DIAG//所有出故障的从站数量。
SLAVE_ADR :="DB50".SLAVE_ADR //故障从站地址(1-126)。
SLAVE_STATE :="DB50".SLAVE_STATE //地址所指示故障从站的状态。(0:DP从站OK;1:DP从站失败 ;2 :DP从站故障; 3:DP从站没有被配置或被诊断。
SLAVE_IDENT_NO :="DB50".SLAVE_IDENT_NO //地址所指示故障从站的“ID”号码。
ERROR_NO :="DB50".ERROR_NO //地址所指示故障从站的错误号码。
ERROR_TYPE :="DB50".ERROR_TYPE //地址所指示故障从站的错误类型。
MODULE_NO :="DB50".MODULE_NO //地址所指示故障从站的故障模块号码。
MODULE_STATE :="DB50".MODULE_STATE //地址所指示故障从站的故障模块状态。
CHANNEL_NO :="DB50".CHANNEL_NO //地址所指示故障从站的故障模块的故障通道号码。
CHANNEL_TYPE :="DB50".CHANNEL_TYPE //地址所指示故障从站的故障模块的故障通道类型。
CHANNEL_ERROR_CODE :="DB50".CHANNEL_ERROR_ CODE//地址所指示故障从站的故障模块的故障通道号码。
CHANNEL_ERROR_INFO_1 :="DB50".CHANNEL_ERROR_ INFO_1//地址所指示故障从站的故障模块的故障通道错误信息类型。
CHANNEL_ERROR_INFO_2 :="DB50".CHANNEL_ERROR_ INFO_2//S7诊断错误类型为“4”信息的位号码(必须是S7模块)。
DIAG_COUNTER :="DB50".DIAG_COUNTER //显示“DP”从站所有诊断的总和。
DIAG_OVERFLOW :=DB50.DBX126.6 //同时接收的诊断从站数量大于“32".
BUSY :=DB50.DBX126.7 //指示“FB”块在处理“DP”系统。
程序中FB125功能块的例证数据块DB125用于存贮诊断数据。总线从站诊断信息分别放在DBB932---DBB1271字节中。其中:
·DBB932到1175存贮当前故障从站标准诊断数据。
·DBB1176到1191作为位寄存器标示配置的总线从站。
·DBB1192到1207作为位寄存器标示总线已处理的总线从站。
·DBB1208到1223作为位寄存器标示总线未处理的总线从站。
·DBB1224到1239作为位寄存器标示故障总线从站。
·DBB1240到1255作为位寄存器标示故障和受影响总线从站。
·DBB1256到1271作为位寄存器存贮故障和受影响总线从站,直至CPU从启动或复位清零。
·DBB1272到1397存贮诊断总线从站地址。
在上面诊断字节中总线节点以位寄存器形式存贮标示时,各从站地址在字节中分布位置图标示如下:

从站地址在字节中分布图(图一)
2.2 总线从站设置和诊断数据处理 在PROFIBUS-DP总线诊断中,诊断信息的准确程度取决于从站本身的诊断技术状态。从站诊断信息越丰富说明从站总线自诊断功能越强大。
2.2.1 CT驱动器总线诊断数据处理
英国CT驱动器PROFIBIS-DP总线接口模块提供标准总线诊断信息。信息排列如下表:

PROFIBIS-DP标准总线诊断信息
从站各状态字节包含了总线从站的详细状态信息义及状态处理建议。各状态字节的位信息及处理建议分别见下表。

2.2.2 PHOENIX公司 INLINEF分布数字模拟量输入输出模块总线诊断数据处理
INLINE分布数字模拟量输入输出模块总线诊断数据除了提供标准总线诊断信息外,按照提供PDU状态诊断信息格式设置,还可以处理更准确的总线从站内部诊断信息。PDU状态诊断信息数据块如下表:

INLINE模块DP/V1模式产生PDU状态诊断信息数据字节(表四)
在上表中当INLINE模块出现任何故障时以DP/V1模式产生PDU状态诊断信息里显示的故障类型代码、槽号的位置代码编译后可准确显示模块诊断信息。
比如在STEP7诊断检测画面通过总线以DP/V1模式产生PDU状态诊断信息显示下面画面信息。根据上表数据字节含义查询INLINE 故障类型代码手册可检测 一个INLINE模块组二号端子出现I/O故障。

DP/V1模式产生PDU状态诊断信息显示INLINE从站二号端子I/O故障(图二)
2.3 ROFIBUS-DP总线系统图形信息自诊断功能监控画面图
ROFIBUS-DP总线系统图形信息自诊断功能监控画面图(图三)
上图为自行开发应用于切丝机的PROFIBUS-DP总线系统图形信息自诊断功能监控画面。画面由总线配置状态图标、总线从站信息显示框、总线从站信息操作查询按钮组成。通过总线诊断画面可以监控切丝机总线当前状态。总线上任何一个从站总线故障相应配置图上状态图标圆球会变成红色,指示该从站有故障。“总线状态”标题信息栏由正常绿色变成红色显示“故障”字样。“故障从站总数” 标题信息栏显示所有出现故障从站数量。“故障从站地址”标题显信息栏显示当前出现故障从站地址号。“从站状态”标题信息栏描述显示故障程度;如果显示从站失效,可能原因当前故障从站从总线上脱离;如果显示从站故障,可能原因从站内部有故障,而从站并没有从总线上脱离。“从站故障通道号” 标题信息栏显示从站内部故障时诊断后故障模块的位置——分布式I/O模块具有该功能。“从站故障代码”标题信息栏显示故障代码。查阅INLINE故障代码手册可以判断故障的原因和处理方法。
总线诊断操作分为“自动诊断”和“手动诊断”功能。 点击“自动诊断”按钮,按钮自动切换显示为“手动诊断”模式。再点击按钮又切换显示“自动诊断”模式。
在“自动诊断”模式下
PLC自动记录所有故障从站信息。用户可以点击“故障从站切换“按钮来查询每一个总线故障从站故障信息档案。所有信息分别在“故障从站地址”、“从站状态”、 “从站故障通道号”、“从站故障代码”按分页方式显示。
在“手动诊断”模式下用户点击图上总线任何一个从站标示图标,再点击“手动诊断确认”钮,待查从站号自动输入“故障从站地址”标题。相应从站状态信息在“从站状态”、 “从站故障通道号”、“从站故障代码”标题内显示。
无论“自动诊断”模式还是“手动诊断”模式如果分布I/O模块存在不只一个以上故障,用户可点击“从站故障切换”钮在“从站故障通道号”、“从站故障代码”标题内切换显示不同故障信息。
当总线故障解除后一般情况系统自动恢复正常。如果系统恢复困难,用户点击“总线复位”按钮初始化总线系统,进行总线系统初始化手动恢复。
3.PROFIBUS-DP诊断画面开发技术要点在上图的PROFIBUS-DP诊断画面描述的总线系统集成了德国
Siemens CPU、德国PHOENIX分布式I/O,英国CONTROLTECHNICS驱动器三家公司产品。,它们按照PROFIBUS-DP国际标准总线协议规范提供接口。通过总线对其产品诊断应用开发的工作就是熟悉转换各自产品诊断代码信息。了解它的组合规律。编译后直观地表现在图形界面上。
另外要掌握可编程控制器CPU作为PROFIBUS-DP总线主站在总线及隶属从站出现故障时候它调用系统中断程序处理故障保存诊断信息的原理过程。
4.结束语图形信息式PROFIBUS-DP总线诊断自诊断功能在实际测试中故障信息直观,故障位置准确。操作方便。该功能不仅应用在切丝机上,还可以推广应用在我公司其它使用PROFIBUS-DP总线的系统中。它不仅能诊断监控SIEMENS所有关于PROFIBUS-DP总线产品而且可以监控集成PROFIBUS-DP接口非SIEMENS公司电气总线产品。有了准确的总线故障信息我们可以在产品实际运行中及时避免因总线安全问题造成的事故,作为一种完善、先进的技术指标它提高了控制系统的层次,提升产品市场竞争力。
参考文献1. 德国PHOENIX CONTACT关于INLINE模块用户手册《 User Manual ——Configuring and Installing the PROFIBUS DP/V1 bus coupler for the Inline Product Range》。
2. 德国SIEMENS S7可编程控制器使用软件,Step7 V5.1。
3. 《Description of the DP-Diagnostic Blocks for SIMATIC S7》德国SIEMENS。