1,、引言
在復(fù)雜現(xiàn)場工業(yè)環(huán)境中,有時需要對現(xiàn)場工作設(shè)備進行備份,,提供一套與工作設(shè)備完全相同的設(shè)備,,提高設(shè)備的應(yīng)急處理能力和工作任務(wù)完成的的靠性。在這種備份方式中,,主輔兩臺設(shè)備同時開機,,同時接收終端設(shè)備數(shù)據(jù),根據(jù)需求采用通信協(xié)議簡單,、容錯能力強,、安全性好以及成本較低的RS422總線方式實現(xiàn)。RS422總線是一種點對點傳輸總線,,它定義了一種平衡通信接口,,將傳輸速率提高到10Mb/s,在傳輸速率低于100kb/s時,,其傳輸距離可達1200米,。RS422傳輸協(xié)議屬于單機發(fā)送、多機接收的單向,、平衡傳輸規(guī)范,,只對接口電氣特性做出規(guī)定,不涉及接插件,、電纜或協(xié)議,,可在此基礎(chǔ)上建立高層通信協(xié)議進行通信。
2,、系統(tǒng)接口設(shè)計
為使主輔設(shè)備互為備份,,需要主輔設(shè)備同時接收數(shù)據(jù),、主設(shè)備應(yīng)答終端設(shè)備信號命令,而輔設(shè)備不應(yīng)答終端設(shè)備信號命令,。主輔設(shè)備與終端設(shè)備通過RS422端口連接方式如圖1所示,。
圖1 系統(tǒng)接口設(shè)計小標(biāo)
3,、系統(tǒng)工作流程
主輔設(shè)備同時工作時,系統(tǒng)工作流程如圖2所示:
圖2 系統(tǒng)工作流程框圖
4、軟件設(shè)計
通信過程中,,終端設(shè)備通過RS422端口按查詢通信方式和中斷通信方式與主輔設(shè)備進行通信,。
4.1 數(shù)據(jù)幀格式設(shè)計
4.1.1 查詢通信幀格式
查詢通信幀格式如表1所示,,按照單字節(jié)握手方式進行數(shù)據(jù)傳輸:終端設(shè)備按照單字節(jié)信號傳輸方式發(fā)送信號命令到主輔設(shè)備,,主設(shè)備在接收到每個字節(jié)后返回到終端設(shè)備,輔設(shè)備則無應(yīng)答,。終端設(shè)備在確認接收字節(jié)與發(fā)送字節(jié)無誤后繼續(xù)發(fā)送幀中下一字節(jié)數(shù)據(jù)到主輔設(shè)備,。
表1 查詢通信數(shù)據(jù)幀格式
幀格式
幀頭
數(shù)據(jù)長度
識別符
代碼
幀尾
字節(jié)數(shù)
3
2
2
1
1
4.1.2 中斷通信數(shù)據(jù)幀格式
中斷通信數(shù)據(jù)幀格式如表2所示,按照中斷方式進行數(shù)據(jù)傳輸:設(shè)備通過數(shù)據(jù)幀格式將每一個字節(jié)順序發(fā)出,,接收方以中斷方式進行接收,,根據(jù)幀格式判斷是否收到完整數(shù)據(jù)幀。
表2 中斷通信數(shù)據(jù)幀格式
幀格式
幀頭
識別符
數(shù)據(jù)區(qū)
校驗和
數(shù)據(jù)長度
幀尾
字節(jié)數(shù)
2
7
200
1
2
2
4.2 設(shè)計考慮
4.2.1 數(shù)據(jù)幀判別
設(shè)置后臺監(jiān)視線程,,主輔設(shè)備同時不間斷接收終端設(shè)備傳輸信號,,接收到信號后,判斷是否為單字節(jié),,若是單字節(jié)則延時20毫秒繼續(xù)接收,。20毫秒后若沒有接收到數(shù)據(jù)則進入查詢通信格式進行單字節(jié)握手接收,否則進入中斷通信方式進行數(shù)據(jù)接收,。
4.2.2 通信同步
4.2.2.1 主輔設(shè)備與終端設(shè)備數(shù)據(jù)接收同步
主輔設(shè)備與終端設(shè)備通信時需在發(fā)送和接收數(shù)據(jù)時間間隔上進行限制,,當(dāng)接收和發(fā)送時間超過時間間隔,就認為本次通信失敗,。程序立即回到通信程序開始,,并清空緩沖區(qū)的數(shù)據(jù)繼續(xù)查詢接收;終端設(shè)備若在規(guī)定時間未收到返回確認信號,也立即返回到通信程序開始,,并清空緩沖區(qū)中的數(shù)據(jù),重新發(fā)送數(shù)據(jù),,接收雙方重新同步。
4.2.2.2 主設(shè)備與輔設(shè)備接收同步
主設(shè)備與輔設(shè)備同時接收終端設(shè)備傳輸數(shù)據(jù),,因為接收線程都是程序子線程,,因此當(dāng)主設(shè)備接收并應(yīng)答終端設(shè)備信號時,輔設(shè)備接收線程可能存在未同步接收的情況,,當(dāng)主設(shè)備與終端設(shè)備通信到一定時間時,,輔設(shè)備才開始接收數(shù)據(jù)。此時,,輔設(shè)備接收線程進入中斷通信方式,。
因此在程序設(shè)計中接收線程采用中斷查詢混合接收方式,,判別幀格式不屬于中斷通信幀格式后,采用單字節(jié)格式繼續(xù)進行數(shù)據(jù)接收,。
4.2.3 丟幀處理
主輔設(shè)備同時接收終端設(shè)備中斷數(shù)據(jù)幀格式時,,需考慮到主輔設(shè)備間接收線程同步性,判別接收數(shù)據(jù)時是否存在丟幀現(xiàn)象,。
4.3 接收工作線程
軟件接收參數(shù)工作線程如圖3所示,。
圖3 軟件接收工作線程
4.3.1 查詢通信流程
查詢通信工作流程如圖4所示。
圖4 查詢通信工作流程
4.3.2 中斷查詢混合通信流程
中斷查詢混合通信工作流程如圖5所示,。
圖5 中斷查詢混合通信工作流程
5、結(jié)論
經(jīng)過實驗驗證,,通信時,,通過主設(shè)備單獨應(yīng)答終端設(shè)備信號命令,主輔設(shè)備能很好的同時接收終端設(shè)備數(shù)據(jù)并存儲備份,。經(jīng)過分析,,這種按照RS422總線方式進行連接的備份測試方法雖然降低了總線輸出電平差值,但輸出電平仍然遠大于RS422規(guī)定的200mv門限電平值,。因此,,這種連接設(shè)計的主輔備份測試系統(tǒng)很好的滿足了數(shù)據(jù)備份和數(shù)據(jù)通信傳輸要求,而其結(jié)構(gòu)簡單、構(gòu)造方便,、成本較低的優(yōu)點更具有無可比擬的優(yōu)勢,。