西門子代理|CPU模塊代理商
西門子S7-1500程序診斷使用小結(jié)
用的幾個(gè)診斷指令位于“指令"-“擴(kuò)展指令"-“診斷"下面;
1、利用LED指令診斷CPU指示燈狀態(tài)
LADDR:CPU的硬件標(biāo)識(shí)符,
LED:1查詢STOP/RUN狀態(tài);2查詢ERROR狀態(tài);3:查詢MAINT狀態(tài);
4:冗余;5:Link(綠色);6:Rx/Tx(黃色)
RET_VAL:程序執(zhí)行返回值;0:LED不存在或狀態(tài)不可用;1:關(guān)閉;2:綠色指示燈點(diǎn)亮;3:橙色點(diǎn)亮;
CPU的LADDR地址查看(找以Common結(jié)尾的),見下圖;
當(dāng)CPU由STOP切換到RUN模式時(shí),可以看到上圖MW0的值由6變?yōu)?;當(dāng)CPU發(fā)生報(bào)警時(shí)ERROR指示燈會(huì)紅色閃爍,可以看到上圖MW8的值由1變?yōu)?;
LED狀態(tài)值見下圖
2、利用DeviceStates指令診斷從站通訊狀態(tài)
DeviceStates指令可以讀出PROFINET I/O或者DP網(wǎng)絡(luò)中的故障信息;
LADDR:網(wǎng)絡(luò)視圖硬件標(biāo)識(shí)符,或數(shù)據(jù)類型為HW_IOSYSTEM系統(tǒng)常量(在plc變量表中);
切換到網(wǎng)絡(luò)視圖,選中PROFINET網(wǎng)絡(luò),下方“系統(tǒng)常數(shù)",數(shù)據(jù)類型為HW_IoSystem,257填入LADDR;
也可以通過(guò)PLC變量表查看,打開變量表,切換到系統(tǒng)常數(shù),找到IoSystem數(shù)據(jù)類型的變量,可以看到其值也是275;
MODE:1從站已組態(tài)
2從站故障(一般選擇此值,診斷有故障的從站)
3從站已禁用
4 從站存在
STATE:每一位信號(hào)指示從站狀態(tài),對(duì)應(yīng)設(shè)備編號(hào)(設(shè)備編號(hào)可從設(shè)備以太網(wǎng)地址-Profinet下方查看);對(duì)于PROFINET網(wǎng)絡(luò),Array of BOOL 1024個(gè);(對(duì)于DP網(wǎng)絡(luò), Array of BOOL 128個(gè));
利用S7PLCSIM仿真從站故障,打開項(xiàng)目視圖(無(wú)法從精簡(jiǎn)視圖訪問(wèn)事件表),新建事件,選擇“機(jī)架或站故障",在LADDR中輸入266,設(shè)備編號(hào)為2的設(shè)備標(biāo)志符(HW_Device數(shù)據(jù)類型),勾選對(duì)勾,點(diǎn)擊閃電觸發(fā)從站故障;
可以看到CPU ERROR紅色閃爍,網(wǎng)絡(luò)視圖中CPU和設(shè)備編號(hào)為2的從站顯示錯(cuò)誤狀態(tài);
CPU診斷緩沖區(qū)內(nèi)容,設(shè)備編號(hào)為2的從站顯示故障;
DB塊中的數(shù)據(jù);Bit0(至少一個(gè)從站發(fā)生了通訊故障)和Bit2(設(shè)備編號(hào)為2的IO從站)為TRUE,發(fā)生了通訊故障;
設(shè)備編號(hào)的查看,切換為網(wǎng)絡(luò)視圖,選中從站,屬性-常規(guī)-以太網(wǎng)地址 PROFINET 設(shè)備編號(hào);
3、利用ModuleStates指令診斷從站模塊狀態(tài)
LADDR:網(wǎng)絡(luò)視圖硬件標(biāo)識(shí)符,數(shù)據(jù)類型為HW_Device系統(tǒng)常量;
MODE:1模塊已組態(tài)
2模塊故障(一般選擇此項(xiàng))
3模塊已禁用
4 模塊存在
STATE:每一位信號(hào)指示一個(gè)模塊的狀態(tài);
位0=1,至少一個(gè)模塊發(fā)生了故障;
位1 0#槽IO設(shè)備使用;
位2=1,1#槽模塊發(fā)生了故障;
位3=1,2#槽設(shè)備模塊發(fā)生了故障;
利用S7PLCSIM仿真從站故障,打開項(xiàng)目視圖(無(wú)法從精簡(jiǎn)視圖訪問(wèn)事件表),新建事件,選擇“拔出或插入模塊",在LADDR中輸入273,設(shè)備編號(hào)為2從站1#槽AI的設(shè)備標(biāo)志符(HW_Device數(shù)據(jù)類型),勾選對(duì)勾,點(diǎn)擊閃電觸發(fā)從站故障;
DB塊中的數(shù)據(jù);Bit0(至少一個(gè)模塊發(fā)生了故障)和Bit2(1#槽號(hào)AI模塊發(fā)生了故障)為TRUE;
CPU的診斷緩沖區(qū)內(nèi)容,設(shè)備編號(hào)2#從站AI模塊硬件移除或丟失;