本發(fā)明專利技術(shù)公開了一種基于半雙工通信的多主機(jī)通信機(jī)制,包括如下步驟:(1)在一個臺區(qū)內(nèi)按排序設(shè)置中控器地址;(2)中控器上電初始化之后確定主機(jī)和從機(jī)。(3)主機(jī)發(fā)完心跳報文后對從機(jī)進(jìn)行統(tǒng)計和輪詢。(4)當(dāng)確認(rèn)主機(jī)后的任意時刻經(jīng)過10分鐘后,線上主機(jī)或從機(jī)未收到任何報文,則讓出主機(jī),從而進(jìn)行新的主機(jī)競選。本發(fā)明專利技術(shù)解決了由于算法采用調(diào)節(jié)支路平衡方式,一個臺區(qū)會出現(xiàn)有2臺以上中控器,從而半雙工通信的載波通信來說會產(chǎn)生多路沖突,多個中控器不能同時收發(fā)數(shù)據(jù)的問題。本發(fā)明專利技術(shù)提出的一種基于半雙工通信的多主機(jī)通信機(jī)制可以協(xié)調(diào)各中控器之間完成通信任務(wù),使通訊更加順暢。
【技術(shù)實(shí)現(xiàn)步驟摘要】
一種基于半雙工通信的多主機(jī)通信機(jī)制
本專利技術(shù)涉及電力系統(tǒng)領(lǐng)域,尤其涉及一種基于半雙工通信的多主機(jī)通信機(jī)制。
技術(shù)介紹
半雙工(HalfDuplex)數(shù)據(jù)傳輸指數(shù)據(jù)可以在一個信號載體的兩個方向上傳輸,但是不能同時傳輸。例如,在一個局域網(wǎng)上使用具有半雙工傳輸?shù)募夹g(shù),一個工作站可以在線上發(fā)送數(shù)據(jù),然后立即在線上接收數(shù)據(jù),這些數(shù)據(jù)來自數(shù)據(jù)剛剛傳輸?shù)姆较颉O袢p工傳輸一樣,半雙工包含一個雙向線路(線路可以在兩個方向上傳遞數(shù)據(jù))。半雙工傳輸是指接收與發(fā)送共用一個載波信道,但同一時刻只能發(fā)送或只能接收數(shù)據(jù)的傳輸方式。例如,局域網(wǎng)中的半雙工數(shù)據(jù)傳輸方式是指:一個工作站發(fā)送數(shù)據(jù),然后立即在同一信道上接收來自相同方向上的數(shù)據(jù)。另一方面,全雙工傳輸(FullDuplexTransmission)指同時發(fā)生在兩個方向上的一種數(shù)據(jù)傳輸方式。例如:對講機(jī)就是一種半雙工設(shè)備,在同一時間內(nèi)只允許一方講話。相反,電話機(jī)則是一種全雙工設(shè)備,其通話雙方可以同時進(jìn)行對話。當(dāng)某局域網(wǎng)中的兩臺計算機(jī)在實(shí)現(xiàn)通信時,同一時刻只能在同一方向上傳送數(shù)據(jù),這是因為大多數(shù)局域網(wǎng)中使用的基帶網(wǎng)絡(luò)都只支持單個信號。換句話說,基帶網(wǎng)絡(luò)采用的是半雙工工作模式。只要有合適的設(shè)備支持,在某些特定類型的局域網(wǎng)中實(shí)現(xiàn)全雙工通信是完全可能的。關(guān)鍵是首先解決每個方向上的通信流量信道問題。該問題能否解決主要取決于所使用的網(wǎng)絡(luò)媒體。如:同軸電纜是由中心導(dǎo)體、絕緣材料層、網(wǎng)狀織物構(gòu)成的屏蔽層以及外部隔離材料層組成,即一條同軸電纜只有一根導(dǎo)線。通過兩條同軸電纜可以實(shí)現(xiàn)全雙工,也可以采用頻分多路復(fù)用FSK等方式在一條同軸電纜上同時傳輸多個信號以實(shí)現(xiàn)全雙工。雙絞線電纜由兩根具有絕緣保護(hù)層的銅導(dǎo)線組成,所以在理論上,使用雙絞線電纜作為媒體的網(wǎng)絡(luò)能實(shí)現(xiàn)全雙工模式,當(dāng)前有些制造商正在努力在以太網(wǎng)設(shè)備上實(shí)現(xiàn)此過程。從本質(zhì)上看,全雙工以太網(wǎng)在現(xiàn)有網(wǎng)絡(luò)基礎(chǔ)上雙倍提高了通信吞吐量。
技術(shù)實(shí)現(xiàn)思路
由于算法采用調(diào)節(jié)支路平衡方式,一個臺區(qū)會出現(xiàn)有2臺以上中控器,這對半雙工通信的載波通信來說會產(chǎn)生多路沖突,多個中控器不能同時收發(fā)數(shù)據(jù)。這就需要有一種機(jī)制,協(xié)調(diào)各中控器之間完成通信任務(wù)。本專利技術(shù)目的在于提供一種基于半雙工通信的多主機(jī)通信機(jī)制。本專利技術(shù)提供如下技術(shù)方案:一種基于半雙工通信的多主機(jī)通信機(jī)制,包括如下步驟:(1)在一個臺區(qū)內(nèi)按排序設(shè)置中控器地址;(2)中控器上電初始化的時候自檢是否接有GPRS,如果有,則中控器自動升級為主機(jī),這時主機(jī)發(fā)送一條心跳廣播報文告知其他中控器本網(wǎng)有主機(jī);如果沒有接GPRS則按設(shè)定的延時時間進(jìn)行確認(rèn)主機(jī),所述延時時間到了之后,檢測中斷后的中控器接收數(shù)據(jù)串口是否有收到其他中控器的心跳報文,如果沒有,則此中控器自動升級為主機(jī),同時主機(jī)發(fā)送一條心跳廣播報文告知其他中控器本網(wǎng)有主機(jī),其他中控器在延時的時間如果收到這條心跳報文,則設(shè)置自己為從機(jī),等待主機(jī)的調(diào)配,不再進(jìn)行延時;(3)主機(jī)發(fā)完心跳報文后,對所有中控器進(jìn)行輪詢,并記錄下在線的中控器的地址和臺數(shù);(4)按照地址從小到大,主機(jī)通過數(shù)據(jù)召喚的方式對每一臺中控器進(jìn)行調(diào)配,在每次進(jìn)行調(diào)配的時候都發(fā)一條心跳報文告知全部中控器有主機(jī)存在,從機(jī)召喚完后給主機(jī)一個報文告知主機(jī)召喚完畢,主機(jī)對下一臺中控器進(jìn)行調(diào)配;當(dāng)確認(rèn)主機(jī)后的任意時刻經(jīng)過10分鐘后,線上主機(jī)或從機(jī)未收到任何報文,則讓出主機(jī),從而進(jìn)行新的主機(jī)競選。進(jìn)一步說明,所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,所述步驟(2)的延時時間=中控器地址X*1分鐘。例如地址為1的中控器延時1分鐘,地址為3的中控器延時3分鐘。進(jìn)一步說明,所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,所述步驟(3)所述輪詢的方式是:主機(jī)從地址1開始詢問,看本網(wǎng)有多少個中控器回應(yīng),當(dāng)連續(xù)N個地址沒有回應(yīng)的時候,停止輪詢,輪詢完后記錄下中控器的地址和臺數(shù),正常運(yùn)行時,主機(jī)一個小時輪詢一次從機(jī),看從機(jī)是否有增加和減少。進(jìn)一步說明,所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,所述步驟(3)的N的取值范圍為[1,9]。進(jìn)一步說明,所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,所述的N的取值為6。進(jìn)一步說明,所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,當(dāng)線上出現(xiàn)了兩臺主機(jī)時,兩臺主機(jī)分先后發(fā)出報文,當(dāng)其中一臺主機(jī)先收到另一臺主機(jī)心跳報文,而且自己沒有接GPRS的時候,則該收到心跳報文的主機(jī)無條件變成從機(jī),等待另一臺主機(jī)的調(diào)配,當(dāng)收到心跳報文的主機(jī)自己接有GPRS的時候,則不變成從機(jī),而是繼續(xù)發(fā)送心跳報文,讓另外一臺主機(jī)變成從機(jī)。進(jìn)一步說明,所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,主機(jī)丟失后,如果從機(jī)在6分鐘之內(nèi)檢測到線上沒有任何報文,則根據(jù)延時時間進(jìn)行延時,延時時間到了之后,又從所述步驟(2)的流程進(jìn)行主機(jī)的競選。其中延時時間=中控器地址X*1分鐘。例如地址為1的中控器延時1分鐘,地址為3的中控器延時3分鐘。進(jìn)一步說明,所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,前后兩臺中控器的地址之差小于6。進(jìn)一步說明,所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,所述步驟(1)中控器的地址在液晶設(shè)備上設(shè)置。進(jìn)一步說明,所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,所述步驟(4)中所述主機(jī)對每一臺中控器進(jìn)行調(diào)配,當(dāng)主機(jī)調(diào)配其中一臺從機(jī)時,從機(jī)沒有響應(yīng),則主機(jī)對下一個從機(jī)進(jìn)行調(diào)配,對此響應(yīng)失敗的從機(jī),會在下一個輪回里面繼續(xù)訪問,如果到達(dá)整點(diǎn)響應(yīng)還是失敗,會在每小時一次的輪詢中刪除該從機(jī)的調(diào)配;當(dāng)主機(jī)調(diào)配從機(jī),從機(jī)也響應(yīng)的時候,主機(jī)開始檢測線上有沒有報文,如果有報文,說明從機(jī)是真的在工作,此時主機(jī)等待從機(jī)工作完成返回命令,但當(dāng)主機(jī)檢測到線上30秒都沒有報文的時候,說明從機(jī)工作已經(jīng)完成但沒有返回完成報文,或者從機(jī)死機(jī),這時候主機(jī)重新?lián)尰匕l(fā)送主動權(quán),調(diào)配下一臺從機(jī)進(jìn)行工作。綜上所述,本專利技術(shù)的有益效果如下:本專利技術(shù)解決了由于算法采用調(diào)節(jié)支路平衡方式,一個臺區(qū)會出現(xiàn)有2臺以上中控器,從而半雙工通信的載波通信來說會產(chǎn)生多路沖突,多個中控器不能同時收發(fā)數(shù)據(jù)的問題。本專利技術(shù)提出的一種基于半雙工通信的多主機(jī)通信機(jī)制可以協(xié)調(diào)各中控器之間完成通信任務(wù),使通訊更加順暢。附圖說明圖1是主機(jī)競爭流程圖;圖2是主機(jī)工作流程圖;圖3是從機(jī)工作流程圖;具體實(shí)施方式下面將結(jié)合本專利技術(shù)實(shí)施例,對本專利技術(shù)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅是本專利技術(shù)一部分實(shí)施例,而不是全部的實(shí)施例。基于本專利技術(shù)中的實(shí)施例,領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本專利技術(shù)保護(hù)的范圍。實(shí)施例1一種基于半雙工通信的多主機(jī)通信機(jī)制,包括如下步驟:(1)在一個臺區(qū)內(nèi)有5個中控器,并按排序設(shè)置中控器地址,兩個中控器之間的地址之差小于3,所以最終的排序結(jié)果為中控地址1,中控地址2,中控地址4,中控地址5,中控地址7,中控器的地址在液晶設(shè)備上設(shè)置。(2)地址為1的中控器上電初始化的時候檢查到自己有GPRS,此時地址為1的中控器自動升級為主機(jī),這時主機(jī)馬上發(fā)送一條心跳廣播報文告訴其他中控器本網(wǎng)有主機(jī)。(3)主機(jī)發(fā)完心跳報文后,需要知道線上有幾臺中控器,主機(jī)就從地址1開始詢問,看本網(wǎng)有多少個中控器回應(yīng),當(dāng)連續(xù)5個地址沒有回應(yīng)的時候,停止輪詢。輪詢完后記錄下中控器的地址分別為中控地址1,中控地本文檔來自技高網(wǎng)...

