S7400與S7300通訊問題
劉玉蓉
發(fā)布于2014-11-04 17:56
6
0
標(biāo)簽:
我們廠網(wǎng)絡(luò)由S7400和S7300通過以太網(wǎng)連接,網(wǎng)絡(luò)連接是通過s7連接的。由于S7400下ET200需增加一塊模塊,所以S7400斷電,進(jìn)行硬件配置并組態(tài),下裝硬件軟件后,都運(yùn)行正常,但發(fā)現(xiàn)S7300向S7400發(fā)送的一個(gè)DB塊,S7400里收不到了,接收塊用的是SFB14,錯(cuò)誤代碼為1.請(qǐng)問怎么能恢復(fù)正常?聽別人說要下裝一下網(wǎng)絡(luò)組態(tài),是這樣嗎?我這S7400和S7300不能輕易重啟,有什么好的辦法讓通訊正常嗎?
問題補(bǔ)充:
請(qǐng)問下載網(wǎng)絡(luò)配置,需要重啟PLC嗎?
佳答案
根據(jù)你的描述,S7-400與S7-300之間通過以太網(wǎng)S7連接通信,并且采用單邊通信(One-Way),因此調(diào)用FB14/15(S7-400調(diào)用SFB14/15)進(jìn)行單邊通信。當(dāng)采用單邊通信時(shí),只需在本地側(cè)CPU調(diào)用PUT/GET,即可向通信雙方發(fā)送數(shù)據(jù)或讀取對(duì)方的數(shù)據(jù)。
如果SFB14的參數(shù)ERROR(故障發(fā)生)的代碼為"1",要檢查參數(shù)STATUS(狀態(tài)代碼)的值,才能判斷具體的原因,如ERROR=1,而STATUS=10,原因就是當(dāng)調(diào)用SFB14時(shí),背景數(shù)據(jù)塊DB已經(jīng)指明但不屬于SFB14、或無背景數(shù)據(jù)塊被指明,但指明一個(gè)共享數(shù)據(jù)塊或無相應(yīng)的背景數(shù)據(jù)塊。
檢查SFB14塊中參數(shù)設(shè)定是否改變,如地址參數(shù)ID(默認(rèn)為1),ADDR_1(從通信對(duì)方的數(shù)據(jù)地址中讀取數(shù)據(jù))和SD_1(本站接收數(shù)據(jù)地址)是否改變,一般調(diào)用數(shù)據(jù)塊時(shí)必須使用間接寄存器尋址,而且數(shù)據(jù)塊必須采用絕對(duì)地址,如ADDR_1=P#DB2.DBX0.0 BYTE100,表示從S7-300PLC中讀取數(shù)據(jù)塊DB2中從字節(jié)0開始的100個(gè)字節(jié)的數(shù)據(jù)