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

        ?

        基于ICD的機(jī)電總線數(shù)據(jù)服務(wù)軟件設(shè)計(jì)方法研究

        2023-12-29 00:00:00王昆陳福楊兵馮揚(yáng)帆
        機(jī)電信息 2023年7期

        摘要:為提高航空電子總線數(shù)據(jù)服務(wù)軟件的開(kāi)發(fā)效率和可靠性,采用基于ICD配置文件的通用化處理流程,每一條ICD配置信息對(duì)應(yīng)總線中的一個(gè)信號(hào),利用ICD配置文件轉(zhuǎn)換工具對(duì)系統(tǒng)ICD進(jìn)行預(yù)處理,設(shè)計(jì)了一種基于ICD的總線數(shù)據(jù)通用化處理方法,當(dāng)用戶ICD配置文件發(fā)生變更時(shí),只需修改相應(yīng)配置文件,無(wú)須改動(dòng)代碼,增強(qiáng)了軟件的適應(yīng)性和通用性。

        關(guān)鍵詞:總線;ICD配置;機(jī)電系統(tǒng);嵌入式軟件

        中圖分類號(hào):TP319" 文獻(xiàn)標(biāo)志碼:A" 文章編號(hào):1671-0797(2023)07-0049-03

        DOI:10.19514/j.cnki.cn32-1628/tm.2023.07.012

        0" " 引言

        機(jī)電綜合管理系統(tǒng)作為飛機(jī)的核心系統(tǒng)與飛機(jī)安全運(yùn)行密切相關(guān),其包含燃油系統(tǒng)、環(huán)控系統(tǒng)、液壓系統(tǒng)、供電系統(tǒng)、起落架系統(tǒng)、艙門(mén)系統(tǒng)、照明系統(tǒng)等公共設(shè)備[1]。機(jī)電綜合管理系統(tǒng)涉及總線類型、信號(hào)管理類型眾多,機(jī)載軟件對(duì)總線的訪問(wèn)十分頻繁,這將對(duì)硬件接口資源產(chǎn)生無(wú)序競(jìng)爭(zhēng),因此要求有統(tǒng)一的總線服務(wù)軟件來(lái)完成控制、告警、畫(huà)面頁(yè)信號(hào)的集成發(fā)送。

        總線數(shù)據(jù)服務(wù)軟件作為機(jī)電核心處理機(jī)上的總線通信大總管,統(tǒng)一負(fù)責(zé)外部消息的收發(fā),并向各個(gè)機(jī)電功能應(yīng)用分區(qū)提供信號(hào)輸入/輸出服務(wù)。以往的總線服務(wù)分區(qū)軟件設(shè)計(jì)采用的是基于消息內(nèi)容的處理模式,需為每條消息配置專用通信端口并編寫(xiě)發(fā)送和接收代碼,總線數(shù)據(jù)服務(wù)軟件代碼量高達(dá)數(shù)萬(wàn)行,同時(shí)軟件與系統(tǒng)ICD緊耦合,當(dāng)后期系統(tǒng)ICD發(fā)生變化,總線數(shù)據(jù)服務(wù)軟件也需要頻繁更新迭代,頻繁的軟件變更和聯(lián)試驗(yàn)證,對(duì)人力資源的耗費(fèi)很大,維護(hù)成本高[2]。

        針對(duì)總線數(shù)據(jù)服務(wù)軟件的重要性和復(fù)雜性,為了解決傳統(tǒng)總線服務(wù)分區(qū)軟件開(kāi)發(fā)和維護(hù)過(guò)程中出現(xiàn)的各種問(wèn)題,本文設(shè)計(jì)了基于ICD的機(jī)電總線數(shù)據(jù)服務(wù)軟件,根據(jù)通信分區(qū)的不同對(duì)配置表進(jìn)行邏輯劃分,提供為總線分區(qū)與同一分區(qū)通信消息自動(dòng)生成統(tǒng)一結(jié)構(gòu)體的功能,采用同一消息處理流程使軟件與系統(tǒng)ICD解耦,降低了軟件代碼規(guī)模,提高了總線數(shù)據(jù)服務(wù)軟件的可移植性與可維護(hù)性。

        1" " 系統(tǒng)ICD文件預(yù)處理

        接口控制文件(Interface Control Document,ICD)定義了飛機(jī)各系統(tǒng)之間交互的信號(hào)信息以及飛機(jī)各系統(tǒng)的控制、告警、顯示等信號(hào),是飛機(jī)設(shè)計(jì)文件的重要組成部分,用于存儲(chǔ)外部設(shè)備與飛機(jī)各子系統(tǒng)分區(qū)進(jìn)行交互的所有消息[3]。

        通常系統(tǒng)ICD文件都是文本或表格的形式,無(wú)法直接以編程語(yǔ)言的形式被開(kāi)發(fā)人員使用,因此需借助工具軟件將其轉(zhuǎn)化為頭文件,本文涉及兩個(gè)工具軟件:分區(qū)間通信結(jié)構(gòu)體生成工具與ICD結(jié)構(gòu)體數(shù)據(jù)生成工具。

        基于結(jié)構(gòu)化的思想,遍歷系統(tǒng)ICD文件通過(guò)分區(qū)間通信結(jié)構(gòu)體生成工具以分區(qū)為單位將其進(jìn)行邏輯劃分,并將總線分區(qū)與各子系統(tǒng)功能分區(qū)之間交互的所有消息根據(jù)消息源及目的的不同存儲(chǔ)在不同的結(jié)構(gòu)體中,而對(duì)于源和目的分區(qū)相同的所有消息則提取出該分區(qū)與總線分區(qū)收發(fā)的所有消息的有效屬性,取并集作為統(tǒng)一的結(jié)構(gòu)體的屬性集合[4]。

        總線分區(qū)發(fā)往功能分區(qū)的通信結(jié)構(gòu)體如下所示:

        typedef union

        {

        struct

        {

        int control_signal_1;

        int disp_signal_1;

        int warning_signal_1;

        ...

        int control_signal_n;

        }IO_Partition1;

        int buffer[n];

        }io_partition1;

        功能分區(qū)發(fā)往總線分區(qū)的通信結(jié)構(gòu)體如下所示:

        typedef union

        {

        struct

        {

        int control_signal_1;

        int disp_signal_1;

        int warning_signal_1;

        ...

        int control_signal_n;

        }Partition1_IO;

        int buffer[n];

        }partition1_io;

        將分區(qū)間通信結(jié)構(gòu)體與系統(tǒng)ICD作為ICD結(jié)構(gòu)體數(shù)組生成工具的輸入,將系統(tǒng)ICD轉(zhuǎn)換為頭文件形式,并在系統(tǒng)ICD的基礎(chǔ)上增加了兩個(gè)屬性:

        (1)消息接收、發(fā)送緩沖區(qū):用于存放對(duì)應(yīng)物理信號(hào)的值。

        (2)當(dāng)前物理信號(hào)在對(duì)應(yīng)分區(qū)間通信結(jié)構(gòu)體中的變量序號(hào):用于在總線分區(qū)與功能分區(qū)之間傳輸對(duì)應(yīng)的物理信號(hào)。

        系統(tǒng)ICD文件預(yù)處理流程如圖1所示。

        1394總線消息配置表在程序中的結(jié)構(gòu)體設(shè)計(jì)如下:

        typedef struct

        {

        char Pathway_name[20];//通道名稱

        char Message_source[20];//消息源

        char Message_destination[20];//消息目的

        int Message_ID;//消息ID

        int Message_length;//消息長(zhǎng)度

        int Message_refresh_period;//消息周期

        int Message_transmission_type;//消息類型

        int DataWord_offset;//數(shù)據(jù)字偏移量

        char BusSignal_codename[50];//信號(hào)名稱

        int BusSignal_width;//單個(gè)信息的占位寬度

        int BusSignal_lsb_position;//單個(gè)信息在其所在數(shù)據(jù)字中的起始位

        int Partition_Mask;//分區(qū)掩碼

        int * pBuffer;//指向接收/發(fā)送緩沖區(qū)

        int index;//變量在分區(qū)間通信結(jié)構(gòu)體中的順序

        }CfgTab;

        2" " 軟件架構(gòu)與設(shè)計(jì)

        總線分區(qū)和其他機(jī)電功能分區(qū)一樣都屬于應(yīng)用分區(qū),總線分區(qū)在機(jī)電核心處理機(jī)軟件架構(gòu)中所處位置如圖2所示。

        總線分區(qū)包含初始化模塊、通信模塊、數(shù)據(jù)處理模塊和健康管理模塊,如圖3所示。

        初始化模塊包含配置信息加載,并根據(jù)加載的配置信息完成初始化資源創(chuàng)建,如緩沖區(qū)創(chuàng)建、初始化數(shù)據(jù)分發(fā)表等;通信模塊包括基于總線消息配置信息的外部設(shè)備數(shù)據(jù)收發(fā)、基于機(jī)電功能分區(qū)數(shù)據(jù)發(fā)布訂閱信息的核心機(jī)內(nèi)部數(shù)據(jù)收發(fā),即接收外部設(shè)備數(shù)據(jù)并通過(guò)分區(qū)間通信端口將數(shù)據(jù)發(fā)送到機(jī)電功能分區(qū),或接收機(jī)電功能分區(qū)發(fā)來(lái)的數(shù)據(jù),并調(diào)用總線服務(wù)接口向外部總線發(fā)送數(shù)據(jù);分區(qū)間數(shù)據(jù)通信緩存管理使用操作系統(tǒng)的APEX接口和配置機(jī)制,總線分區(qū)與每個(gè)機(jī)電功能分區(qū)間分別配置4個(gè)端口,分別為隊(duì)列消息發(fā)送端口、隊(duì)列消息接收端口、采樣消息寫(xiě)端口、采樣消息讀端口,交互的數(shù)據(jù)為該功能分區(qū)訂閱和發(fā)布的數(shù)據(jù);數(shù)據(jù)處理模塊能夠支持基于機(jī)電功能分區(qū)數(shù)據(jù)發(fā)布訂閱信息的結(jié)構(gòu)化數(shù)據(jù)組包和解包,其對(duì)應(yīng)總線分區(qū)中的兩個(gè)周期進(jìn)程,即總線數(shù)據(jù)接收與總線數(shù)據(jù)發(fā)送;健康管理模塊包括平臺(tái)及應(yīng)用健康狀態(tài)監(jiān)測(cè)、故障記錄及上報(bào)。

        2.1" " 總線數(shù)據(jù)接收

        如圖4所示,總線數(shù)據(jù)接收任務(wù)包含三部分:接收總線數(shù)據(jù)、數(shù)據(jù)拆包、發(fā)送給應(yīng)用分區(qū)??偩€分區(qū)在每一個(gè)任務(wù)周期通過(guò)調(diào)用總線接收接口完成所有外部總線數(shù)據(jù)的接收,若總線數(shù)據(jù)校驗(yàn)正常則將總線數(shù)據(jù)保存至接收緩沖區(qū)中,若總線數(shù)據(jù)異常則進(jìn)入異常處理分支;通過(guò)遍歷總線接收ICD將接收緩沖區(qū)中的總線數(shù)據(jù)按對(duì)應(yīng)字對(duì)應(yīng)位拆包后賦值給分區(qū)間通信結(jié)構(gòu)體,最后調(diào)用分區(qū)間通信服務(wù)將已拆包的總線數(shù)據(jù)發(fā)送至各個(gè)應(yīng)用分區(qū)進(jìn)行邏輯處理,分發(fā)過(guò)程不解析數(shù)據(jù)包內(nèi)容,若分區(qū)間通信異常,則進(jìn)入異常處理分支上報(bào)異常。

        2.2" " 總線數(shù)據(jù)發(fā)送

        如圖5所示,總線數(shù)據(jù)發(fā)送任務(wù)包含三部分:接收應(yīng)用分區(qū)數(shù)據(jù)、數(shù)據(jù)組包、發(fā)送至外部總線??偩€分區(qū)在每一個(gè)任務(wù)周期首先通過(guò)調(diào)用分區(qū)間通信服務(wù)將經(jīng)應(yīng)用分區(qū)邏輯處理后的數(shù)據(jù)接收至分區(qū)間通信結(jié)構(gòu)體中,然后根據(jù)總線發(fā)送ICD將發(fā)送緩沖區(qū)的對(duì)應(yīng)位清零,再將屬于同一條消息的數(shù)據(jù)組包至對(duì)應(yīng)的發(fā)送緩沖區(qū)中,最后調(diào)用總線發(fā)送接口將發(fā)送緩沖區(qū)中的數(shù)據(jù)同意發(fā)送至外部總線。

        3" " 結(jié)語(yǔ)

        本文提出了一種基于總線配置文件的總線數(shù)據(jù)服務(wù)軟件的設(shè)計(jì)方法,非常有效地解決了機(jī)電綜合處理系統(tǒng)總線信號(hào)種類繁多、應(yīng)用程序設(shè)計(jì)困難的問(wèn)題。同時(shí)這樣的軟件架構(gòu)靈活性非常好,當(dāng)用戶的ICD文件需要變更時(shí),只需利用預(yù)處理工具軟件重新生成頭文件即可,而程序一般不需要做出改動(dòng),實(shí)現(xiàn)了軟件與系統(tǒng)ICD解耦,并且這種統(tǒng)一的設(shè)計(jì)使程序很少出現(xiàn)細(xì)節(jié)上的錯(cuò)誤,提高了軟件的可靠性。

        [參考文獻(xiàn)]

        [1] 李愛(ài)軍,王山虎,陳瑜,等.一種新型機(jī)電系統(tǒng)綜合管理計(jì)算機(jī)設(shè)計(jì)方法[J].測(cè)控技術(shù),2015,34(4):74-77.

        [2] 葉海明,周紹磊,王昆平.通用測(cè)試系統(tǒng)軟件平臺(tái)設(shè)計(jì)[J].國(guó)外電子測(cè)量技術(shù),2010,29(2):54-57.

        [3] 申鵬亮,翟正軍,周健.基于ICD的通用化航電測(cè)試軟件研究[J].測(cè)控技術(shù),2013,32(11):124-127.

        [4] 周健,肖鵬.基于總線配置文件的仿真測(cè)試軟件通用化設(shè)計(jì)[J].信息系統(tǒng)工程,2015(2):37-39.

        收稿日期:2022-12-30

        作者簡(jiǎn)介:王昆(1996—),男,陜西人,助理工程師,研究方向:嵌入式軟件。

        极品少妇被黑人白浆直流| 杨幂Av一区二区三区| 国产自拍伦理在线观看| 大陆老熟女自拍自偷露脸| 久久精品国产精品| 99久久久无码国产精品9| 永久免费毛片在线播放| 麻豆成人久久精品一区| 亚洲日韩中文字幕在线播放| а√天堂资源8在线官网在线| 久久精品亚洲精品毛片| 少妇人妻av一区二区三区| 亚洲色偷偷综合亚洲avyp| 真实单亲乱l仑对白视频| 亚洲黄色在线看| 国产一区二区三区再现| 国产精品偷窥熟女精品视频| 国产suv精品一区二区883| 国产熟女亚洲精品麻豆| 一区二区国产视频在线| 日本护士xxxxhd少妇| 麻豆一区二区99久久久久| 亚洲AV无码一区二区三区性色学| 亚洲精品中文字幕乱码3| 日产精品99久久久久久| 在线永久免费观看黄网站| 久9热免费精品视频在线观看| 国产视频一区2区三区| 亚洲人成网线在线播放va蜜芽| 色窝窝免费播放视频在线| 国产亚洲高清在线精品不卡| 亚洲自拍偷拍一区二区三区 | 亚洲国产成人精品激情| 国产免费网站在线观看不卡| 男女猛烈无遮挡免费视频| 国内精品九九久久久精品| 精品日本韩国一区二区三区| 一区二区三区国产在线视频| 人人爽人人爽人人爽人人片av| 国产精品国产三级在线高清观看 | 国产精品高清视亚洲乱码|