基于RS422接口的備份測試系統設計
1、引言
本文引用地址:http://dyxdggzs.com/article/193591.htm在復雜現場(chǎng)工業(yè)環(huán)境中,有時(shí)需要對現場(chǎng)工作設備進(jìn)行備份,提供一套與工作設備完全相同的設備,提高設備的應急處理能力和工作任務(wù)完成的的靠性。在這種備份方式中,主輔兩臺設備同時(shí)開(kāi)機,同時(shí)接收終端設備數據,根據需求采用通信協(xié)議簡(jiǎn)單、容錯能力強、安全性好以及成本較低的RS422總線(xiàn)方式實(shí)現。RS422總線(xiàn)是一種點(diǎn)對點(diǎn)傳輸總線(xiàn),它定義了一種平衡通信接口,將傳輸速率提高到10Mb/s,在傳輸速率低于100kb/s時(shí),其傳輸距離可達1200米。RS422傳輸協(xié)議屬于單機發(fā)送、多機接收的單向、平衡傳輸規范,只對接口電氣特性做出規定,不涉及接插件、電纜或協(xié)議,可在此基礎上建立高層通信協(xié)議進(jìn)行通信。
2、系統接口設計
為使主輔設備互為備份,需要主輔設備同時(shí)接收數據、主設備應答終端設備信號命令,而輔設備不應答終端設備信號命令。主輔設備與終端設備通過(guò)RS422端口連接方式如圖1所示。
圖1 系統接口設計小標
3、系統工作流程
主輔設備同時(shí)工作時(shí),系統工作流程如圖2所示:
圖2 系統工作流程框圖
4、軟件設計
通信過(guò)程中,終端設備通過(guò)RS422端口按查詢(xún)通信方式和中斷通信方式與主輔設備進(jìn)行通信。
4.1 數據幀格式設計
4.1.1 查詢(xún)通信幀格式
查詢(xún)通信幀格式如表1所示,按照單字節握手方式進(jìn)行數據傳輸:終端設備按照單字節信號傳輸方式發(fā)送信號命令到主輔設備,主設備在接收到每個(gè)字節后返回到終端設備,輔設備則無(wú)應答。終端設備在確認接收字節與發(fā)送字節無(wú)誤后繼續發(fā)送幀中下一字節數據到主輔設備。
表1 查詢(xún)通信數據幀格式
幀格式
幀頭
數據長(cháng)度
識別符
代碼
幀尾
字節數
3
2
2
1
1
4.1.2 中斷通信數據幀格式
中斷通信數據幀格式如表2所示,按照中斷方式進(jìn)行數據傳輸:設備通過(guò)數據幀格式將每一個(gè)字節順序發(fā)出,接收方以中斷方式進(jìn)行接收,根據幀格式判斷是否收到完整數據幀。
表2 中斷通信數據幀格式
幀格式
幀頭
識別符
數據區
校驗和
數據長(cháng)度
幀尾
字節數
2
7
200
1
2
2
4.2 設計考慮
4.2.1 數據幀判別
設置后臺監視線(xiàn)程,主輔設備同時(shí)不間斷接收終端設備傳輸信號,接收到信號后,判斷是否為單字節,若是單字節則延時(shí)20毫秒繼續接收。20毫秒后若沒(méi)有接收到數據則進(jìn)入查詢(xún)通信格式進(jìn)行單字節握手接收,否則進(jìn)入中斷通信方式進(jìn)行數據接收。
4.2.2 通信同步
4.2.2.1 主輔設備與終端設備數據接收同步
主輔設備與終端設備通信時(shí)需在發(fā)送和接收數據時(shí)間間隔上進(jìn)行限制,當接收和發(fā)送時(shí)間超過(guò)時(shí)間間隔,就認為本次通信失敗。程序立即回到通信程序開(kāi)始,并清空緩沖區的數據繼續查詢(xún)接收;終端設備若在規定時(shí)間未收到返回確認信號,也立即返回到通信程序開(kāi)始,并清空緩沖區中的數據,重新發(fā)送數據,接收雙方重新同步。
4.2.2.2 主設備與輔設備接收同步
主設備與輔設備同時(shí)接收終端設備傳輸數據,因為接收線(xiàn)程都是程序子線(xiàn)程,因此當主設備接收并應答終端設備信號時(shí),輔設備接收線(xiàn)程可能存在未同步接收的情況,當主設備與終端設備通信到一定時(shí)間時(shí),輔設備才開(kāi)始接收數據。此時(shí),輔設備接收線(xiàn)程進(jìn)入中斷通信方式。
因此在程序設計中接收線(xiàn)程采用中斷查詢(xún)混合接收方式,判別幀格式不屬于中斷通信幀格式后,采用單字節格式繼續進(jìn)行數據接收。
4.2.3 丟幀處理
主輔設備同時(shí)接收終端設備中斷數據幀格式時(shí),需考慮到主輔設備間接收線(xiàn)程同步性,判別接收數據時(shí)是否存在丟幀現象。
4.3 接收工作線(xiàn)程
軟件接收參數工作線(xiàn)程如圖3所示。
圖3 軟件接收工作線(xiàn)程
4.3.1 查詢(xún)通信流程
查詢(xún)通信工作流程如圖4所示。
圖4 查詢(xún)通信工作流程
4.3.2 中斷查詢(xún)混合通信流程
中斷查詢(xún)混合通信工作流程如圖5所示。
圖5 中斷查詢(xún)混合通信工作流程
5、結論
經(jīng)過(guò)實(shí)驗驗證,通信時(shí),通過(guò)主設備單獨應答終端設備信號命令,主輔設備能很好的同時(shí)接收終端設備數據并存儲備份。經(jīng)過(guò)分析,這種按照RS422總線(xiàn)方式進(jìn)行連接的備份測試方法雖然降低了總線(xiàn)輸出電平差值,但輸出電平仍然遠大于RS422規定的200mv門(mén)限電平值。因此,這種連接設計的主輔備份測試系統很好的滿(mǎn)足了數據備份和數據通信傳輸要求,而其結構簡(jiǎn)單、構造方便、成本較低的優(yōu)點(diǎn)更具有無(wú)可比擬的優(yōu)勢。
參考文獻
[1] LRINRVKRT R C.Visual C++ Bible[M].北京:電子工業(yè)出版,1999.
[2] 徐曉剛,高兆法,王秀娟,Visual c 6.0入門(mén)與提高[M].北京:清華大學(xué)出版社,1999.
[3] 蔣濤.多串口通信編程解決方案分析[J].四川師范大學(xué)學(xué)報:自然科學(xué)版,2001,24[5]:11-14.
[4] Shepherd G,Kruglinski D.Visual C++.Net技術(shù)內幕[M].潘愛(ài)民,譯.北京:清華大學(xué)出版社,2004.
[5] Gregory K.Visual C++ 5開(kāi)發(fā)使用手冊[M].抗波創(chuàng )作室,譯.北京:機械工業(yè)出版社,1998.
c++相關(guān)文章:c++教程
數字通信相關(guān)文章:數字通信原理
通信相關(guān)文章:通信原理
評論