控制器、多重冗餘控制系統及其同步控制方法

控制器、多重冗餘控制系統及其同步控制方法

《控制器、多重冗餘控制系統及其同步控制方法》是浙江中控技術股份有限公司於2013年4月3日申請的專利,該專利的公布號為CN103197978A,申請號為2013101154144,授權公布日為2013年7月10日,發明人是金建祥、劉志勇、董乾欽、江竹軒、裘坤。

《控制器、多重冗餘控制系統及其同步控制方法》公開了一種控制器、多重冗餘控制系統及其同步控制方法,其中,所述系統至少包括通過固定數據傳輸通道連線的第一控制器和第二控制器,在第一控制器接收到同步信息後,記錄自身時鐘的第一時鐘時刻信息,並解析所述同步信息後獲得第二控制器的第二時鐘時刻信息,這樣,由第一時鐘時刻信息、第二時鐘時刻信息和固定數據傳輸通道的傳輸時間,即可計算得到第一控制器與第二控制器的時鐘偏差,然後,依據向時鐘時刻最慢的控制器調整的策略,調整控制器的時鐘,以使多重冗餘控制系統中的控制器的時鐘都與時鐘時刻最慢的控制器的時鐘保持一致,且同步控制方法在不改變原系統硬體電路的基礎上,實現各個控制器的時鐘統一,結構簡單,可靠性高。

2018年12月20日,《控制器、多重冗餘控制系統及其同步控制方法》獲得第二十屆中國專利優秀獎。

(概述圖為《控制器、多重冗餘控制系統及其同步控制方法》摘要附圖)

基本介紹

  • 中文名:控制器、多重冗餘控制系統及其同步控制方法
  • 公布號:CN103197978A
  • 授權日:2013年7月10日
  • 申請號:2013101154144
  • 申請日:2013年4月3日
  • 申請人:浙江中控技術股份有限公司
  • 地址:浙江省杭州市濱江區六和路309號中控科技園(高新區)
  • 發明人:金建祥、劉志勇、董乾欽、江竹軒、裘坤
  • Int.Cl.:G06F9/52(2006.01)I; G06F1/12(2006.01)I
  • 代理機構:北京集佳智慧財產權代理有限公司
  • 代理人:王寶筠
  • 類別:發明專利
專利背景,發明內容,專利目的,技術方案,改善效果,附圖說明,技術領域,權利要求,實施方式,榮譽表彰,

專利背景

多重冗餘控制系統屬於工業過程控制安全領域,工業過程控制安全領域對多重冗餘控制系統的可靠性、安全性要求很高。比如,三重冗餘控制系統,是通過三取二的方式表決,在單個控制器出現故障的情況下,仍能輸出正確的結果,保證系統在故障狀態下的準確性與安全性。
其中,多重冗餘控制系統中的同步技術作為核心部分,其可靠性、安全性是非常重要的,用來消除系統中多個控制器之間因時鐘、輸入延遲等因素造成的異步,使得系統中的多個控制器在程式執行狀態、周期定時及系統時間上達到相對一致的狀態,這樣,系統中多個控制器才能幾乎同時輸出表決,幾乎同時進行輸入採集,準確、穩定的完成多重冗餘過程。
截至2013年4月的技術中提高多重冗餘控制提供的同步度的方法主要包括兩類,其一,硬體同步方法,通過硬體表決電路統一多個控制器的周期時鐘,達到多個控制器同步的目的,此種方式需要用硬體電路完成周期時鐘的統一,增加硬體的故障失效模型複雜度,而且,用於表決的周期時鐘需要中斷產生,產生的頻率對系統的CPU的頻率要求較高,增加了電路的複雜度。其二,通過數據通信的方式進行多個控制器之間的同步,具體為,新上電控制器初始化後首先判斷出當前線上的控制器,然後,選擇設備地址較小者與之互動同步信息,此種方式同時需要新上電控制器傳送請求幀時間、線上控制器接收時間、線上控制器回復時間、新上電控制器接收回覆信息的時間,並對這四個時間進行計算,才能完成多個控制器之間的偏差調整,只對新上電的控制器進行同步設計,而且,系統的參照點設計存在缺陷,當參考控制器被更換時,整個冗餘控制系統中的所有控制器的時鐘可能會跳變,進而導致系統中的控制器的時間可能存在不一致。

發明內容

專利目的

《控制器、多重冗餘控制系統及其同步控制方法》實施例提供一種多重冗餘控制系統及同步控制方法,以實現提高多重冗餘控制系統的可靠性、同步精度,且無需增加硬體電路,結構簡單,成本低。

技術方案

