CN112559202A - 基于嵌入式实时操作系统的飞行器应用软件通讯方法 - Google Patents
基于嵌入式实时操作系统的飞行器应用软件通讯方法 Download PDFInfo
- Publication number
- CN112559202A CN112559202A CN202011421810.6A CN202011421810A CN112559202A CN 112559202 A CN112559202 A CN 112559202A CN 202011421810 A CN202011421810 A CN 202011421810A CN 112559202 A CN112559202 A CN 112559202A
- Authority
- CN
- China
- Prior art keywords
- software
- message queue
- interface
- operating system
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/547—Messaging middleware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Abstract
本发明公开一种基于嵌入式实时操作系统的飞行器应用软件通讯方法,接口软件对外设接口统筹管理,分别采用周期性或阻塞的方式以线程的方式接口的读写操作,通过命名消息队列与一个或多个功能软件进行信息交互,功能软件间同样通过命名消息队列进行信息交互。此外,对命名消息队列的打开与创建、名称、属性、容量、传输的信息格式等统一约束,实现集成后各软件的输入输出信息流的实时性与稳定性。本发明已在某飞行器中应用并通过了飞行试验验证,在飞行器综合电子集成架构下,解决了多个功能软件对同一外设接口的访问冲突问题,为集成后的软件间通讯提供了实时可靠的通讯方式,从而保障了综合电子软件集成的稳定与可靠。
Description
技术领域
本发明属于软件通讯技术领域,具体涉及以嵌入式实时操作系统为基础平台,在应用软件间建立信息交互的通讯方法。
背景技术
在设备综合化、智能化和体系化的发展趋势下,综合电子系统将所有电子设备作为一个整体考虑,形成多系统、多环境、多任务和多资源构成的相互关联、支持、集成和制约的复杂系统。基于微内核的嵌入式实时操作系统,向下承接同一硬件平台,向上支撑多种应用需求,实现对多任务、多应用软件的统一集成、管理和调度,构建综合电子系统软件处理平台,实现对飞行器领域中飞行控制、能源管理、任务管理、目标探测、导航、通信等综合信息功能的管理。按照传统模式开发功能集成后的软件,所有功能均在一个循环逻辑中完成,大大增加了软件的复杂度和协调难度,降低了软件的可靠性。而基于嵌入式实时操作系统可将各相对独立功能需求划分为不同软件配置项,由嵌入式实时操作系统承担资源维护和处理、应用软件调度等职责,以降低应用软件的设计复杂度,保障应用软件的可靠性。
集成后的各功能软件运行于同一目标环境中,具有与外设接口通讯、各软件间通讯的需求,同时保留对运行实时性、数据流稳定可靠的需求,特别是如何从通讯的角度保证集成后各软件运行的稳定性和功能执行正确性,是亟待解决的。
因此,需要一种基于嵌入式实时操作系统的飞行器应用软件通讯模型,以解决上述问题,满足综合电子集成需求。
发明内容
本发明提供一种基于嵌入式实时操作系统的飞行器应用软件通讯方法,可实现综合电子集成后,各功能软件运行于同一操作系统平台时,对外设接口的访问统筹管理,对各功能软件间的通讯交互管理,保障各功能软件通讯的实时性与稳定性,以及软件集成后系统的可靠性。
本发明方法由一个接口软件实现对所有外设接口的读写操作,其他功能软件分别与接口软件进行通讯,实现对应外设接口的数据获取与信息输出。
进一步地,接口软件采用周期性或阻塞的方式以线程的方式实现读操作,完成操作后通过命名消息队列分别至一或多个消息需求方;
使用命名消息队列阻塞等待,一或多个功能软件通过命名消息队列发送信息后,依次触发执行接口写操作。
进一步地,外设接口的读操作为非阻塞式,接口软件在同一周期性线程中实现,不同周期需求增加周期标志实现;接口外设接口的读操作为阻塞式,接口软件需单独在一个线程中实现,外部消息作为执行触发条件;外设接口的写操作为阻塞式,接口软件需单独在一个线程中实现,功能软件的输出作为执行触发条件。
进一步地,各功能软件通过阻塞或周期性尝试获取命名消息队列的方式,接收外设数据信息;结合自身状态,完成解算或定时通过命名消息队列向接口软件发送待输出信息,由接口软件操作相关接口输出。
进一步地,各功能软件间通过命名消息队列完成信息交互;数据发送方结合自身状态,完成解算或定时通过命名消息队列向数据需求方发送,数据需求方阻塞或周期性尝试获取消息队列信息。
进一步地,命名消息队列包括创建方和使用方、消息队列名称、容量大小、单条消息队列数据长度、消息队列传输信息数据格式。
进一步地,嵌入式实时操作系统采用海鹰翼辉操作系统ARM版,外设接口包括1553B、422、SRIO。
本发明在飞行器综合电子集成架构下,在同一海鹰翼辉操作系统(ARM版)平台下建立多个应用软件集成后的输入输出信息交互。根据1553B、422、SRIO等外设接口在海鹰翼辉操作系统上的操作规则,接口软件对外设接口统筹管理,分别采用周期性或阻塞的方式以线程的方式接口的读写操作,通过命名消息队列与一个或多个功能软件进行信息交互,功能软件间同样通过命名消息队列进行信息交互。此外,对命名消息队列的打开与创建、名称、属性、容量、传输的信息格式等统一约束,实现集成后各软件的输入输出信息流的实时性与稳定性。本发明已在某飞行器中应用并通过了飞行试验验证,在飞行器综合电子集成架构下,即在海鹰翼辉操作系统构造的及时运行平台下,解决了多个功能软件对同一外设接口的访问冲突问题,为集成后的软件间通讯提供了实时可靠的通讯方式,从而保障了综合电子软件集成的稳定与可靠。
附图说明
图1为本发明软件层次图;
图2为本发明外设统筹管理与信息交互模型图;
图3为本发明功能软件间的通讯模型图;
图4为具体实施例外设统筹管理与信息交互模型图;
图5为具体实施例功能软件间的通讯模型图。
具体实施方式
下面结合附图对本发明作进一步详细说明。
本发明飞行器应用软件通讯方法基于嵌入式实时操作系统,用于建立多个功能软件集成后的输入输出信息交互。作为一个具体实施例,下面以海鹰翼辉操作系统ARM版为例进行说明。
如图1所示,本发明由一个接口软件实现对所有外设接口的读写操作,其他功能软件分别与接口软件进行通讯,实现对应外设接口的数据获取与信息输出。
如图2所示,接口软件包含对1553B、422、SRIO等综合电子硬件产品常用的接口操作,并根据相关接口在海鹰翼辉操作的操作规则,分别采用阻塞或非阻塞的方式以线程的方式实现读操作,完成操作后通过命名消息队列分别至一或多个消息需求方;分别使用命名消息队列阻塞等待,一或多个功能软件通过命名消息队列发送信息后,依次触发执行接口写操作。
外设接口的读操作为非阻塞式,可在同一周期性线程中实现,不同周期需求增加周期标志实现;外设接口的读操作为阻塞式,需单独在一个线程中实现,外部消息作为执行触发条件;外设接口的写操作为阻塞式,需单独在一个线程中实现,功能软件的输出作为执行触发条件;
各功能软件通过阻塞或周期性尝试获取命名消息队列的方式,接收外设数据信息;结合自身状态,完成解算或定时通过命名消息队列向接口软件发送待输出信息,由接口软件操作相关接口输出,见图3;
各功能软件间通过命名消息队列完成信息交互;数据发送方结合自身状态,完成解算或定时通过命名消息队列向数据需求方发送,数据需求方阻塞或周期性尝试获取消息队列信息;
命名消息队列需要明确创建方和使用方、消息队列名称、容量大小、单条消息队列数据长度、消息队列传输信息数据格式;其中,消息队列传输信息数据格式约束为:
本发明所针对的基于嵌入式实时操作系统的综控软件,运行平台为赛灵思公司Zynq-7000系列Cortex-A9处理器,操作系统为海鹰操作系统。
如图4所示,FMM对外接口操作由R1/KD-XB统一处理,R2/KD-XB和R3/KD-XB的输入输出操作均通过R1/KD-XB最终实现,即R1/KD-XB主要功能之一便是为纯算法类的R2/KD-XB和R3/KD-XB提供及时、稳定的信息交互服务。
硬件资源类型 | 使用方 |
4M1553B | R1/KD-XB |
422 | R1/KD-XB |
SRIO(与PNT) | R1/KD-XB |
SRIO(与OPM) | R1/KD-XB |
如图5所示,R2/KD-XB和R3/KD-XB间无需直接信息交互,R1/KD-XB与R2/KD-XB、R3/KD-XB间使用命名消息队列,实现信息交互。通讯方式约定见下表:
模块内部各软件间的交互关系表
按照上述方法实现R1/KD-XB软件将与FMM相关的所有外设进行了统一维护,对于R2/KD-XB和R3/KD-XB来讲,所需输入输出均通过R1/KD-XB,模块内部各软件间的交互关系如上表所示。R1/KD-XB收到外设相关信息后,通过操作系统所提供的通讯资源,按照周期/非周期的方式,发送至R2/KD-XB、R3/KD-XB;R2/KD-XB、R3/KD-XB算法解算后的信息输出则通过操作系统所提供的通讯资源,按照周期/非周期的方式,发送至R1/KD-XB,从而实现综合电子集成后的多软件运行的通讯实时性和稳定性。
上述具体实施方式仅限于解释和说明本发明的技术方案,但并不能构成对权利要求保护范围的限定。本领域技术人员应当清楚,在本发明的技术方案的基础上做任何简单的变形或替换而得到的新的技术方案,均落入本发明的保护范围内。
Claims (7)
1.基于嵌入式实时操作系统的飞行器应用软件通讯方法,其特征在于,由一个接口软件实现对所有外设接口的读写操作,其他功能软件分别与接口软件进行通讯,实现对应外设接口的数据获取与信息输出。
2.根据权利要求1所述的一种基于嵌入式实时操作系统的飞行器应用软件通讯方法,其特征在于,接口软件采用周期性或阻塞的方式以线程的方式实现读操作,完成操作后通过命名消息队列分别至一或多个消息需求方;
使用命名消息队列阻塞等待,一或多个功能软件通过命名消息队列发送信息后,依次触发执行接口写操作。
3.根据权利要求2所述的基于嵌入式实时操作系统的飞行器应用软件通讯方法,其特征在于,外设接口的读操作为非阻塞式,接口软件在同一周期性线程中实现,不同周期需求增加周期标志实现;接口外设接口的读操作为阻塞式,接口软件需单独在一个线程中实现,外部消息作为执行触发条件;外设接口的写操作为阻塞式,接口软件需单独在一个线程中实现,功能软件的输出作为执行触发条件。
4.根据权利要求1所述的基于嵌入式实时操作系统的飞行器应用软件通讯方法,其特征在于,各功能软件通过阻塞或周期性尝试获取命名消息队列的方式,接收外设数据信息;结合自身状态,完成解算或定时通过命名消息队列向接口软件发送待输出信息,由接口软件操作相关接口输出。
5.根据权利要求1所述的基于嵌入式实时操作系统的飞行器应用软件通讯方法,其特征在于,各功能软件间通过命名消息队列完成信息交互;数据发送方结合自身状态,完成解算或定时通过命名消息队列向数据需求方发送,数据需求方阻塞或周期性尝试获取消息队列信息。
6.根据权利要求1-5中任一项所述的基于嵌入式实时操作系统的飞行器应用软件通讯方法,其特征在于,命名消息队列包括创建方和使用方、消息队列名称、容量大小、单条消息队列数据长度、消息队列传输信息数据格式。
7.根据权利要求1-5中任一项所述的基于嵌入式实时操作系统的飞行器应用软件通讯方法,其特征在于,嵌入式实时操作系统采用海鹰翼辉操作系统ARM版,外设接口包括1553B、422、SRIO。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011421810.6A CN112559202A (zh) | 2020-12-08 | 2020-12-08 | 基于嵌入式实时操作系统的飞行器应用软件通讯方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011421810.6A CN112559202A (zh) | 2020-12-08 | 2020-12-08 | 基于嵌入式实时操作系统的飞行器应用软件通讯方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112559202A true CN112559202A (zh) | 2021-03-26 |
Family
ID=75059404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011421810.6A Pending CN112559202A (zh) | 2020-12-08 | 2020-12-08 | 基于嵌入式实时操作系统的飞行器应用软件通讯方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112559202A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114115352A (zh) * | 2021-12-09 | 2022-03-01 | 北京机电工程研究所 | 一种无人飞行器飞行控制方法、系统及无人飞行器 |
CN116522323A (zh) * | 2023-03-17 | 2023-08-01 | 哈尔滨工业大学 | 一种基于命名空间的容器消息队列读写管理方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102005057545A1 (de) * | 2005-12-01 | 2007-06-21 | Siemens Ag | Vorrichtung zum Betrieb von Softwareprogrammen |
CN107431726A (zh) * | 2015-02-20 | 2017-12-01 | 康维达无线有限责任公司 | 消息总线服务目录 |
CN108833578A (zh) * | 2018-06-30 | 2018-11-16 | 武汉斗鱼网络科技有限公司 | 基于fifo命名管道进行双工通信的方法及相关设备 |
CN111339466A (zh) * | 2020-02-25 | 2020-06-26 | 天津满运软件科技有限公司 | 接口管理方法、装置、电子设备及可读存储介质 |
CN111416837A (zh) * | 2020-02-20 | 2020-07-14 | 华迪计算机集团有限公司 | 政务系统api接口访问网关、方法、电子设备及存储介质 |
CN111679997A (zh) * | 2020-05-29 | 2020-09-18 | 中国航空工业集团公司西安航空计算技术研究所 | 一种多个pci/pci-e接口系统的设备管理方法 |
-
2020
- 2020-12-08 CN CN202011421810.6A patent/CN112559202A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102005057545A1 (de) * | 2005-12-01 | 2007-06-21 | Siemens Ag | Vorrichtung zum Betrieb von Softwareprogrammen |
CN107431726A (zh) * | 2015-02-20 | 2017-12-01 | 康维达无线有限责任公司 | 消息总线服务目录 |
CN108833578A (zh) * | 2018-06-30 | 2018-11-16 | 武汉斗鱼网络科技有限公司 | 基于fifo命名管道进行双工通信的方法及相关设备 |
CN111416837A (zh) * | 2020-02-20 | 2020-07-14 | 华迪计算机集团有限公司 | 政务系统api接口访问网关、方法、电子设备及存储介质 |
CN111339466A (zh) * | 2020-02-25 | 2020-06-26 | 天津满运软件科技有限公司 | 接口管理方法、装置、电子设备及可读存储介质 |
CN111679997A (zh) * | 2020-05-29 | 2020-09-18 | 中国航空工业集团公司西安航空计算技术研究所 | 一种多个pci/pci-e接口系统的设备管理方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114115352A (zh) * | 2021-12-09 | 2022-03-01 | 北京机电工程研究所 | 一种无人飞行器飞行控制方法、系统及无人飞行器 |
CN114115352B (zh) * | 2021-12-09 | 2023-10-27 | 北京机电工程研究所 | 一种无人飞行器飞行控制方法、系统及无人飞行器 |
CN116522323A (zh) * | 2023-03-17 | 2023-08-01 | 哈尔滨工业大学 | 一种基于命名空间的容器消息队列读写管理方法 |
CN116522323B (zh) * | 2023-03-17 | 2023-11-24 | 哈尔滨工业大学 | 一种基于命名空间的容器消息队列读写管理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20050076750A (ko) | 인터-포지션된 메시지 변경을 사용하는, 코드에 대한 수신메시지의 적응성 디스패치 | |
CN106681820B (zh) | 基于消息组合的可扩展大数据计算方法 | |
CN112559202A (zh) | 基于嵌入式实时操作系统的飞行器应用软件通讯方法 | |
CN111737329A (zh) | 一种轨道交通统一数据采集平台 | |
US10423390B1 (en) | Systems and methods for generating code for models having messaging semantics | |
CN110838961B (zh) | 一种通用航空总线消息调度系统 | |
CN111478839B (zh) | 一种物理总线及操作系统解耦的分布式航空通信系统 | |
CN106873545A (zh) | 一种基于fpga的实时多任务调度系统 | |
CN105487403A (zh) | 一种基于can的运动控制系统建立及其仿真建模方法 | |
CN112486702B (zh) | 基于多核多处理器并行系统的全局消息队列实现方法 | |
CN106919386A (zh) | 基于arinc653操作系统生成代码的方法与装置 | |
US7206843B1 (en) | Thread-safe portable management interface | |
CN109062857A (zh) | 一种能高速实现多处理器间通信的新型消息控制器及其通信方法 | |
CN106502842B (zh) | 数据恢复方法及系统 | |
CN110971532A (zh) | 一种网络资源管理方法、装置及设备 | |
EP4086753A1 (en) | Decision scheduling customization method and device based on information flow | |
CN113835904A (zh) | 一种远程过程调用控制方法、装置、设备及存储介质 | |
CN114296809B (zh) | 一种基于操作系统的对象模型构建方法及其系统调用接口 | |
Harbour | Real-time POSIX: an overview | |
CN117193225B (zh) | 晶圆制造工艺流程控制方法及系统 | |
Chen et al. | Design of Virtual Simulation Experiment Platform Based on ARINC 653 Specification | |
Zhou et al. | LIMOS: a tiny real-time micro-kernel for wireless objects | |
CN109101457B (zh) | 一种基于c6678的单核实现ndk通信与srio传输的方法 | |
Posse | A formal semantics for RTEdgeTM | |
Wang et al. | Software architecture based on message queue |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |