維修西門(mén)子KTP1000觸摸屏解密維修西門(mén)子KTP1000觸摸屏
上海西萬(wàn)自動(dòng)化科技公司專(zhuān)業(yè)銷(xiāo)售德國(guó)西門(mén)子SIEMENS:*供應(yīng)西門(mén)子變頻器,西門(mén)子可編程控制器,
西門(mén)子LOGO,西門(mén)子*處理單元,西門(mén)子CPU模塊,西門(mén)子觸摸屏,西門(mén)子顯示屏,西門(mén)子內(nèi)存卡,西門(mén)
子軟啟動(dòng)器,西門(mén)子操作面板,西門(mén)子編碼器,西門(mén)子電機(jī),西門(mén)子連接器,西門(mén)子按鈕,西門(mén)子保護(hù)開(kāi)
關(guān),西門(mén)子空氣開(kāi)關(guān),西門(mén)子傳感開(kāi)關(guān),西門(mén)子斷路器,西門(mén)子接觸器,西門(mén)子固態(tài)繼電器,西門(mén)子熔斷
器,西門(mén)子超聲波液位計(jì),西門(mén)子執(zhí)行器,西門(mén)子電磁閥,西門(mén)子導(dǎo)軌,西門(mén)子存儲(chǔ)卡,西門(mén)子電纜,西
門(mén)子電源等
我們公司西門(mén)子上海*分銷(xiāo)商,專(zhuān)業(yè)支持西門(mén)子產(chǎn)品的價(jià)格咨詢(xún)產(chǎn)品服務(wù)等,我們將保證為您提供高質(zhì)
量的西門(mén)子產(chǎn)品,售后好價(jià)格優(yōu)請(qǐng)您放心的選購(gòu)。
1 簡(jiǎn)介
軟件冗余是低成本的冗余解決方案,適用于對(duì)切換時(shí)間要求不是很高的場(chǎng)合,主備切換
時(shí)間為秒級(jí)的控制系統(tǒng)。軟冗余系統(tǒng)為兩個(gè)站,一個(gè)為主站,一個(gè)為備用站;主備站的數(shù)據(jù)通訊鏈路為標(biāo)準(zhǔn)西門(mén)子通訊協(xié)議 (MPI/Profibus/Ethernet);冗余范圍內(nèi)的I/O模板需通過(guò)Profibus-DP網(wǎng)絡(luò)連接到ET200M從站上;西門(mén)子的軟件冗余 可以在S7-300或S7-400的標(biāo)準(zhǔn)系統(tǒng)中實(shí)現(xiàn),只需調(diào)用軟冗余軟件包中的程序塊。
西門(mén)子的多功能面板支持和軟冗余CPU通訊,系統(tǒng)架構(gòu)如圖1所示,并且當(dāng)某個(gè)CPU
連接中斷,面板可以自動(dòng)切換連接到另一個(gè)CPU;如果兩個(gè)CPU主備切換,面板可以切換到主CPU。
圖1
本文描述的是用WinCC flexible組態(tài)的多功能面板通過(guò)腳本的方式實(shí)現(xiàn)切換連接的方
法;本文只描述面板和CPU的集成PN口之間通過(guò)工業(yè)以太網(wǎng)通訊,面板和CPU之間通過(guò)其他通訊方式(如MPI/Profibus)連接也可以參考本文。
本文所使用的硬件和軟件如下:
(A) S7-300 soft redundancy
CPU 315-2PN/DP (6ES7315-2EH13-0AB0, Firmware V2.5)
CPU 317F-2PN/DP (6ES7317-2FK14-0AB0, Firmware V3.2)
CP342-5 (6GK7342-5DA02-0XE0, Firmware V5.0)
IM153-2 (6ES7153-2BA02-0XB0)
(B) Panel
MP377 12”Touch (6AV6 644-0AA01-2AX0)
(C) Software
WinCC flexible 2008 SP3
Step7 V5.5 SP2+HF1
此方法只適用于支持三個(gè)以上連接,支持腳本及ChangeConnection函數(shù)的面板,如
TP/OP270、TP/OP277、MP270、MP277、MP370、MP377等。
本文不介紹軟件冗余的原理及組態(tài)方法,詳細(xì)可以參考:
《SIEMENS PLC系統(tǒng)軟件冗余的說(shuō)明與實(shí)現(xiàn)》
下載中心文檔編號(hào):A0039
78604454
2 組態(tài)Multi Panel和S7-300軟冗余系統(tǒng)的通訊
2.1 CPU組態(tài)
A站:315-2PN/DP+IM153-2
B站:317F-2PN/DP+IM153-2
AB站之間通過(guò)CP342-5建立連接,實(shí)現(xiàn)冗余數(shù)據(jù)同步。
2.1.1 Step7中的硬件組態(tài)
A站:在Step7中組態(tài)315-2PN/DP,在DP總線(xiàn)上添加IM153-2,如圖2所示。
圖2
在CPU的屬性中選擇Clock Memory,設(shè)置Memory byte為MB0,如圖3所示。
圖3
B站:在Step7中組態(tài)317F-2PN/DP,在DP總線(xiàn)上添加IM153-2,如圖4所示。
圖4
在CPU的屬性中選擇Clock Memory,設(shè)置Memory byte為MB0,如圖5所示。
圖5
2.1.2 Step7中的網(wǎng)絡(luò)組態(tài)
A站和B站之間通過(guò)CP342-5建立FDL連接,此連接為AB站之間的數(shù)據(jù)鏈路通道,打開(kāi)Netpro界面,新建一個(gè)FDL連接,如圖6所示。
圖6
2.1.3 Step7中的CPU編程
說(shuō)明:本文描述的編程只涉及實(shí)現(xiàn)軟冗余功能的部分,其他功能的實(shí)現(xiàn)不予介紹。
A站:OB100中調(diào)用FC100,實(shí)現(xiàn)初始化,如圖7所示。
圖7
OB35中調(diào)用FB101,必須在執(zhí)行冗余用戶(hù)程序的前/后分別調(diào)用FB101,如圖8所示,而FB101內(nèi)部調(diào)用了FB104、FC5、FC6,必須裝載這三個(gè)塊。
圖8
OB86中調(diào)用FC102,當(dāng)DP總線(xiàn)有故障時(shí)CPU可以實(shí)現(xiàn)主備切換,如圖9所示。
圖9
B站:OB100中調(diào)用FC100,實(shí)現(xiàn)初始化,如圖10所示。
圖10
OB35和OB86中的編程和A站相同。
組態(tài)好的項(xiàng)目分別下載到CPUA和CPUB中,做好硬件接線(xiàn)。
2.2 在WinCC flexible中組態(tài)Multi Panel
在Step7中插入一個(gè)Simatic HMI station,選擇設(shè)備類(lèi)型為MP377 12” Touch,如圖
11所示。
(說(shuō)明:本文描述的是在Step7中集成組態(tài)MP377的項(xiàng)目,這不是必須的,也可以分開(kāi)
組態(tài),即單獨(dú)組態(tài)CPU和MP377。)
圖11
2.2.1 組態(tài)連接
在項(xiàng)目中組態(tài)三個(gè)連接,分別對(duì)應(yīng)A站、B站和實(shí)際連接。
Conn_A對(duì)應(yīng)A站,CPU的參數(shù)是A站的參數(shù),如圖12所示。
圖12
Conn_B對(duì)應(yīng)B站,CPU的參數(shù)是B站的參數(shù),如圖13所示。
圖13
建立Conn_real用于創(chuàng)建過(guò)程變量,通信驅(qū)動(dòng)程序選擇“SIMATIC S7 300/400”,PLC
的地址參數(shù)默認(rèn)設(shè)置為192.168.0.2,擴(kuò)展插槽是2,機(jī)架號(hào)是0。切換連接的腳本會(huì)根據(jù)切換條件給conn_real分配不同的參數(shù)。
2.2.2 組態(tài)變量
在Conn_A下建立變量,如圖14所示。其中trigger_PLCA的地址是M0.4,采集模式是
“循環(huán)連續(xù)”,采集周期是500ms。
圖14
在Conn_B下建立變量,如圖15所示。其中trigger_PLCB的地址是M0.4,采集模式是
“循環(huán)連續(xù)”,采集周期是500ms。
圖15
項(xiàng)目中的其他變量如圖16所示,test1~test5是測(cè)試變量,用于測(cè)試conn_real的連接狀
態(tài)。
圖16
2.2.3 切換連接的腳本邏輯解釋
在變量trigger_PLCA的“事件—更改數(shù)值”中添加腳本connection_PLCA,實(shí)現(xiàn)切換連
接到conn_A,如圖17。腳本邏輯參見(jiàn)下文。
圖17
在變量trigger_PLCB的“事件—更改數(shù)值”中添加腳本connection_PLCB,實(shí)現(xiàn)切換連
接到conn_B,如圖18。腳本邏輯參見(jiàn)下文。
圖18
在項(xiàng)目樹(shù)下面的“設(shè)備設(shè)置—調(diào)度器”中建立一個(gè)作業(yè),每分鐘執(zhí)行一次,在函數(shù)列表
中添加腳本connection_lost,用于檢測(cè)是否和兩個(gè)CPU的連接都中斷,如果都中斷,提示“connection lost”,如圖19所示。
圖19
本文附件中包含三個(gè)腳本文件。在項(xiàng)目樹(shù)的“腳本”下添加腳本“connection_PLCA”,
將附件中的connection_PLCA.txt文件內(nèi)容拷貝到connection_PLCA中,注意ChangeConnection的參數(shù)必須和conn_A的參數(shù)*,如圖20所示。
圖20
繼續(xù)添加腳本“connection_PLCB”,將附件中的connection_PLCB.txt文件內(nèi)容拷貝
到connection_PLCB中,注意ChangeConnection的參數(shù)必須和conn_B的參數(shù)*,如圖21所示。
圖21
繼續(xù)添加腳本“connection_lost”,將附件中的connection_lost.txt文件內(nèi)容拷貝到
connection_lost中,如圖22所示。
圖22
以connection_PLCA為例解釋腳本邏輯。
(1) 觸發(fā)變量trigger_PLCA的地址M0.4,每0.8秒0/1變化一次,如果面板和CPU連接正常,能一直檢測(cè)到變量數(shù)值變化,即能觸發(fā)connection_PLCA動(dòng)作;
(2) 初始化。給”connected_to”變量賦值"Conn_A, 192.168.0.2";
(3) 給A站的連接狀態(tài)值"conn_state_PLCA"復(fù)位為1,表明連接正常;
(4) 判斷B的連接狀態(tài)值"conn_state_PLCB",如小于10則加1,如果檢測(cè)到B站斷開(kāi),則B的連接狀態(tài)值會(huì)加到11;
(5) 切換連接。給出切換條件:
(A) 如果B的連接狀態(tài)值>=11,說(shuō)明B站斷開(kāi);
(B) 如果B的連接狀態(tài)值<=5,即連接正常,但同時(shí)讀A站的軟冗余狀態(tài)字SwitchPLCA和B站的軟冗余狀態(tài)字SwitchPLCB,如果A狀態(tài)字=5同時(shí)B狀態(tài)字=10,說(shuō)明A為主B為備;
(C) 如果B的連接狀態(tài)值<=5,即連接正常,但A站的軟冗余狀態(tài)字SwitchPLCA=0h25(十進(jìn)制37),B站的軟冗余狀態(tài)字SwitchPLCB=9,說(shuō)明A運(yùn)行而B(niǎo)停機(jī)。
以上三個(gè)條件只要滿(mǎn)足一個(gè),就可以切換連接到CPUA,因此三個(gè)條件做“或”運(yùn)算。
CPU狀態(tài)與狀態(tài)字變量SwitchPLCA(DB5.DBB9)和SwitchPLCB(DB5.DBB9)的對(duì)
應(yīng)關(guān)系請(qǐng)參考表1。
操作 | CPUA狀態(tài) | CPUB狀態(tài) | CPUA狀態(tài)字 SwitchPLCA | CPUB狀態(tài)字 SwitchPLCB | 連接到 |
上電 | 主、Run | 備、Run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
A停機(jī) | 備、stop | 主、run | 0000 0101 (0x05) | 0010 1001 (0x29) | Conn_B |
A啟動(dòng) | 備、run | 主、run | 0000 0110 (0x06) | 0000 1001 (0x09) | Conn_B |
B停機(jī) | 主、run | 備、stop | 0010 0101 (0x25) | 0000 1001 (0x09) | Conn_A |
B啟動(dòng) | 主、run | 備、run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
B從站斷開(kāi) | 主、run | 備、run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
B從站恢復(fù) | 主、run | 備、run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
A從站斷開(kāi) | 備、run | 主、run | 0000 0110 (0x06) | 0000 1001 (0x09) | Conn_B |
A從站恢復(fù) | 備、run | 主、run | 0000 0110 (0x06) | 0000 1001 (0x09) | Conn_B |
表1
連接狀態(tài)變量conn_state_PLCA/B的值和連接的對(duì)應(yīng)關(guān)系如表2。
變量conn_state_PLCA/B的值 | 連接狀態(tài) |
0 | 初始化 |
1~5 | 連接正常 |
6~10 | 連接中斷 |
11~20 | 故障 |
100 | 無(wú)效 |
表2
(6) 如果檢測(cè)到無(wú)連接的狀態(tài),則切換到A站。
腳本connection_PLCB的邏輯和connection_PLCA基本相同,只是在第⑤步的切換條
件上不同,具體如下。
(A) 如果A的連接狀態(tài)值>=11,說(shuō)明A站斷開(kāi);
(B) 如果A的連接狀態(tài)值<=5,即連接正常,但同時(shí)讀A站的軟冗余狀態(tài)字SwitchPLCA和B站的軟冗余狀態(tài)字SwitchPLCB,如果A狀態(tài)字=6同時(shí)B狀態(tài)字=9,說(shuō)明B為主A為備;
(C) 如果A的連接狀態(tài)值<=5,即連接正常,但A站的軟冗余狀態(tài)字SwitchPLCA=5,B站的軟冗余狀態(tài)字SwitchPLCB=0h29(十進(jìn)制41),說(shuō)明B運(yùn)行而A停機(jī)。
以上三個(gè)條件只要滿(mǎn)足一個(gè),即切換連接到CPUB。
腳本connection_lost的邏輯如下。
(1)每分鐘讀一次兩個(gè)連接的狀態(tài)變量,如果連接正常,將連接變量conn_state_PLCA/B設(shè)為5;
(2)如果讀到連接狀態(tài)變量的值大于等于5,則設(shè)為100,表明連接無(wú)效;
(3)如果兩個(gè)連接的狀態(tài)變量值均為100,說(shuō)明兩個(gè)連接都無(wú)效,顯示“connection lost”。
2.2.4組態(tài)畫(huà)面
組態(tài)一個(gè)畫(huà)面,如圖23所示。其中current connection后面的IO域連接的是
“connected_to”變量,顯示當(dāng)前conn_real連接的是哪個(gè)CPU;plc A/B connection status后面的IO域連接的是“conn_state_PLCA/B”變量,顯示兩個(gè)CPU的連接狀態(tài)變量;trigger_PLCA/B后面的IO 域連接的是“trigger_PLCA/B”變量;test1~test5后面的IO域連接的是“test1~test5”變量,是測(cè)試變量; Status of PLC A/B后面的IO域連接的是“StatusOfPLCA/B(DB5.DBW8)”變量,用于顯示兩個(gè)CPU的狀態(tài)信息。
圖23
2.3 項(xiàng)目下載測(cè)試
組態(tài)后的項(xiàng)目編譯下載到MP377中,在MP377和兩個(gè)CPU之間連好網(wǎng)線(xiàn),做如下調(diào)
試。
(1)上電初始化,A為主站、run,B為備站、run,變量trigger_PLCA/B都在0/1變化,
MP377默認(rèn)和A站連接,如圖24所示。
圖24
(2) 手動(dòng)停止CPUA,A站為stop狀態(tài),B站為主、run。Conn_A無(wú)效,變量
trigger_PLCA無(wú)效,連接變量conn_state_PLCA為100,連接conn_real切換到CPUB,如圖25所示。
圖25
(3) 再次啟動(dòng)A站,A為備、run,B為主、run。Conn_A恢復(fù),trigger_PLCA/B都在
0/1變化,conn_real保持和CPUB連接,如圖26所示。
圖26
(4) 拔掉B和屏之間的網(wǎng)線(xiàn),conn_B斷開(kāi),trigger_PLCB無(wú)值,conn_real切換到和
CPUA連接,如圖27所示。
圖27
(5) 再拔掉A和屏之間的網(wǎng)線(xiàn),兩個(gè)連接都無(wú)效,因此屏上顯示“connection lost”,
conn_real連接中斷,如圖28所示。
圖28
(6) 連上A站和B站與屏之間的網(wǎng)線(xiàn),conn_A和conn_B均恢復(fù),trigger_PLCA/B都在
0/1變化,conn_real和CPUB連接,因?yàn)锽為主、Run,A為備、Run,如圖29所示。
圖29
HMI
6AV6 640-0BA11-0AX0
6AV6 640-0CA11-0AX1
6AV6 640-0DA11-0AX0
6AV6 641-0AA11-0AX0
6AV6641-0BA11-0AX0
6AV6641-0CA01-0AX0
6AV6642-0AA11-0AX1
6AV6642-0BC01-1AX1
6AV6642-0BA01-1AX1
6AV6642-0DC01-1AX1
6AV6642-0DA01-1AX1
6AV6643-0BA01-1AX0
6AV6643-0AA01-1AX0
6AV6643-0CB01-1AX1
6AV6643-0DB01-1AX1
6AV6643-0CD01-1AX1
6AV6643-0DD01-1AX1
6AV6671-1CB00-0AX2
6AV6671-1CB00-0AX1
6AV6644-0AA01-2AX0
6AV6644-0AB01-2AX0
6AV6644-0AC01-2AX0
6AV6644-0BA01-2AX0
舊屏
6AV6 545-0BA15-2AX0
6AV6 545-0BB15-2AX0
6AV6 545-0BC15-2AX0
6AV6 542-0BB15-2AX0
6AV6 545-0CA10-0AX0
6AV6 545-0CC10-0AX0
6AV6 542-0CA10-0AX0
6AV6 542-0CC10-0AX0
6AV6 542-0AG10-0AX0
6AV6 545-0AH10-0AX0
6AV6 545-0AG10-0AX0
6AV6 542-0DA10-0AX0
6AV6 545-0DA10-0AX0
6AV6 545-0DB10-0AX0
6AV6 574-2AC00-2AA1
6AV6648-0BC11-3AX0
6AV6 648-0BE11-3AX0
6AV6645-0BB01-0AX0
6AV6381-2BP07-0AV0
6AV6647-0AB11-3AX0
6AV2124-0GC01-0AX0
6AV2124-0MC01-0AX0
6AV6647-0AE11-3AX0
6AV6647-0AD11-3AXO
6AV6647-0AG11-3AX0
6AV2124-1QC02-0AX0
6AV6647-0AB11-3AX0
6AV6647-0AC11-3AX0
6AV6640-0DA11-0AX0
6AV6545-0DB10-0AX0
6AV6640-0AA00-0AX1
6AV6642-0EA01-3AX0
6AV62124-4QB00-0AX0
6AV2124-0JC01-0AX0