《控制器、多重冗餘控制系統及其同步控制方法》提供一種多重冗餘控制系統同步控制方法,套用於請求端的第一控制器,所述多重冗餘控制系統至少包括第一控制器和第二控制器,其中,所述第一控制器用於請求同步信息,且所述第一控制器和所述第二控制器之間通過固定數據通信通道互相通信,所述固定數據通信通道傳輸數據幀大小固定的數據所需的傳輸時間固定不變,所述方法包括:
傳送周期同步信息請求,以便獲得所述第二控制器的同步信息;
接收並解析所述第二控制器針對所述周期同步信息請求回復的同步信息,獲得所述同步信息所包含的所述第二控制器在接收所述周期同步信息請求時的第二時鐘時刻信息,並記錄此時所述第一控制器的第一時鐘時刻信息;
依據所述第一時鐘時刻信息、所述第二時鐘時刻信息和所述固定數據通信通道的傳輸時間,計算得到所述第一控制器與所述第二控制器的時鐘偏差;
依據所述第一控制器與所述多重冗餘控制系統中的其他控制器之間的所有時鐘偏差,確定出時鐘時刻最慢的控制器;
當所述第一控制器的時鐘時刻比時鐘時刻最慢的控制器的時鐘時刻快時,調整所述第一控制器的時鐘時刻與所述時鐘時刻最慢的控制器的時鐘時刻一致。
優選的,上述方法還包括:在所述第一控制器傳送周期同步請求之前,還包括:所述第一控制器確定所述多重冗餘控制系統記憶體在的其他控制器的個數。
優選的,在所述第一控制器傳送周期同步請求之後,還包括:在預設時間段內未接收到指定數量的同步信息,其中,所述指定數量為所述第一控制器確定出的所述多重冗餘控制系統記憶體在其他控制器的個數,返回執行所述第一控制器傳送周期同步信息請求,以便獲得所述第二控制器的同步周期信息。
優選的,所述第一控制器傳送周期同步信息請求具體為:
所述第一控制器通過廣播方式傳送周期同步信息請求。
《控制器、多重冗餘控制系統及其同步控制方法》還提供一種多重冗餘控制系統同步控制方法,套用於被請求端的第二控制器,所述第二控制器用於接收周期同步信息請求,且所述第一控制器和所述第二控制器之間通過固定數據通信通道進行互相通信,所述固定數據通信通道傳輸數據幀大小固定的數據所需的時間固定,所述方法包括:
接收所述第一控制器傳送的周期同步信息請求;
進行時鐘診斷,並記錄此時所述第二控制器的第二時鐘時刻信息以及診斷結果;
當所述診斷結果表明所述第二時鐘時刻信息準確時,依據所述第二時鐘時刻信息得到同步信息,並傳送給所述第一控制器。
《控制器、多重冗餘控制系統及其同步控制方法》還提供一種多重冗餘控制系統的同步控制方法,套用於多重冗餘控制系統,所述多重冗餘控制系統包括第一控制器和第二控制器,所述第一控制器和所述第二控制器之間通過固定數據通信通道互相通信,所述固定數據通信通道傳輸數據幀大小固定的數據所需的傳輸的時間固定不變;所述方法包括:
所述第一控制器傳送周期同步信息請求,以便獲得所述第二控制器的同步信息;
所述第二控制器接收所述周期同步信息請求,進行時鐘診斷,並將所述第二控制器的第二時鐘時刻信息寫入同步信息,回復給所述第一控制器;
所述第一控制器接收到所述同步信息後,解析所述同步信息,獲得第二時鐘時刻信息,同時,記錄所述第一控制器的第一時鐘時刻信息;
所述第一控制器依據所述第一時鐘時刻信息、所述第二時鐘時刻信息和所述同步信息的傳輸時間,計算得到所述第一控制器和所述第二控制器的時鐘偏差,依據所述時鐘偏差確定出時鐘時刻最慢的控制器;
當所述第一控制器判斷出自身的時鐘時刻比所述時鐘時刻最慢的控制器的時鐘時刻快時,調整所述第一控制器的時鐘時刻與時鐘時刻最慢的控制器的時鐘時刻一致。
《控制器、多重冗餘控制系統及其同步控制方法》還提供一種控制器,套用於多重冗餘控制系統,包括:一個傳送通道、至少一個接收通道,以及微處理器,其中,所述傳送通道和所述接收通道傳輸數據幀大小固定的數據時,所需的傳輸時間固定不變:
所述微處理器通過所述傳送通道傳送周期同步信息請求,並通過所述接收通道接收所述多重冗餘控制系統中的其他控制器針對所述周期同步信息請求回復的同步信息;
所述微處理器用於,在接收到所述同步信息後,解析所述同步信息,獲得所述同步信息中所包含的第二時鐘時刻信息,並記錄此時該控制器的第一時鐘時刻信息;依據所述第一時鐘時刻信息、第二時鐘時刻信息及傳輸時間,計算得到所述控制器與所述多重冗餘控制系統中的其他控制器之間的時鐘偏差,並依據所述時鐘偏差確定出時鐘時刻最慢的控制器;當所述微處理器判斷出該控制器的時鐘時刻比時鐘時刻最慢的控制器的時鐘時刻快時,調整該控制器的時鐘時刻與所述時鐘時刻最慢的控制器的時鐘時刻一致;
所述微處理器還用於在接收到所述多重冗餘控制系統中的其他控制器傳送的周期同步信息請求後,進行時鐘診斷,並記錄此時控制器的時鐘時刻信息,並當診斷結果表明所述控制器的時鐘時刻信息準確時,依據所述時刻信息得到相應的同步信息。
《控制器、多重冗餘控制系統及其同步控制方法》還提供一種多重冗餘控制系統,至少包括第一控制器和第二控制器,所述第一控制器和所述第二控制器均包括一個傳送通道和至少一個接收通道,且所述傳送通道和所述接收通道為固定數據通信通道互相通信,所述固定數據通信通道傳輸數據幀大小固定的數據所需的傳輸的時間固定不變;
所述第一控制器通過所述傳送通道向所述第二控制器傳送周期同步信息請求;
所述第二控制器通過所述接收通道接收所述周期同步信息請求,進行時鐘診斷,並記錄所述第二控制器的第二時鐘時刻信息及診斷結果;並當所述診斷結果表明所述第二控制器的時鐘準確時,將所述第二時鐘時刻信息寫入同步信息,回復給所述第一控制器;
所述第一控制器接收到所述同步信息後,解析所述同步信息,獲得第二時鐘時刻信息,同時,記錄所述第一控制器的第一時鐘時刻信息;依據所述第一時鐘時刻信息、所述第二時鐘時刻信息和所述傳輸時間,計算得到所述第一控制器和所述第二控制器的時鐘偏差,依據所述時鐘偏差確定出時鐘時刻最慢的控制器;
當所述第一控制器判斷出自身的時鐘時刻比所述時鐘時刻最慢的控制器的時鐘時刻快時,調整所述第一控制器的時鐘時刻與時鐘時刻最慢的控制器的時鐘時刻一致。
優選的,所述第一控制器通過廣播方式傳送所述周期同步信息請求。

