[發(fā)明專利]基于vxworks操作系統(tǒng)的ARINC429通信冗余方法有效
| 申請?zhí)枺?/td> | 200910023264.8 | 申請日: | 2009-07-10 |
| 公開(公告)號: | CN101604270A | 公開(公告)日: | 2009-12-16 |
| 發(fā)明(設(shè)計)人: | 相征;苑峰;萬娟;湯書苑;劉校偉;齊佩漢 | 申請(專利權(quán))人: | 西安電子科技大學(xué) |
| 主分類號: | G06F11/16 | 分類號: | G06F11/16;G06F9/46 |
| 代理公司: | 陜西電子工業(yè)專利中心 | 代理人: | 王品華;朱紅星 |
| 地址: | 71007*** | 國省代碼: | 陜西;61 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 vxworks 操作系統(tǒng) arinc429 通信 冗余 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及到實時系統(tǒng)的通信技術(shù)領(lǐng)域,具體涉及了一種基于vxworks的ARINC429通信冗余方法。
背景技術(shù)
Vxworks操作系統(tǒng)是美國Winder?River公司于1983年設(shè)計開發(fā)的一種嵌入式實時操作系統(tǒng),系統(tǒng)在提供高效實時多任務(wù)的同時提供了良好的伸縮性,即系統(tǒng)的主要部件都可以按照應(yīng)用的要求進行增加或刪減。
ARINC429是一種航空航天專用串口通信總線協(xié)議。由于ARINC429本身傳輸信息的高速以及可靠性,它已作為一種通用的串行傳輸總線標準應(yīng)用于幾乎所有飛機的航電系統(tǒng)中。但飛機上各種環(huán)境因素,如抖動、高低溫、濕度以及來自其他設(shè)備的電磁干擾,都會降低ARINC429傳輸信息的可靠性,所以針對ARINC429的高效可靠通信變得十分重要,而冗余技術(shù)是提高通信系統(tǒng)可靠性的最有效的方法之一。
目前,通信系統(tǒng)中常采用的最簡單有效的一種冗余技術(shù)就是硬件冗余技術(shù),例如在《雙總線方式下的串口通信技術(shù)》一文中提到的“雙總線結(jié)構(gòu)”,是通過故障檢測設(shè)備來檢測故障,從而實現(xiàn)通信冗余,該方法存在以下技術(shù)瓶頸:(1)當(dāng)硬件檢測電路自身出現(xiàn)故障時,不能監(jiān)視主從通道的狀態(tài),也無法完成主從通道的自動切換功能;(2)由于需要設(shè)計硬件電路,通信系統(tǒng)的設(shè)計和實現(xiàn)復(fù)雜化了,引入了附加的不可靠的因素。
又如在《航空ARINC429總線通信的余度設(shè)計》一文中提到“信息余度的設(shè)計與實現(xiàn)”,是通過循環(huán)冗余校驗(CRC)實現(xiàn)的ARINC429通信冗余,該方法雖然克服了硬件冗余的缺點,但是編碼較為復(fù)雜,增加了鏈路的負荷。
另外實時系統(tǒng)的通信技術(shù)領(lǐng)域中實時性是一個重要的要求,上述提到的冗余方法都在一定程度上增加了系統(tǒng)的復(fù)雜度和設(shè)計的難度,從而必然會降低系統(tǒng)的實時性。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服上述已有冗余技術(shù)的種種缺陷,提供一種基于vxworks操作系統(tǒng)的ARINC429通信冗余方法,以降低硬件和編碼的復(fù)雜性,提高系統(tǒng)實時性。
為了達到上述目的,本發(fā)明的技術(shù)方案包括以下步驟:
(1)在上位機和CPU之間建立起兩條獨立通信的ARINC429通訊通道,進行周期為period的周期通信;任選一條通訊通道作為主通道A,且為默認的通信通道,選另外一條通道B作為備用通道;
(2)在操作系統(tǒng)vxworks的編程環(huán)境下調(diào)用庫函數(shù)taskSpawn()創(chuàng)建基于操作系統(tǒng)vxworks的周期為periodT的周期任務(wù)PCDeal,以接收發(fā)送和處理上位機數(shù)據(jù);創(chuàng)建第一環(huán)形緩沖區(qū)RingAId和第二環(huán)形緩沖區(qū)RingBId分別用來存放接收到主通道A和備用通道B的數(shù)據(jù);
(3)按如下步驟編寫一個通道選擇函數(shù)Choose429():
3a)在操作系統(tǒng)vxworks的編程環(huán)境下調(diào)用操作系統(tǒng)vxworks中對環(huán)形緩沖區(qū)的操作函數(shù)rngNBytes(),分別獲取環(huán)形緩沖區(qū)RingAId和RingBId中的字節(jié)數(shù);
3b)創(chuàng)建全局變量NA作為第一計數(shù)器,對同時發(fā)生的RingAId中字節(jié)數(shù)為0和RingBId中字節(jié)數(shù)不為0這種情況的次數(shù)計數(shù);創(chuàng)建全局變量NB作為第二計數(shù)器,對RingAId和RingBId中字節(jié)數(shù)都為0這種情況發(fā)生的次數(shù)計數(shù);若RingAId和RingBId中字節(jié)數(shù)都不為為0,則判斷RingAId中字節(jié)數(shù)是否大于RingAId中字節(jié)數(shù),如果是就采用備用通道B,否則采用主通道A;若同時發(fā)生RingAId中字節(jié)數(shù)不為0和RingBId中字節(jié)數(shù)為0這種情況,則采用主通道A;
3c)選擇一個門限N,進行異常檢測,若第一計數(shù)器NA的值大于這個門限,則判定主通道A異常,切換為備用通道B,否則跳回步驟3a),完成函數(shù)Choose429()的編寫;若第二計數(shù)器NB的值大于這個門限,則判定兩個通道都異常,CPU不接收數(shù)據(jù),進入安全工作模式,否則跳回步驟3a),完成函數(shù)Choose429()的編寫。
(4)按如下步驟執(zhí)行由步驟(2)中創(chuàng)建的任務(wù)PCDeal:
4a)在每次接收數(shù)據(jù)前先調(diào)用步驟(3)中的通道選擇函數(shù)Choose429()選擇通道;
4b)調(diào)用操作系統(tǒng)vxworks中對環(huán)形緩沖區(qū)的操作庫函數(shù)rngBufGet(),讀取該通道環(huán)形緩沖區(qū)的數(shù)據(jù),以完成對數(shù)據(jù)的接收。
在步驟(1)中,主通道A和備用通道B的工作時序和傳輸數(shù)據(jù)完全相同,且B通道處于熱備份狀態(tài)。
在步驟(2)中,基于操作系統(tǒng)vxworks的任務(wù)PCDeal是通過查詢的方式來接收上位機數(shù)據(jù)的周期任務(wù),可以根據(jù)實時性要求來改變該任務(wù)的周期periodT。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于西安電子科技大學(xué),未經(jīng)西安電子科技大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200910023264.8/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- ARINC429總線信號編解碼電路
- 一種ARINC429板卡數(shù)據(jù)輸入輸出方法
- 基于以太網(wǎng)的ARINC429總線數(shù)字仿真通信方法
- 基于狀態(tài)機的ARINC429編解碼邏輯的實現(xiàn)方法
- 一種面向ICD的ARINC429總線信號仿真測試組件
- 一種Arinc429通信系統(tǒng)可靠性改進系統(tǒng)及方法
- 一種Arinc429通信芯片自動測試系統(tǒng)及測試方法
- 一種Arinc429通信系統(tǒng)自檢系統(tǒng)和自檢方法
- 遠程數(shù)據(jù)集中器
- 一種基于FPGA支持Label號篩選的ARINC429總線模塊及其數(shù)據(jù)傳輸方法





