應(yīng)用領(lǐng)域 | 環(huán)保,化工,電子,電氣,綜合 |
---|
6ES7321-1EL00-0AA0
SIMATIC S7-300,數(shù)字輸入 SM 321,電位隔離, 32 DE,120V AC,1個(gè) 40針
![]() |
參考價(jià) | 面議 |
更新時(shí)間:2023-09-15 11:22:05瀏覽次數(shù):304
聯(lián)系我們時(shí)請說明是化工儀器網(wǎng)上看到的信息,謝謝!
本公司主營西門子工業(yè)自動化產(chǎn)品,原裝正品,品質(zhì)保障、
高級業(yè)務(wù)顧問;竭誠為你服務(wù)
是西門子工業(yè)自動化系統(tǒng)集成商,也是電器智能控制產(chǎn)品的高科技企業(yè)。是一家專業(yè)從事西門子工業(yè)自動化產(chǎn)品和數(shù)控系統(tǒng)維修、銷售、解密、技術(shù)服務(wù)工程服務(wù)公司。在西門子工業(yè)自動化產(chǎn)品領(lǐng)域,公司憑借雄厚的技術(shù)實(shí)力及多年從事西門子產(chǎn)品的銷售經(jīng)驗(yàn),本著樹立公司形象和對用戶認(rèn)真負(fù)責(zé)的精神開展業(yè)務(wù),贏得了西門子公司與廣大用戶的好評及大力支持,公司尊崇“踏實(shí)、拼搏、責(zé)任"的企業(yè)精神,并以誠信共贏、開創(chuàng)經(jīng)營理念,以*的自動化控制設(shè)備創(chuàng)造美好的生活.
公司注冊資本一千萬,我公司的辦公地址位于中國的經(jīng)濟(jì)、金融中心1800弄(電子商務(wù)園區(qū))
公司所售出的產(chǎn)品,*,質(zhì)保一年、但凡發(fā)現(xiàn)有任何質(zhì)量問題,可無條件退換(非人為損壞)可送貨,*,新品現(xiàn)貨,假一罰十。
1 簡介 軟件冗余是低成本的冗余解決方案,適用于對切換時(shí)間要求不是很高的場合,主備切換 ......
1 簡介
軟件冗余是低成本的冗余解決方案,適用于對切換時(shí)間要求不是很高的場合,主備切換
時(shí)間為秒級的控制系統(tǒng)。軟冗余系統(tǒng)包括兩個(gè)站,一個(gè)為主站,一個(gè)為備用站;主備站的數(shù)據(jù)通訊鏈路為標(biāo)準(zhǔn)西門子通訊協(xié)議 (MPI/Profibus/Ethernet);冗余范圍內(nèi)的I/O模板需通過Profibus-DP網(wǎng)絡(luò)連接到ET200M從站上;西門子的軟件冗余可以在S7-300或S7-400的標(biāo)準(zhǔn)系統(tǒng)中實(shí)現(xiàn),只需調(diào)用軟冗余軟件包中的程序塊。
西門子的精智面板支持和軟冗余CPU通訊,如圖1的系統(tǒng)架構(gòu),并且當(dāng)某個(gè)CPU連接
中斷,面板可以切換連接到另一個(gè)CPU;如果兩個(gè)CPU主備切換,面板可以切換到主CPU。
圖1
本文描述的是用WinCC V11組態(tài)的精智面板通過腳本的方式實(shí)現(xiàn)切換連接的方法;本文
只描述面板和CPU的集成PN口之間通過工業(yè)以太網(wǎng)通訊,面板和CPU之間通過其他通訊方式(如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
KP700 Comfort (6AV2124-1GC01-0AX0)
(C) Software
WinCC V11 SP2 upd2
Step7 V5.5 SP2+HF1
此方法只適用于支持三個(gè)以上連接,支持腳本及ChangeConnection函數(shù)的面板,如全
系列的Comfort Panel。
本文不介紹軟件冗余的原理及組態(tài)方法,詳細(xì)可以參考:
《SIEMENS PLC系統(tǒng)軟件冗余的說明與實(shí)現(xiàn)》
下載中心文檔編號:A0039
78604454
2 組態(tài)Comfort Panel和S7-300軟冗余系統(tǒng)的通訊
2.1 CPU組態(tài)
說明:本文描述的CPU組態(tài)是使用Step7 V5.5完成的,不涉及Step7 V11的使用。
A站:315-2PN/DP+IM153-2
B站:317F-2PN/DP+IM153-2
AB站之間通過CP342-5建立連接,實(shí)現(xiàn)冗余數(shù)據(jù)同步。
2.1.1 Step7中的硬件組態(tài)
A站:在Step7中組態(tài)315-2PN/DP,在DP總線上添加IM153-2,如圖2所示。
圖2
在CPU的屬性中選擇Clock Memory,設(shè)置Memory byte為MB0,如圖3所示。
圖3
B站:在Step7中組態(tài)317F-2PN/DP,在DP總線上添加IM153-2,如圖4所示。
圖4
在CPU的屬性中選擇Clock Memory,設(shè)置Memory byte為MB0,如圖5所示。
圖5
2.1.2 Step7中的網(wǎng)絡(luò)組態(tài)
A站和B站之間通過CP342-5建立FDL連接,此連接為AB站之間的數(shù)據(jù)鏈路通道,打開
Netpro界面,新建一個(gè)FDL連接,如圖6所示。
圖6
2.1.3 Step7中的CPU編程
說明:本文描述的編程只涉及實(shí)現(xiàn)軟冗余功能的部分,其他功能的實(shí)現(xiàn)不予介紹。
A站:OB100中調(diào)用FC100,實(shí)現(xiàn)初始化,如圖7所示。
圖7
OB35中調(diào)用FB101,必須在執(zhí)行冗余用戶程序的前/后分別調(diào)用FB101,如圖8所示,而FB101內(nèi)部調(diào)用了FB104、FC5、FC6,必須裝載這三個(gè)塊。
圖8
OB86中調(diào)用FC102,這樣當(dāng)DP總線有時(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中,做好硬件接線。
2.2 在WinCC V11中組態(tài)Comfort Panel
在WinCC V11中插入一個(gè)HMI 設(shè)備,選擇設(shè)備類型為“SIMATIC精智面板 > KP700",
如圖11所示。
圖11
2.2.1 組態(tài)連接
在項(xiàng)目中組態(tài)三個(gè)連接,分別對應(yīng)A站、B站和實(shí)際連接。Conn_A對應(yīng)A站,CPU的參數(shù)
是A站的參數(shù),如圖12所示。
圖12
Conn_B對應(yīng)B站,CPU的參數(shù)是B站的參數(shù),如圖13所示。
圖13
建立Conn_real用于創(chuàng)建過程變量,通信驅(qū)動程序選擇“SIMATIC S7 300/400",PLC
的地址參數(shù)默認(rèn)設(shè)置為192.168.0.2,擴(kuò)展插槽是2,機(jī)架號是0,如圖14。切換連接的腳本會根據(jù)切換條件給conn_real分配不同的參數(shù)。
圖14
2.2.2 組態(tài)變量
在Conn_A下建立變量,如圖15所示。其中trigger_PLCA的地址是M0.4,采集模式是
“循環(huán)連續(xù)",采集周期是500ms。
圖15
在Conn_B下建立變量,如圖16所示。其中trigger_PLCB的地址是M0.4,采集模式是
“循環(huán)連續(xù)",采集周期是500ms。
圖16
項(xiàng)目中的其他變量如圖17所示,test1和test2用于測試conn_real的連接狀態(tài)。
圖17
2.2.3 切換連接的腳本邏輯解釋
在變量trigger_PLCA的“事件—數(shù)值更改"中添加腳本conn_PLCA,實(shí)現(xiàn)切換連接到
conn_A,如圖18所示。腳本邏輯參見下文。
圖18
在變量trigger_PLCB的“事件—數(shù)值更改"中添加腳本conn_PLCB,實(shí)現(xiàn)切換連接到
conn_B,如圖19所示。腳本邏輯參見下文。
圖19
在項(xiàng)目樹下面的“計(jì)劃任務(wù)"中建立一個(gè)新任務(wù),每分鐘執(zhí)行一次,在函數(shù)列表中添加
腳本conn_lost,用于檢測是否和兩個(gè)CPU的連接都中斷,如果都中斷,提示“connection lost",如圖20所示。
圖20
本文附件中包含三個(gè)腳本文件。在項(xiàng)目樹的“腳本 > VB腳本"下添加腳本
“conn_PLCA",將附件中的conn_PLCA.txt文件內(nèi)容拷貝到conn_PLCA中,注意ChangeConnection的參數(shù)必須和conn_A的參數(shù)*,如圖21所示。
圖21
繼續(xù)添加腳本“conn_PLCB",將附件中的conn_PLCB.txt文件內(nèi)容拷貝到
conn_PLCB中,注意ChangeConnection的參數(shù)必須和conn_B的參數(shù)*,如圖22所示。
圖22
繼續(xù)添加腳本“conn_lost",將附件中的conn_lost.txt文件內(nèi)容拷貝到conn_lost中,
如圖23所示。
圖23
以conn_PLCA為例解釋腳本邏輯。
觸發(fā)變量trigger_PLCA的地址M0.4,每0.8秒0/1變化一次,如果面板和CPU連接正常,能一直檢測到變量數(shù)值變化,即能觸發(fā)conn_PLCA動作;
初始化。給"connected_to"變量賦值"Conn_A, 192.168.0.2"。
給A站的連接狀態(tài)值"conn_state_PLCA"復(fù)位為1,表示連接正常;
判斷B的連接狀態(tài)值"conn_state_PLCB",如小于10則加1,如果檢測到B站斷開,則B的連接狀態(tài)值會加到11;
切換連接。給出切換條件:
(A) 如果B的連接狀態(tài)值>=11,說明B站斷開;
(B) 如果B的連接狀態(tài)值<=5,即連接正常,但同時(shí)讀A站的軟冗余狀態(tài)字SwitchPLCA和B站的軟冗余狀態(tài)字SwitchPLCB,如果A狀態(tài)字=5同時(shí)B狀態(tài)字=10,說明A為主B為備;
(C) 如果B的連接狀態(tài)值<=5,即連接正常,但A站的軟冗余狀態(tài)字SwitchPLCA=0h25(十進(jìn)制37),B站的軟冗余狀態(tài)字SwitchPLCB=9,說明A運(yùn)行而B停機(jī)。
以上三個(gè)條件只要滿足一個(gè),就可以切換連接到CPUA,因此三個(gè)條件做“或"運(yùn)算。
CPU狀態(tài)與狀態(tài)字變量SwitchPLCA(DB5.DBB9)和SwitchPLCB(DB5.DBB9)的對
應(yīng)關(guān)系請參考表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啟動 | 備、run | 主、run | 0000 0110 (0x06) | 0000 1001 (0x09) | Conn_B |
B停機(jī) | 主、run | 備、stop | 0010 0101 (0x25) | 0000 1001 (0x09) | Conn_A |
B啟動 | 主、run | 備、run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
B從站斷開 | 主、run | 備、run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
B從站恢復(fù) | 主、run | 備、run | 0000 0101 (0x05) | 0000 1010 (0x0A) | Conn_A |
A從站斷開 | 備、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的值和連接的對應(yīng)關(guān)系請參考表2。
變量conn_state_PLCA/B的值 | 連接狀態(tài) |
0 | 初始化 |
1~5 | 連接正常 |
6~10 | 連接中斷 |
11~20 | |
100 | 無效 |
表 2
6. 如果檢測到無連接的狀態(tài),則切換到A站。
腳本conn_PLCB的邏輯和conn_PLCA基本相同,只是在第⑤步 的切換條件有不同,
具體描述如下。
(A) 如果A的連接狀態(tài)值>=11,說明A站斷開;
(B) 如果A的連接狀態(tài)值<=5,即連接正常,但同時(shí)讀A站的軟冗余狀態(tài)字SwitchPLCA和B站的軟冗余狀態(tài)字SwitchPLCB,如果A狀態(tài)字=6同時(shí)B狀態(tài)字=9,說明B為主A為備;
(C) 如果A的連接狀態(tài)值<=5,即連接正常,但A站的軟冗余狀態(tài)字SwitchPLCA=5,B站的軟冗余狀態(tài)字SwitchPLCB=0h29(十進(jìn)制41),說明B運(yùn)行而A停機(jī)。
以上三個(gè)條件只要滿足一個(gè),即切換連接到CPUB。
腳本conn_lost的邏輯如下。
每分鐘讀一次兩個(gè)連接的狀態(tài)變量,如果連接正常,將連接變量conn_state_PLCA/B設(shè)為5;
如果讀到連接狀態(tài)變量的值大于等于5,則設(shè)為100,表明連接無效;
如果兩個(gè)連接的狀態(tài)變量值均為100,說明兩個(gè)連接都無效,顯示“connection lost"。
2.2.4組態(tài)畫面
組態(tài)一個(gè)畫面,如圖24所示。
其中“當(dāng)前連接到"后面的IO域連接"connected_to"變量;“PLCA/PLCB connection
status"后面的IO域連接“conn_state_PLCA/PLCB"變量;“trigger_PLCA/PLCB"后面的IO域連接“trigger_PLCA/trigger_PLCB"變量;“test1"和“test2"后面的IO域連接“test1"和“test2"變量,用于測試conn_real連接狀態(tài);“status of PLCA"后面的IO域連接“StatusOfPLCA"變量(DB5.DBW8);“status of PLCB"后面的IO域連接“StatusOfPLCB"變量(DB5.DBW8)。
圖24
2.3 項(xiàng)目下載測試
組態(tài)后的項(xiàng)目編譯下載到KP700 Comfort中,在KP700和兩個(gè)CPU之間連好網(wǎng)線,由
于KP700有兩個(gè)以太網(wǎng)口,本身相當(dāng)于交換機(jī),因此可以用兩個(gè)網(wǎng)口各連接一個(gè)CPU。做
如下調(diào)試。
(1) 上電初始化,A為主站、run,B為備站、run,變量trigger_PLCA/B都在0/1變化,
KP700默認(rèn)和A站連接。
圖25
(2) 手動停止CPUA,A站為stop狀態(tài),B站為主、run。Conn_A無效,變量
trigger_PLCA無效,連接變量conn_state_PLCA為100,連接conn_real切換到CPUB。
圖26
(3) 再次啟動A站,A為備、run,B為主、run。Conn_A恢復(fù),trigger_PLCA在0/1變
化,conn_real保持和CPUB連接。
圖27
(4) 拔掉B和屏之間的網(wǎng)線,conn_B無效,trigger_PLCB無值,連接狀態(tài)變量
conn_state_PLCB為100,屏切換到和A連接。A為備、run,B為主、run。
圖28
(5) 再拔掉A和屏之間的網(wǎng)線,conn_A無效,trigger_PLCA也無值,連接狀態(tài)變量
conn_state_PLCA/B均為100,屏無法和任意一個(gè)CPU連接,因此屏上顯示“connection lost"。
圖29
(6) 連上屏和A站、B站之間的網(wǎng)線,conn_A和conn_B都恢復(fù),trigger_PLCA/B的值
都在0/1變化,conn_real和B連接。因?yàn)锽為主、run,A為備、run。
圖3