改善效果

由以上《控制器、多重冗餘控制系統及其同步控制方法》實施例提供的技術方案可見,所述多重冗餘控制系統至少包括第一控制器和第二控制器,所述第一控制器和所述第二控制器通過固定數據傳輸通道連線,所述固定數據傳輸通道傳輸數據幀大小固定的數據時所需的傳輸時間固定不變,因此,在第一控制器接收到同步信息後,記錄自身時鐘的第一時鐘時刻信息,並解析所述同步信息後獲得第二控制器的第二時鐘時刻信息,這樣,由第一時鐘時刻信息、第二時鐘時刻信息和固定數據傳輸通道的傳輸時間,即可計算得到第一控制器與第二控制器的時鐘偏差,然後,依據向時鐘時刻最慢的控制器調整的策略,調整控制器的時鐘,以使多重冗餘控制系統中的控制器的時鐘都與時鐘時刻最慢的控制器的時鐘保持一致。《控制器、多重冗餘控制系統及其同步控制方法》實施例提供的同步控制方法在不改變原系統硬體電路的基礎上,實現各個控制器的時鐘統一,結構簡單,可靠性高;而且,同步控制方法所基於的時鐘調整策略不隨控制器的更換而改變,始終以系統中時鐘時刻最慢的控制器作為調整基準,從而不影響各個控制器的周期任務內部程式有效運行。

附圖說明

圖1為《控制器、多重冗餘控制系統及其同步控制方法》實施例的一種多重冗餘控制系統的同步控制方法流程示意圖;
圖2為《控制器、多重冗餘控制系統及其同步控制方法》實施例的另一種多重冗餘控制系統的同步控制方法流程示意圖;
圖3為《控制器、多重冗餘控制系統及其同步控制方法》實施例的又一種多重冗餘控制系統的同步控制方法的流程示意圖;
圖4為《控制器、多重冗餘控制系統及其同步控制方法》實施例的一種三重冗餘控制系統的結構示意圖;
圖5為《控制器、多重冗餘控制系統及其同步控制方法》實施例的一種三重冗餘控制系統的同步控制方法流程示意圖;
圖6為《控制器、多重冗餘控制系統及其同步控制方法》實施例的一種控制器的結構示意圖。

技術領域

《控制器、多重冗餘控制系統及其同步控制方法》涉及多重冗餘控制技術領域,特別是涉及多重冗餘系統及其控制方法。

權利要求

