CN110838961A - 一种通用航空总线消息调度*** - Google Patents
一种通用航空总线消息调度*** Download PDFInfo
- Publication number
- CN110838961A CN110838961A CN201910966595.9A CN201910966595A CN110838961A CN 110838961 A CN110838961 A CN 110838961A CN 201910966595 A CN201910966595 A CN 201910966595A CN 110838961 A CN110838961 A CN 110838961A
- Authority
- CN
- China
- Prior art keywords
- data
- real
- time
- queue
- message
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40267—Bus for use in transportation systems
- H04L2012/4028—Bus for use in transportation systems the transportation system being an aircraft
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种使用队列状态机机制、通用性高、拓展性强的通用航空总线的消息调度方法。这种方法隐藏了不同类型总线测试***的底层实现细节,将机载数据总线测试***的共性流程抽象为通用实现层。通过封装总线底层驱动,开放传输接口,实现底层透明化。从而在一定程度上增强了该机载数据总线测试架构的通用性和可拓展性,削减了开发周期与成本。
Description
技术领域
本发明属于计算机通讯航空总线技术领域,具体涉及MIL-1553B、 MIL-1394B、RS422、ARINC429等通用航空总线消息调度***。
背景技术
对于复杂航电***,要实现各子***之间(例如飞行控制***、燃油、液压***和发动机控制***等)协调工作,实时掌握和处理瞬息万变的数据信息,最大限度的利用各航空电子设备和子***的功能,做到资源共享,使整个航空电子综合化***能够高效可靠的工作,就需要利用高速可靠的航空总线,如MIL-1394B、MIL-1553B、ARINC429等。可以说,飞机上各航电子***之间的数据通信和信息交换是以航空总线为基础的通信网络。然而,现有的航空总线种类繁多,无论在电气特征、拓扑结构、数据传输格式、信息处理等各个方面都存在很大的差异性,这种差异性对航电***的信息传输的带宽、质量、稳定性提出更高的要求。
传统的航空总线仿真是从总线节点的底层开发做起,对每一个子***的数据采集与处理、数据的格式转换与输出控制进行具体分析,并对底层资源进行针对性调试,这种模式便于开发,周期很短。但缺点也十分明显,效率较低、***不具备开放性和通用性。当测试需求发生变化时无法根据需要增加、调整***资源,测试***软硬件结构不清晰,调试程序可读性差,给***的修改、维护造成了极大困难。
队列状态机是把要执行的状态排队,然后把它们的状态名存在队列里,队列里的状态名与状态机的各个状态对应,用来控制状态转换的顺序与产生相对应的动作。执行过的状态,其名称也会从队列中删除。同时根据运行时状态的动作和跃迁的状态,新的状态名会被添加到队列中,依据先来先服务原则,等待处理。
发明内容
本发明针对如何设计一种面向顶层调度且兼容多种航空总线的消息调度***,提供了一种通用航空总线消息调度***。
本发明的目的可以通过以下技术方案实现:
该***主要由以下5个基础模块组成:
S1:XML文件解析模块;
S2:数据收发模块;
S3:消息管理模块;
S4:实时网管理模块;
S5:全局变量管理模块。
其中,“S3消息管理模块”是***核心模块。
进一步地,S1(XML文件解析模块)通过调用LabVIEW字符串处理模块,实现 XML文件解析功能。XML文件包含***必要的ICD参数信息,如板卡属性、字、块、包、离散量、模拟量、开关量、计数器、广播时间等数据结构。通过XML 文件解析模块,使ICD信息转化为LabVIEW变量。ICD是航空仿真***的核心部分,它给出了***规范中所定义的电气和电子接口的详细说明,定义了航空电子***之间的接口和航空电子与非航空电子***之间的接口。
进一步地,S1(XML文件解析模块)具体执行步骤如下:
S101:定义航空电子***之间的接口,制定ICD表;
S102:将ICD表转换为XML文件;
S103:调用LabVIEW字符串处理模块,提取、重定义、存储XML文件所描述***变量。
S104:将***变量封装为板卡属性、字、块、包、离散量、模拟量、开关量、计数器、广播时间等数据结构。
进一步地,S2(数据收发模块)需要借助于一次性收发操作来实现数据传输任务,一次板卡收发动作属于***原子性操作。根据发送对象不同,调用底层板卡驱动,二次封装成诸如BM、BC、RN等适用于特定总线的一次性收发等底层 VI。航空总线一般支持两种传输模式:异步传输与等时传输。当总线采用异步模式传送数据时,其数据的传输时非连续的,反应时间小,具有CRC(Cyclic Redundancy Check,循环冗余校验)检测,数据传输错误可重发,一般用于时间触发处理;而等时传输是连续传送数据,可以保证视频和其它类似的设备能够持续地占据和使用自己所需的带宽,具有CRC检测,可以传播,不具有响应,具有等时性,一般用于周期性任务处理。在异步传输模式下,信息的传送可以被中断;而在同步传输模式下,数据将再不受任何中断和干扰的情况下实现连续传送,以保证周期性。
进一步地,S2(数据收发模块)具体执行步骤如下:
S201:使用测试数据,调用总线底层驱动,确保原子性一次性收发操作的正确性;
S202:初始化“收发队列”;
S203:启动“收发状态机”,查询队列元素是否为空;若是空队列,执行S402;否则执行S403;
S202:收发队列出栈,发送方轮询重置任务状态位为0;
S203:接收并解析任务包,提取并区分任务收发类别、周期属性、收发数据等参数;
S204:调用并配置收发接口,完成数据传输任务;
S205:接收端对数据包进行CRC检验;
S206:CRC检验出错,申请数据重传操作;
S207:CRC检验正确,数据传输完毕,接收方置对应任务状态位为1。
S3(消息管理模块)需要对***调度消息进行管理。在设计“消息管理”模块中,可以从消息的定义、存储、管理三个方面出发。将“消息”定义为各子模块的“工作状态消息”、“用户事件消息”、“实时网络消息”、“***参数”、“数据包”的集合。在消息管理与存储方面,引入队列状态机机制,实现消息的自动化存储与管理。主要由“实时网侦听队列状态机”、“用户事件队列状态机”、“通知器队列状态机”、“收发队列状态机”耦合而成。
进一步地,S3(消息管理模块)具体执行步骤如下:
S301:初始化“实时网侦听队列”、“用户事件队列”、“通知器队列”、“收发队列”;
S302:启动“实时网侦听状态机”,侦听前面板状态;若无变化,则执行S302;否则执行S303;
S303:前面板状态改变,定义用户事件序列号,并入栈“用户事件队列”;
S304:“用户事件队列”不为空,元素出栈;“用户事件队列状态机”侦听到收发任务;
S305:“用户事件队列状态机”查询任务收发类别、周期属性、收发数据等任务参数,并将数据封装成包,并进行CRC检验;
S306:数据包CRC检验出错,则执行S305;CRC检验正确,执行S307;
S307:生成任务序列号,并执行“通知器队列”元素入栈动作;
S308:“通知器状态机”执行元素出栈操作,并检验元素是否为“关闭下位机”;是则分别向“实时网侦听队列”、“用户事件队列”、“通知器队列”、“收发队列”执行“关闭下位机”元素入栈操作;否则执行S309;
S309:通知器状态机识别任务序列号,向收发端口的缓冲池发送对应任务数据包;并执行“收发开始”元素入栈“收发队列”操作;
S310:“收发队列状态机”检查“收发队列”是否为空,是则并执行“收发队列为空”入栈“实时网侦听队列”操作;否则执行S311;
S311:“收发”提取任务参数,并调用“一次性收发”VI,根据任务参数决定收发操作的类型,实现一次数据传输或者收发迭代;
S312:“收发状态机”查询任务序列号所对应的状态位,是“0”则执行S311,否则重修改任务状态位为“1”。
S4(实时网管理模块)采用实时网(光纤网络)作为传输媒介,实现“高速实时数据交互”性能,即在保障网络通讯质量的前提下提升网络传输速度与响应速度。在实时网管理模块设计理念中,需要从“工作状态”、“时间同步”、“基本功能”等方面出发。在工作状态方面,我们认为“空闲”、“打开实时网卡”、“侦听开始”、“侦听结束”、“关闭下位机”五个基本状态可以充分地描述实时光纤网络的工作状态。在时间同步方面,根据不同操作***与用户需求,广播特定精度的时钟信息,同步***多个子模块。在基本功能方面上,参考特定的总线传输协议,定义相关数据结构,调用板卡底层驱动,封装设计与总线字、块、包、解包、压包等相关的VI功能模块。
进一步地,S4(实时网管理模块)具体执行步骤如下:
S401:初始化实时网侦听队列;
S402:启动实时网侦听状态机,查询队列元素是否为空;若是空队列,执行
S402;否则执行S403;
S403:执行队列元素出栈操作,确认出栈元素的状态属性;若为“空闲”,则执行S404;若为“打开实时网卡”,则执行S405;若为“人工切换仿真实物”,则执行 S406;若为“周期性报告CPU状态”,则执行S407;若为“侦听结束”,则执行S408;若为“关闭下位机”,则执行S409;
S404:侦听到“打开实时网卡”指令,调动底层驱动,启动指定的实时网卡;
S405:“空闲”状态,释放CPU***资源;
S406:人工切换仿真实物,重新配置仿真对象,并更新仿真任务状态;
S407:接收到监测CPU性能指令,获取CPU性能参数信息,动态显示于UI界面(上位机前面板);
S408:侦听到“侦听结束”指令,执行队列元素“空闲”入栈操作;
S409:侦听到“关闭下位机指令”,释放所申请的内存空间,销毁队列。
S5(全局变量管理模块)储存着所有子***共享的全局变量,维护全局变量与更新***状态是保证***稳定运行的必要条件之一。面向全局变量,需要划分独立的内存空间,设计原子性读写机制,封装独立VI。面向***状态更新,采用队列机制,以直接映射队列状态机。其中,“实时网侦听队列”处理监管网络处理指令;“用户事件处理队列”则是响应前面板控制指令,改变***状态;“通知器队列”则根据用户事件的属性,选择性地向队列广播消息,引发状态变迁与更新;“收发处理队列”的任务是处理由其他模块发送来的通讯参数,确保数据交互的一致性。
进一步地,S5(全局变量管理模块)具体执行步骤如下:
S501:轮询重置状态标志位Reset,若为OOFFH(十六进制),则执行S502;若为11FFH,执行S503;若为01XXH,执行S504;若为01XXH,执行S505;关闭指定变量“写”属性接口;
S502:关闭全部变量“读”与“写”属性接口;
S503:开启全部变量“读”与“写”属性接口,并初始化所有全局变量;
S504:关闭XXH序列号下的全局变量“读”属性接口,开启“写”属性接口;
S505:关闭XXH序列号下的全局变量“写”属性接口,开启“读”属性接口。
本发明的有益效果:
本发明公开了一种可以兼容多种通用航空总线的消息调度***,一般应用于航空总线上位机的设计开发过程中。通过本发明,可以在该消息处理框架的基础上,根据不同的航空总线协议,设计总线数据结构,便可快速完成上位机开发。通过本发明,可以在开发上位机架构的过程中,减少实际的工作量。
在本发明中,通过队列状态机机制,构建实时网侦听队列状态机、用户事件队列状态机、通知器队列状态机、收发队列状态机,保证上位机的“XML文件解析”、“数据收发”、“消息管理”、“实时网管理”、“全局变量管理”等功能模块的稳定运行。本发明已在MIL-1553B、MIL-1394B、RS422、ARINC429、RSS422等航空总线上位机设计过程中得到实际应用。
附图说明
为了便于本领域技术人员理解,下面结合附图对本发明作进一步的说明。
图1为本发明设计***中的消息调度***功能模块图;
图2为本发明设计***中的顶层状态机UML图;
图3为本发明设计***中的XML文件解析模块流程图;
图4为本发明设计***中的收发处理模块流程图;
图5为本发明设计***中的消息处理模块底层功能模块交互图;
图6为本发明设计***中的实时网侦听模块流程图;
图7为本发明实施例《机电子***实时仿真软件》硬件架构图;
图8为本发明实施例《机电子***实时仿真软件》***功能模块划分图;
图9为本发明实施例《机电子***实时仿真软件》***架构设计图;
图10为本发明实施例《机电子***实时仿真软件》试验过程状态转换图;
图11为本发明实施例《机电子***实时仿真软件》试验数据监控用户界面;
图12为本发明实施例《机电子***实时仿真软件》试验数据监控用户界面;
图13为本发明实施例《机电子***实时仿真软件》模拟量采集流程图;
图14为本发明实施例《机电子***实时仿真软件》离散量采集流程图;
图15为本发明实施例《机电子***实时仿真软件》422总线调度流程图。
具体实施方式
实施例1
下面进一步地说明对本发明中核心组件,消息处理模块的四个队列状态机。
队列状态机具体命名如下:
S6:实时网侦听队列状态机;
S7:用户事件队列状态机;
S8:通知器队列状态机;
S9:收发队列状态机
本实施例主要由四个队列状态机耦合而成。之所以选用队列状态机,是因为可以通过队列、通知器、信号量、事件实现在多个VI之间同步控制,即同步任务和交换数据。
S6(实时网侦听队列)可以掌握网络运行状态与侦听前面板触发的用户事件。因此实时网状态机需要关联用户事件队列。
S6(实时网侦听队列),基本状态与动作定义如下:
S601“空闲”:初始状态,停止侦听,不占用CPU资源;无动作。
S602“打开实时网卡”:分配实时网卡。面向多通道数据传输任务时,需要人工分配实时网卡。
S603“侦听开始”:即工作状态,***侦听特定的用户事件指令编号,并将对应的用户事件入用户事件队列;最后执行“侦听开始”入队列操作,闭环侦听。
S604“侦听结束”:数据收发完毕,实时网将变迁至“空闲”状态,释放模块所占应的CPU资源。
S605“关闭下位机程序”:***退出;销毁实时网侦听队列。
S7(用户事件队列状态机)是前面板控制指令的有序集合。它以队列的方式存储与管理这些用户事件,与其他三个队列状态机有着不同程度的耦合。
S7(用户事件队列状态机)基本状态名与动作定义如下:
S701“空闲”:初始状态。
S702“板卡初始化”:前面板控制指令;初始化板卡,配置XML文件,并入收发队列。
S703“板卡关闭”:当数据交互任务完成、板卡更换、关机等动作出现时,需要关闭板卡;并入收发队列。
S704“板卡连续收发开始”:***需要执行周期性收发任务或者多次非周期性收发任务,并入通知器队列。
S705“板卡连续收发结束”:***完成周期性收发任务或者多次非周期性任务,并清空通知器。
S706“人工切换通断仿真实物”:板卡可以模拟不同的飞机的不同传感器,可实现特定的功能需求,如模拟采集多机协同作战任务过程中的飞行数据。执行“人工切换通断仿真实物”状态名入实时网侦听队列,改变其他RT 端的收发属性。
S707“启动下位机程序”:前面板控制指令;读取XML文件,配置实时网卡。
S708“关闭下位机程序”:前面板控制指令;关闭所有板卡与销毁所有队列。
S8(通知器队列状态机)负责处理收发任务参数,如传输方式、收发属性、传输周期、优先级等通知器状态机会与收发队列耦合。
S8(通知器队列状态机)基本状态名与动作定义如下:
S801“空闲”:初始状态。
S802“板卡关闭”:清空通知器队列、收发队列与数据处理队列簇(即已发送的数据集合)。
S803“关闭下位机程序”:父状态继承,在通知器处理中为销毁通知器队列。
S804“一次收发开始”:同“板卡关闭”的动作。
S805“板卡连续收发开始”:打包收发任务的属性、次数与周期等参数。
S9(收发队列状态机)通过调用底层驱动封装的接口,可以实现一次性数据收发操作。面向周期性的数据收发任务时,可通过while循环结构迭代实现;而面向非周期性收据收发任务时,可以通过事件结构实现非周期性一次收发。一次收发操作是数据采集***的原子性操作。
S9(收发队列状态机)基本状态名与动作定义如下:
S901“空闲”:收发状态机的初始默认状态,***无数据收发请求,无动作。
S902“一次收发开始”:***请求一次收发,调用板卡的底层驱动,进行一次收发任务。
S903“板卡初始化”:调用子程序,读取XML文件,初始化板卡。
S904“板卡关闭”:清除错误列表,关闭板卡。
S905“关闭下位机程序”:继承自用户事件队列,销毁收发队列。
实施例2
本发明公开了一种可以兼容多种通用航空总线的消息调度***,一般应用于机载数据总线测试***设计开发过程中。
为了进一步阐述本发明,在此优选《机电子***实时仿真软件》作为发明实施例。在本实施例中,会详细说明《机电子***实时仿真软件》的功能与设计过程,并以这些实例对本发明做出约束,约束本发明仅为具体实施方式。
无人机的机电***主要包括液压、环控、燃油、供电、防火、防除冰等子***,是飞机中的重要组成***,是保障飞机各项功能发挥的必要条件和基础条件。机电子***实时仿真软件通过仿真液压、环控、燃油、供电、刹车等***功能模型,驱动底层仿真激励器设备,模拟机电***的运行状态提供各种信号激励,在不依托于实际设备的情况下,实现对机电***设计的快速测试和验证,提高机电***设计效率和质量,便于开发人员更好的测试应用软件功能。
《机电子***实时仿真软件》的基本要求:
(1)能够根据机电***各子***的功能特性、复杂程度,并结合激励器硬件设备对机电子***的供电、液压、环控、燃油***等构件实时仿真模型,实现各分***之间的信号联动。
(2)机电子***实时仿真模型***结构复杂,信号关联性高,需要对仿真模型进行数据监控记录,通过查看数据记录,不断调整完善仿真模型。
(3)针对机电仿真激励器各类型数据板卡进行调度控制,保证采集板卡正常工作,完成各类总线及非总线信号的采集与转换输出。
机电子***实时仿真软件的运行环境由运行仿真编辑软件和上位机软件的工作站、两台数据采集及实时仿真下位机、硬件板块、转接电缆、以太网交换机和反射内存卡等组成。硬件环境拓扑结构如图7所示。
(1)上位机软件运行在高性能工作站,操作***选择windows 7或windows 10,2块不小于160G硬盘,双核CPU及以上,内存不小于4G。
(2)两台运行LabView RT实时操作***的下位机,分别用于422、1553b总线信号采集、模拟量及数字量信号采集、矩阵开关控制等实时仿真试验。
(3)硬件板卡主要实现了测试采集、仿真信号的功能,包括:PXI8119实时控制器和各种功能板卡,包括422卡、矩阵开关卡、模拟输入输出卡、数字I/O 卡等功能模块卡以及反射内存卡等。
(4)转接电缆:包括继电器端子电缆、模拟输入输出电缆、数字I/O电缆、光纤等。
(5)上位机和两台下位机之间分别通过以太网和反射内存卡组成的实时网连接,以太网主要用于上下位机之间发布仿真模型软件、数据采集仿真配置文件及命令等,实时网主要用于上下位机、两台下位机之间的试验控制、试验数据注入、数据缓存共享、数据记录与监控等。
机电子***实时仿真软件由上位机软件和下位机软件构成。
上位机软件运行在高性能工作站,完成仿真模型管理及配置、接口配置管理、板卡资源管理、试验定义及过程管理以及对下位机的控制。采用LabVIEW、AMESim 等仿真建模软件对机电各子***构建仿真实时模型,资源配置、试验管理、数据监控等功能采用visualstudio 2010开发。
下位机软件实现对所有仿真模型、模拟量、数字量、422总线、矩阵开关等多种复杂信号的仿真控制,并能够实时采集仿真数据与上位机软件协同进行数据监控记录,满足测试人员对仿真模型的分析需求。下位机软件采用 LabView2013(或以上)开发,运行在LabVIEW RT实时操作***,保证数据采集***的可靠性、实时性。
***功能模块划分如图8所示。机电子***实时仿真软件分为4个子***,分别是仿真模型、上位机资源配置、上位机试验管理和下位机试验控制等。
仿真模型采用AMESim仿真建模软件对机电各子***构建仿真实时模型,并生成可在下位机实时操作***下运行的执行单位文件。
上位机资源配置的内容包括:仿真模型的接口参数、试验环境的机箱、板卡、连线等拓扑结构管理、测试信号ICD数据以及试验信息配置等。
上位机试验管理的内容包括:试验过程管控、数据注入、试验数据记录与监控以及试验数据分析、过程回放等内容。
下位机试验控制软件能够根据上位机的试验配置动态加载仿真模型,驱动硬件板块完成试验信号的采集、仿真等功能。
机电子***实时仿真软件整体上采用分层式体系架构,分为上位机软件和下位机软件,上下位机之间通过以太网和实时网两套网络连接,体系架构如图9 所示。
上位机通过以太网采用FTP协议,向下位机安装LabView RT实时操作***及相关板块驱动软件,发布实时仿真模型,下装下位机软件运行所必须的试验配置文件等数据。
上位机、下位机1和下位机2三者之间通过实时网实现数据缓冲以及数据分发操作。上位机通过实时网向下位机发出试验控制命令,通过交互界面注入模型参数等,同时实时采集下位机反馈的状态数据、试验数据以及其它需要实时交互的数据,实现设备状态监控、试验数据的实时监控和在线分析。下位机1 和下位机2之间通过实时网完成实时数据的交互,例如:下位机1将采集到的模型量信号A通过实时网转发给下位机2作为模型的输入数据。
下位机软件根据上位机软件下发的模型选择和参数配置文件,完成实时仿真模型的动态加载;接收上位机的试验控制命令,通过板块收发控制程序完成硬件板卡的初始化、数据采集、仿真和关闭等操作。下位机软件中通过时序调度管理模块对于所有的模型仿真、板卡收发、格式转换等实时模块的运行时序进行统一管理和时间分配,并协同各个模块在有效时间内运行,支持1ms为基本单位的多周期协同控制。下位机中模拟里、数字量、422等总线信号以及矩阵切换控制等模块根据ICD配置的收发周期各自并发执行。
上位机资源配置,包括:仿真模型管理、仿真模型验证、接口配置管理、板卡资源管理、试验定义与配置等功能。
1)仿真模型管理
能够管理仿真模型,定义仿真模型的接口规范,比较模型间的接口差异,支持模型接口的复制、创建和修改,能够对历史模型及其接口规范信息进行保存。
2)仿真模型验证
能够对仿真模型进行验证测试,自动为模型加载测试输入,并验证输出接口的正确性,支持对模型标准测试用例的管理。
3)接口配置管理
对***涉及的ICD信息进行基础管理和维护,为仿真模块的输入输出、板卡输入输出和界面设置数据输入显示提供依据和关系准则,并定义对信号格式的转化规则,提供标准的转换模式和转化方法。ICD数据的组织按照信号格式和层次定义,采用树状列表的方式展示,并提供所见即所得的编辑模型。
①板卡资源管理
能够将下位机及其上的所有板卡资源进行管理,包括***所需要的所有数据采集板卡以及通道的机箱号、通道号、采集标志及拓扑结构等属性。
板块数据以2层树状结构管理:板卡节点和通道节点(422板块对应的是“节点”节点),板卡节点需要配置的信息包括:机箱号、插槽号、板卡类型;通道节点需要配置的信息包括:节点号、工作方式、总线号等。
***支持将配置完成的板卡数据导出到XML格式的文件,也支持将固定格式(与导出相同格式)的XML文件数据,导入***数据库。
***提供试验板卡的安装位置、通道名称等冲突数据检测、确保试验人员录入数据的正确率。
修改试验板卡、通道信息后,只有重新启动***,方可生效。
②试验定义与配置
定义一次试验所需的模型资源、接口资源和界面输入资源,定义这些资源间的关联关系,并验证这些关系的信号互斥性等,支持对试验的复制、修改和切换。
a)试验复制
选择要复制的试验,右键选择“另存为”菜单,在弹出的试验属性编辑窗口中填写相关的属性信息。试验复制的内容包括试验的信号配置。
b)试验从属关系调整
***提供了拖拽方式调整试验的从属关系(层次关系)。
c)删除试验
通过右键菜单“删除”,删除试验的全部数据,包括试验项目和试验配置。
d)切换试验
试验配置、试验控制等操作是针对***当前选中试验进行的,***只允许有一个当前选中试验存在。在试验项目中选择要一条试验记录,通过鼠标左键双击操作或者点击“选中试验”按钮设置为当前选中试验。当前选中试验标注在***底部的状态提示栏中。通过“最近打开试验”,可以直接打开最近编辑或运行过的试验条目。
上位机试验管理,包括:试验过程管理、注入数据管理、矩阵配置管理、试验数据记录与监控、试验过程回放等功能。
1)试验过程管理
对试验的启动、停止、暂停、初始化等进行控制,同步控制数据和配置试验环境参数,调度不同的试验,并根据试验配置调度各个模块的协同运行。试验过程状态转换如图10所示。
2)注入数据管理
从界面为各个仿真模型提供运行所需的配置数据,并能够根据设置要求,将仿真模型的接口输入或输出与界面/接口的信号通道进行切断/联通,提供试验的柔性。注入数据用户界面如图11所示。
3)矩阵配置管理
对矩阵板卡的矩阵转换方式和矩阵的连接模式进行配置和调整,并能够在试验中根据设置进行矩阵板卡的控制,也能读取各个矩阵的实时状态。
4)试验数据记录与监控
提供对仿真模型接口、配置数据接口、板卡数据接口的自定义数据监控能力,并能够根据用户的选择要求显示相应的监控结果。
实时数据采集由一组数据采集器组成,每个数据采集器都是一个独立的线程,完成一组数据采集任务。采集器内部包含了高精度定时器、规则解析、数据采集等三个模块,由高精度定时器驱动数据采集模块按照解析规则采集监测数据并存入内存数据库或数据文件中。
上位机软件为试验数据采集和监控提供用户交互窗口,基本功能包括:数据采集启停控制、数据采集及存储参数配置等。
数据实时监控是采用可视化方式(如数据表格、类示波器式的图形界面)监控仿真试验的输入输出数据。试验数据监控用户界面如图11所示。
5)试验过程回放
提供对仿真模型、配置接口数据、板卡数据的自定义数据记录能力,并能够根据用户的选择要求将记录数据进行回放显示,也能够对不同数据进行比对。试验数据监控用户界面如图12所示。
横轴为时间轴,纵轴为监控信号解析后的数值。
下位机试验控制模块主要包括:时序调度管理、仿真模型部署与加载、板块收发控制程序、模拟量仿真控制、数字量仿真控制、422总线信号仿真控制和矩阵切换控制等功能。
1)时序调度管理
对于所有的模型仿真、板卡收发、格式转换等实时模块的运行时序进行统一管理和时间分配,并协同各个模块在有效时间内运行,支持1ms为基本单位的多周期协同控制。时序调度管理程序根据时钟生成方式启动时序控制模块,发出1ms、5ms、20ms、25ms、50ms、100ms、200ms共7种时序控制消息。
2)仿真模型部署与加载
能够实现仿真模型在实时***下的动态加载,使不同粒度的仿真模块能够协同在一起运行。
3)板块收发控制程序
板块收发控制重新主要是保证各种总线、非总线板卡能够并发执行,使每种板卡能够在规定的周期内采集数据并且对采集的数据转换处理。
4)模拟量仿真控制
提供模拟量板卡的初始化、通道配置、信号格式变换,支持各个板卡的通道独立控制和整体控制,支持最快1ms的控制周期。
按照***给出的接口参数描述文件(XML格式的文档)定义模拟量采集和输出板卡的工作参数。完成指定接口卡中A/D信号的采集,经过信号格式的转换之后写入实时网的指定地址位置。或者将实时网指定地址的数据经过信号格式转换后,写入到模拟量输出卡中进行模拟量的输出。模拟量信号采集如图13所示。
5)数字量仿真控制
提供数字量板卡的初始化、通道配置、信号格式变换,支持各个板卡的通道独立控制和整体控制,支持最快1ms的控制周期。
按照***给出的接口参数描述文件(XML格式的文档)定义数字I/O卡、计数器/定时器卡和继电器卡的工作参数。完成指定接口卡中离散量信号的采集,经过信号格式的转换之后,写入到实时网指定位置。或者将实时网指定地址的数据经过信号格式转换之后写入数字I/O卡中进行输出。离散量数据采集、仿真工作流图如图14所示。
6)422总线信号仿真控制
支持422板卡的初始化、通道配置、收发控制、校验和检查等,满足422 收发时序要求。
按照***给出的接口参数描述文件(XML格式的文档)定义RS422总线信号控制工作参数。
完成RS422总线信号接口卡串行信号的采集,将未经过格式转换的数据写入实时网的指定地址位置,按照接口文件的要求,选择将经过格式转换后的数据写入实时网的指定地址处。
在实时网给出的信号中组合各个真实设备的输入信号,转换成符合RS422总线的信号格式,在指定设备的地址上进行数据输出。RS422总线串口调度模块流程如图15所示。
7)矩阵切换控制
支持矩阵板卡的初始化、线路连接转换控制,能够读取矩阵实时状态,并根据切换要求计算最少矩阵切换量。
Claims (6)
1.一种通用航空总线消息调度***,其特征在于,使用多个队列状态机搭建总线消息调度***;该***由“XML文件解析模块”、“数据收发模块”、“消息管理模块”、“实时网管理模块”、“全局变量管理模块”5个基础模块组成,其中,“消息管理模块”是核心模块。
2.如权利要求1所述的一种通用航空总线消息调度***,其特征在于,所述“XML文件解析模块”通过调用LabVIEW字符串处理模块,实现XML文件解析功能;XML文件包含***必要的ICD参数信息。
3.如权利要求1所述的一种通用航空总线消息调度***,其特征在于,所述“数据收发模块”需要借助于一次性收发操作来实现数据传输任务,一次板卡收发动作属于***原子性操作;根据发送对象不同,调用底层板卡驱动,二次封装成适用于特定总线的一次性收发等底层VI;航空总线支持两种传输模式:异步传输与等时传输;当总线采用异步模式传送数据时,其数据的传输时非连续的,反应时间小,具有CRC检测,数据传输错误可重发,一般用于时间触发处理;而等时传输是连续传送数据,可以保证视频和其它类似的设备能够持续地占据和使用自己所需的带宽,具有CRC检测,可以传播,不具有响应,具有等时性,一般用于周期性任务处理。在异步传输模式下,信息的传送可以被中断;而在同步传输模式下,数据将再不受任何中断和干扰的情况下实现连续传送,以保证周期性。
4.如权利要求1所述的一种通用航空总线消息调度***,其特征在于,所述“消息管理模块”对***调度消息进行管理;在“消息管理模块”中,从消息的定义、存储、管理三个方面出发;将“消息”定义为各子模块的“工作状态消息”、“用户事件消息”、“实时网络消息”、“***参数”、“数据包”的集合,在消息管理与存储方面,引入队列状态机机制,实现消息的自动化存储与管理,由“实时网侦听队列状态机”、“用户事件队列状态机”、“通知器队列状态机”、“收发队列状态机”耦合而成。
5.如权利要求1所述的一种通用航空总线消息调度***,其特征在于,所述“实时网管理模块”采用实时网作为传输媒介,实现“高速实时数据交互”性能,即在保障网络通讯质量的前提下提升网络传输速度与响应速度,从“工作状态”、“时间同步”、“基本功能”方面出发;在工作状态方面,“空闲”、“打开实时网卡”、“侦听开始”、“侦听结束”、“关闭下位机”五个基本状态充分地描述实时光纤网络的工作状态;在时间同步方面,根据不同操作***与用户需求,广播特定精度的时钟信息,同步***多个子模块;在基本功能方面上,参考特定的总线传输协议,定义相关数据结构,调用板卡底层驱动,封装设计与总线字、块、包、解包、压包的VI功能模块。
6.如权利要求1所述的一种通用航空总线消息调度***,其特征在于,所述“全局变量管理模块”储存着所有子***共享的全局变量,维护全局变量与更新***状态是保证***稳定运行的必要条件之一;面向全局变量,需要划分独立的内存空间,设计原子性读写机制,封装独立VI;面向***状态更新,采用队列机制,以直接映射队列状态机;其中,“实时网侦听队列”处理监管网络处理指令;“用户事件处理队列”则是响应前面板控制指令,改变***状态;“通知器队列”则根据用户事件的属性,选择性地向队列广播消息,引发状态变迁与更新;“收发处理队列”的任务是处理由其他模块发送来的通讯参数,确保数据交互的一致性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910966595.9A CN110838961B (zh) | 2019-10-12 | 2019-10-12 | 一种通用航空总线消息调度*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910966595.9A CN110838961B (zh) | 2019-10-12 | 2019-10-12 | 一种通用航空总线消息调度*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110838961A true CN110838961A (zh) | 2020-02-25 |
CN110838961B CN110838961B (zh) | 2021-12-03 |
Family
ID=69575319
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910966595.9A Active CN110838961B (zh) | 2019-10-12 | 2019-10-12 | 一种通用航空总线消息调度*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110838961B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112114981A (zh) * | 2020-09-09 | 2020-12-22 | 天津津航计算技术研究所 | 一种基于链表的1553b总线消息调度方法 |
CN112462739A (zh) * | 2020-11-19 | 2021-03-09 | 北京京航计算通讯研究所 | 一种双通道耦合飞行控制程序的故障检测*** |
CN112526255A (zh) * | 2020-11-13 | 2021-03-19 | 武汉联特科技股份有限公司 | 光模块自动化测试***中的通用配置方法及设备 |
CN113110395A (zh) * | 2021-04-30 | 2021-07-13 | 西安热工研究院有限公司 | 一种高温气冷堆控制***多总线测试装置及方法 |
CN115865193A (zh) * | 2023-02-27 | 2023-03-28 | 中国人民解放***箭军工程大学 | 一种用于反射内存组网性能测试的装置及其方法 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090041047A1 (en) * | 2007-05-26 | 2009-02-12 | Vector Informatik Gmbh | Test device and a test method |
CN101382968A (zh) * | 2008-10-17 | 2009-03-11 | 北京航空航天大学 | 一种先进综合式航空电子仿真***及其仿真方法 |
CN102289208A (zh) * | 2011-04-22 | 2011-12-21 | 支怡 | 一种arinc429数据总线仿真测试*** |
CN102523129A (zh) * | 2011-12-05 | 2012-06-27 | 西北工业大学 | 一种通用的航空总线测试分析方法及其装置 |
CN103293964A (zh) * | 2013-03-22 | 2013-09-11 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种机电非总线、总线信号的仿真激励与综合测试方法 |
CN103645947A (zh) * | 2013-11-25 | 2014-03-19 | 北京航空航天大学 | Mil-std-1553b总线监控及数据分析*** |
CN103873324A (zh) * | 2014-03-17 | 2014-06-18 | 中国航空无线电电子研究所 | 一种通用总线测试*** |
CN104765709A (zh) * | 2015-03-10 | 2015-07-08 | 中国电子科技集团公司第十研究所 | 多路总线数据仿真*** |
CN105157974A (zh) * | 2015-09-10 | 2015-12-16 | 福州大学 | 基于LabVIEW的高压大流量插装阀测试***及实现方法 |
CN106250589A (zh) * | 2016-07-20 | 2016-12-21 | 北京航天发射技术研究所 | 一种基于Labview模块化的CAN总线控制仿真***设计方法 |
CN106656706A (zh) * | 2017-02-25 | 2017-05-10 | 华南理工大学 | 基于软件总线的面向服务的机器人开放式控制***及方法 |
CN107229584A (zh) * | 2017-06-01 | 2017-10-03 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 航空电子仿真测试平台i/o管理*** |
CN107588795A (zh) * | 2017-09-12 | 2018-01-16 | 陕西飞机工业(集团)有限公司 | 一种飞机航空电子设备通用测试*** |
CN109032860A (zh) * | 2018-06-27 | 2018-12-18 | 中国直升机设计研究所 | 一种arinc429总线通用仿真***及仿真方法 |
CN109116315A (zh) * | 2018-08-08 | 2019-01-01 | 中国航空工业集团公司雷华电子技术研究所 | 一种通用雷达航电仿真*** |
-
2019
- 2019-10-12 CN CN201910966595.9A patent/CN110838961B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090041047A1 (en) * | 2007-05-26 | 2009-02-12 | Vector Informatik Gmbh | Test device and a test method |
CN101382968A (zh) * | 2008-10-17 | 2009-03-11 | 北京航空航天大学 | 一种先进综合式航空电子仿真***及其仿真方法 |
CN102289208A (zh) * | 2011-04-22 | 2011-12-21 | 支怡 | 一种arinc429数据总线仿真测试*** |
CN102523129A (zh) * | 2011-12-05 | 2012-06-27 | 西北工业大学 | 一种通用的航空总线测试分析方法及其装置 |
CN103293964A (zh) * | 2013-03-22 | 2013-09-11 | 中国航空工业集团公司沈阳飞机设计研究所 | 一种机电非总线、总线信号的仿真激励与综合测试方法 |
CN103645947A (zh) * | 2013-11-25 | 2014-03-19 | 北京航空航天大学 | Mil-std-1553b总线监控及数据分析*** |
CN103873324A (zh) * | 2014-03-17 | 2014-06-18 | 中国航空无线电电子研究所 | 一种通用总线测试*** |
CN104765709A (zh) * | 2015-03-10 | 2015-07-08 | 中国电子科技集团公司第十研究所 | 多路总线数据仿真*** |
CN105157974A (zh) * | 2015-09-10 | 2015-12-16 | 福州大学 | 基于LabVIEW的高压大流量插装阀测试***及实现方法 |
CN106250589A (zh) * | 2016-07-20 | 2016-12-21 | 北京航天发射技术研究所 | 一种基于Labview模块化的CAN总线控制仿真***设计方法 |
CN106656706A (zh) * | 2017-02-25 | 2017-05-10 | 华南理工大学 | 基于软件总线的面向服务的机器人开放式控制***及方法 |
CN107229584A (zh) * | 2017-06-01 | 2017-10-03 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | 航空电子仿真测试平台i/o管理*** |
CN107588795A (zh) * | 2017-09-12 | 2018-01-16 | 陕西飞机工业(集团)有限公司 | 一种飞机航空电子设备通用测试*** |
CN109032860A (zh) * | 2018-06-27 | 2018-12-18 | 中国直升机设计研究所 | 一种arinc429总线通用仿真***及仿真方法 |
CN109116315A (zh) * | 2018-08-08 | 2019-01-01 | 中国航空工业集团公司雷华电子技术研究所 | 一种通用雷达航电仿真*** |
Non-Patent Citations (3)
Title |
---|
叶中脉等: "航电仿真***中RS422总线监控软件的设计", 《指挥控制与仿真》 * |
彭寒等: "一种通用机载数据总线测试***设计方法", 《电子设计工程》 * |
徐立翔: "LabVIEW状态机的研究及在运动控制中的应用", 《中国优秀硕士学位论文全文数据库-信息科技辑》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112114981A (zh) * | 2020-09-09 | 2020-12-22 | 天津津航计算技术研究所 | 一种基于链表的1553b总线消息调度方法 |
CN112114981B (zh) * | 2020-09-09 | 2023-12-12 | 天津津航计算技术研究所 | 一种基于链表的1553b总线消息调度方法 |
CN112526255A (zh) * | 2020-11-13 | 2021-03-19 | 武汉联特科技股份有限公司 | 光模块自动化测试***中的通用配置方法及设备 |
CN112526255B (zh) * | 2020-11-13 | 2024-04-02 | 武汉联特科技股份有限公司 | 光模块自动化测试***中的通用配置方法及设备 |
CN112462739A (zh) * | 2020-11-19 | 2021-03-09 | 北京京航计算通讯研究所 | 一种双通道耦合飞行控制程序的故障检测*** |
CN113110395A (zh) * | 2021-04-30 | 2021-07-13 | 西安热工研究院有限公司 | 一种高温气冷堆控制***多总线测试装置及方法 |
CN115865193A (zh) * | 2023-02-27 | 2023-03-28 | 中国人民解放***箭军工程大学 | 一种用于反射内存组网性能测试的装置及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110838961B (zh) | 2021-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110838961B (zh) | 一种通用航空总线消息调度*** | |
CN105144637B (zh) | 用于交换用户数据的接口装置和方法 | |
KR101522477B1 (ko) | 시뮬레이션 방법, 시스템 및 프로그램 | |
CN109831354A (zh) | 基于opc ua工业通讯协议的虚拟调试*** | |
CN109884915A (zh) | 一种基于dds的嵌入式软件运行平台设计方法及其仿真平台 | |
CN111966748B (zh) | 分布式空基仿真运行控制管理方法 | |
CN102124448A (zh) | 控制嵌入式***开发期间的实时性 | |
CN110502861B (zh) | 基于卫星信息流的全数字化仿真*** | |
CN113051040A (zh) | 一种异地远程分布式联合仿真方法 | |
CN108304269A (zh) | 一种数据的发送、接收方法、装置及通信框架 | |
US12014216B2 (en) | Method for platform-based scheduling of job flow | |
CN102916848A (zh) | 一种基于脚本技术的以太网接口设备的自动测试方法 | |
CN113572815A (zh) | 一种跨异构平台的通信技术方法、***及介质 | |
CN109100952B (zh) | 分布式半实物仿真航天器健康管理***区域推理机 | |
KR101704751B1 (ko) | 모듈 간의 타이밍 정보를 이용하는 멀티코어 시스템의 시뮬레이터, 및 그 시뮬레이션 방법 | |
CN114707242A (zh) | 一种通用的机载数据总线监控及测试软件框架设计方法 | |
Baldassari et al. | PROTOB: An object‐oriented case tool for modelling and prototyping distributed systems | |
CN114390093B (zh) | 一种虚拟网关模拟*** | |
CN101937361A (zh) | 一种仿真子***的构建及管理方法和装置 | |
Gamatié et al. | A modeling paradigm for integrated modular avionics design | |
Xu et al. | A General Platform of Hardware-in-the-loop Simulation for Integrated Design | |
Wang et al. | Formal verification method for configuration of integrated modular avionics system using MARTE | |
CN113965468A (zh) | 一种公共框架网络设计方法 | |
CN115542772B (zh) | 一种仿真任务的控制方法、装置及仿真*** | |
US11835942B2 (en) | Real-time high-speed clock signal for industrial network emulation |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |