基于RS485總線的自動化檢測系統(tǒng)的研制
2.3終端裝置編碼設(shè)計
由于RS 485總線是采用半雙工通信方式,每次只能有一對節(jié)點進行通信,故要求每臺裝置有自己的地址編號以便測試辨認檢測。這里設(shè)計將終端裝置的生產(chǎn)編號為檢測時的地址編號,由于終端裝置的生產(chǎn)編號具有惟一性,故能夠滿足RS 485通訊的要求。
生產(chǎn)編號是終端裝置的惟一標識,為了能更好地反映終端裝置的生產(chǎn)信息,同時考慮編號生成的自動化,我們確定的編號方法如下:
YYMMDDHHmmss ID1 ID2 ID3
其中,YY為年后兩位的BCD碼,MM為月的BCD碼,DD為日的BCD碼,mm為分的BCD碼,ss為秒的BCD碼。該時間為進行測試時的時間,可以由進行測試的計算機自動生成。ID1和ID2為單字節(jié)的編碼,分別為生產(chǎn)廠家代碼、操作人員代碼;ID3為雙字節(jié)編碼,代表軟硬件版本號。
這樣生產(chǎn)編號的設(shè)計具有以下優(yōu)點:
(1)可以通過測試軟件,根據(jù)當時時間等信息自動生成,避免人工失誤,并且提高效率;
?。?)編號存人各臺測試機的參數(shù)存儲器中,作為終端的身份標識,用于生產(chǎn)檢測和實際使用;
?。?)根據(jù)該編號,極容易查出終端的生產(chǎn)廠家、時間以及檢驗人員,符合質(zhì)量管理體系的要求;
?。?)編號附帶軟硬件版本號,方便后期的技術(shù)維護。
3通訊協(xié)議的設(shè)計
RS 485總線只制定了物理層電氣標準,對上層通信協(xié)議沒有規(guī)定,這給設(shè)計者提供了很大的靈活性。一套完整的通信協(xié)議應(yīng)從多個方面加以考慮,即要求結(jié)構(gòu)簡單、功能完備,又要求具有可擴充性與兼容性,并且盡量標準化。本系統(tǒng)采用的通信協(xié)議是在充分考慮到系統(tǒng)本身的功能特點,再參考國際標準通信規(guī)約的基礎(chǔ)上制定的,適用于檢測的計算機與檢測終端進行點對點的或一主多從的數(shù)據(jù)交換方式,具體如下:
3.1 幀格式
起始符:數(shù)據(jù)幀起始標志,用于觸發(fā)通信,本系統(tǒng)約定為8AH。
地址碼:地址域由10個字節(jié)構(gòu)成,每字節(jié)2位BCD碼。地址長度為20位十進制數(shù)。低地址位在先,高地址位在后。當?shù)刂窞?99999999999999999999H時,為廣播地址(即向所有終端發(fā)送消息)。地址為11111111111111111111H時,為上位機。
控制碼C:一個字節(jié)長度,用于指明具體的命令內(nèi)容。每一位代表不同的內(nèi)容對應(yīng)不同的命令代碼,具體內(nèi)容如表1所示。
數(shù)據(jù)字段:本字段分兩部分。第一部分為一個字節(jié),表示整個數(shù)據(jù)字段的字節(jié)數(shù)(長度),L=0表示無數(shù)據(jù)域。第二部分則為通信中需要傳輸?shù)臄?shù)據(jù)內(nèi)容,包括數(shù)據(jù)標識和數(shù)據(jù)等,其結(jié)構(gòu)隨控制碼的功能而改變。
校驗碼CS:從幀起始符開始到校驗碼之前的所有各字節(jié)的模256的和。
結(jié)束符:數(shù)據(jù)幀結(jié)束標志,本系統(tǒng)約定16H。
3.2數(shù)據(jù)傳輸
上位機(PC機)與下位機(單片機)構(gòu)成的多機通信系統(tǒng)采用主從式結(jié)構(gòu),數(shù)據(jù)通信總是由主機發(fā)起。主機處于發(fā)送狀態(tài)時,從機總是出于接收狀態(tài)。若上位機發(fā)送的地址信息與本地從機相符,則接收該數(shù)據(jù),否則繼續(xù)接收總線上的數(shù)據(jù)。若下位機需要發(fā)送數(shù)據(jù),則必須等到主機輪詢過該下位機時,才可提出請求。這種網(wǎng)絡(luò)模式下,下位機不會“偵聽”其他下位機對主機的響應(yīng),這樣就不會對其他下位機產(chǎn)生錯誤的響應(yīng)。
3.3差錯控制
當主機發(fā)出呼叫幀后,如果在規(guī)定的時間內(nèi)沒有收到從機的應(yīng)答幀,則主機認為幀丟失并重發(fā)呼叫幀;如果發(fā)送3次仍沒有收到應(yīng)答幀,則系統(tǒng)認為該次通信失敗,報錯。在數(shù)據(jù)幀發(fā)送時,本系統(tǒng)采用應(yīng)答方式進行差錯控制,即接收方向發(fā)送方回發(fā)特殊的控制命令碼,作為傳輸正確以否的的確認。如果傳輸中幀完全丟失,則發(fā)送方進行超時處理。
4結(jié)語
本文提出了一種基于RS 485總線的安防型GPS定位裝置自動測試系統(tǒng)的設(shè)計,并分別就系統(tǒng)總體結(jié)構(gòu)及檢測思想的設(shè)計和主從式多機通信協(xié)議的設(shè)計等兩個方面進行了闡述。設(shè)備的實際使用結(jié)果表明:整個系統(tǒng)設(shè)計合理,工作可靠,基于RS 485的總線測試系統(tǒng)通信可靠性高,可擴展性強,操作維護方便,大大提高了安防型GPS定位裝置的故障檢測與診斷效率。
該系統(tǒng)的設(shè)計思路,尤其是自動化編碼方式對其他智能電子產(chǎn)品的自動化檢測提供了很好的借鑒作用。并且通過對該系統(tǒng)的部分修改,可以移植到諸如智能傳感器、工業(yè)控制終端等多種產(chǎn)品的生產(chǎn)檢測中。
評論