1.一種多重冗餘控制系統同步控制方法,套用於請求端的第一控制器,其特徵在於,所述多重冗餘控制系統至少包括第一控制器和第二控制器,其中,所述第一控制器用於請求同步信息,且所述第一控制器和所述第二控制器之間通過固定數據通信通道互相通信,所述固定數據通信通道傳輸數據幀大小固定的數據所需的傳輸時間固定不變,所述方法包括:所述第一控制器通過廣播方式傳送周期同步信息請求,以便獲得所述第二控制器的同步信息;接收並解析所述第二控制器針對所述周期同步信息請求回復的同步信息,獲得所述同步信息所包含的所述第二控制器在接收所述周期同步信息請求時的第二時鐘時刻信息,並記錄此時所述第一控制器的第一時鐘時刻信息;依據所述第一時鐘時刻信息、所述第二時鐘時刻信息和所述固定數據通信通道的傳輸時間,計算得到所述第一控制器與所述第二控制器的時鐘偏差;依據所述第一控制器與所述多重冗餘控制系統中的其他控制器之間的所有時鐘偏差,確定出時鐘時刻最慢的控制器;當所述第一控制器的時鐘時刻比時鐘時刻最慢的控制器的時鐘時刻快時,調整所述第一控制器的時鐘時刻與所述時鐘時刻最慢的控制器的時鐘時刻一致。
2.根據權利要求1所述的方法,其特徵在於,還包括:在所述第一控制器傳送周期同步請求之前,還包括:所述第一控制器確定所述多重冗餘控制系統記憶體在的其他控制器的個數。
3.根據權利要求2所述的方法,其特徵在於,在所述第一控制器傳送周期同步請求之後,還包括:在預設時間段內未接收到指定數量的同步信息,其中,所述指定數量為所述第一控制器確定出的所述多重冗餘控制系統記憶體在其他控制器的個數,返回執行所述第一控制器傳送周期同步信息請求,以便獲得所述第二控制器的同步周期信息。
4.一種多重冗餘控制系統的同步控制方法,套用於多重冗餘控制系統,所述多重冗餘控制系統包括第一控制器和第二控制器,其特徵在於,所述第一控制器和所述第二控制器之間通過固定數據通信通道互相通信,所述固定數據通信通道傳輸數據幀大小固定的數據所需的傳輸的時間固定不變;所述方法包括:所述第一控制器通過廣播方式傳送周期同步信息請求,以便獲得所述第二控制器的同步信息;所述第二控制器接收所述周期同步信息請求,進行時鐘診斷,並將所述第二控制器的第二時鐘時刻信息寫入同步信息,回復給所述第一控制器;所述第一控制器接收到所述同步信息後,解析所述同步信息,獲得第二時鐘時刻信息,同時,記錄所述第一控制器的第一時鐘時刻信息;所述第一控制器依據所述第一時鐘時刻信息、所述第二時鐘時刻信息和所述同步信息的傳輸時間,計算得到所述第一控制器和所述第二控制器的時鐘偏差,依據所述時鐘偏差確定出時鐘時刻最慢的控制器;當所述第一控制器判斷出自身的時鐘時刻比所述時鐘時刻最慢的控制器的時鐘時刻快時,調整所述第一控制器的時鐘時刻與時鐘時刻最慢的控制器的時鐘時刻一致。
5.一種控制器,套用於多重冗餘控制系統,其特徵在於,包括:一個傳送通道、至少一個接收通道,以及微處理器,其中,所述傳送通道和所述接收通道傳輸數據幀大小固定的數據時,所需的傳輸時間固定不變:所述微處理器通過所述傳送通道以廣播方式傳送周期同步信息請求,並通過所述接收通道接收所述多重冗餘控制系統中的其他控制器針對所述周期同步信息請求回復的同步信息;所述微處理器用於,在接收到所述同步信息後,解析所述同步信息,獲得所述同步信息中所包含的第二時鐘時刻信息,並記錄此時該控制器的第一時鐘時刻信息;依據所述第一時鐘時刻信息、第二時鐘時刻信息及傳輸時間,計算得到所述控制器與所述多重冗餘控制系統中的其他控制器之間的時鐘偏差,並依據所述時鐘偏差確定出時鐘時刻最慢的控制器;當所述微處理器判斷出該控制器的時鐘時刻比時鐘時刻最慢的控制器的時鐘時刻快時,調整該控制器的時鐘時刻與所述時鐘時刻最慢的控制器的時鐘時刻一致;所述微處理器還用於在接收到所述多重冗餘控制系統中的其他控制器傳送的周期同步信息請求後,進行時鐘診斷,並記錄此時控制器的時鐘時刻信息,並當診斷結果表明所述控制器的時鐘時刻信息準確時,依據所述時刻信息得到相應的同步信息。
6.一種多重冗餘控制系統,其特徵在於,至少包括第一控制器和第二控制器,所述第一控制器和所述第二控制器均包括一個傳送通道和至少一個接收通道,且所述傳送通道和所述接收通道為固定數據通信通道互相通信,所述固定數據通信通道傳輸數據幀大小固定的數據所需的傳輸的時間固定不變;所述第一控制器通過所述傳送通道向所述第二控制器傳送周期同步信息請求;所述第二控制器通過所述接收通道接收所述周期同步信息請求,進行時鐘診斷,並記錄所述第二控制器的第二時鐘時刻信息及診斷結果;並當所述診斷結果表明所述第二控制器的時鐘準確時,將所述第二時鐘時刻信息寫入同步信息,回復給所述第一控制器;所述第一控制器接收到所述同步信息後,解析所述同步信息,獲得第二時鐘時刻信息,同時,記錄所述第一控制器的第一時鐘時刻信息;依據所述第一時鐘時刻信息、所述第二時鐘時刻信息和所述傳輸時間,計算得到所述第一控制器和所述第二控制器的時鐘偏差,依據所述時鐘偏差確定出時鐘時刻最慢的控制器;當所述第一控制器判斷出自身的時鐘時刻比所述時鐘時刻最慢的控制器的時鐘時刻快時,調整所述第一控制器的時鐘時刻與時鐘時刻最慢的控制器的時鐘時刻一致;所述第一控制器通過廣播方式傳送所述周期同步信息請求。

