專利名稱:一種分布式主從機通信中對從機參數的處理方法及裝置的制作方法
技術領域:
本發明涉及網絡覆蓋系統中的監控領域,更具體地說,涉及一種分布式主 從機通信中對從機參數的處理方法及裝置。
背景技術:
在現有的網絡覆蓋系統中的監控領域中,為了實現相關站點集中管理, 低成本運作分布式監控應用已經相當普遍。主從機分散的分布在總線組成的平 行網絡上,主機通過上述總線構成的平行網絡與從機通信;主機通常與上一級 的管理設備相連或在主機上運行管理軟件。通常,在收到上一級管理設備或管 理軟件的命令時,主機利用廣播式通信方式負責從機的査詢信息發送、控制參 數的設置、主動上報數據的分析處理等;每個從機有自己的地址,從機對總線 上的信息進行地址分析,如信息中的地址與本從機的地址相符,則判斷該信息 正確,并對該信息進行處理;如信息中的地址與本從機的地址不相符,則判斷 該信息錯誤,并丟棄該信息。現行的處理方式造成處理時間較長,并在較長時 間內占用系統資源,從而造成系統效率較低,且其主機與從機的編程關聯性較 高。發明內容本發明要解決的技術問題在于,針對現有技術的上述處理時間較長、系統 效率較低的缺陷,提供一種處理時間短、系統效率較高的分布式主從機通信中 對從機參數的處理方法及裝置。本發明解決其技術問題所采用的技術方案是:構造一種分布式主從機通信中對從機參數的處理方法,包括如下步驟A)設置與從機編號相對應的從機設備編號表;B)設置從機參數類型,并根據上述從機設備編號表及從機參數類型, 設置每種類型的從機參數長度及起始地址;C)根據主機當前收到命令或請求中所包括的從機地址、參數類型、操 作類型,得到其要操作的參數所在地址,從而得到或更新該參數的值,并根據 命令或請求立即或遍歷從機后對該參數值進行傳送或操作。在本發明所述的一種分布式主從機通信中對從機參數的處理方法中,所述 步驟A)中所述從機編號表包括多個具有相同長度的第一單元,每個第一單元 對應一個從機,每個第一單元至少包括一個存儲位,所述第一單元中存儲的值 為其對應的從機地址。在本發明所述的一種分布式主從機通信中對從機參數的處理方法中,所述 多個第一單元依照從機編號首尾相連。在本發明所述的一種分布式主從機通信中對從機參數的處理方法中,所述步驟B)進一步包括Bl)設置從機參數類型,每種類型包括一個參數,設定每個參數的存 儲方式,包括數組;B2)設所述從機編號表包括N個第一單元,則設置參數包括N+1個第二單元,所述第二單元至少包括一個存儲位;所述第二單元中第一個存儲主機的該類型參數,其余分別存儲從機該類型參數,按從機編號排列在所述第一個第二單元之后且與從機一一對應;B3)設置每個參數的起始地址及長度,形成從機配置鏈表。 在本發明所述的一種分布式主從機通信中對從機參數的處理方法中,所述步驟C)進一步包括如下步驟C10)判斷當前命令是否査詢從機信息,如是執行下一步驟;Cll)解析上述查詢命令得到對應的從機設備地址和參數類型;C12)根據上述從機設備地址,查詢所述設備編號表,得到其對應的從機編號;C13)根據上述參數類型,查詢所述從機配置鏈表,得到該類型參數 的起始地址;C14)根據步驟C12)和C13)的結果,取出存儲在主機的從機參數數 據并存到準備發送出去的數據包的相應位置。在本發明所述的一種分布式主從機通信中對從機參數的處理方法中,還包括設置用于向從機發送參數設置命令的控制鏈表,每個從機對應一個控制鏈表;所述步驟C)進一步包括如下步驟C20)判斷當前命令是否設置從機參數命令,如是執行下一步驟; C21)解析上述査詢命令得到對應的從機編號、參數類型及該參數值; C22)根據上述得到的從機編號,查詢所述從機編號表,得到其對應的該從機地址;C23)根據上述得到的參數類型,查詢所述從機配置鏈表,得到該類 型參數的起始地址;C24)根據步驟C22)和C23)的結果,將步驟C21)得到的參數值存 入其相應位置;C25)將步驟C21)得到的參數值放入準備發送到從相應從機所對應 的控制鏈表中并發送或遍歷參數類型后發送到該從機。在本發明所述的一種分布式主從機通信中對從機參數的處理方法中,所述步驟C)進一步包括如下步驟C30)判斷當前請求是否為從機上報類型數據包,如是執行下一步驟; C31)解析該數據包得到上報從機的地址和上報的參數類型,并刷新主機中的相應數據;C32)將該從機數據存到準備發送到上一級設備的數據包的相應位置。 在本發明所述的一種分布式主從機通信中對從機參數的處理方法中,所述步驟C)進一步包括如下步驟C40)主機發送輪詢從機信息的命令;C41)是否收到上述輪詢命令的回應信息,如是執行下一步驟;C42)解析該信息,得到從機地址和報警參數值;C43)比較收到的信息中的該從機告警參數與主機中存儲的該從機告 警參數,如不一致,將該從機告警參數打入告警狀態隊列并將收到的告警參數 存入主機中該從機告警參數所在位置;本發明還公開了一種用于實現上述參數處理方法的裝置,包括從機編號識別裝置:用于根據主機收到的命令或請求中的從機地址得 到從機編號或由從機編號得到從機地址;從機參數地址識別裝置:用于識別主機收到的命令或請求中的從機參數的類別及其在主機中存儲位置的起始地址;通信及控制裝置用于按照主機接收到的命令或請求中的指示,將相 應參數進行操作或置入數據包傳送到從機或上一級設備。在本發明所述的方法中,所述通信及控制裝置還包括一個第一存儲裝置, 該存儲裝置用于在需要傳送或處理的參數多于一個時,暫時存儲需要傳送或處 理的參數值和從機地址或從機編號。實施本發明的一種分布式主從機通信中對從機參數的處理方法及裝置,具 有以下有益效果由于基于從機從機配置鏈表來提供此類從機參數數據的存儲 起始地址并從從機設備編號表得出對應從機的參數存儲相對位置,統一了所有 從機的處理流程,所以處理時間短、系統效率較高。
下面將結合附圖對本發明的實施方式作進一步說明,附圖中-圖1是本發明分布式主從機通信中對從機參數的處理方法第一實施例的 流程圖;圖2是本發明分布式主從機通信中對從機參數的處理方法第一實施例中 從機編號表結構示意圖;圖3是本發明分布式主從機通信中對從機參數的處理方法第一實施例中 從機從機配置鏈表設置流程圖;圖4是本發明分布式主從機通信中對從機參數的處理方法第一實施例中 參數處理及發送流程圖;圖5是本發明分布式主從機通信中對從機參數的處理方法第二實施例中 參數處理及發送流程圖;圖6是本發明分布式主從機通信中對從機參數的處理方法第三實施例中 參數處理及發送流程圖;圖7是本發明分布式主從機通信中對從機參數的處理方法第四實施例中 參數處理及發送流程圖;圖8是本發明實現分布式主從機通信中對從機參數的處理方法的裝置的 實施例結構示意圖。
具體實施方式
圖1為在本發明的分布式主從機通信中對從機參數的處理方法第一實施 例的流程圖,其步驟包括S11-S13,其中,S11和S12為初始設置,僅在系統 上電工作或系統復位時進行,當系統正常工作時,由于上述S11-S12已完成設 置,所以其只要根據收到的命令按步驟S13處理即可。上述各步驟的詳細描述 如下Sll設置從機設備編號表的起始地址、長度及其內容在主機存儲裝置 上設置與從機編號相對應的從機設備編號表的起始地址及長度,并設置所述從 機設備編號表;該從機設備編號表建立了從機編號和從機地址之間的聯系,從 而使得可以由從機編號得到從機的地址或由從機的地址得到從機的編號,參見 圖2;10S12設置從機參數類型,設置每種類型的從機參數的長度及起始地址 首先要設置的是從機的參數類型有多少種,例如,告警參數、工作狀態、溫度 等;每個類型的參數通常為一個,該參數中包括了所有從機的該種類型的參數 值;其次設置這些參數的長度和起始地址,便于在需要時能査找到這些參數;S13根據命令或請求,得到或更新該參數的值,并傳送或操作根據主 機當前收到命令或請求中所包括的從機地址、參數類型、操作類型,得到其要 操作的參數所在地址,從而得到或更新該參數的值,并根據命令或請求立即或 遍歷從機后對該參數值進行傳送或操作;在本實施例中,本步驟是主機收到査 詢從機參數的命令后將存儲在主機中的從機參數發出,其具體的操作流程在稍 后有更詳盡的說明。在本實施例中,從機編號表包括多個具有相同長度的第一單元,每個第一 單元對應一個從機,每個第一單元至少包括一個存儲位,所述第一單元中存儲 的值為其對應的從機地址,且多個第一單元依照從機編號首尾相連,參見圖2; 在上述第一單元中存儲的是與其從機編號相對應的從機的地址,通常是物理地 址;因為第一單元數量與從機數量相同,而上述第一單元的排列順序又是按照 從機編號首尾相連,所以第一單元與從機一一對應,知道了從機編號,可以査 到從機的地址,同樣知道了從機地址,也可以査到從機的編號。如圖3所示,在本實施例中,步驟S12進一步包括如下步驟S31設置參數類型、參數數量及存儲方式S32設置參數中的第二單元,設定第一個存儲主機的該類型參數,其余分 別存儲從機該類型參數,且與從機一一對應S33設定每個參數的起始位置和長度,形成從機配置鏈表圖4是本發明第一實施例步驟S13的流程圖,在本實施例中,步驟S13 具體包括如下步驟S401開始步驟S13起始于S401。S402當前命令是否為査詢從機信息命令主機解析當前收到的命令,確 認是否為查詢從機信息命令,如是,執行步驟S403;如不是,執行步驟S413。 S403解析命令得到其對應的從機編號命令中包含了從機編號,本步驟將該從機編號提取出來。S404査詢從機編號表得到對應的從機地址將上述提取出的從機編號作為索引,査從機編號表,得到其對應的從機地址。S405解析命令得到其對應的參數類型命令中還包含了要査詢的從機參數類型,本步驟將該從機參數類型提取出來。S406通過類型為索引査詢從機配置鏈表得到該類型參數存儲的起始地址將上述提取出的從機參數類型作為索引,查從機配置鏈表,得到其對應的從機類型參數在主機中存儲的起始地址。S407由從機地址及參數存儲的起始地址按順序取出存儲在主機的從機參數數據存到數據包的相應位置由于已知從機參數存儲的起始地址以及從機的編號,主機可以利用一簡單的加法運算得到該從機的該類型參數存儲在主機中具體地址,進而讀出該數據,并存儲在相應數據包的相應位置;如果上述命令 中査詢的參數包括多個從機的同一類型的參數或同一從機的多個不同類型的 參數或多個從機的多個不同類型的參數,也都是按上述步驟逐一取得并存入相 應數據包的相應位置的;上述方法實現了基于從機參數類型與從機從機配置鏈 表來提供此類從機參數數據的存儲起始地址并從從機的設備編號表得出對應 從機的參數存儲相對位置。這種處理方法的特點是統一了所有從機的處理流 程;由于數據完全存儲在主機中所以組包速度也快,查找目標參數的方法簡單, 實現了上層管理設備與從機的編程關聯的完全隔離,有利于編碼組織的實現, 有利于維護。S408置發送査詢回應信息的標志位當命令要求查詢的參數已取得時, 將發送查詢回應信息的標志位置位,主機進入回答査詢命令流程。S413其他流程在步驟S402中判斷命令不是查詢從機信息時,執行其他 操作。圖5是本發明第二實施例中步驟S13所進一步包括的步驟的流程圖,在第 二實施例以及在后面所描述的第三實施例和第四實施例中,每個實施例與第一 實施例相比,每個實施例中的步驟Sll、 S12是相同的,不同點僅在于其步驟 S13的具體內容根據所收到的命令不同而不同,在第二賣施例中在執行步驟S13之前還建立了用于向從機發送參數設置命令的控制鏈表,每個從機對應一 個控制鏈表。在第二實施例中,步驟S13是通過如下流程實現的S501開始步驟S13起始于S501。S502當前命令是否為設置從機參數命令主機解析當前收到的命令,確 認是否為設置從機參數命令,如是,執行步驟S503;如不是,執行步驟S513。S503解析該設置命令,得到對應的從機地址在本步驟中,主機解析上 層發來的命令得到的是從機的編號,通過査詢從機編號表而得到從機地址。S504解析該設置命令,得到要設置的參數類型要設置的參數類型可能 是一個,也可能是多個;同樣,步驟S503中的所涉及的從機也可以為一個或 多個。S505以此類型為索引查詢從機配置鏈表,得到此類參數存儲的起始地址 將步驟S503提取出的從機參數類型作為索引,查從機配置鏈表,得到其對應 的從機類型參數在主機中存儲的起始地址。S506從設置命令中取出設置參數,存儲在主機中該類參數的相應從機的 數據存儲位置由于已知從機參數存儲的起始地址以及從機的編號,主機可以 利用一簡單的加法運算得到該從機的該類型參數存儲在主機中具體地址,進而 將由命令中得到的參數值存儲在該具體位置,即將存儲在主機中的該從機的該 參數值刷新。S507置相應從機的控制標志位,并把要設置的參數打入要設置的從機的 動態控制鏈表本步驟將由命令得到的參數值加入到對應該從機的動態控制鏈 表中,準備向從機發送配置命令。上述步驟(S503-S507)描述了單個從機中 單個參數的設置,如果上述命令中設置的參數包括多個從機的同一類型的參數 或同一從機的多個不同類型的參數或多個從機的多個不同類型的參數,也都是 按上述步驟逐一取得,存入主機的相應位置并加入相應的從機所對應的動態控 制鏈表的。S508遍歷從機控制標志位,如標志位無效,則繼續下一個標志位;如標 志位有效則根據對應從機的動態控制鏈表組織控制數據命令包放入發送緩存區中并在完成遍歷后執行步驟S509;S509置串口發送標志要求主機執行向從機發送數據的程序。S510到從機的設置成功回應等待從機回應,如均已回應,執行步驟S511,如未回應,繼續執行本步驟,等待從機回應。S511組織設置成功的信息回應發出該命令的設備告知該設備其命令已被執行。S513其他流程在步驟S502中判斷命令不是設置從機參數時,執行其他 操作。圖6是本發明第三實施例中步驟S13所進一步包括的步驟的流程圖,在第 三實施例中,步驟S13進一步包括如下步驟 S601開始步驟S13起始于S601。S602收到的從機信息是否為上報的類型數據包主機解析當前收到的信 息,確認是否為上報的類型數據包,如是,執行步驟S503;如不是,執行步 驟S513。S603向從機發送成功收到上報信息確認信息主機收到數據包后立即向 該從機發送確認信息。S604分析信息包得到該信息包的從機編號將從機地址由該信息包中提 取出來,通過査找從機編號表而得到從機編號。S605分析信息包得到該從機上報的參數類型將從機上報的參數類型由 該信息包中提取出來,并刷新主機中的對應數據。S606組從機上報數據包主機根據上述分析得到的從機編號和參數類型 構建向上層管理設備發送的上報數據包。S607置發送數據到上層設備標志位主機負責向上層管理設備發送上述 上報數據包。S613其他流程在步驟S602中判斷信息不是上報的類型數據包,執行其 他操作。圖7是本發明第四實施例中步驟S13所進一步包括的步驟的流程圖,在第 四實施例中,步驟S13進一步包括如下步驟S701開始步驟S13起始于S701。S702發送輪詢從機信息命令主機向從機發出輪詢從機信息命令。 S703是否收到輪詢命令回應信息主機判讀是否收到從機發回的該輪詢 命令的回應信息,如收到,執行步驟S704;否則,執行步驟S713。S704存儲并比較回應信息中的報警參數值與存儲在主機中的報警參數 值,如不一致將該參數值打入告警參數反轉隊列每次輪詢,從機回應信息時 會同時更新該從機的告警參數狀態,如果發現了告警參數狀態發生了翻轉,就 把該參數的起始地址連同現狀態值一起插入該從機對應的狀態翻轉鏈表中等 待進一步處理。S705遍歷從機告警參數反轉隊列,進行時間機制處理、屏蔽機制處理把符合要求的打入相應從機告警隊列主機遍歷所有從機的翻轉隊列,經由屏蔽處理,延時處理,使能處理后,最終把需要告警的從機參數的首地址和狀態打 入對應從機的告警隊列中。S706遍歷從機告警隊列,如在非等待回應期且非空則組告警數據包在完成遍歷從機告警隊列且完成等待回應后,如告警隊列中不為空,主機構建告警數據包oS707置發現告警信息標志主機負責發送上述告警數據包。,S708收到回應清空告警隊列在收到上層管理設備的確認后,清空告警隊列的內容。S713其他流程在步驟S703中判斷未收到回應信息時,執行其他需要的 操作。本發明還公開了一種用于實現在分布式主從機通信中對從機參數的處理 裝置,包括從機編號識別裝置82、從機參數地址識別裝置83和通信及控制裝 置81,在通信和控制裝置81中還包括第一存儲裝置811;其中從機編號識別 裝置81和從機參數地址識別裝置83分別連接在通信及控制裝置81上,通信 控制裝置81分別與上級管理設備85和多個從機84相連,如圖5所示,圖5 示意性地表示了該裝置實施例中的上述連接關系;在該裝置的實施例中,從機編號識別裝置82用于根據通信及控制裝置81收到的命令或請求中的從機地址 得到從機編號;從機參數地址識別裝置83用于識別通信及控制裝置81收到的 命令或請求中的從機參數的類別及其在通信及控制裝置81中存儲位置的起始 地址;通信及控制裝置81用于接收上一級管理設備85發來的命令或從機84 發來的信息,并按照接收到的命令或請求中的指示,將相應參數進行操作或置 入數據包傳送到從機84或上一級管理設備85。當收到的命令或信息中要處理 或發送的參數不止一個時,通信及控制裝置81需要逐個處理,將已得到的參 數及該參數的從機地址或從機編號存儲在上述第一存儲裝置811中,等通信及 控制裝置81處理完需要處理的參數后再一起發送或打入數據包發送,并在收 到上級管理設備85或從機84的確認信息后,清空上述第一存儲裝置。使用本 實施例中的裝置實現了通過從機編號識別裝置82得出對應從機的參數存儲相 對位置,通過從機參數地址識別裝置83得到從機參數數據的存儲起始地址, 從而為通信及控制裝置81提供了所要處理或傳送的參數值的具體位置,便于 后續動作或處理。其特點是統一了所有從機的處理流程;由于數據完全存儲在 主機中所以組包速度也快,查找目標參數的方法簡單,實現了上層管理設備與 從機的編程關聯的完全隔離雖然以上描述了本發明的具體實施方式
,但本領域普通技術人員應理解, 這些僅為舉例說明,可以對這些實時方式做出多種變更或修改而不背離本發明 的原理和實質。
權利要求
1、一種分布式主從機通信中對從機參數的處理方法,其特征在于,包括如下步驟A)設置與從機編號相對應的從機設備編號表;B)設置從機參數類型,并根據上述從機設備編號表及從機參數類型,設置每種類型的從機參數長度及起始地址;C)根據主機當前收到命令或請求中所包括的從機地址、參數類型、操作類型,得到其要操作的參數所在地址,從而得到或更新該參數的值,并根據命令或請求立即或遍歷從機后對該參數值進行傳送或操作。
2、 根據權利要求1所述的分布式主從機通信中對從機參數的處理方法, 其特征在于,所述步驟A)中所述從機編號表包括多個具有相同長度的第一單 元,每個第一單元對應一個從機,每個第一單元至少包括一個存儲位,所述第 一單元中存儲的值為其對應的從機地址。
3、 根據權利要求2所述的分布式主從機通信中對從機參數的處理方法, 其特征在于,所述多個第一單元依照從機編號首尾相連。
4、 根據權利要求3所述的分布式主從機通信中對從機參數的處理方法, 其特征在于,所述步驟B)進一步包括Bl)設置從機參數類型,每種類型包括一個參數,設定每個參數的存 儲方式,包括數組;B2)設所述從機編號表包括N個第一單元,則設置參數包括N+1個第二單元,所述第二單元至少包括一個存儲位;所述第二單元中第一個存儲主機 的該類型參數,其余分別存儲從機該類型參數,按從機編號排列在所述第一個第二單元之后且與從機一一對應;B3)設置每個參數的起始地址及長度,形成從機配置鏈表。
5、 根據權利要求4所述的分布式主從機通信中對從機參數的處理方法, 其特征在于,所述步驟C)進一步包括如下步驟C10)判斷當前命令是否査詢從機信息,如是執行下一步驟;Cll)解析上述査詢命令得到對應的從機設備地址和參數類型;C12)根據上述從機設備地址,査詢所述設備編號表,得到其對應的 從機編號;C13)根據上述參數類型,查詢所述從機配置鏈表,得到該類型參數 的起始地址;C14)根據步驟C12)和C13)的結果,取出存儲在主機的從機參數數 據并存到準備發送出去的數據包的相應位置。
6、 根據權利要求4所述的分布式主從機通信中對從機參數的處理方法, 其特征在于,還包括設置用于向從機發送參數設置命令的控制鏈表,每個從機 對應一個控制鏈表;所述步驟C)進一步包括如下步驟C20)判斷當前命令是否設置從機參數命令,如是執行下一步驟; C21)解析上述查詢命令得到對應的從機編號、參數類型及該參數值; C22)根據上述得到的從機編號,查詢所述從機編號表,得到其對應 的該從機地址;C23)根據上述得到的參數類型,査詢所述從機配置鏈表,得到該類 型參數的起始地址;C24)根據步驟C22)和C23)的結果,將步驟C21)得到的參數值存 入其相應位置;C25)將步驟C21)得到的參數值放入準備發送到從相應從機所對應的控制鏈表中并發送或遍歷參數類型后發送到該從機。
7、 根據權利要求4所述的分布式主從機通信中對從機參數的處理方法, 其特征在于,所述步驟C)進一步包括如下步驟C30)判斷當前請求是否為從機上報類型數據包,如是執行下一步驟; C31)解析該數據包得到上報從機的地址和上報的參數類型,并刷新 主機中的相應數據;C32)將該從機數據存到準備發送到上一級設備的數據包的相應位置。
8、 根據權利要求4所述的分布式主從機通信中對從機參數的處理方法, 其特征在于,所述步驟C)進一步包括如下步驟C40)主機發送輪詢從機信息的命令;C41)是否收到上述輪詢命令的回應信息,如是執行下一步驟;C42)解析該信息,得到從機地址和報警參數值;C43)比較收到的信息中的該從機告警參數與主機中存儲的該從機告 警參數,如不一致,將該從機告警參數打入告警狀態隊列并將收到的告警參數 存入主機中該從機告警參數所在位置。
9、 一種用于實現權利要求1所述方法的裝置,其特征在于,包括從機編號識別裝置:用于根據主機收到的命令或請求中的從機地址得 到從機編號或由從機編號得到從機地址;從機參數地址識別裝置:用于識別主機收到的命令或請求中的從機參 數的類別及其在主機中存儲位置的起始地址;通信及控制裝置用于按照主機接收到的命令或請求中的指示,將相 應參數進行操作或置入數據包傳送到從機或上一級設備。10、根據權利要求9所述的裝置,其特征在于,所述通信及控制裝置還包 括一個第一存儲裝置,該存儲裝置用于在需要傳送或處理的參數多于一個時, 暫時存儲需要傳送或處理的參數值和從機地址或從機編號。
全文摘要
本發明涉及一種分布式主從機通信中對從機參數的處理方法,包括如下步驟設置與從機編號相對應的從機設備編號表的起始地址及長度,并設置所述從機設備編號表;設置從機參數類型,并根據上述從機設備編號表及從機參數類型,設置每種類型的從機參數長度及起始地址;根據主機當前收到命令或請求中所包括的從機地址、參數類型、操作類型,得到其要操作的參數所在地址,從而得到或更新該參數的值,并根據命令或請求立即或遍歷從機后對該參數值進行傳送或操作。本發明還涉及一種實現上述方法的裝置。實施本發明的一種分布式主從機通信中對從機參數的處理方法及裝置,具有以下有益效果處理時間短、系統效率較高。
文檔編號H04L12/26GK101222377SQ200710124789
公開日2008年7月16日 申請日期2007年11月23日 優先權日2007年11月23日
發明者城 黃 申請人:深圳國人通信有限公司