【技術(shù)保護(hù)點(diǎn)】
一種基于半雙工通信的多主機(jī)通信機(jī)制,其特征在于,包括如下步驟:(1)在一個臺區(qū)內(nèi)按排序設(shè)置中控器地址;(2)中控器上電初始化的時候自檢是否接有GPRS,如果有,則中控器自動升級為主機(jī),這時主機(jī)發(fā)送一條心跳廣播報文告知其他中控器本網(wǎng)有主機(jī);如果沒有接GPRS則按設(shè)定的延時時間進(jìn)行確認(rèn)主機(jī),所述延時時間到了之后,檢測中斷后的中控器接收數(shù)據(jù)串口是否有收到其他中控器的心跳報文,如果沒有,則此中控器自動升級為主機(jī),同時主機(jī)發(fā)送一條心跳廣播報文告知其他中控器本網(wǎng)有主機(jī),其他中控器在延時的時間如果收到這條心跳報文,則設(shè)置自己為從機(jī),等待主機(jī)的調(diào)配,不再進(jìn)行延時;(3)主機(jī)發(fā)完心跳報文后,對所有中控器進(jìn)行輪詢,并記錄下在線的中控器的地址和臺數(shù);(4)按照地址從小到大,主機(jī)通過數(shù)據(jù)召喚的方式對每一臺中控器進(jìn)行調(diào)配,在每次進(jìn)行調(diào)配的時候都發(fā)一條心跳報文告知全部中控器有主機(jī)存在,從機(jī)召喚完后給主機(jī)一個報文告知主機(jī)召喚完畢,主機(jī)對下一臺中控器進(jìn)行調(diào)配;當(dāng)確認(rèn)主機(jī)后的任意時刻經(jīng)過10分鐘后,線上主機(jī)或從機(jī)未收到任何報文,則讓出主機(jī),從而進(jìn)行新的主機(jī)競選。
【技術(shù)特征摘要】
1.一種基于半雙工通信的多主機(jī)通信機(jī)制,其特征在于,包括如下步驟:(1)在一個臺區(qū)內(nèi)按排序設(shè)置中控器地址;(2)中控器上電初始化的時候自檢是否接有GPRS,如果有,則中控器自動升級為主機(jī),這時主機(jī)發(fā)送一條心跳廣播報文告知其他中控器本網(wǎng)有主機(jī);如果沒有接GPRS則按設(shè)定的延時時間進(jìn)行確認(rèn)主機(jī),所述延時時間到了之后,檢測中斷后的中控器接收數(shù)據(jù)串口是否有收到其他中控器的心跳報文,如果沒有,則此中控器自動升級為主機(jī),同時主機(jī)發(fā)送一條心跳廣播報文告知其他中控器本網(wǎng)有主機(jī),其他中控器在延時的時間如果收到這條心跳報文,則設(shè)置自己為從機(jī),等待主機(jī)的調(diào)配,不再進(jìn)行延時;(3)主機(jī)發(fā)完心跳報文后,對所有中控器進(jìn)行輪詢,并記錄下在線的中控器的地址和臺數(shù);(4)按照地址從小到大,主機(jī)通過數(shù)據(jù)召喚的方式對每一臺中控器進(jìn)行調(diào)配,在每次進(jìn)行調(diào)配的時候都發(fā)一條心跳報文告知全部中控器有主機(jī)存在,從機(jī)召喚完后給主機(jī)一個報文告知主機(jī)召喚完畢,主機(jī)對下一臺中控器進(jìn)行調(diào)配;當(dāng)確認(rèn)主機(jī)后的任意時刻經(jīng)過10分鐘后,線上主機(jī)或從機(jī)未收到任何報文,則讓出主機(jī),從而進(jìn)行新的主機(jī)競選。2.根據(jù)權(quán)利要求1所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,其特征在于:所述步驟(2)的延時時間=中控器地址X*1分鐘。3.根據(jù)權(quán)利要求1所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,其特征在于:所述步驟(3)所述輪詢的方式是:主機(jī)從地址1開始詢問,看本網(wǎng)有多少個中控器回應(yīng),當(dāng)連續(xù)N個地址沒有回應(yīng)的時候,停止輪詢,輪詢完后記錄下中控器的地址和臺數(shù),正常運(yùn)行時,主機(jī)一個小時輪詢一次從機(jī),看從機(jī)是否有增加和減少。4.根據(jù)權(quán)利要求3所述的一種基于半雙工通信的多主機(jī)通信機(jī)制,其特征在于:所述步驟(3)的N的取值范圍為[1,9]。5.根據(jù)權(quán)利要...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:雷蕾,
申請(專利權(quán))人:雷蕾,
類型:發(fā)明
國別省市:廣西,45
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。