SIMATIC S7-1200,模擬輸出, SM 1232,4 AO, +/-10V,14 位分辨率, 或 0-20mA/4-20mA, 13 位分辨率
SIMATIC S7-1200 SM 1232,AO 4x14 bit
訂貨號(hào): 6ES7232-4HD32-0XB0
連接超時(shí)參數(shù)
S7-1200 Mobus RTU通信網(wǎng)絡(luò)中包含多個(gè)從站站點(diǎn)時(shí),由于輪詢的網(wǎng)絡(luò)特性,只能同時(shí)讀或?qū)懸粋€(gè)站點(diǎn)數(shù)據(jù)。因此有如下因素,會(huì)影響到終整體的輪詢時(shí)間:
1. 通信速率(波特率)設(shè)置時(shí)間
2. 每個(gè)站點(diǎn)的通信數(shù)據(jù)量
3. 站點(diǎn)數(shù)量
4. 通信距離
5. 各站點(diǎn)連接時(shí)間
無(wú)論是由于信號(hào)干擾,硬件質(zhì)量引起的從站掉站或是由于工程需要暫時(shí)關(guān)閉站點(diǎn),此時(shí)都會(huì)由于“各站點(diǎn)連接時(shí)間”的增加而使通信系統(tǒng)的輪詢時(shí)間大大延長(zhǎng)。在S7-1200的Modbus RTU通信中,主要有三個(gè)參數(shù)與“各站點(diǎn)連接時(shí)間”的設(shè)置相關(guān)。
1. 從站響應(yīng)時(shí)間 RESP_TO
如圖1所示,V2.x版本的MB_COMM_LOAD初始化塊可設(shè)置從站響應(yīng)時(shí)間RESP_TO參數(shù):
設(shè)置單次連接從站的可響應(yīng)時(shí)間,范圍為5ms到65535ms(默認(rèn)值為1000ms);即如從站在此時(shí)間段內(nèi)未作出響應(yīng),則MB_MASTER將在發(fā)送次數(shù)的重試請(qǐng)求后終止請(qǐng)求并提示錯(cuò)誤信息80C8。
圖1. RESP_TO參數(shù)設(shè)置
注意:如圖2所示,Modbus從站的執(zhí)行頻率須至少小于RESP_TO設(shè)置的響應(yīng)時(shí)間(需要考慮響應(yīng)延遲時(shí)間),才可以正常通訊。
圖2. 從站響應(yīng)時(shí)間
2.重試次數(shù) RETRIES
在初始化功能塊MB_COMM_LOAD的背景數(shù)據(jù)塊中,可設(shè)置重試次數(shù)RETRIES參數(shù):
主站在返回?zé)o響應(yīng)錯(cuò)誤代碼 0x80C8 之前的重試次數(shù)。(默認(rèn)值為2次)
注意:此參數(shù)表示初次連接無(wú)響應(yīng)后,再次連接的次數(shù);即以默認(rèn)2次為例,實(shí)際嘗試連接次數(shù)為3次。
圖3 RETRIES參數(shù)設(shè)置
注意:在更改RETRIES參數(shù)后,需要重新使能MB_COMM_LOAD功能塊的REQ管腳,否則更改參數(shù)不生效。
3. 主站定時(shí)參數(shù) Blocked_Proc_Timeout
當(dāng)由于某些原因(如已發(fā)出主站請(qǐng)求,但在完成該請(qǐng)求前停止調(diào)用主站功能塊時(shí)),造成Done及Error均沒(méi)有置1時(shí),需要提供一個(gè)定時(shí)時(shí)間,在時(shí)間到達(dá)后置位,以便執(zhí)行下一個(gè)功能塊或輪詢下一個(gè)站點(diǎn)。
MB_Master的背景數(shù)據(jù)塊中提供了主站定時(shí)參數(shù)Blocked_Proc_Timeout(范圍0S到5.5S,默認(rèn)3S)
此前的RESP_TO 是針對(duì)從站響應(yīng)時(shí)間的,而B(niǎo)locked_Proc_Timeout則是針對(duì)主站的定時(shí)時(shí)間,此功能參數(shù)用于防止單個(gè) MB_Master 指令獨(dú)占或鎖定對(duì)端口的訪問(wèn)。
圖4. Blocked_Proc_Timeout參數(shù)設(shè)置
常問(wèn)問(wèn)題:
由于某一個(gè)從站掉站引起的輪詢周期時(shí)間延長(zhǎng),如何減小此影響?
通常,S7-1200可同時(shí)調(diào)整兩個(gè)參數(shù):從站響應(yīng)時(shí)間 RESP_TO和重試次數(shù) RETRIES,用于減小Modbus從站掉站或暫時(shí)關(guān)閉而增大的輪詢周期時(shí)間。
例:系統(tǒng)默認(rèn)的嘗試連接次數(shù)為3次,每次1S,總計(jì)3S;
可根據(jù)項(xiàng)目實(shí)際工況適當(dāng)減小從站響應(yīng)時(shí)間RESP_TO。這一時(shí)間無(wú)法估算,建議多次測(cè)試,確認(rèn)每個(gè)從站都能夠正常穩(wěn)定連接情況下,將此時(shí)間設(shè)置的盡量小。
以設(shè)置500ms為例。再將RETRIES設(shè)置為0。即對(duì)于每個(gè)從站,主站只嘗試連接一次,總計(jì)耗時(shí)500ms。
MB_MASTER報(bào)錯(cuò)8200(端口正忙于處理傳送請(qǐng)求),如何處理?
此情況是由于MB_MASTER的DONE或ERROR均未置位從而與后續(xù)MB_MASTER沖突導(dǎo)致。確保接通下一個(gè)MB_MASTER的時(shí)間大于Blocked_Proc_Timeout的設(shè)定時(shí)間(默認(rèn)3S)。