1553总线测试仿真系统设计与实现
摘要:为了解决1553总线的测试和故障排查问题,以AEC1553-PCI-FBC31RT-2-S2型1553B信号解调板为基础,设计、构建了1553总线测试仿真系统,完成了系统软件的设计、研制、调试和测试工作。系统软件包括1553总线信号实时采集、实时分析处理、实时显示和总线仿真等多个软件模块,采用多线程软件设计技术保证了信号采集和数据转换的实时性和可靠性。实际应用表明,该系统缩短了排故周期,提高了效率试飞。
关键词:1553总线;信号解调;实时处理;仿真
0 引言
飞行试验是飞机及相关航空产品设计定型中非常重要的阶段,而飞行试验数据处理又是飞行试验过程中不可缺少的重要环节。随着新型号的不断出现和新技术的发展,航电系统的结构越来越复杂,系统越复杂故障发生点就越多,这给试飞测试和试飞数据处理工作带来了巨大的挑战,当故障出现时如何在最短时间内将故障定位,如何缩短数据处理周期,都是试飞测试和试飞数据处理必须解决的问题。
针对以上问题,本文提出了飞行试验中1553总线测试和仿真系统的设计和实现方法,该系统是基于MIL-STD-1553(GJB289A)数据总线标准开发的,主要用于对1553B信号进行测试和仿真。该系统能对飞机上的总线信号进行实时采集、实时处理、实时监测和记录,能够对飞行总线数据进行事后分析和实验室1553总线信号仿真功能,可以加快用户对总线错误定位的速度,缩短数据处理周期,减少试验次数降低试验费用。
1 系统设计
1.1 统组成
系统硬件由工控计算机和双通道多功能1553B数据通信卡组成。系统的主要功能靠软件来实现,各软件模块问的工作流程示意图如图1所示。系统软件从结构上主要分为2部分:1553B测试软件和1553B仿真软件,图1中除仿真模块之外的所有模块都属于测试软件中的功能模块。
1.2 1553B信号实时测试软件设计与实现
1.2.1 软件结构设计
1553B总线信号实时测试软件,主要设计思想是根据功能需求,采用了模块化设计。主要功能模块有:总线信号实时采集模块、实时分析处理模块、数据回放模块、实时显示监控模块、原始数据记录模块和数据处理结果存储模块共6部分。
为了提高1553B测试软件的运行效率,本系统软件采用了多线程编程技术对1553B进行信号采集和处理,主线程和子线程之间通过信号量实现同步。下面对多线程编程技术进行简单介绍,给出使用多线程编程技术的必要性和对软件运行效率的影响。
1.2.2 多线程编程技术
Windows是一个多任务操作系统,它们在每一时刻中都可以有多个进程同时工作,而一个正在执行的程序就是一个进程,每个进程至少有一个线程,也可以有多个线程。
每一个进程至少有一个主执行线程,它是由系统自动创建的。用户可以根据需要在应用程序中创建其他线程,多个线程并发的运行于同一进程。这样可以将一些占用时间长的程序任务放到后台去处理,提高程序的运行速度,占用更少的资源等。对复杂的应用程序来说,线程的应用给应用程序提供了高效、快速、安全的数据处理能力。
要充分发挥多线程编程技术的优势,必须要解决好线程之间的同步问题,线程同步就是如何让多个线程不要同时访问同一个数据,让多个线程能够协调一致的工作,以免破坏数据的完整性和防止死锁情况的发生。常用的线程同步技术有信号量(Semaphores)、互斥锁(Mutex)和临界段(Critical Sections)。
1.2.3 实时测试软件实现方法
实时测试软件中的总线数据实时分析处理是主线程,信号采集由单独的子线程来完成,这样可以保证总线能够得到及时采集和分析处理,通过消息告诉主线程数据已经采集好了,主线程收到消息之后开始进行解算、分析。
在实时测试软件中当主线程运行时,首先要建立主线程和子线程之间,通信的消息,然后建立采集线程工作函数(定义采集线程的入口函数),定义创建ICD结构树的过程和一组消息分析函数,然后对1553B多功能解调卡进行初始化。总线信号采集系统在总线上相当于是一个监视器,因此要将采集卡设置在监听模式。
要对总线数据开始进行实时测试,首先要进行采集总线信号。创建采集线程时,将主线程与子线程的堆栈尺寸设为相同,并且其长度会根据需要自动变长,给出采集线程执行时代码所在函数的地址(线程工作函数),将采集线程设为创建后立即执行的运行模式,采集线程采满数据之后通过消息通知主线程,主线程开始对采集到的数据进行分析处理。
对采集到的数据进行分析处理的内容主要包括,将采集到的原始数据,按照100%1553B事后处理软件输入数据的格式,写到存储介质上;将用户需要实时监控的参数按照GJB289A中的消息结构和通信标准、1553总线中总线控制器、远程终端的地址、子地址、收/发等信息和ICD信息进行实时处理,并将分析处理结果以数字、文字和曲线的形式进行实时显示,同时写入结果数据文件中,其格式和事后处理软件的输出格式完全相同。实时处理软件模块的程序逻辑流程图,如图2所示。
- 通用1553B总线的信息监控系统的设计(04-06)
- 1553B电缆网络测试方法研究(06-22)
- MIL-STD-1553A/B数据总线自动测试仪的设计(03-06)
- CAN总线系统测试技术(05-11)
- 可以处理6.4Gbps以上数据率的创新型串行总线测试方法(06-23)
- 基于CAN总线的GaAs光电阴极制备测控系统(07-27)