1.设置模块的诊断功能
PROFINET与DP网络的故障诊断方法基本上相同。但是不能用PLCSIM来模拟PROFINET网络的故障,只能做硬件实验。
打开8.4节中的项目“PROFINET”,设置电源模块、DI、DO、AO模块的诊断参数见图8-41~图8-44),此外还启用了电流输出的AO模块诊断断路故障的功能。出现上述诊断故障时,CPU将会调用OB82。
图8-41 设置电源模块的参数
图8-42 设置DI模块的参数
2.程序设计
与PROFIBUS-DP通信相同,为了保证网络控制系统的正常运行,生成OB82、OB86和OB122。因为ET 200S PN有带电插入/拔出模块的功能,还需要生成插入/删除模块中断组织块OB83。在它们中间编程,分别将MW10~MW16加1,并保存OB82、OB83和OB86前20B的局部变量。
图8-43 设置DO模块的参数
图8-44 设置电压输出的AO模块的参数
3.诊断IO设备的故障
系统正常运行时拔掉2号IO设备的以太网电缆,CPU和IM 151-3PN上的SF灯亮,CPU的BF2灯闪烁。CPU调用一次OB86,变量表中的MW14加1。
在SIMATIC管理器执行菜单命令“PLC”→“诊断/设置”→“硬件诊断”,打开硬件诊断对话框(见图8-45),PN列的“100(2)”表示有故障的IO设备的PROFINET IO系统编号为100,IO设备号为2。E2037(即I2037)是2号IO设备的诊断地址。IO设备上的红色斜线表示通信中断。
图8-45 硬件诊断对话框
双击图中的CPU,打开CPU的模块信息。在诊断缓冲区可以看到对应的事件为“PROFINET IO:站故障”,图8-46的右边的小图是1号事件的详细信息的下半部分。
图8-46 诊断缓冲区
插上2号IO设备的以太网电缆,CPU和IM 151-3PN上的SF灯和CPU的BF2灯熄灭。CPU又调用一次OB86,变量表中的MW14加1。
选中诊断缓冲区事件列表中对应的事件“PROFINET IO:站返回”,故障的详细信息与图8-46中的基本上相同。最后一行是“外部错误,离开的事件”(事件消失)。
4.IO设备中模块的故障诊断
在2号IO设备4号插槽的DO模块的Q1.0为1状态时,令它驱动的负载开路,CPU、IM 151-3PN和该DO模块的SF灯亮。CPU调用一次OB82,变量表中的MW10加1。
打开硬件诊断对话框(见图8-47),CPU和IO设备上均有表示故障的红灯。
图8-47 硬件诊断对话框
双击图8-47中的CPU,打开CPU模块信息对话框(见图8-48)。在诊断缓冲区可以看到对应的事件为“模块问题或必要维护”,事件的详细信息给出了故障模块的字节地址和“检测到通道错误”,CPU要求调用OB82,外部错误,进入的事件(故障产生)。
图8-48 诊断缓冲区
双击图8-47中的IO设备,打开IM 151-3PN的模块信息对话框,在“IO设备诊断”选项卡的“指定通道诊断”区(见图8-49),给出了4号插槽0号通道断线的故障信息。
双击硬件诊断对话框的“打开在线站点”按钮(见图8-47),打开诊断视图(见图8-50),双击其中有红色指示灯的2号IO设备的4号插槽,打开DO模块的模块信息,在“IO设备诊断”选项卡(见图8-51),也能看到与图8-49相同的4号插槽0号通道断线的故障信息。
图8-49 IM 151-3PN的模块信息对话框
(www.xing528.com)
图8-50 诊断视图
图8-51 2DO模块的模块信息对话框
接通4号插槽0号通道被断开的负载,CPU、IM 151-3PN和故障DO模块上的SF灯熄灭,CPU又调用一次OB82,变量表中的MW10加1。诊断缓冲区中的事件为“模块 确定”,故障的详细信息与事件“模块 问题或必要的维护”的基本上相同。最后一行是“外部错误,离开的事件”(事件消失)。
5.IO设备中其他模块的故障诊断
本例程中IO设备下述的模块故障也会产生诊断故障,CPU调用OB82:DO模块的输出端对M点短路、电源模块的负载电压丢失、DI模块的DC 24V传感器电源对M点短路、电压输出的AO模块对M点短路和电流输出的AO模块负载断路。这些故障与上述DO模块负载断路的诊断方法完全相同。做电压输出的AO模块对M点的短路实验时,应给该通道输出一个较大的值,保证有一定的输出电压。
图8-52是6号插槽0号通道电压输出的AO模块对M点短路的故障信息,图8-53是1号插槽的电源模块的故障信息(前连接器丢失,传感器或负载电压丢失)。
图8-52 AO模块的故障信息
图8-53 电源模块的故障信息
6.OB83在故障诊断中的应用
OB83是插入/删除模块中断组织块。下列两种情况CPU将会调用OB83。
1)插入/拔出已组态的模块,不能拔出电源模块、CPU、适配器模块和接口模块。
2)用STEP 7修改了模块参数并在RUN模式将更改下载到CPU。
如果没有下载OB83,CPU将自动切换到STOP模式。
S7-400 CPU以数秒的间隔监视模块。电源上电时,CPU检测由STEP 7生成的组态表中列出的模块是否都插入了。如果是,这个实际的组态被保存并作为对模块进行循环监控的依据。在每一次扫描循环比较刚检测到的实际组态与上电时检测到的组态。如果发现两个组态有差异,则发出插入/删除模块中断信号,并且将有关信息存入诊断缓冲区和系统状态表。
如果在RUN模式拔出组态的模块,将启动OB83。CPU以大约1s的间隔监视模块,可能会首先检测到IO访问错误。在拔出和插入操作之间必须至少有2s的时间间隔。
如果在RUN模式将一个模块插入已组态的插槽中,将产生插入/删除模块中断。CPU检测插入的模块的类型是否与记录的组态相符。如果模块类型匹配,CPU将参数传送到该模块。如果新的模块的类型与被替换的类型不一致,在OB83中根据它的局部变量提供的信息编写程序,可以获得模块的地址和PROFINET IO的设备号。
7.模块的拔出与插入实验
不允许热插拔S7-300中央机架的模块。只有31x PN/DP CPU具有插入/删除中断功能,并且只能用于PROFINET IO组件,不能用于PROFIBUS-DP系统。
拔出1号IO设备4号插槽的2DO模块,CPU和IM 151-3PN的SF灯亮。CPU调用一次OB83,变量表中的MW12加1。
打开硬件诊断对话框,CPU和IO设备上均有表示故障的红灯(见图8-54)。
双击对话框中的CPU,打开CPU模块信息(见图8-55)。诊断缓冲区中对应的事件为“PROFINET IO模块已拆除/无法寻址”,事件的详细信息给出了故障模块的有关信息,CPU要求调用OB83,外部错误,进入的事件(故障产生)。
图8-54 硬件诊断对话框
图8-55 诊断缓冲区
双击图8-54中的IO设备,打开IM 151-3PN的模块信息对话框,“常规”选项卡的“状态”为“失败”。在“IO设备诊断”选项卡,“标准诊断”区给出了4号插槽模块丢失的信息(见图8-56)。单击“显示”按钮(见图8-49),显示出标准诊断的帮助对话框。
图8-56 标准诊断的帮助信息
单击硬件诊断对话框中的“打开在线站点”按钮,打开诊断视图(见图8-50)。双击其中的1号IO设备4号插槽的2DO模块,打开它的模块信息,也能看到4号插槽模块丢失的标准诊断信息。
插入1号IO设备4号插槽的2DO模块,CPU和IM 151-3PN的SF灯熄灭。CPU又调用一次OB83,变量表中的MW12加1。诊断缓冲区中的事件为“PROFINET IO模块/子模块已插入,模块类型正确”。事件的详细信息显示“外部错误,离开的事件”(故障消失)。
如果新的PROFINET IO模块的类型与被替换的类型不一致,可以在拔出的模块的模块信息和诊断缓冲区中看到故障信息。可以在OB83中编写程序,根据OB83的局部变量,在WinCC或HMI中显示插入的模块的地址和IO设备号,以方便用户排除故障。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。