亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        艦船綜合導航模擬器1553B總線控制器軟件開發(fā)

        2012-07-04 02:46:10王程崢李文魁宋衛(wèi)紅黎海雪
        船電技術 2012年5期
        關鍵詞:板卡實時性模擬器

        王程崢 李文魁 宋衛(wèi)紅 黎海雪

        (1. 海軍工程大學電氣與信息工程學院,武漢 430033;2. 92823部隊三中隊,三亞 572021;3. 92853部隊,遼寧 興城 125106)

        0 引言

        艦船綜合導航系統(tǒng)作為導航系統(tǒng)的核心,對來自各種導航傳感器的導航信息進行處理,并向操舵系統(tǒng)、指控系統(tǒng)等外部用戶發(fā)送。為滿足岸基條件下某型艦船操舵系統(tǒng)維修調(diào)試的需要,開發(fā)了艦船綜合導航模擬器,用于模擬艦船操縱運動時綜合導航系統(tǒng)輸出的艦艇航向、航速、縱橫傾等導航信息,并通過1553B總線向操舵系統(tǒng)發(fā)送。1553B采用一種串行、異步和半雙工式總線結構[1],具有高可靠性、高實時性、高效率、抗干擾能力強等特點。

        本文就 Windows環(huán)境下如何使用 C++Builder編譯平臺實現(xiàn) 1553B總線控制器通信的方法進行了研究,同時在綜合導航系統(tǒng)模擬器設計中進行了成功應用。

        1 1553B總線控制器軟件設計方法

        1553B總線由傳輸介質、總線控制器(BC)、遠程終端(RT)和總線監(jiān)視(BM)器等四部分組成。BC的作用是組織信息傳輸,完成數(shù)據(jù)字的收/發(fā)、字/消息的處理[2]。針對總線上遠程終端的數(shù)量和通信復雜程度,BC發(fā)送消息的設計方法主要有兩種[3]:

        (1)簡單方式?;舅枷霝镽T回復消息的控制權完全在 BC。實現(xiàn)方法為:對周期消息采用固定周期來定時傳輸,對事件消息采用命令插入的方式。當BC要求RT 返回數(shù)據(jù)時,BC可向RT的子地址下達命令字,并通過采用查詢方式來獲取數(shù)據(jù)。該方法編程簡單,適用于總線結構單一、通信數(shù)據(jù)量較少的情況,對多個 RT總線,通信實時性相對下降。

        (2)矢量字方式?;舅枷胧菍⒒貜拖⒌闹鲃訖嘟贿€給RT。實現(xiàn)方法為:RT接收BC命令完成相應動作,將數(shù)據(jù)字寫到相應子地址緩存中,然后按照協(xié)議構造矢量字,把矢量字發(fā)送到RT 的0/31 號子地址BUF中。BC在發(fā)送完一次性消息后,可向0/31子地址發(fā)命令字從而讀出其中存放的矢量字,根據(jù)協(xié)議解析矢量字得到相應的子地址,并向該子地址發(fā)送命令從而得到 RT數(shù)據(jù)。該方法適合多RT的復雜通信,編程靈活,通訊數(shù)據(jù)量小。

        2 綜合導航信號模擬器BC設計

        2.1 系統(tǒng)組成

        如圖1所示,綜合導航模擬器接收操舵系統(tǒng)輸出的當前舵角,按照艦艇運動模型,實時計算出艦船運動參數(shù)。并采用2個1553B通道無應答地定周期連續(xù)向操舵系統(tǒng)發(fā)送艦船的航向、航速、縱傾、橫傾等導航參數(shù)。

        2.2 硬件及板卡驅動函數(shù)

        硬件平臺采用研華工控機。1553B通信卡采用北京神州飛航開發(fā)的基于 PCI接口的AEC1553-PCI- SBC31RT-S2型1553B通信卡。該1553B卡采用 FPGA設計,可分時工作在 BC、RT、BM模式下,雙冗余通道數(shù)據(jù)發(fā)送和接收,支持大容量的數(shù)據(jù)存儲。

        圖1 艦艇綜合導航模擬器的原理框圖

        該1553B板卡提供了豐富的驅動函數(shù),其中與BC通信相關的函數(shù)約有20多個,常用BC函數(shù)[4]見表 1。

        表1 常用BC通信函數(shù)列表

        隨卡附帶的驅動函數(shù)庫文件為基于 Visual C++的coff格式的M1553CSC.lib。若采用其它軟件進行開發(fā),則需要對庫函數(shù)進行格式轉換。如采用C++Builder,需用coff2omf命令轉換為omf格式的庫文件。相應命令為:coff2omf M1553CSC.lib M1553CSCB.lib。

        2.3 軟件設計

        在 Windows XP操作系統(tǒng)下,我們采用C++Builder開發(fā)軟件進行綜合導航信號模擬器總線控制器軟件設計。C++ Builder是由Borland公司推出的一款快速開發(fā)Win32應用程序的可視化開發(fā)工具,利用它可以實現(xiàn)高性能的執(zhí)行效率和出色的底層控制。

        對綜合導航模擬器,總線結構較為簡單,因此采用簡單方式進行 BC設計。程序流程如圖 2所示。主要程序代碼說明如下:

        圖2 BC通信軟件流程圖

        (1)板卡初始化

        M1553_Open(&hCard, CardId);

        打開板卡。hCard為板卡句柄,CardId為板卡編號,按板卡所在插槽離CPU的距離由近到遠依次編號0、1…、7。這里取為0、1。

        M1553_WorkMode(hCard, ModeSel);

        設置工作模式。工作模式 ModeSel可取為0(BC)、1(RT)、2(BM),這里取 0。

        M1553_AddTimeTag(hCard,true);

        開啟時間標簽。用于觀察消息周期和間隔。分辨率 1 μs。

        M1553_SetIntMaskReg(hCard,&IntMask);

        設置中斷屏蔽寄存器。由于實時性要求較高,采用單消息觸發(fā)一次中斷,將中斷屏蔽寄存器結構體 IntMask中的 BC_MsgOver(BC消息結束中斷使能位)和BC_STOP (BC消息出錯停止中斷使能位)使能。

        (2)數(shù)據(jù)加載

        SMsg.MsgBlock.Datablk[0]=StrToFloat(Form 1->Edit1->Text);

        將待發(fā)送數(shù)據(jù)字存放在BC消息描述結構體成員Datablk[32]中。

        BC_WriteDataBlock(hCard,MsgId,WordCnt,SMsg.MsgBlock.Datablk);

        修改運行中的BC發(fā)送的數(shù)據(jù)字,MsgId為消息 ID號,WordCnt為寫入數(shù)據(jù)字個數(shù)(取值0~32)。

        由于實時性要求較高,而C++Builder自帶計時器的定時精度最高只能達到55ms[5],故采用Microsoft Win32 API 提供的一項多媒體定時器服務來實現(xiàn)數(shù)據(jù)定時加載[6],定時精度最高能達到1 ms[7]。程序需包含定時器函數(shù)頭文件"mmsystem.h",實現(xiàn)方法如下:

        ①設定定時器分辨率

        建立最小定時器分辨率。uPeriod為最小分辨率,由設定的最小分辨率與計算機的硬件配置決定。

        使定時器定時精度回到系統(tǒng)的默認值。

        ② 設置定時事件

        uDelay 為事件周期,這里與BC發(fā)送消息的周期一致;uResolution 為延時分辨率;LpTimeProc 指向一個自定義的回調(diào)函數(shù),該函數(shù)用來設置定時事件,調(diào)用時應指定對應的事件標識符,并提供用戶數(shù)據(jù),在中斷時間內(nèi)被訪問;DwUser 存放用戶提供的回調(diào)數(shù)據(jù);FuEvent 為事件類型,TIME_ONESHOT為一次性事件,TIME_PERIODIC為周期性事件。

        調(diào)用任務完成后取消定時器回調(diào)事件,及時出讓珍貴的CPU 資源。

        (3)消息配置與發(fā)送

        SMsg.CtlWord.ChanSel=1;//消息發(fā)送時的通道選擇 0:Channel B 1:Channel A

        BC_WriteMsg(hCard, MsgId, &SMsg); //消息發(fā)送

        BC_AddEndOfListFlag(hCard, MsgId+1); //添加消息鏈表結束符

        (4)消息讀取

        數(shù)據(jù)的讀取顯示采用C++Builder自帶的計時器Timer定時觸發(fā)。

        2.4 系統(tǒng)調(diào)試

        硬件方面,傳輸距離小于30 cm時,采用短截線實現(xiàn)總線和終端設備的直接耦合;否則,采用變壓器耦合[8,9],連接時需要注意耦合器的位置。在總線兩端匹配電阻,消除信號反射。調(diào)試過程中若發(fā)現(xiàn)問題應首先判定是否為硬件問題,發(fā)送已知數(shù)據(jù),將板卡輸出腳接示波器上觀察電平,若正確則基本排除硬件問題。需要注意的是1553B總線上的消息是調(diào)制成雙極性碼的曼徹斯特碼[10]。

        圖3 艦艇綜合導航模擬器BC運行界面圖

        軟件方面,采用隨卡附帶的應用程序作為RT接收數(shù)據(jù)。調(diào)試時應遵循先易后難原則。先嘗試簡單通信模式,如 BC發(fā)送一個數(shù)據(jù)字測試 RT能否正確接收,RT返回的狀態(tài)字是否正常等,成功后再嘗試較復雜的通信模式。軟件運行界面如圖3所示。

        3 總結

        本文討論了1553B總線控制器軟件設計的方法,根據(jù)艦船綜合導航模擬器的實際需求,詳細介紹了 Windows環(huán)境下基于 C++Builder如何實現(xiàn)數(shù)據(jù)發(fā)送的具體方法及系統(tǒng)調(diào)試中的注意事項。試驗表明該系統(tǒng)運行可靠,達到了預定要求。

        [1]楊武志, 李敏勇. 基于艦船 1553B總線系統(tǒng)監(jiān)控測試軟件的設計[J].艦船電子工程, 2009, 29(1):190-192.

        [2]李志剛. 1553B總線測試系統(tǒng)的設計與實現(xiàn)[D]. 西安西北工業(yè)大學, 2005.

        [3]丁明亮, 魏志剛. 1553B總線遠程終端仿真軟件設計[J]. 計量與測試技術, 2008, 35(1): 43-47.

        [4]AEC1553-PCI-SBC31RT/S2 用戶手冊[Z]. 北京: 北京神州飛航科技有限責任公司, 2011.

        [5]Mark Nelson. 串行通信開發(fā)指南[M]. 北京: 中國水利水電出版社, 2001: 43.

        [6]Microsoft 公司. MICROSOFT WIN32 程序員參考大全(一)[M]. 北京: 電子科技出版社, 1994: 90-95.

        [7]李文魁, 陳永冰, 周永余等. 多任務實時系統(tǒng)提高實時性的方法及其在導航綜合信號源系統(tǒng)中的應用[J]. 中國慣性技術學報, 2003, 11(4): 11-15

        [8]GJB 289A-1997, 數(shù)字式時分制指令/響應型多路傳輸數(shù)據(jù)總線[s]. 中國軍用標準, 1997.

        [9]MIL-STD-1553,飛機內(nèi)部時分制指令/響應式多路傳輸數(shù)據(jù)總線[s]. 美國軍用標準, 1978.

        [10]武鵬, 畢君懿. 1553B總線中曼徹斯特編碼器的設計[J]. 現(xiàn)代電子技術, 2011, 34(4): 61-64.

        猜你喜歡
        板卡實時性模擬器
        了不起的安檢模擬器
        基于規(guī)則實時性的端云動態(tài)分配方法研究
        高技術通訊(2021年3期)2021-06-09 06:57:24
        盲盒模擬器
        劃船模擬器
        基于PCI9054的多總線通信板卡的研制
        測控技術(2018年3期)2018-11-25 09:45:46
        基于FPGA的多通道模擬量采集/輸出PCI板卡的研制
        測控技術(2018年12期)2018-11-25 09:37:42
        基于虛擬局域網(wǎng)的智能變電站通信網(wǎng)絡實時性仿真
        航空電子AFDX與AVB傳輸實時性抗干擾對比
        一種基于光纖數(shù)據(jù)傳輸?shù)亩喟蹇ㄜ浖绦驘龑懠夹g
        動態(tài)飛行模擬器及其發(fā)展概述
        国产亚洲精品综合99久久 | 亚洲综合另类小说色区| 日韩欧美在线综合网另类| 男男受被攻做哭娇喘声视频| 高潮毛片无遮挡高清免费| 亚洲日本在线va中文字幕| 手机免费日韩中文字幕| 亚洲偷自拍国综合第一页国模| 国产三级精品和三级男人| 午夜影视免费| 无码人妻人妻经典| 理论片午午伦夜理片影院| 亚洲中文字幕乱码| 久久久久久久综合日本| 亚洲国产一区二区视频| 国产精品对白一区二区三区| 亚洲无码在线播放| 欧洲日本一线二线三线区本庄铃| 亚洲一区综合精品狠狠爱| 亚洲精品乱码久久久久久按摩高清| 日韩精品高清不卡一区二区三区 | 香蕉人人超人人超碰超国产| 国产午夜无码视频免费网站| 91综合久久婷婷久久| 国产91成人自拍视频| av在线免费观看网站,| 久久性爱视频| 女人下面毛多水多视频| 久久精品—区二区三区无码伊人色| 久久亚洲宅男天堂网址 | 欧美日韩性视频| 中文字幕这里都是精品| 日本免费视频| 亲子乱aⅴ一区二区三区下载| 日韩国产有码在线观看视频| 一本色道久久亚洲精品| 成人aaa片一区国产精品| 精品国产免费Av无码久久久| 亚洲av伊人久久综合性色| 在线观看日本一区二区三区四区| 婷婷射精av这里只有精品|