NetR/Net如何判讀一次讀寫已經(jīng)完成
劉玉蓉
發(fā)布于2014-10-09 15:30
11
0
標(biāo)簽:
NETW NETR指令中數(shù)據(jù)塊緩存區(qū)有D A E幾個(gè)標(biāo)志位
D是功能完成
是否可以理解為一次讀或者一次寫 完成 就會(huì)D為1
那么第二次讀寫完成如何知道呢?是否需要在第二次讀寫前,程序里先把D寫為0.
E是發(fā)生錯(cuò)誤 是否只要一旦發(fā)生錯(cuò)誤 就會(huì)E=1 整個(gè)通信就會(huì)停止
程序里把E寫為0 是否就會(huì)重新通信?
問(wèn)題補(bǔ)充:
!
第三條有一點(diǎn)疑問(wèn)
你說(shuō)的狀態(tài)字清除是調(diào)用一次NetW嗎?
即:
LD Always_On
NETW VB100, 0
還是自己用其他指令復(fù)位,
VB100為狀態(tài)字節(jié)
比如:
LD Always_On
R V100.7, 1
或者
LD Always_On
MOVB 0, VB100
還是說(shuō)兩種方法都可以?
在S7 200沒(méi)看到更多狀態(tài)字的細(xì)節(jié)描述
//-----------------------------------------
3、那么第二次讀寫完成如何知道呢?是否需要在第二次讀寫前,程序里先把D寫為0.?
是的。當(dāng)執(zhí)行一次網(wǎng)絡(luò)讀寫指令NetR/NetW后,要編程將緩沖區(qū)的數(shù)據(jù)進(jìn)行相應(yīng)處理后,要用NetW指令發(fā)一條信息來(lái)清除狀態(tài)字。
圖片說(shuō)明: 1,讀寫標(biāo)志位
佳答案
1、有關(guān)參數(shù)代碼:
D:操作已完成。0=未完成,1=已完成。
A:操作已排隊(duì)。0=無(wú)效,1=有效。
E:操作返回一個(gè)錯(cuò)誤。0=無(wú)錯(cuò)誤,1=錯(cuò)誤。
2、是否可以理解為一次讀或者一次寫 完成 就會(huì)D為1?
是的。執(zhí)行一次網(wǎng)絡(luò)讀寫指令NetR/NetW上述有關(guān)參數(shù)代碼就重置一次。
3、那么第二次讀寫完成如何知道呢?是否需要在第二次讀寫前,程序里先把D寫為0.?
是的。當(dāng)執(zhí)行一次網(wǎng)絡(luò)讀寫指令NetR/NetW后,要編程將緩沖區(qū)的數(shù)據(jù)進(jìn)行相應(yīng)處理后,要用NetW指令發(fā)一條信息來(lái)清除狀態(tài)字。
4、E是發(fā)生錯(cuò)誤 是否只要一旦發(fā)生錯(cuò)誤 就會(huì)E=1 整個(gè)通信就會(huì)停止?
是的。此時(shí)根據(jù)錯(cuò)誤代碼來(lái)進(jìn)行相應(yīng)的處理。
5、程序里把E寫為0 是否就會(huì)重新通信?
必須是錯(cuò)誤被排除后,即沒(méi)有錯(cuò)誤才可以,否則E還是置位。
6、使用用NetR/NetW時(shí),應(yīng)當(dāng)注意:
避免簡(jiǎn)單地定時(shí)激活NetR/NetW:由于串行通信的特點(diǎn)(如上所述),無(wú)法得知何時(shí)真正結(jié)束。如果定時(shí)進(jìn)行網(wǎng)絡(luò)讀寫通信,必須判斷此次通信是否正常結(jié)束
同時(shí)有效的NetR/NetW指令不能超過(guò)8個(gè),否則通信請(qǐng)求隊(duì)列會(huì)超出操作系統(tǒng)的管理能力
使用SM0.0調(diào)用網(wǎng)絡(luò)讀寫指令,雖然能長(zhǎng)期工作,但不能超過(guò)8個(gè)指令,而且會(huì)出現(xiàn)監(jiān)控時(shí)指令塊變?yōu)榧t色的現(xiàn)象,好還是加上必要的讀寫狀態(tài)判斷條件。
簡(jiǎn)單可靠的方法,是使用Micro/WIN中的NetR/NetW Wizard(網(wǎng)絡(luò)讀寫指令向?qū)В?br />使用NetR/NetW向?qū)Э梢跃庉嫸?4條網(wǎng)絡(luò)讀寫指令,其核心是使用順序控制指令,這樣在任一時(shí)刻只有一條NetR/NetW指令有效。如果要求超出24條網(wǎng)絡(luò)讀寫指令,可以自己按照此方法編程。
7、如果不使用向?qū)ё约壕幊?,建議看看:
<S7-200 可編程控制器系統(tǒng)手冊(cè)>下載:
https://www2.ad.siemens.com.cn/download/Upload/AS/manual/1017[2].pdf