ERTEC200P-2 PROFINET设备完全开发手册(6-2)

6.2 诊断与报警实验

首先确认固件 App1_STANDARD, 将宏定义改为:

#define EXAMPL_DEV_CONFIG_VERSION  1

参照第6节的内容,编译和调试固件,并在TIA Portal 中建立RT项目。启动固件后,TIA Portal 切换到在线,可以看到PLC与设备正常工作:

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第1张图片

在串口终端输入‘?’可以看到指令列表:

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第2张图片 输入‘B’可以发送通道诊断报警‘line break’在槽1-子槽1。在串口终端输入‘B’,

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第3张图片

可以看到PLC的故障灯(红色)已经开始闪烁,在TIA 可以看到PLC出现故障提示。

打开诊断缓冲区,可以看到诊断事件“断路”和详细信息。可以看到这是一个诊断事件到达报警。

 ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第4张图片

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第5张图片 

输入’b’,可以看到PLC恢复正常工作状态,并且从诊断缓冲区看到诊断事件离去报警

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第6张图片 

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第7张图片 

如果要自定义通道报警错误类型ErrorType,最好使用0x100-0x7FFF之间的错误类型号,并且在GSDML文件中指定错误类型号对应的提示信息。举例来说,如果我们定义一个错误类型号为257(0x101),则需要在GDSML中添加如下内容。

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第8张图片 

接下来我们试验一下PLC对于报警事件的处理。首先定义三个变量

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第9张图片

在PLC中添加OB82

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第10张图片 

并在OB82中添加如下指令

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第11张图片 

在串口输入’B’,可以看到:

 

 输入’b’,可以看到:

 

因此可知,每次PLC接收到通道报警,均会执行OB82

同样,添加OB40

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第12张图片

 同理,在OB40中添加如下指令

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第13张图片

在slot1 “64byte 输入”上使能硬件中断,并将硬件中断分配给OB40。编译PLC并下载、运行。

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第14张图片在串口终端输入’a’ (send process alarm on slot1, subslot1),可以看到:

 

因此可知,每次PLC接收到过程报警,均会执行OB40中断

同样,添加OB55

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第15张图片

在OB55中添加如下指令

ERTEC200P-2 PROFINET设备完全开发手册(6-2)_第16张图片 在串口终端输入 'h' (send status alarm on slot1, subslot1),可以看到

因此可知,每次PLC接收到状态报警,均会执行OB55 

 

 

 

 

 

 

你可能感兴趣的:(Profinet,西门子,芯片,嵌入式硬件)