自動(dòng)地址分配技術(shù)中高效總線調(diào)停機(jī)制
摘要:本文詳細(xì)介紹了在自動(dòng)地址分配技術(shù)中一種高效的總線競(jìng)爭(zhēng)調(diào)停機(jī)制,結(jié)合自動(dòng)地址分配的算法可以高效地實(shí)現(xiàn)自動(dòng)地址分配功能。基于該總線調(diào)停機(jī)制可以有效地解決在自動(dòng)地址分配時(shí)總線調(diào)停時(shí)間,從而降低分配地址耗時(shí)。本文詳細(xì)講解并實(shí)例解析自動(dòng)地址分配技術(shù)中的總線調(diào)停機(jī)制,而且還通過實(shí)際工程案例解釋總線調(diào)停的必要性。
本文引用地址:http://m.butianyuan.cn/article/280692.htm引言
自動(dòng)地址分配技術(shù)是否成功有兩個(gè)方面的制約因素:一是自動(dòng)地址分配的邏輯(或者算法)是否高效;另一因素是在總線發(fā)生競(jìng)爭(zhēng)的情況下,是否有一套高效的調(diào)停機(jī)制。其中自動(dòng)地址分配原理及邏輯已在前文《自動(dòng)地址分配技術(shù)多聯(lián)機(jī)空調(diào)系統(tǒng)中的應(yīng)用》中詳細(xì)闡述。本文在多聯(lián)機(jī)系統(tǒng)上對(duì)總線調(diào)停機(jī)制從原理、實(shí)例、實(shí)驗(yàn)效果多方面詳細(xì)介紹。
1 總線調(diào)停機(jī)制的必要性
多聯(lián)機(jī)系統(tǒng)連接圖如圖1所示。此時(shí)室內(nèi)機(jī)暫時(shí)未分配地址,地址處于未知狀態(tài)。當(dāng)室外機(jī)發(fā)出地址復(fù)位指令時(shí),所有的室內(nèi)機(jī)幾乎同時(shí)收到室外機(jī)地址復(fù)位指令。所有室內(nèi)機(jī)執(zhí)行完復(fù)位當(dāng)前地址相關(guān)操作,接著室內(nèi)機(jī)向總線上傳地址申請(qǐng)數(shù)據(jù)。若沒有總線調(diào)停機(jī)制,所有數(shù)據(jù)在總線疊加導(dǎo)致總線波形畸變最終破壞正常通信。圖2所示為無調(diào)停機(jī)制下多設(shè)備發(fā)送數(shù)據(jù)與總線數(shù)據(jù)的實(shí)測(cè)波形。其中,通道1是某一室內(nèi)機(jī)發(fā)送端測(cè)得的數(shù)據(jù)波形,通道2是在接收端接收到的總線的數(shù)據(jù)波形。從圖2可以直觀地發(fā)現(xiàn),總線電平邏輯、數(shù)據(jù)波特率明顯發(fā)生錯(cuò)亂。換而言之在沒有總線的調(diào)停機(jī)制下,總線數(shù)據(jù)疊加后直接結(jié)果就是破壞總線電平??梢娍偩€調(diào)停是保證總線通信正常必不可少的環(huán)節(jié),也是保證通信成功的關(guān)鍵方法。
2 總線調(diào)停機(jī)制的基本原理
調(diào)停機(jī)制簡(jiǎn)單而言就是制定一個(gè)競(jìng)爭(zhēng)規(guī)則。即在總線空閑時(shí),為防止同時(shí)有多個(gè)設(shè)備發(fā)送數(shù)據(jù),需要決定哪個(gè)設(shè)備獲得總線使用權(quán)的規(guī)則。該規(guī)則的執(zhí)行結(jié)果是某一時(shí)刻只能有一個(gè)設(shè)備能發(fā)送數(shù)據(jù),而其他競(jìng)爭(zhēng)失敗的設(shè)備處于等待狀態(tài)。圖3示意兩設(shè)備總線競(jìng)爭(zhēng)的調(diào)停機(jī)制,詳細(xì)規(guī)制如下。
規(guī)則1:所有設(shè)備開始發(fā)送數(shù)據(jù)前監(jiān)聽總線的電平,如果總線電平為低電平,則不開始發(fā)送數(shù)據(jù)。根據(jù)規(guī)則1,應(yīng)用中總線電平規(guī)則為:空閑時(shí)總線電平為高電平,任何數(shù)據(jù)發(fā)送時(shí)均以低電平為起始位??偩€為低電平時(shí)定義為總線繁忙。該規(guī)則在物理電平上解決總線沖突。
規(guī)則2:通過判斷發(fā)送開始時(shí)主控芯片的通信狀態(tài)標(biāo)志來對(duì)總線上的通信狀態(tài)進(jìn)行確認(rèn)。當(dāng)通信狀態(tài)標(biāo)志為真時(shí),表示總線上已有通信數(shù)據(jù),總線處于繁忙狀態(tài)不開始發(fā)送數(shù)據(jù);反之,表示總線上無通信數(shù)據(jù)。
規(guī)則3:每接收完一個(gè)單位數(shù)據(jù),計(jì)時(shí)器復(fù)位歸零。如果計(jì)時(shí)器未經(jīng)過一單位數(shù)據(jù)時(shí)間,則存在接收下一個(gè)單位數(shù)據(jù)的可能,則不開始發(fā)送數(shù)據(jù)。為實(shí)際項(xiàng)目靈活處理,一個(gè)單位數(shù)據(jù)可以是位、字節(jié)等。
以上三規(guī)則滿足其中任意一條,則不能開始發(fā)送數(shù)據(jù);只有都不滿足時(shí),才能開始發(fā)送數(shù)據(jù)。
3 總線調(diào)停實(shí)際應(yīng)用與效果
基于上述的調(diào)停機(jī)制的原理,設(shè)計(jì)自動(dòng)分配地址時(shí)總線監(jiān)聽、數(shù)據(jù)處理、數(shù)據(jù)回傳的控制邏輯。如圖4所示,成功實(shí)現(xiàn)總線的調(diào)停,即在某一時(shí)刻有且僅有一個(gè)設(shè)備占用總線。
在圖4右側(cè)所示,設(shè)計(jì)室外機(jī)主機(jī)發(fā)送數(shù)據(jù)開始計(jì)時(shí)的10ms內(nèi)是發(fā)送時(shí)間,之后是室內(nèi)機(jī)的回傳數(shù)據(jù)時(shí)間。在定義室外機(jī)發(fā)送開始10ms之后計(jì)時(shí)開始,室內(nèi)機(jī)開始向總線發(fā)送數(shù)據(jù)計(jì)時(shí)停止,之間的時(shí)間為總線調(diào)停時(shí)間。從圖4可以看出此次的總線調(diào)停時(shí)間為4.5ms(14.5 – 10ms)。圖5為實(shí)驗(yàn)測(cè)試100次總線調(diào)停時(shí)間統(tǒng)計(jì)圖。因?yàn)楹雎允覂?nèi)機(jī)接收總線數(shù)據(jù)時(shí)間、內(nèi)機(jī)解碼編碼以及運(yùn)算時(shí)間,因此實(shí)際調(diào)停時(shí)間略有減少。忽略測(cè)量誤差情況下,可以看出采用本方法總線調(diào)停時(shí)間最短約3ms,最長(zhǎng)時(shí)間也不超過5ms。從測(cè)試數(shù)據(jù)分布可以得出,大多數(shù)的總線調(diào)停時(shí)間為4ms左右,滿足實(shí)際工程使用要求。
需要指出的是,如果需要進(jìn)一步縮短整個(gè)分配地址時(shí)間,可以縮短定義的通信發(fā)送時(shí)間(如上文所述的10ms時(shí)間)。總線競(jìng)爭(zhēng)的時(shí)間是由所有室內(nèi)機(jī)競(jìng)爭(zhēng)的實(shí)際時(shí)間而定,并隨著競(jìng)爭(zhēng)的數(shù)量減少而減少。
4 結(jié)束語
本文從原理和實(shí)際工程應(yīng)用詳細(xì)闡述了自動(dòng)地址分配過程中的總線競(jìng)爭(zhēng)調(diào)停機(jī)制。結(jié)合前文介紹的自動(dòng)地址分配方法可以高效快速地實(shí)現(xiàn)自動(dòng)地址分配。雖然是基于多聯(lián)機(jī)的應(yīng)用場(chǎng)合,但是本技術(shù)不限于多聯(lián)機(jī)系統(tǒng),其方法和原理可以推廣到其他相似的場(chǎng)合。從實(shí)際工程應(yīng)用測(cè)試結(jié)果分析,基于本方法的總線調(diào)停機(jī)制是一個(gè)高效的調(diào)停機(jī)制,能高效的解決總線競(jìng)爭(zhēng)問題。
參考文獻(xiàn):
[1] 劉運(yùn)中,張?zhí)旄?無極性通信在VRV空調(diào)系統(tǒng)中的應(yīng)用[J]. 電子產(chǎn)品世界EEPW,2014,21(10):43-45.
[2] [美] John G.Proakis,Dimitris G.Manolakis著,方艷梅,劉永清等譯. 數(shù)字信號(hào)處理——原理、算法與應(yīng)用(第四版) [Digital Signal Processing,Fourth Edition ] [美][M],電子工業(yè)出版社,2014:120-246.
[3] 瑞薩R5F系列芯片硬件參考手冊(cè) r01uh0146ej0310_rl78g13.
[4] 百度百科, 撥碼開關(guān), http://baike.baidu.com/view/2519271.htm.
[5] 百度百科, CAN總線協(xié)議, http://baike.baidu.com/view/1535722.htm.
評(píng)論