• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      一種冗余的高安全性CAN總線通信系統(tǒng)

      2014-02-17 20:16:32孫經(jīng)偉許崇孫緯偉
      電腦知識與技術 2014年2期
      關鍵詞:冗余通信系統(tǒng)安全性

      孫經(jīng)偉 許崇 孫緯偉

      摘要:該文從CAN總線通信的角度,提出了一種冗余的高安全性CAN總線通訊系統(tǒng)。以求解決在聯(lián)鎖系統(tǒng)中遇到的通信問題。文章詳細闡述了新型通信系統(tǒng)的設計原理與實現(xiàn)步驟,并用實例驗證了該方法的有效性。

      關鍵詞:CAN; 通信系統(tǒng);二乘二取二;冗余;安全性

      中圖分類號:TP273.5 文獻標識碼:A 文章編號:1009-3044(2014)02-0401-03

      如今的工業(yè)控制領域正朝著信息化、智能化、網(wǎng)絡化不斷發(fā)展,影響著通信效率的工業(yè)總線技術越來越受到行業(yè)的重視。傳統(tǒng)的工業(yè)通信總線大多采用RS-485總線,但是RS-485總線存在著總線利用率低、傳輸速率低、通信距離短等缺點,并且缺乏完備的錯誤檢測機制,導致其安全性較差,不適合應用在安全相關的工業(yè)領域。安全相關的工業(yè)領域包括核電、水利、交通、礦山等關系著重大公共安全的行業(yè),一般有著嚴格的安全性要求。

      本文提出了一種新的設計方案,通過采用二乘二取二架構(gòu),多重校驗和冗余收發(fā)技術,每個有效的數(shù)據(jù)包的發(fā)送和接收都是冗余的,并且通過在發(fā)送端和接收端設置多次校驗,確保系統(tǒng)的高安全性。

      1 背景

      控制器局域網(wǎng)CAN(Controller Area Network)總線是一種能有效支持分布式實時控制的串行通信網(wǎng)絡。近年來,由于CAN總線具有高可靠性、高傳輸速率、良好的勘誤檢錯能力和低廉的成本優(yōu)勢,逐漸成為應用最廣泛的現(xiàn)場總線之一。安全相關的工業(yè)領域比一般的工業(yè)領域?qū)Π踩砸蟾撸彝鶓铆h(huán)境惡劣,存在著大量的干擾,例如電磁、溫度、粉塵等影響。CAN總線雖然有錯誤檢測機制,但在實際應用過程中,仍不可避免地會由于控制器或收發(fā)器故障、傳輸介質(zhì)損壞及環(huán)境的干擾產(chǎn)生傳輸錯誤。另外,CAN總線的一個特點是多主工作方式,但在實際應用中,多主工作方式容易導致總線控制沖突,使得緊急命令和消息得不到響應或者響應過慢,對中斷邏輯結(jié)構(gòu)要求較高,不適合對安全性和響應時間有著嚴格要求的安全相關系統(tǒng)。

      2 CAN總線系統(tǒng)架構(gòu)

      本文的目的在于提供一種冗余的高安全性CAN總線通信系統(tǒng),以解決現(xiàn)有技術中存在的問題。

      一種冗余的高安全性CAN總線通信系統(tǒng),包括一個上位機、多個下位機和兩條互為熱備的CAN總線,每個上位機和下位機均由兩個互為熱備的模塊構(gòu)成;每個模塊均有兩個同步運算的微處理器CPU,分別為第一CPU和第二CPU,構(gòu)成兩個相互獨立的運算通道,每個運算通道集成兩個CAN總線接口,所述兩個CAN總線接口分別一一對應連接兩條CAN總線。

      由上述技術方案可知,本方案采用二乘二取二架構(gòu),包括一個上位機、若干下位機和兩條CAN總線,每個上位機和下位機均由兩個互為熱備的模塊構(gòu)成,兩條CAN總線構(gòu)成熱備,每個模塊集成兩個相互獨立的運算通道,每個運算通道以一個高性能微處理器為核心,同步運算并實現(xiàn)二取二表決,每個運算通道集成兩個CAN總線接口分別連接到兩條CAN總線上;CAN總線通信采用主從模式,上位機定期巡訪所有下位機,每個時間片內(nèi),上位機和固定的下位機通信,有效避免總線沖突。本實用新型采用多重校驗和冗余收發(fā)技術,每個有效的數(shù)據(jù)包的發(fā)送和接收都是冗余的,并且在發(fā)送端和接收端設置多次校驗,確保高安全性。

      3 工作原理

      本設計方案的工作原理(選取一個下位機2進行說明):

      1)準備階段:系統(tǒng)上電,完成初始化工作,每個模塊檢查自身狀態(tài)和接口設備是否運行正常;檢查完畢后,若所有模塊均處于正常工作狀態(tài),則互為熱備的兩個模塊根據(jù)固定的主備關系工作,若有模塊出現(xiàn)故障,則互為熱備的兩個模塊根據(jù)本模塊和對方模塊的狀態(tài)確定主備關系;若前期檢查所有模塊均正常工作,上位機模塊M1工作在主系狀態(tài)下,M2工作在備系狀態(tài)下,下位機模塊M3工作在主系狀態(tài)下,M4工作在備系狀態(tài)下;

      2)上位機主系模塊CPU1發(fā)送階段:上位機主系模塊M1占有總線控制權(quán),在固定的時間片內(nèi),選擇與下位機主系模塊M3通信:M1-CPU1將自己需要發(fā)送的數(shù)據(jù)Data1_1通過CAN總線接口M1-CPU1-CAN1發(fā)送到CAN-BUS1上;M1-CPU2通過CAN總線接口M1-CPU2-CAN1接收數(shù)據(jù),M3-CPU1通過CAN總線接口M3-CPU1-CAN1接收數(shù)據(jù),M3-CPU2通過CAN總線接口M3-CPU2-CAN1接收數(shù)據(jù);

      3)上位機主系模塊CPU2比較階段:M1-CPU2接收到來自M1-CPU1的數(shù)據(jù)Data1_1,并將接收到的數(shù)據(jù)Data1_1與自己準備發(fā)送的數(shù)據(jù)Data1_2做比較,如果兩個數(shù)據(jù)相同,則跳轉(zhuǎn)步驟S4,如果兩個數(shù)據(jù)不相同,則跳轉(zhuǎn)步驟S8;

      4)上位機主系模塊CPU2發(fā)送階段:M1-CPU2將自己需要發(fā)送的數(shù)據(jù)Data1_2通過CAN總線接口M1-CPU2-CAN1發(fā)送到CAN-BUS1上。M1-CPU1通過CAN總線接口M1-CPU1-CAN1接收數(shù)據(jù),M3-CPU1通過CAN總線接口M3-CPU1-CAN1接收數(shù)據(jù),M3-CPU2通過CAN總線接口M3-CPU2-CAN1接收數(shù)據(jù);

      5)下位機主系模塊CPU1和CPU2比較階段:M3-CPU1和M3-CPU2分別從CAN-BUS1上接收到了兩個數(shù)據(jù)Data1_1和Data1_2,分別對這兩個數(shù)據(jù)進行比較,如果M3-CPU1和M3-CPU2均判定兩個數(shù)據(jù)是相同的,則跳轉(zhuǎn)步驟S6,否則,只要M3-CPU1或M3-CPU2其中之一判定兩個數(shù)據(jù)不相同,就跳轉(zhuǎn)步驟S8;

      6)下位機主系模塊CPU1和CPU2解碼階段:M3-CPU1和M3-CPU2分別解碼各自接收到的數(shù)據(jù)Data1_1和Data1_2,得到相應的時間戳、序列號和CRC校驗碼,如果M3-CPU1和M3-CPU2均判定相應的時間戳、序列號和CRC校驗碼是正確的,則跳轉(zhuǎn)S7,如果出現(xiàn)錯誤,則跳轉(zhuǎn)步驟S8;

      7)通信完成階段:CAN總線通信正確完成,下位機根據(jù)解碼得到的數(shù)據(jù)區(qū),進行后續(xù)處理,為上位機應答做準備;

      8)通信錯誤階段:CAN總線通信出現(xiàn)錯誤,通信中止,等待上位機重新發(fā)起通信。

      需要說明以下幾點:

      其一、備系模塊(上位機模塊M2、下位機模塊M4)正常接收CAN總線上的數(shù)據(jù),但不允許向CAN總線上發(fā)送數(shù)據(jù),即處在“只收不發(fā)”的狀態(tài)。備系模塊接收到數(shù)據(jù)后,與其相應的主系模塊同步運行,當主系模塊出現(xiàn)故障時,備系模塊可以無擾切換為主系模塊,保證系統(tǒng)可靠運行。

      其二、兩條CAN總線以相同的方法進行數(shù)據(jù)傳輸,形成冗余結(jié)構(gòu),兩條CAN總線只要有一條通信正常,系統(tǒng)就能正常工作。上述步驟S2中,M1-CPU1將自己需要發(fā)送的數(shù)據(jù)Data1_1通過CAN總線接口M1-CPU1-CAN1發(fā)送到CAN-BUS1上,同時也通過CAN總線接口M1-CPU1-CAN2發(fā)送到CAN-BUS2上,從而M1-CPU2也可以通過CAN總線接口M1-CPU2-CAN2接收數(shù)據(jù),M3-CPU1也可以通過CAN總線接口M3-CPU1-CAN2接收數(shù)據(jù),M3-CPU2也可以通過CAN總線接口M3-CPU2-CAN2接收數(shù)據(jù);上述步驟S4中的情況與此相同。

      其三、當下位機根據(jù)上位機下發(fā)的命令完成規(guī)定任務后,向上位機應答,下位機向上位機發(fā)送數(shù)據(jù)和消息與上位機向下位機發(fā)送數(shù)據(jù)和命令,兩者的通信方向相反,方法相同。

      其四、CAN總線上的各個模塊,除了自身發(fā)送之外,所有其他的動作,都是由接收事件驅(qū)動的。每個CAN接口保持對總線的監(jiān)聽,當接收到數(shù)據(jù)時,調(diào)用相應的接收中斷處理函數(shù)。同一個CPU上的兩個CAN接口的CAN接收中斷處理函數(shù)在流程上是一致的。因為CAN總線協(xié)議取消了地址編碼,而在程序中,需要明確每條CAN總線報文來自哪個模塊,在編碼設計中規(guī)定了專門的地址碼段。

      在CAN總線上,一個合法的數(shù)據(jù)包必須由兩個數(shù)據(jù)Data1_1和Data1_2組成,Data1_1由發(fā)送端的CPU1發(fā)出,Data1_2由發(fā)送端的CPU2發(fā)出,接收端接收到兩個數(shù)據(jù)并比較一致之后才能進行后續(xù)處理。數(shù)據(jù)包內(nèi)包含地址碼、時間戳、序列號、數(shù)據(jù)區(qū)、CRC校驗碼等內(nèi)容。其中,地址碼標明數(shù)據(jù)來源于總線上的模塊位置,時間戳標明數(shù)據(jù)發(fā)送的時間點,序列號標明數(shù)據(jù)發(fā)送的流水號,數(shù)據(jù)區(qū)存放后續(xù)處理中需要使用的命令或信息,CRC校驗碼標明數(shù)據(jù)的CRC校驗結(jié)果。

      其五、每個模塊的CPU1和CPU2都需要檢驗各自接收到的數(shù)據(jù)是否為有效數(shù)據(jù)。設CAN-BUS1為當前通信總線,CAN-BUS2為備用通信總線,判斷接收到的數(shù)據(jù)是否來自于CAN-BUS1上的有效模塊,即當前正在占用通信時間片的模塊,對無效模塊傳來的數(shù)據(jù)一律丟棄不用;如果該數(shù)據(jù)來自有效模塊的CPU1,將該數(shù)據(jù)保存至存儲區(qū),記錄該數(shù)據(jù)到達的時間點,啟動對應的定時器,如果在該定時器規(guī)定的時間內(nèi),收到來自該有效模塊CPU2的數(shù)據(jù),則將該數(shù)據(jù)判定為有效數(shù)據(jù);如果超時沒有收到來自該有效模塊CPU2的數(shù)據(jù),則刪除保存的數(shù)據(jù),并發(fā)送報警信息,標識CAN-BUS1總線上通信出錯,將CAN-BUS2切換為當前工作總線;如果該數(shù)據(jù)來自有效模塊的CPU2,則查找存儲區(qū)中是否包含該有效模塊CPU1傳來的數(shù)據(jù),如果有,則將該數(shù)據(jù)判定為有效數(shù)據(jù),如果沒有,則將該數(shù)據(jù)判定為無效數(shù)據(jù)。

      以上所述實施方式僅僅是對本實用新型的優(yōu)選實施方式進行描述,并非對本實用新型的范圍進行限定,在不脫離本實用新型設計精神的前提下,本領域普通技術人員對本實用新型的技術方案作出的各種變形和改進,均應落入本實用新型的權(quán)利要求書確定的保護范圍內(nèi)。

      4 實施實例

      下面,結(jié)合圖1和具體實例進一步說明本方案。

      一種冗余的高安全性CAN總線通信系統(tǒng),包括上位機1、下位機2和CAN總線3,其中上位機1一個,下位機2若干個,CAN總線3兩條。每個上位機1和下位機2均由兩個互為熱備的模塊構(gòu)成,兩條CAN總線3構(gòu)成熱備。每個模塊集成兩個相互獨立的運算通道,每個運算通道以一個高性能微處理器CPU為核心,同步運算并實現(xiàn)二取二表決;每個運算通道集成兩個CAN總線接口分別一一對應連接到兩條CAN 總線3上。CAN總線通信采用主從模式,即通信只能由主機發(fā)起,從機應答;在通信流程中,上位機1為主機,下位機2為從機,主機周期地逐個同所有從機交互數(shù)據(jù),其與每個從機的通信占用一定的時間片,在該時間片內(nèi)不允許其它從機獲得總線的發(fā)送權(quán),有效避免總線沖突;通信方法采用多重校驗和冗余收發(fā)技術,每個有效的數(shù)據(jù)包的發(fā)送和接收都是冗余的,并且在發(fā)送端和接收端設置多次校驗,確保高安全性。

      如圖1所示(作為示例,只選了一個下位機2進行說明,其它下位機2情況相同),上位機1具有兩個模塊M1和M2,互為熱備。如果兩個模塊均正常,則M1工作在主系狀態(tài)下,M2工作在備系狀態(tài)下;M1上集成兩個高性能微處理器CPU:M1-CPU1和M1-CPU2,M2上集成兩個高性能微處理器CPU:M2-CPU1和M2-CPU2。每個CPU都集成了兩個CAN總線接口,M1-CPU1集成了M1-CPU1-CAN1和M1-CPU1-CAN2,M1-CPU2集成了M1-CPU2-CAN1和M1-CPU2-CAN2,M2-CPU1集成了M2-CPU1-CAN1和M2-CPU1-CAN2,M2-CPU2集成了M2-CPU2-CAN1和M2-CPU2-CAN2。

      下位機2模塊的數(shù)量根據(jù)系統(tǒng)容量的大小而靈活變化,總共有2*N個,每兩個模塊形成一組冗余結(jié)構(gòu),互為熱備。以一個下位機2為例:模塊兩個:M3和M4,互為熱備,如果兩個模塊均正常,則M3工作在主系狀態(tài)下,M4工作在備系狀態(tài)下;M3上集成兩個高性能微處理器CPU:M3-CPU1和M3-CPU2,M4上集成兩個高性能微處理器CPU:M4-CPU1和M4-CPU2,每個CPU都集成了兩個CAN總線接口,M3-CPU1集成了M3-CPU1-CAN1和M3-CPU1-CAN2,M3-CPU2集成了M3-CPU2-CAN1和M3-CPU2-CAN2,M4-CPU1集成了M4-CPU1-CAN1和M4-CPU1-CAN2,M4-CPU2集成了M4-CPU2-CAN1和M4-CPU2-CAN2。

      冗余的兩條CAN總線3:CAN-BUS1和CAN-BUS2,CAN總線接口M1-CPU1-CAN1、M1-CPU2-CAN1、M2-CPU1-CAN1、M2-CPU2-CAN1、M3-CPU1-CAN1、M3-CPU2-CAN1、M4-CPU1-CAN1、M4-CPU2-CAN1連接CAN-BUS1;CAN總線接口M1-CPU1-CAN2、M1-CPU2-CAN2、M2-CPU1-CAN2、M2-CPU2-CAN2、M3-CPU1-CAN2、M3-CPU2-CAN2、M4-CPU1-CAN2、M4-CPU2-CAN2連接CAN-BUS2。

      5 結(jié)束語

      本文主要論述了一種新的基于二乘二取二架構(gòu)的高安全性CAN通信系統(tǒng)的設計方案,介紹了設計原理,并通過設計實例說明了該方案的可行性。該方案對提高系統(tǒng)安全性具有積極的意義。

      參考文獻:

      [1] 姜幼卿,左國華,陳勤學,張宜生.基于CAN總線的溫室自動控制系統(tǒng)的通信設計[J].儀表技術與傳感器,2005(4).

      [2] 饒運濤.現(xiàn)場總線CAN原理與應用技術[M].北京:北京航空航天大學出版社,2003.

      [3] 吳坎.基于SJA1000和PCA82C250的CAN總線接口設計[J].機械設計與制造,2010(7).

      [4] 朱華偉,伍愛蓮,楊如鋒,肖濤.適用于變電站的CAN現(xiàn)場總線通信適配卡的設計[J].電力系統(tǒng)及其自動化學報,2005(5).

      [5] 夏澤中,薛敏.CAN總線和基于CAN總線的高層協(xié)議CANopen[J].可編程控制器與工廠自動化,2005(2).

      [6] 魯也傳,陳永生,郭玉臣.基于通信的列車自動監(jiān)控系統(tǒng)平臺設計與實現(xiàn)[J].計算機應用,2009(S2).

      [7] 王成,唐濤.CBTC仿真系統(tǒng)中數(shù)據(jù)庫的設計與實現(xiàn)[J].計算機仿真,2007(9).

      [8] 王琰.基于通信的列車控制系統(tǒng)后備系統(tǒng)的探討[J].鐵道標準設計,2007(6).

      猜你喜歡
      冗余通信系統(tǒng)安全性
      新染料可提高電動汽車安全性
      某既有隔震建筑檢測與安全性鑒定
      基于電力線信道分析的調(diào)制解調(diào)方式選擇
      淺析計算機網(wǎng)絡與通信系統(tǒng)
      商情(2016年40期)2016-11-28 11:24:37
      單機容錯與雙機熱備份技術淺析
      基于html5及android平臺的幼兒接送系統(tǒng)
      城市燃氣SCADA系統(tǒng)的分析和設計
      核電站核島電氣隔離準則研究
      科技視界(2016年23期)2016-11-04 13:13:20
      數(shù)據(jù)中心供配電系統(tǒng)設計要點簡析
      淺敘國產(chǎn)存儲技術之發(fā)展
      威远县| 新晃| 博客| 承德市| 永仁县| 泰来县| 宁安市| 都江堰市| 淳安县| 犍为县| 乐陵市| 苏尼特右旗| 独山县| 涞水县| 手机| 永州市| 且末县| 抚远县| 余干县| 罗定市| 西吉县| 乡宁县| 太仓市| 南昌县| 安国市| 樟树市| 申扎县| 志丹县| 拉萨市| 蒙自县| 彭州市| 湘阴县| 德兴市| 德格县| 维西| 毕节市| 九龙坡区| 内黄县| 太原市| 衡山县| 庄河市|