實施方式

《控制器、多重冗餘控制系統及其同步控制方法》實施例提供一種多重冗餘控制系統的同步控制方法,套用於請求端控制器,所述多重冗餘控制系統至少包括第一控制器和第二控制器,所述第一控制器用於請求同步信息,且所述第一控制器和所述第二控制器之間通過固定數據傳輸通道進行通信,利用所述固定數據傳輸通道傳輸數據幀大小固定的數據所需的傳輸時間固定不變。
如圖1所示,套用於請求端控制器的同步控制方法包括以下步驟:
101,傳送周期同步信息請求。
具體實施時,第一控制器傳送周期同步信息請求,以獲知多重冗餘控制系統中其他的控制器的周期任務的時間。
102,接收並解析所述第二控制器針對所述周期同步信息請求回復的同步信息,獲得所述同步信息所包含的所述第二控制器的第二時鐘時刻信息,並記錄此時所述第一控制器的第一時鐘時刻信息。
具體實施時,當多重冗餘控制系統中的其他控制器(該實施例中為第二控制器)接收到所述周期同步信息請求後,向所述第一控制器回復同步信息,所述同步信息包含所述第二控制器在接收到所述周期同步信息請求時的時鐘時刻信息,記為第二時鐘時刻信息。
當第一控制器接收到來自所述第二控制器的同步信息後,解析所述同步信息,獲得第二控制器的第二時鐘時刻信息,以及第二控制器的同步信息數據,該同步信息數據至少包括第二控制器的周期任務內的時鐘計數器的數值,與此同時,記錄自身時鐘的時刻信息,記為第一時鐘時刻信息。
103,依據所述第一時鐘時刻信息、所述第二時鐘時刻信息和所述固定數據通信通道的傳輸時間,計算得到所述第一控制器與所述第二控制器的時鐘偏差。
具體實施時,需要使同步信息的數據幀的大小固定,此時,再利用所述固定數據通信通道傳輸同步信息時,需要的傳輸時間也固定不變,記為λ。
第一控制器的第一時鐘時刻記為T1、第二控制器的第二時鐘時刻記為T2,此時,兩個控制器的時鐘偏差為T1-λ-T2。
當所述多重冗餘控制系統中包含兩個以上的控制器時,重複執行步驟102和103,直到確定出第一控制器與所述多重冗餘控制系統中的其他控制器之間的時鐘偏差。
104,依據所述第一控制器與多重冗餘控制器中其他控制器之間的時鐘偏差,確定出時鐘時刻最慢的控制器。
若根據步驟103所述的時鐘偏差公式計算得到的差值大於0,則表明第二控制器的時鐘比第一控制器的時鐘慢;若得到的差值小於0,則表明第一控制器的時鐘比第二控制器的時鐘慢。
105,當所述第一控制器的時鐘時刻比時鐘時刻最慢的控制器的時鐘時刻快時,調整所述第一控制器的時鐘時刻與所述時鐘時刻最慢的控制器的時鐘時刻一致。
具體實施時,若依據所述時鐘偏差判斷出第二控制器的時鐘時刻最慢,則需要將第一控制器的時鐘調整至於第二控制器的時鐘一致,具體是調節第一控制器的時鐘計數器的初值,使其與時鐘時刻最慢的控制器內的時鐘計數器的計數值一致,該時鐘計數器用於產生控制器的時間及周期任務內的計數器值。
該實施例提供的多重冗餘控制系統的同步控制方法,其中所述多重冗餘控制系統中的第一控制器和第二控制器之間傳輸同步信息所需的傳輸時間固定不變,因此,依據請求端的控制器在接收到同步信息時的第一時鐘時刻信息、被請求端的控制器在接收到周期同步信息時的第二時鐘時刻信息和固定數據傳輸通道的傳輸時間,即可計算得到第一控制器與第二控制器的時鐘偏差,然後,依據向時鐘時刻最慢的控制器調整的策略,調整控制器的時鐘,以使多重冗餘控制系統中的控制器的時鐘都與時鐘時刻最慢的控制器的時鐘保持一致,綜上可知,此種同步控制方法在不改變原系統硬體電路的基礎上,實現各個控制器的時鐘統一,結構簡單,可靠性高;而且,同步控制方法所基於的時鐘調整策略不隨控制器的更換而改變,始終以系統中時鐘時刻最慢的控制器作為調整基準,從而不影響各個控制器的周期任務內部程式有效運行。
《控制器、多重冗餘控制系統及其同步控制方法》實施例還提供另一種多重冗餘控制系統的同步控制方法,套用於被請求端的控制器,所述多重冗餘控制系統至少包括第一控制器和第二控制器,其中,所述第二控制器為被請求端控制器,所述第一控制器為請求端控制器,且第一控制器和第二控制器之間通過固定數據傳輸通道進行通信,利用所述固定數據傳輸通道傳輸數據幀大小固定的數據時所需的傳輸時間固定不變。
如圖2所示,示出了《控制器、多重冗餘控制系統及其同步控制方法》實施例另一種多重冗餘控制系統的同步控制方法,與圖1所示的實施例不同的是,增加逾時重發機制。
所述方法套用於請求端控制器,多重冗餘控制系統至少包括第一控制器和第二控制器,所述第一控制器用於請求同步信息,且所述第一控制器和所述第二控制器之間通過固定數據傳輸通道進行通信,利用所述固定數據傳輸通道傳輸數據幀大小固定的數據所需的傳輸時間固定不變。
所述方法包括以下步驟:
201,第一控制器確定所述多重冗餘控制系統中存在的其他控制器的個數。
具體實施時,新上電的第一控制器通過問答方式確定多重冗餘控制系統中其他控制器的存在個數。
202,傳送周期同步信息請求。
203,判斷預設時間段內是否接收到指定數量的同步信息,若是,則執行步驟204;否則,返回執行步驟202。所述指定數量為所述第一控制器確定出的所述多重冗餘控制系統中存在的其他控制器的個數。
當第一控制器在預設時間段內未接收到來自第二控制器的同步信息,則重新傳送周期同步信息請求,此種重發機制只執行一次。
204,解析所述第二控制器針對所述周期同步信息請求回復的同步信息,獲得第二時鐘時刻信息,並記錄此時所述第一控制器的第一時鐘時刻信息。
所述第二時鐘時刻信息是第二控制器傳送的同步信息內所包含的時鐘時刻信息。
205,依據所述第一時鐘時刻信息、所述第二時鐘時刻信息和所述固定數據通信通道的傳輸時間,計算得到所述第一控制器與所述第二控制器的時鐘偏差。
206,依據所述第一控制器與多重冗餘控制系統中其他控制器之間的時鐘偏差,確定出時鐘時刻最慢的控制器。
207,當判斷出所述第一控制器的時鐘時刻比時鐘時刻最慢的控制器的時鐘時刻快時,調整所述第一控制器的時鐘時刻與所述時鐘時刻最慢的控制器的時鐘時刻一致。
該實施例提供的多重冗餘控制系統的同步控制方法,在預設時間段內未收到同步信息時,重新傳送周期同步信息請求,從而提高了同步信息的可靠性,最終保證多重冗餘系統中所有控制器同步的穩定性。
《控制器、多重冗餘控制系統及其同步控制方法》實施例還提供了另一種多重冗餘控制系統同步控制方法,所述方法套用於被請求端控制器,所述多重冗餘控制系統至少包括第一控制器和第二控制器,所述第一控制器用於請求同步信息,且所述第一控制器和所述第二控制器之間通過固定數據傳輸通道進行通信,利用所述固定數據傳輸通道傳輸數據幀大小固定的數據所需的傳輸時間固定不變。
具體如圖3所示,套用於被請求端的控制器,即第二控制器的同步控制方法包括以下步驟:
301,接收所述第一控制器傳送的周期同步信息請求。
302,診斷自身時鐘,並記錄此時控制器的第二時鐘時刻信息及診斷結果。
當所述第二控制器接收到來自第一控制器的周期同步信息請求時,診斷自身時鐘,並記錄此時第二控制器的時鐘時刻信息,記為第二時鐘時刻信息。
具體的,診斷自身時鐘過程是通過控制器內部的微處理器自帶的時鐘診斷模組進行時鐘診斷,得到相應的診斷結果。
303,當所述診斷結果表明所述第二控制器的時鐘準確時,依據所述第二時鐘時刻信息得到同步信息,並傳送給所述第一控制器。
當診斷結果表明第二控制器的時鐘準確時,將所述第二時鐘時刻寫入同步信息,所述同步信息還包括第二控制器的同步信息數據,該同步信息數據至少包括第二控制器的周期任務內的時鐘計數器的數值,傳送給所述第一控制器。
當所述診斷結果表明所述第二控制器的時鐘不準確時,將不會產生同步信息。
該實施例提供的多重冗餘控制系統的同步控制方法,在第二控制器接收到周期同步信息時,首先診斷自身時鐘,以保證時鐘的準確性,從而保證同步信息的正確性,避免發生時鐘錯誤的控制器影響其他控制器的時鐘,進一步保證多重冗餘控制系統穩定可靠。
下面結合圖4和圖5以三重冗餘控制系統為例對同步控制方法進行說明,請參見圖4,示出了《控制器、多重冗餘控制系統及其同步控制方法》實施例一種三重冗餘控制系統的結構示意圖;圖5示出了《控制器、多重冗餘控制系統及其同步控制方法》實施例一種三重冗餘控制系統的同步控制方法流程示意圖。
如圖4所示,所述三重冗餘控制系統包括控制器A、控制器B和控制器C,其中,每個控制器均設定有一個傳送通道和兩個接收通道。而且,所述傳送通道和所述接收通道均為固定數據傳輸通道,即利用所述通道傳輸數據幀大小固定的數據時,所需的傳輸時間λ也固定。
控制器A的傳送通道A1連線控制器B的一個接收通道B2,同時,所述傳送通道A1連線控制器C的一個接收通道C2;控制器B的傳送通道B1連線控制器A的一個接收通道A2,同時,傳送通道B1連線控制器C的另一個接收通道C3;控制器C的傳送通道C1連線控制器A的另一個接收通道A3,同時,該傳送通道C1連線控制器B的另一個接收通道B3。
如圖5所示,假設控制器A為新上電的控制器,所述三重冗餘控制系統的同步控制方法包括以下步驟:
501,控制器A上電完成初始化,確定當前系統中存在的其他控制器的個數。
具體實施時,通過問答方式確定當前系統中存在的其他控制器的個數,該實施例中確定出存在兩個其他的控制器。
502,控制器A傳送周期同步信息請求。
503,接收到所述周期同步信息請求的控制器B,進行時鐘診斷,並當診斷結果表明控制器B的時鐘準確時,將控制器B的時鐘時刻信息(第二時鐘時刻信息T2)寫入同步信息,傳送至控制器A;其中所述同步信息包括控制器B的時鐘計數器的數值。
504,控制器A接收控制器B的同步信息,解析所述同步信息,獲得控制器B的第二時鐘時刻T2,同時,記錄此時控制器A的第一時鐘時刻T1。
505,控制器A依據第一時鐘時刻T1、第二時鐘時刻T2和同步信息的傳輸時間λ,計算得到控制器A和控制器B的第一時鐘偏差。
具體的兩個控制器的第一時鐘偏差為T1-λ-T2。
506,接收到所述周期同步請求的控制器C,進行時鐘診斷,並當診斷結果表明控制器C的時鐘準確時,將控制器的時鐘時刻(第三時鐘時刻信息T3)寫入同步信息,傳送至控制器A;其中所述同步信息包括控制器C的時鐘計數器的數值。
507,控制器A接收控制器C的同步信息,解析所述同步信息,獲得控制器C的第三時鐘時刻T3,同時,記錄此時控制器A的第四時鐘時刻T4。
508,控制器A依據第四時鐘時刻T4、第三時鐘時刻T3和傳輸時間λ,計算得到控制器A和控制器C的第二時鐘偏差。
具體的兩個控制器的第二時鐘偏差為T4-λ-T3。
509,依據第一時鐘偏差和第二時鐘偏差,確定出時鐘時刻最慢的控制器。
具體實施時,依據時鐘偏差與0的大小關係確定出時鐘時刻最慢的控制器,具體的若第一時鐘偏差T1-λ-T2大於0,則表明控制器B的時鐘比控制器A的時鐘慢;反之,則表明控制器A的時鐘比控制器B的時鐘慢。同理,判斷控制器A和控制器C兩者之間的時鐘快慢關係。
進一步,比較第一時鐘偏差T1-λ-T2與第二時鐘偏差T4-λ-T3,確定出時鐘時刻最慢的控制器。若第一時鐘偏差和第二時鐘偏差均大於0,且第一時鐘偏差大於第二時鐘偏差,則表明控制器B的時鐘時刻最慢。
510,依據向時鐘時刻最慢的控制器調整的策略,調整控制器A的時鐘,以使其與時鐘時刻最慢的控制器一致。
具體實施時,仍假設控制器B的時鐘時刻最慢,則調整控制器A的時鐘時刻,以使控制器A的時鐘時刻與控制器B的時鐘時刻一致。
該領域技術人員可以理解的是,上述的步驟502中傳送周期同步請求的是控制器A,相應的,控制器得到多重冗餘控制系統中其他控制器的同步信息,並根據所述同步信息獲知時鐘時刻最慢的控制器,因此,在步驟510中僅控制器A進行時鐘調整;多重冗餘控制系統的其他控制器的時鐘調節需要重新執行上述的流程。
需要說明的是,上述的步驟503和步驟506可以同時進行,步驟504和步驟507可以同時進行,步驟505與步驟508可以同時進行。
該實施例提供的三重冗餘控制系統中的各個控制器之間採用固定數據傳輸通道進行通信,依據接收到同步信息的控制器的時鐘時刻與同步信息所攜帶的時鐘時刻之間的時鐘偏差,確定出時鐘時刻最慢的控制器,並依據向時鐘時刻最慢的控制器調整的策略,調整控制器的時鐘,從而使多重冗餘控制系統中的控制器的時鐘都與時鐘時刻最慢的控制器的時鐘保持一致,此種同步控制方式在不改變原系統硬體電路的基礎上,實現各個控制器的時鐘統一,結構簡單,可靠性高;而且,同步控制方法所基於的時鐘調整策略不隨控制器的更換而改變,始終以系統中時鐘時刻最慢的控制器作為調整基準,從而不影響各個控制器的周期任務內部程式有效運行。
優選的,在圖5所示的實施例的基礎上,增設逾時重發機制,具體的,在步驟502之後,即在控制器A傳送周期同步請求後的預設時間段內未接收到指定數量(步驟501中確定出的當前系統中存在的其他控制器的個數)的同步信息時,則返回執行步驟502。
此種逾時重發過程只執行一次,若仍為接收到指定數量的同步信息,則認為控制器丟失,具體的,可能是一個同步信息都未接收到,此時,認為其他的兩個控制器均丟失;也可能是只接收到一個控制器的同步信息,此時認為丟失一個控制器。
《控制器、多重冗餘控制系統及其同步控制方法》還提供一種控制器,如圖6所示,所述控制器包括一個傳送通道601、至少一個接收通道602,微處理器603,其中所述接收通道和所述接收通道傳輸數據幀大小固定的數據時,所需的傳輸時間固定不變。
傳送通道同時連線多重冗餘控制系統中的其他控制器的接收通道,用於傳送數據;接收通道分別連線所述系統中其他控制器的傳送通道,用於接收數據。
微處理器603通過所述傳送通道601傳送周期同步信息請求,並通過所述接收通道602接收所述多重冗餘控制系統中的其他控制器針對所述周期同步信息請求回復的同步信息;
微控制器603用於,在接收到所述同步信息後,解析所述同步信息,獲得所述同步信息中所包含的第二時鐘時刻信息,並記錄此時該控制器的第一時鐘時刻信息;依據所述第一時鐘時刻信息、第二時鐘時刻信息及傳輸時間,計算得到該控制器與所述多重冗餘控制系統中的其他控制器之間的時鐘偏差,依據所述時鐘偏差確定出時鐘時刻最慢的控制器;當所述微處理器判斷出該控制器的時鐘時刻比時鐘時刻最慢的控制器的時鐘時刻快時,調整該控制器的時鐘時刻與所述時鐘時刻最慢的控制器的時鐘時刻一致;
同時,微控制器603還用於,在接收到所述多重冗餘控制系統中的其他控制器傳送的周期同步信息請求後,進行時鐘診斷,並記錄此時控制器的時鐘時刻信息,及診斷結果,並當所述診斷結果表明所述控制器的時鐘準確時,依據所述控制器的時鐘時刻信息得到相應的同步信息。
該說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例中的相關之處參見可相互參見即可。
需要說明的是,在該文中,諸如第一和第二等之類的關係術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關係或者順序。
以上所述僅是《控制器、多重冗餘控制系統及其同步控制方法》的具體實施方式,應當指出,對於該技術領域的普通技術人員來說,在不脫離該申請原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為該申請的保護範圍。

榮譽表彰

2018年12月20日,《控制器、多重冗餘控制系統及其同步控制方法》獲得第二十屆中國專利優秀獎。

相關詞條

熱門詞條

聯絡我們